CommonLibSSE NG
BSWin32MouseDevice.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSAtomic.h"
4 #include "RE/B/BSMouseDevice.h"
5 
6 #include "REX/W32/DINPUT.h"
7 
8 namespace RE
9 {
11  {
12  public:
13  inline static constexpr auto RTTI = RTTI_BSWin32MouseDevice;
14  inline static constexpr auto VTABLE = VTABLE_BSWin32MouseDevice;
15 
16  struct Keys
17  {
18  enum Key : std::uint32_t
19  {
30  };
31  };
32  using Key = Keys::Key;
33 
34  ~BSWin32MouseDevice() override; // 00
35 
36  // override (BSMouseDevice)
37  void Initialize() override; // 01
38  void Process(float a_arg1) override; // 02
39  void Release() override; // 03
40  void Reset() override; // 08
41  void Reinitialize(void) override; // 09
42 
43  // members
44  REX::W32::IDirectInputDevice8A* dInputDevice; // 78
47  bool notInitialized; // A8
49 
50  protected:
52  };
53  static_assert(sizeof(BSWin32MouseDevice) == 0xB8);
54 }
Definition: BSMouseDevice.h:8
Definition: BSAtomic.h:51
Definition: BSWin32MouseDevice.h:11
void Reset() override
void Initialize() override
static constexpr auto VTABLE
Definition: BSWin32MouseDevice.h:14
~BSWin32MouseDevice() override
void Reinitialize(void) override
void Process(float a_arg1) override
BSSpinLock reinitializeLock
Definition: BSWin32MouseDevice.h:48
REX::W32::DIMOUSESTATE2 dInputNextState
Definition: BSWin32MouseDevice.h:46
bool notInitialized
Definition: BSWin32MouseDevice.h:47
void Release() override
REX::W32::DIMOUSESTATE2 dInputPrevState
Definition: BSWin32MouseDevice.h:45
static constexpr auto RTTI
Definition: BSWin32MouseDevice.h:13
REX::W32::IDirectInputDevice8A * dInputDevice
Definition: BSWin32MouseDevice.h:44
Definition: AbsorbEffect.h:6
constexpr std::array< REL::VariantID, 1 > VTABLE_BSWin32MouseDevice
Definition: Offsets_VTABLE.h:5436
constexpr REL::VariantID RTTI_BSWin32MouseDevice(690313, 398168, 0x1f5fda8)
Definition: DINPUT.h:394
Definition: BSWin32MouseDevice.h:17
Key
Definition: BSWin32MouseDevice.h:19
@ kMiddleButton
Definition: BSWin32MouseDevice.h:22
@ kButton7
Definition: BSWin32MouseDevice.h:27
@ kWheelUp
Definition: BSWin32MouseDevice.h:28
@ kButton6
Definition: BSWin32MouseDevice.h:26
@ kButton5
Definition: BSWin32MouseDevice.h:25
@ kRightButton
Definition: BSWin32MouseDevice.h:21
@ kButton3
Definition: BSWin32MouseDevice.h:23
@ kLeftButton
Definition: BSWin32MouseDevice.h:20
@ kWheelDown
Definition: BSWin32MouseDevice.h:29
@ kButton4
Definition: BSWin32MouseDevice.h:24