CommonLibSSE (Parapets fork)
BSInputDevice.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
RE/B/BSFixedString.h
"
4
#include "
RE/B/BSIInputDevice.h
"
5
#include "
RE/B/BSTHashMap.h
"
6
#include "
RE/I/InputDevices.h
"
7
8
namespace
RE
9
{
10
class
BSInputDevice
:
public
BSIInputDevice
11
{
12
public
:
13
inline
static
constexpr
auto
RTTI
=
RTTI_BSInputDevice
;
14
15
struct
InputButton
16
{
17
BSFixedString
name
;
// 00
18
float
heldDownSecs
;
// 08
19
std::uint32_t
keycode
;
// 0C
20
};
21
static_assert(
sizeof
(
InputButton
) == 0x10);
22
23
~BSInputDevice
()
override
;
// 00
24
25
// override (BSIInputDevice)
26
bool
GetButtonNameFromID
(std::int32_t a_id,
BSFixedString
& a_buttonName)
override
;
// 04
27
std::uint32_t
GetMappingKey
(
BSFixedString
a_mapping)
override
;
// 05
28
bool
GetKeyCodeFromID
(std::int32_t a_id, std::uint32_t& a_keyCode)
override
;
// 06
29
[[nodiscard]]
bool
IsEnabled
()
const override
;
// 07 - { return true; }
30
31
[[nodiscard]]
bool
IsKeyboard
()
const
;
32
[[nodiscard]]
bool
IsMouse
()
const
;
33
[[nodiscard]]
bool
IsGamepad
()
const
;
34
[[nodiscard]]
bool
IsPressed
(std::uint32_t a_keyCode)
const
;
35
36
// members
37
INPUT_DEVICE
device
;
// 08
38
std::uint32_t
pad0C
;
// 0C
39
BSTHashMap<std::uint32_t, InputButton*>
deviceButtons
;
// 10
40
BSTHashMap<BSFixedString, std::uint32_t>
buttonNameIDMap
;
// 40
41
};
42
static_assert(
sizeof
(
BSInputDevice
) == 0x70);
43
}
BSFixedString.h
BSIInputDevice.h
BSTHashMap.h
InputDevices.h
RE::BSIInputDevice
Definition:
BSIInputDevice.h:8
RE::BSInputDevice
Definition:
BSInputDevice.h:11
RE::BSInputDevice::GetKeyCodeFromID
bool GetKeyCodeFromID(std::int32_t a_id, std::uint32_t &a_keyCode) override
RE::BSInputDevice::IsEnabled
bool IsEnabled() const override
RE::BSInputDevice::GetMappingKey
std::uint32_t GetMappingKey(BSFixedString a_mapping) override
RE::BSInputDevice::IsMouse
bool IsMouse() const
RE::BSInputDevice::GetButtonNameFromID
bool GetButtonNameFromID(std::int32_t a_id, BSFixedString &a_buttonName) override
RE::BSInputDevice::IsGamepad
bool IsGamepad() const
RE::BSInputDevice::pad0C
std::uint32_t pad0C
Definition:
BSInputDevice.h:38
RE::BSInputDevice::IsKeyboard
bool IsKeyboard() const
RE::BSInputDevice::RTTI
static constexpr auto RTTI
Definition:
BSInputDevice.h:13
RE::BSInputDevice::IsPressed
bool IsPressed(std::uint32_t a_keyCode) const
RE::BSInputDevice::~BSInputDevice
~BSInputDevice() override
RE::BSInputDevice::device
INPUT_DEVICE device
Definition:
BSInputDevice.h:37
RE::BSInputDevice::deviceButtons
BSTHashMap< std::uint32_t, InputButton * > deviceButtons
Definition:
BSInputDevice.h:39
RE::BSInputDevice::buttonNameIDMap
BSTHashMap< BSFixedString, std::uint32_t > buttonNameIDMap
Definition:
BSInputDevice.h:40
RE::BSTScatterTable
Definition:
BSTHashMap.h:21
RE::detail::BSFixedString< char >
RE
Definition:
AbsorbEffect.h:6
RE::RTTI_BSInputDevice
constexpr REL::ID RTTI_BSInputDevice
Definition:
Offsets_RTTI.h:1872
RE::BSInputDevice::InputButton
Definition:
BSInputDevice.h:16
RE::BSInputDevice::InputButton::name
BSFixedString name
Definition:
BSInputDevice.h:17
RE::BSInputDevice::InputButton::heldDownSecs
float heldDownSecs
Definition:
BSInputDevice.h:18
RE::BSInputDevice::InputButton::keycode
std::uint32_t keycode
Definition:
BSInputDevice.h:19
RE::INPUT_DEVICES::INPUT_DEVICE
INPUT_DEVICE
Definition:
InputDevices.h:8
CommonLibSSE
include
RE
B
BSInputDevice.h
Generated by
1.9.1