CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
BSWin32KeyboardDevice.h
Go to the documentation of this file.
1#pragma once
2
4
5#include "REX/W32/DINPUT.h"
6
7namespace RE
8{
10 {
11 public:
12 inline static constexpr auto RTTI = RTTI_BSWin32KeyboardDevice;
13 inline static constexpr auto VTABLE = VTABLE_BSWin32KeyboardDevice;
14
15 ~BSWin32KeyboardDevice() override; // 00
16
17 // override (BSKeyboardDevice)
18 void Initialize() override; // 01
19 void Process(float a_unk1) override; // 02
20 void Release() override; // 03
21 void Reset() override; // 08 - { std::memset(&curState, 0, 0x200); }
22 void Unk_09(void) override; // 09 - { return; }
23 void Unk_0A(void) override; // 0A - { return; }
24
25 [[nodiscard]] bool IsPressed(std::uint32_t a_keyCode) const;
26 [[nodiscard]] Key RemapNumpadKey(REX::W32::DIK a_key);
27
28 // members
29 REX::W32::IDirectInput8A* dInputDevice; // 070
31 std::uint8_t prevState[0x100]; // 168
32 std::uint8_t curState[0x100]; // 268
33 bool capsLockOn; // 368
34
35 protected:
37 };
38 static_assert(offsetof(BSWin32KeyboardDevice, prevState) == 0x168);
39 static_assert(offsetof(BSWin32KeyboardDevice, curState) == 0x268);
40 static_assert(sizeof(BSWin32KeyboardDevice) == 0x370);
41}
Definition BSKeyboardDevice.h:8
Definition BSWin32KeyboardDevice.h:10
void Unk_0A(void) override
bool IsPressed(std::uint32_t a_keyCode) const
REX::W32::DIDEVICEOBJECTDATA diObjData[10]
Definition BSWin32KeyboardDevice.h:30
void Initialize() override
void Process(float a_unk1) override
void Unk_09(void) override
Key RemapNumpadKey(REX::W32::DIK a_key)
~BSWin32KeyboardDevice() override
std::uint8_t prevState[0x100]
Definition BSWin32KeyboardDevice.h:31
REX::W32::IDirectInput8A * dInputDevice
Definition BSWin32KeyboardDevice.h:29
static constexpr auto RTTI
Definition BSWin32KeyboardDevice.h:12
std::uint8_t curState[0x100]
Definition BSWin32KeyboardDevice.h:32
bool capsLockOn
Definition BSWin32KeyboardDevice.h:33
void Release() override
static constexpr auto VTABLE
Definition BSWin32KeyboardDevice.h:13
DIK
Definition DINPUT.h:16
Definition AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BSWin32KeyboardDevice
Definition Offsets_VTABLE.h:10572
constexpr REL::ID RTTI_BSWin32KeyboardDevice(static_cast< std::uint64_t >(690311))
Definition DINPUT.h:309
Key
Definition BSKeyboardDevice.h:16