CommonLibSSE NG
BSPCGamepadDeviceHandler.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSIInputDevice.h"
4 
5 namespace RE
6 {
7  class BSPCGamepadDeviceDelegate;
8 
10  {
11  public:
12  inline static constexpr auto RTTI = RTTI_BSPCGamepadDeviceHandler;
13  inline static constexpr auto VTABLE = VTABLE_BSPCGamepadDeviceHandler;
14 
15  ~BSPCGamepadDeviceHandler() override; // 00
16 
17  // override (BSIInputDevice)
18  void Initialize() override; // 01
19  void Process(float a_unk1) override; // 02
20  void Release() override; // 03
21  bool GetKeyMapping(std::uint32_t a_key, BSFixedString& a_mapping) override; // 04
22  std::uint32_t GetMappingKey(BSFixedString a_mapping) override; // 05
23  bool GetMappedKeycode(std::uint32_t a_key, std::uint32_t& outKeyCode) override; // 06
24  bool IsEnabled() const override; // 07 - { return currentPCGamePadDelegate != 0; }
25  void Reset() override; // 08
26 
27  void InitializeDelegate(); // called by Initialize() and Process() to initialize the delegate
28 
29  // members
31  protected:
32  friend class BSInputDeviceFactory;
34  };
35 
36  static_assert(sizeof(BSPCGamepadDeviceHandler) == 0x10);
37 }
Definition: BSIInputDevice.h:9
Definition: BSInputDeviceFactory.h:9
Definition: BSPCGamepadDeviceDelegate.h:10
Definition: BSPCGamepadDeviceHandler.h:10
bool IsEnabled() const override
BSPCGamepadDeviceDelegate * currentPCGamePadDelegate
Definition: BSPCGamepadDeviceHandler.h:30
bool GetMappedKeycode(std::uint32_t a_key, std::uint32_t &outKeyCode) override
static constexpr auto VTABLE
Definition: BSPCGamepadDeviceHandler.h:13
static constexpr auto RTTI
Definition: BSPCGamepadDeviceHandler.h:12
std::uint32_t GetMappingKey(BSFixedString a_mapping) override
void Process(float a_unk1) override
bool GetKeyMapping(std::uint32_t a_key, BSFixedString &a_mapping) override
Definition: AbsorbEffect.h:6
constexpr REL::VariantID RTTI_BSPCGamepadDeviceHandler(690316, 398171, 0x1f5fe30)
constexpr std::array< REL::VariantID, 1 > VTABLE_BSPCGamepadDeviceHandler
Definition: Offsets_VTABLE.h:5437