diff options
Diffstat (limited to 'opentrack-logic/dinput.hpp')
-rw-r--r-- | opentrack-logic/dinput.hpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/opentrack-logic/dinput.hpp b/opentrack-logic/dinput.hpp new file mode 100644 index 00000000..9300f39f --- /dev/null +++ b/opentrack-logic/dinput.hpp @@ -0,0 +1,27 @@ +#pragma once + +#ifdef _WIN32 + +#ifndef DIRECTINPUT_VERSION +# define DIRECTINPUT_VERSION 0x800 +#endif +#include <dinput.h> +#include <windows.h> + +struct dinput_handle final +{ + using di_t = LPDIRECTINPUT8; +private: + static dinput_handle self; + dinput_handle(); + ~dinput_handle(); + static di_t init_di(); + di_t handle; +public: + static di_t make_di(); + + dinput_handle(const dinput_handle&) = delete; + dinput_handle(dinput_handle&&) = delete; +}; + +#endif |