#include <Input.hpp>

Public Types

enum  Key {
  Key::None = 0, Key::Character, Key::KEYBOARD_BEGIN, Key::Space = KEYBOARD_BEGIN,
  Key::Apostrophe, Key::Comma, Key::Minus, Key::Period,
  Key::Slash, Key::Num_0, Key::Num_1, Key::Num_2,
  Key::Num_3, Key::Num_4, Key::Num_5, Key::Num_6,
  Key::Num_7, Key::Num_8, Key::Num_9, Key::Semicolon,
  Key::Equal, Key::Char_A, Key::Char_B, Key::Char_C,
  Key::Char_D, Key::Char_E, Key::Char_F, Key::Char_G,
  Key::Char_H, Key::Char_I, Key::Char_J, Key::Char_K,
  Key::Char_L, Key::Char_M, Key::Char_N, Key::Char_O,
  Key::Char_P, Key::Char_Q, Key::Char_R, Key::Char_S,
  Key::Char_T, Key::Char_U, Key::Char_V, Key::Char_W,
  Key::Char_X, Key::Char_Y, Key::Char_Z, Key::Left_Bracket,
  Key::Backslash, Key::Right_Bracket, Key::Grave_Accent, Key::World_1,
  Key::World_2, Key::Escape, Key::Enter, Key::Tab,
  Key::Backspace, Key::Insert, Key::Delete, Key::Right,
  Key::Left, Key::Down, Key::Up, Key::Page_Up,
  Key::Page_Down, Key::Home, Key::End, Key::Caps_Lock,
  Key::Scroll_Lock, Key::Num_Lock, Key::Print_Screen, Key::Pause,
  Key::F1, Key::F2, Key::F3, Key::F4,
  Key::F5, Key::F6, Key::F7, Key::F8,
  Key::F9, Key::F10, Key::F11, Key::F12,
  Key::F13, Key::F14, Key::F15, Key::F16,
  Key::F17, Key::F18, Key::F19, Key::F20,
  Key::F21, Key::F22, Key::F23, Key::F24,
  Key::F25, Key::KeyPad_0, Key::KeyPad_1, Key::KeyPad_2,
  Key::KeyPad_3, Key::KeyPad_4, Key::KeyPad_5, Key::KeyPad_6,
  Key::KeyPad_7, Key::KeyPad_8, Key::KeyPad_9, Key::KeyPad_Decimal,
  Key::KeyPad_Divide, Key::KeyPad_Multiply, Key::KeyPad_Subtract, Key::KeyPad_Add,
  Key::KeyPad_Enter, Key::KeyPad_Equal, Key::Left_Shift, Key::Left_Control,
  Key::Left_Alt, Key::Left_Super, Key::Right_Shift, Key::Right_Control,
  Key::Right_Alt, Key::Right_Super, Key::Menu, Key::KEYBOARD_END,
  Key::MOUSE_BEGIN, Key::Mouse = MOUSE_BEGIN, Key::MouseLeft, Key::MouseRight,
  Key::MouseMiddle, Key::MouseBack, Key::MouseForward, Key::MouseScrollUp,
  Key::MouseScrollDown, Key::MouseScrollLeft, Key::MouseScrollRight, Key::MOUSE_END,
  Key::Touch
}
 
enum  Type { Type::Press, Type::Release, Type::Trigger }
 
using DeviceKey = std::pair< Input::Key, int >
 
using DeviceKey_Hash = iv::hash< std::pair< Input::Key, int > >
 

Public Member Functions

 Input (Type type, Input::Key key, int device_id, bool real)
 
Type type () const
 
Input::Key key () const
 
int device_id () const
 
bool real () const
 

Detailed Description

Definition at line 13 of file Input.hpp.

Member Typedef Documentation

◆ DeviceKey

using iv::Input::DeviceKey = std::pair< Input::Key, int >

Definition at line 186 of file Input.hpp.

◆ DeviceKey_Hash

using iv::Input::DeviceKey_Hash = iv::hash< std::pair< Input::Key, int > >

Definition at line 187 of file Input.hpp.

Member Enumeration Documentation

◆ Key

enum iv::Input::Key
strong
Enumerator
None 
Character 

Key that can be interpreted as a character was pressed somewhere. Code of the character can be retrieved from InputSource. This will be only sent as a Type::Trigger.

KEYBOARD_BEGIN 
Space 
Apostrophe 
Comma 
Minus 
Period 
Slash 
Num_0 
Num_1 
Num_2 
Num_3 
Num_4 
Num_5 
Num_6 
Num_7 
Num_8 
Num_9 
Semicolon 
Equal 
Char_A 
Char_B 
Char_C 
Char_D 
Char_E 
Char_F 
Char_G 
Char_H 
Char_I 
Char_J 
Char_K 
Char_L 
Char_M 
Char_N 
Char_O 
Char_P 
Char_Q 
Char_R 
Char_S 
Char_T 
Char_U 
Char_V 
Char_W 
Char_X 
Char_Y 
Char_Z 
Left_Bracket 
Backslash 
Right_Bracket 
Grave_Accent 
World_1 
World_2 
Escape 
Enter 
Tab 
Backspace 
Insert 
Delete 
Right 
Left 
Down 
Up 
Page_Up 
Page_Down 
Home 
End 
Caps_Lock 
Scroll_Lock 
Num_Lock 
Print_Screen 
Pause 
F1 
F2 
F3 
F4 
F5 
F6 
F7 
F8 
F9 
F10 
F11 
F12 
F13 
F14 
F15 
F16 
F17 
F18 
F19 
F20 
F21 
F22 
F23 
F24 
F25 
KeyPad_0 
KeyPad_1 
KeyPad_2 
KeyPad_3 
KeyPad_4 
KeyPad_5 
KeyPad_6 
KeyPad_7 
KeyPad_8 
KeyPad_9 
KeyPad_Decimal 
KeyPad_Divide 
KeyPad_Multiply 
KeyPad_Subtract 
KeyPad_Add 
KeyPad_Enter 
KeyPad_Equal 
Left_Shift 
Left_Control 
Left_Alt 
Left_Super 
Right_Shift 
Right_Control 
Right_Alt 
Right_Super 
Menu 
KEYBOARD_END 
MOUSE_BEGIN 
Mouse 

always activated (for unpressed position tracking) - this is currently not handled by InputSource but it is assumed that InputNodeSource knows this - we might want to implement it so that we know which device_id it is, but we keep it currently on 0 and I do not see practical problems with it for now

MouseLeft 
MouseRight 
MouseMiddle 
MouseBack 
MouseForward 
MouseScrollUp 

only triggered

MouseScrollDown 

only triggered

MouseScrollLeft 

only triggered

MouseScrollRight 

only triggered

MOUSE_END 
Touch 

Definition at line 16 of file Input.hpp.

◆ Type

enum iv::Input::Type
strong
Enumerator
Press 
Release 
Trigger 

Definition at line 170 of file Input.hpp.

Constructor & Destructor Documentation

◆ Input()

iv::Input::Input ( Type  type,
Input::Key  key,
int  device_id,
bool  real 
)
inline

Definition at line 178 of file Input.hpp.

Member Function Documentation

◆ type()

Type iv::Input::type ( ) const
inline

Definition at line 189 of file Input.hpp.

◆ key()

Input::Key iv::Input::key ( ) const
inline

Definition at line 194 of file Input.hpp.

◆ device_id()

int iv::Input::device_id ( ) const
inline

Definition at line 199 of file Input.hpp.

◆ real()

bool iv::Input::real ( ) const
inline

Definition at line 204 of file Input.hpp.


The documentation for this class was generated from the following file: