CommonLibSSE (powerof3)
PlayerInputHandler.h
Go to the documentation of this file.
1 #pragma once
2 
3 namespace RE
4 {
5  class ButtonEvent;
6  class InputEvent;
7  class MouseMoveEvent;
8  class PlayerControlsData;
9  class ThumbstickEvent;
10 
12  {
13  public:
14  inline static constexpr auto RTTI = RTTI_PlayerInputHandler;
15  inline static constexpr auto VTABLE = VTABLE_PlayerInputHandler;
16 
17  virtual ~PlayerInputHandler() = default; // 00
18 
19  virtual bool CanProcess(InputEvent* a_event) = 0; // 01
20  virtual void ProcessThumbstick([[maybe_unused]] ThumbstickEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 02
21  virtual void ProcessMouseMove([[maybe_unused]] MouseMoveEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 03
22  virtual void ProcessButton([[maybe_unused]] ButtonEvent* a_event, [[maybe_unused]] PlayerControlsData* a_data) {} // 04
23 
24  [[nodiscard]] bool IsInputEventHandlingEnabled() const;
25  void SetInputEventHandlingEnabled(bool a_enabled);
26 
27  // members
28  bool inputEventHandlingEnabled{ true }; // 08
29  std::uint8_t pad09{ 0 }; // 09
30  std::uint16_t pad0A{ 0 }; // 0A
31  std::uint32_t pad0C{ 0 }; // 0C
32  };
33  static_assert(sizeof(PlayerInputHandler) == 0x10);
34 }
Definition: ButtonEvent.h:11
Definition: InputEvent.h:25
Definition: MouseMoveEvent.h:8
Definition: PlayerControlsData.h:8
Definition: PlayerInputHandler.h:12
virtual void ProcessMouseMove([[maybe_unused]] MouseMoveEvent *a_event, [[maybe_unused]] PlayerControlsData *a_data)
Definition: PlayerInputHandler.h:21
static constexpr auto VTABLE
Definition: PlayerInputHandler.h:15
std::uint32_t pad0C
Definition: PlayerInputHandler.h:31
void SetInputEventHandlingEnabled(bool a_enabled)
virtual bool CanProcess(InputEvent *a_event)=0
virtual void ProcessButton([[maybe_unused]] ButtonEvent *a_event, [[maybe_unused]] PlayerControlsData *a_data)
Definition: PlayerInputHandler.h:22
bool inputEventHandlingEnabled
Definition: PlayerInputHandler.h:28
static constexpr auto RTTI
Definition: PlayerInputHandler.h:14
std::uint16_t pad0A
Definition: PlayerInputHandler.h:30
virtual ~PlayerInputHandler()=default
std::uint8_t pad09
Definition: PlayerInputHandler.h:29
virtual void ProcessThumbstick([[maybe_unused]] ThumbstickEvent *a_event, [[maybe_unused]] PlayerControlsData *a_data)
Definition: PlayerInputHandler.h:20
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