CommonLibVR
Loading...
Searching...
No Matches
PlayerInputHandler.h
Go to the documentation of this file.
1#pragma once
3
4namespace RE
5{
6 class ButtonEvent;
7 class InputEvent;
8 class MouseMoveEvent;
9 class PlayerControlsData;
10 class ThumbstickEvent;
11
13 {
14 public:
15 inline static constexpr auto RTTI = RTTI_PlayerInputHandler;
16 inline static constexpr auto VTABLE = VTABLE_PlayerInputHandler;
17
18 virtual ~PlayerInputHandler() = default; // 00
19
20 virtual bool CanProcess(InputEvent* a_event) = 0; // 01
21 virtual void ProcessThumbstick([[maybe_unused]] ThumbstickEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 02
22 virtual void ProcessMouseMove([[maybe_unused]] MouseMoveEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 03
23 virtual void ProcessButton([[maybe_unused]] ButtonEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 04
24
25#ifdef SKYRIMVR
26 virtual void Unk_05(void); // 05
27 virtual void Unk_06(void); // 05
28#endif
29
30 [[nodiscard]] bool IsInputEventHandlingEnabled() const;
31 void SetInputEventHandlingEnabled(bool a_enabled);
32
33 // members
35 std::uint8_t pad09{ 0 }; // 09
36 std::uint16_t pad0A{ 0 }; // 0A
37 std::uint32_t pad0C{ 0 }; // 0C
38#ifdef SKYRIMVR
39 std::uint64_t unk10; // 10
40 BSFixedString unk18; // 18
41 std::uint64_t unk20;
42#endif
43 private:
45 };
46#ifndef SKYRIMVR
47 static_assert(sizeof(PlayerInputHandler) == 0x10);
48#else
49 static_assert(sizeof(PlayerInputHandler) == 0x28);
50#endif
51}
#define KEEP_FOR_RE()
Definition PCH.h:517
Definition ButtonEvent.h:16
Definition InputEvent.h:25
Definition MouseMoveEvent.h:8
Definition PlayerControlsData.h:8
Definition PlayerInputHandler.h:13
virtual void ProcessButton(ButtonEvent *a_event, PlayerControlsData *a_data)
Definition PlayerInputHandler.h:23
static constexpr auto VTABLE
Definition PlayerInputHandler.h:16
std::uint32_t pad0C
Definition PlayerInputHandler.h:37
void SetInputEventHandlingEnabled(bool a_enabled)
virtual bool CanProcess(InputEvent *a_event)=0
virtual void ProcessThumbstick(ThumbstickEvent *a_event, PlayerControlsData *a_data)
Definition PlayerInputHandler.h:21
bool inputEventHandlingEnabled
Definition PlayerInputHandler.h:34
virtual void ProcessMouseMove(MouseMoveEvent *a_event, PlayerControlsData *a_data)
Definition PlayerInputHandler.h:22
static constexpr auto RTTI
Definition PlayerInputHandler.h:15
std::uint16_t pad0A
Definition PlayerInputHandler.h:36
virtual ~PlayerInputHandler()=default
std::uint8_t pad09
Definition PlayerInputHandler.h:35
bool IsInputEventHandlingEnabled() const
Definition ThumbstickEvent.h:8
Definition AbsorbEffect.h:6
constexpr REL::ID RTTI_PlayerInputHandler(static_cast< std::uint64_t >(686390))
constexpr std::array< REL::ID, 1 > VTABLE_PlayerInputHandler
Definition Offsets_VTABLE.h:12555