CommonLibSSE (powerof3)
BSWin32GamepadDevice.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace RE
6 {
8  {
9  public:
10  inline static constexpr auto RTTI = RTTI_BSWin32GamepadDevice;
11 
12  struct Keys
13  {
14  enum Key : std::uint32_t
15  {
16  kUp = 0x0001,
17  kDown = 0x0002,
18  kLeft = 0x0004,
19  kRight = 0x0008,
20  kStart = 0x0010,
21  kBack = 0x0020,
22  kLeftThumb = 0x0040,
23  kRightThumb = 0x0080,
24  kLeftShoulder = 0x0100,
25  kRightShoulder = 0x0200,
26 
27  kA = 0x1000,
28  kB = 0x2000,
29  kX = 0x4000,
30  kY = 0x8000,
31 
32  kLeftTrigger = 0x0009,
33  kRightTrigger = 0x000A
34  };
35  };
36  using Key = Keys::Key;
37 
38  ~BSWin32GamepadDevice() override; // 00
39 
40  // override (BSPCGamepadDeviceDelegate)
41  void Initialize() override; // 01
42  void Process(float a_arg1) override; // 02
43  void Unk_03(void) override; // 03 - { return; }
44  void Reset() override; // 08 - { std::memset(&unk0D8, 0, 0x50); }
45  void Unk_09(void) override; // 09 - { return; }
46 
47  // members
48  std::uint32_t unk0D8; // 0D8
49  std::uint8_t unk0DC; // 0DC
50  std::uint8_t curState; // 0DD
51  std::uint16_t unk0DE; // 0DE
52  std::uint64_t unk0E0; // 0E0
53  std::uint64_t unk0E8; // 0E8
54  float curLX; // 0F0
55  float curLY; // 0F4
56  float curRX; // 0F8
57  float curRY; // 0FC
58  std::uint32_t unk100; // 100
59  std::uint8_t unk104; // 104
60  std::uint8_t prevState; // 105
61  std::uint16_t unk106; // 106
62  std::uint64_t unk108; // 108
63  std::uint64_t unk110; // 110
64  float prevLX; // 118
65  float prevLY; // 11C
66  float prevRX; // 120
67  float prevRY; // 124
68  };
69  static_assert(sizeof(BSWin32GamepadDevice) == 0x128);
70 }
Definition: BSPCGamepadDeviceDelegate.h:10
Definition: BSWin32GamepadDevice.h:8
std::uint8_t curState
Definition: BSWin32GamepadDevice.h:50
std::uint64_t unk108
Definition: BSWin32GamepadDevice.h:62
std::uint16_t unk106
Definition: BSWin32GamepadDevice.h:61
std::uint16_t unk0DE
Definition: BSWin32GamepadDevice.h:51
std::uint32_t unk100
Definition: BSWin32GamepadDevice.h:58
float curRY
Definition: BSWin32GamepadDevice.h:57
float prevLX
Definition: BSWin32GamepadDevice.h:64
~BSWin32GamepadDevice() override
void Unk_09(void) override
std::uint32_t unk0D8
Definition: BSWin32GamepadDevice.h:48
float curLX
Definition: BSWin32GamepadDevice.h:54
std::uint64_t unk110
Definition: BSWin32GamepadDevice.h:63
float prevRY
Definition: BSWin32GamepadDevice.h:67
std::uint64_t unk0E8
Definition: BSWin32GamepadDevice.h:53
static constexpr auto RTTI
Definition: BSWin32GamepadDevice.h:10
std::uint64_t unk0E0
Definition: BSWin32GamepadDevice.h:52
float prevLY
Definition: BSWin32GamepadDevice.h:65
void Process(float a_arg1) override
std::uint8_t unk104
Definition: BSWin32GamepadDevice.h:59
float prevRX
Definition: BSWin32GamepadDevice.h:66
float curLY
Definition: BSWin32GamepadDevice.h:55
std::uint8_t prevState
Definition: BSWin32GamepadDevice.h:60
std::uint8_t unk0DC
Definition: BSWin32GamepadDevice.h:49
void Initialize() override
float curRX
Definition: BSWin32GamepadDevice.h:56
void Reset() override
void Unk_03(void) override
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSWin32GamepadDevice
Definition: Offsets_RTTI.h:3643
Definition: BSWin32GamepadDevice.h:13
Key
Definition: BSWin32GamepadDevice.h:15
@ kUp
Definition: BSWin32GamepadDevice.h:16
@ kRightThumb
Definition: BSWin32GamepadDevice.h:23
@ kRight
Definition: BSWin32GamepadDevice.h:19
@ kB
Definition: BSWin32GamepadDevice.h:28
@ kLeftThumb
Definition: BSWin32GamepadDevice.h:22
@ kDown
Definition: BSWin32GamepadDevice.h:17
@ kA
Definition: BSWin32GamepadDevice.h:27
@ kLeft
Definition: BSWin32GamepadDevice.h:18
@ kBack
Definition: BSWin32GamepadDevice.h:21
@ kY
Definition: BSWin32GamepadDevice.h:30
@ kRightTrigger
Definition: BSWin32GamepadDevice.h:33
@ kLeftTrigger
Definition: BSWin32GamepadDevice.h:32
@ kRightShoulder
Definition: BSWin32GamepadDevice.h:25
@ kX
Definition: BSWin32GamepadDevice.h:29
@ kStart
Definition: BSWin32GamepadDevice.h:20
@ kLeftShoulder
Definition: BSWin32GamepadDevice.h:24