diff options
author | tomaszduda23 <[email protected]> | 2022-07-10 02:57:03 +0900 |
---|---|---|
committer | GitHub <[email protected]> | 2022-07-09 20:57:03 +0300 |
commit | 793edf8203ec7ea5aba934558ea26054628a5618 (patch) | |
tree | c9238136a8fa52d75d52c20bbb3860188729e9aa /hid/lib | |
parent | c840ea73068f855e1ebbf738f8ae9e62dde05286 (diff) |
add structures for drivers (#94)
Diffstat (limited to 'hid/lib')
-rw-r--r-- | hid/lib/drivers/driver.h | 42 | ||||
-rw-r--r-- | hid/lib/drivers/keyboard.h | 15 | ||||
-rw-r--r-- | hid/lib/drivers/mouse.h | 32 |
3 files changed, 84 insertions, 5 deletions
diff --git a/hid/lib/drivers/driver.h b/hid/lib/drivers/driver.h new file mode 100644 index 00000000..520c7456 --- /dev/null +++ b/hid/lib/drivers/driver.h @@ -0,0 +1,42 @@ +/***************************************************************************** +# # +# KVMD - The main PiKVM daemon. # +# # +# Copyright (C) 2018-2022 Maxim Devaev <[email protected]> # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see <https://www.gnu.org/licenses/>. # +# # +*****************************************************************************/ + +#pragma once + +#include <stdint.h> + +namespace DRIVERS { + + enum type { + USB_MOUSE_ABSOLUTE, + USB_MOUSE_RELATIVE, + USB_MOUSE_ABSOLUTE_WIN98, + }; + + class Driver { + public: + Driver(type _type) : _type(_type) {} + uint8_t getType() { return _type; } + + private: + type _type; + }; +} diff --git a/hid/lib/drivers/keyboard.h b/hid/lib/drivers/keyboard.h index fe724247..44ffe61a 100644 --- a/hid/lib/drivers/keyboard.h +++ b/hid/lib/drivers/keyboard.h @@ -21,9 +21,14 @@ #pragma once +#include <stdint.h> +#include "driver.h" -typedef struct { - bool caps; - bool scroll; - bool num; -} KeyboardLedsState; +namespace DRIVERS { + + typedef struct { + bool caps; + bool scroll; + bool num; + } KeyboardLedsState; +} diff --git a/hid/lib/drivers/mouse.h b/hid/lib/drivers/mouse.h new file mode 100644 index 00000000..8f76b041 --- /dev/null +++ b/hid/lib/drivers/mouse.h @@ -0,0 +1,32 @@ +/***************************************************************************** +# # +# KVMD - The main PiKVM daemon. # +# # +# Copyright (C) 2018-2022 Maxim Devaev <[email protected]> # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see <https://www.gnu.org/licenses/>. # +# # +*****************************************************************************/ + +#pragma once + +#include <stdint.h> +#include "driver.h" + +namespace DRIVERS { + + class Mouse : public Driver { + using Driver::Driver; + }; +} |