EHS
Keyboard.h
Go to the documentation of this file.
1#pragma once
2
3#include "ehs/Types.h"
4#include "Button.h"
5#include "HID.h"
6
7#define EHS_HID_KEYBOARD 0x02
8
9namespace ehs
10{
11 class EHS_LIB_IO Keyboard : public HID
12 {
13 public:
14 Keyboard();
15
16 Keyboard(Str_8 name, UInt_64 id);
17
18 Keyboard(Keyboard&& hid) noexcept = default;
19
20 Keyboard(const Keyboard& hid);
21
22 Keyboard& operator=(Keyboard&& hid) noexcept = default;
23
24 Keyboard& operator=(const Keyboard& hid);
25
26 void Poll(float delta) override;
27
28 Keyboard* Clone() const override;
29
30 static const Button Unknown;
31 static const Button Escape;
32 static const Button Backspace;
33 static const Button Enter;
34 static const Button LShift;
35 static const Button RShift;
36 static const Button LAlt;
37 static const Button RAlt;
38 static const Button LCtrl;
39 static const Button RCtrl;
40 static const Button Space;
41 static const Button A;
42 static const Button B;
43 static const Button C;
44 static const Button D;
45 static const Button E;
46 static const Button F;
47 static const Button G;
48 static const Button H;
49 static const Button I;
50 static const Button J;
51 static const Button K;
52 static const Button L;
53 static const Button M;
54 static const Button N;
55 static const Button O;
56 static const Button P;
57 static const Button Q;
58 static const Button R;
59 static const Button S;
60 static const Button T;
61 static const Button U;
62 static const Button V;
63 static const Button W;
64 static const Button X;
65 static const Button Y;
66 static const Button Z;
67 static const Button One;
68 static const Button Two;
69 static const Button Three;
70 static const Button Four;
71 static const Button Five;
72 static const Button Six;
73 static const Button Seven;
74 static const Button Eight;
75 static const Button Nine;
76 static const Button Zero;
77 static const Button Minus;
78 static const Button Equals;
79 static const Button Tilde;
80 static const Button BackSlash;
83 static const Button SemiColon;
84 static const Button Apostrophe;
85 static const Button Comma;
86 static const Button Period;
87 static const Button ForwardSlash;
88 static const Button F1;
89 static const Button F2;
90 static const Button F3;
91 static const Button F4;
92 static const Button F5;
93 static const Button F6;
94 static const Button F7;
95 static const Button F8;
96 static const Button F9;
97 static const Button F10;
98 static const Button F11;
99 static const Button F12;
100 static const Button F13;
101 static const Button F14;
102 static const Button F15;
103 static const Button F16;
104 static const Button F17;
105 static const Button F18;
106 static const Button F19;
107 static const Button F20;
108 static const Button F21;
109 static const Button F22;
110 static const Button F23;
111 static const Button F24;
112 static const Button Left;
113 static const Button Right;
114 static const Button Up;
115 static const Button Down;
116
117 static Button TranslateScanCode(UInt_32 code);
118
119 static Char_8 TranslateToEnglish_8(bool shifted, const Button& button);
120 };
121}
Definition: Button.h:9
Definition: HID.h:11
Definition: Keyboard.h:12
static const Button F23
Definition: Keyboard.h:110
static const Button F13
Definition: Keyboard.h:100
static const Button F14
Definition: Keyboard.h:101
static const Button Y
Definition: Keyboard.h:65
static const Button J
Definition: Keyboard.h:50
static const Button N
Definition: Keyboard.h:54
static const Button P
Definition: Keyboard.h:56
static const Button R
Definition: Keyboard.h:58
static const Button Period
Definition: Keyboard.h:86
static const Button X
Definition: Keyboard.h:64
static const Button RCtrl
Definition: Keyboard.h:39
static const Button Enter
Definition: Keyboard.h:33
static const Button V
Definition: Keyboard.h:62
static const Button F16
Definition: Keyboard.h:103
static const Button F1
Definition: Keyboard.h:88
static const Button Escape
Definition: Keyboard.h:31
static const Button F7
Definition: Keyboard.h:94
static const Button B
Definition: Keyboard.h:42
static const Button M
Definition: Keyboard.h:53
static const Button SemiColon
Definition: Keyboard.h:83
static const Button F8
Definition: Keyboard.h:95
static const Button LeftSquareBracket
Definition: Keyboard.h:81
static const Button F24
Definition: Keyboard.h:111
static const Button Z
Definition: Keyboard.h:66
Keyboard(Keyboard &&hid) noexcept=default
static const Button F11
Definition: Keyboard.h:98
static const Button F18
Definition: Keyboard.h:105
static const Button LCtrl
Definition: Keyboard.h:38
static const Button F15
Definition: Keyboard.h:102
static const Button ForwardSlash
Definition: Keyboard.h:87
static const Button Apostrophe
Definition: Keyboard.h:84
static const Button Zero
Definition: Keyboard.h:76
static const Button F4
Definition: Keyboard.h:91
static const Button Backspace
Definition: Keyboard.h:32
static const Button E
Definition: Keyboard.h:45
static const Button F5
Definition: Keyboard.h:92
static const Button RAlt
Definition: Keyboard.h:37
static const Button F19
Definition: Keyboard.h:106
static const Button One
Definition: Keyboard.h:67
static const Button Left
Definition: Keyboard.h:112
static const Button F
Definition: Keyboard.h:46
static const Button Right
Definition: Keyboard.h:113
static const Button T
Definition: Keyboard.h:60
static const Button Three
Definition: Keyboard.h:69
static const Button H
Definition: Keyboard.h:48
static const Button Seven
Definition: Keyboard.h:73
static const Button Eight
Definition: Keyboard.h:74
static const Button Four
Definition: Keyboard.h:70
static const Button Up
Definition: Keyboard.h:114
static const Button Tilde
Definition: Keyboard.h:79
static const Button G
Definition: Keyboard.h:47
static const Button F9
Definition: Keyboard.h:96
static const Button W
Definition: Keyboard.h:63
static const Button Minus
Definition: Keyboard.h:77
static const Button Unknown
Definition: Keyboard.h:30
static const Button Two
Definition: Keyboard.h:68
static const Button S
Definition: Keyboard.h:59
static const Button F12
Definition: Keyboard.h:99
static const Button Down
Definition: Keyboard.h:115
static const Button Q
Definition: Keyboard.h:57
static const Button Comma
Definition: Keyboard.h:85
static const Button F6
Definition: Keyboard.h:93
static const Button U
Definition: Keyboard.h:61
static const Button I
Definition: Keyboard.h:49
static const Button L
Definition: Keyboard.h:52
static const Button K
Definition: Keyboard.h:51
static const Button LAlt
Definition: Keyboard.h:36
static const Button RShift
Definition: Keyboard.h:35
static const Button D
Definition: Keyboard.h:44
static const Button F17
Definition: Keyboard.h:104
static const Button F3
Definition: Keyboard.h:90
static const Button F22
Definition: Keyboard.h:109
static const Button C
Definition: Keyboard.h:43
static const Button Six
Definition: Keyboard.h:72
static const Button F2
Definition: Keyboard.h:89
static const Button LShift
Definition: Keyboard.h:34
Keyboard & operator=(Keyboard &&hid) noexcept=default
static const Button Equals
Definition: Keyboard.h:78
static const Button BackSlash
Definition: Keyboard.h:80
static const Button A
Definition: Keyboard.h:41
static const Button RightSquareBracket
Definition: Keyboard.h:82
static const Button Nine
Definition: Keyboard.h:75
static const Button Five
Definition: Keyboard.h:71
static const Button O
Definition: Keyboard.h:55
static const Button Space
Definition: Keyboard.h:40
static const Button F20
Definition: Keyboard.h:107
static const Button F10
Definition: Keyboard.h:97
static const Button F21
Definition: Keyboard.h:108
Definition: Anchor.h:6
unsigned int UInt_32
Definition: Types.h:49
char Char_8
Definition: Types.h:40