CommonLibSSE (Parapets fork)
InputEvent.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
RE/B/BSFixedString.h
"
4
#include "
RE/I/InputDevices.h
"
5
6
namespace
RE
7
{
8
enum class
INPUT_EVENT_TYPE
9
{
10
kButton
= 0,
11
kMouseMove
,
12
kChar
,
13
kThumbstick
,
14
kDeviceConnect
,
15
kKinect
,
16
#ifdef SKYRIMVR
17
kVrWandTouchpadPosition,
18
kVrWandTouchpadSwipe,
19
#endif
20
};
21
22
class
ButtonEvent;
23
class
IDEvent;
24
25
class
InputEvent
26
{
27
public
:
28
inline
static
constexpr
auto
RTTI
=
RTTI_InputEvent
;
29
30
virtual
~InputEvent
();
// 00
31
32
[[nodiscard]]
virtual
bool
HasIDCode
()
const
;
// 01 - { return false; }
33
[[nodiscard]]
virtual
const
BSFixedString
&
QUserEvent
()
const
;
// 02 - { return ""; }
34
35
[[nodiscard]] constexpr
INPUT_EVENT_TYPE
GetEventType
() const noexcept {
return
*
eventType
; }
36
[[nodiscard]] constexpr
INPUT_DEVICE
GetDevice
() const noexcept {
return
*
device
; }
37
38
[[nodiscard]]
ButtonEvent
*
AsButtonEvent
();
39
[[nodiscard]]
const
ButtonEvent
*
AsButtonEvent
()
const
;
40
41
[[nodiscard]]
IDEvent
*
AsIDEvent
();
42
[[nodiscard]]
const
IDEvent
*
AsIDEvent
()
const
;
43
44
// members
45
stl::enumeration<INPUT_DEVICE, std::uint32_t>
device
;
// 08
46
stl::enumeration<INPUT_EVENT_TYPE, std::uint32_t>
eventType
;
// 0C
47
InputEvent
*
next
;
// 10
48
};
49
static_assert(
sizeof
(
InputEvent
) == 0x18);
50
}
BSFixedString.h
InputDevices.h
RE::ButtonEvent
Definition:
ButtonEvent.h:15
RE::IDEvent
Definition:
IDEvent.h:9
RE::InputEvent
Definition:
InputEvent.h:26
RE::InputEvent::~InputEvent
virtual ~InputEvent()
RE::InputEvent::RTTI
static constexpr auto RTTI
Definition:
InputEvent.h:28
RE::InputEvent::device
stl::enumeration< INPUT_DEVICE, std::uint32_t > device
Definition:
InputEvent.h:45
RE::InputEvent::GetEventType
constexpr INPUT_EVENT_TYPE GetEventType() const noexcept
Definition:
InputEvent.h:35
RE::InputEvent::HasIDCode
virtual bool HasIDCode() const
RE::InputEvent::eventType
stl::enumeration< INPUT_EVENT_TYPE, std::uint32_t > eventType
Definition:
InputEvent.h:46
RE::InputEvent::AsButtonEvent
ButtonEvent * AsButtonEvent()
RE::InputEvent::AsIDEvent
IDEvent * AsIDEvent()
RE::InputEvent::GetDevice
constexpr INPUT_DEVICE GetDevice() const noexcept
Definition:
InputEvent.h:36
RE::InputEvent::QUserEvent
virtual const BSFixedString & QUserEvent() const
RE::InputEvent::AsIDEvent
const IDEvent * AsIDEvent() const
RE::InputEvent::AsButtonEvent
const ButtonEvent * AsButtonEvent() const
RE::InputEvent::next
InputEvent * next
Definition:
InputEvent.h:47
RE::detail::BSFixedString< char >
SKSE::stl::enumeration< INPUT_DEVICE, std::uint32_t >
RE
Definition:
AbsorbEffect.h:6
RE::RTTI_InputEvent
constexpr REL::ID RTTI_InputEvent
Definition:
Offsets_RTTI.h:5064
RE::INPUT_EVENT_TYPE
INPUT_EVENT_TYPE
Definition:
InputEvent.h:9
RE::INPUT_EVENT_TYPE::kThumbstick
@ kThumbstick
RE::INPUT_EVENT_TYPE::kButton
@ kButton
RE::INPUT_EVENT_TYPE::kDeviceConnect
@ kDeviceConnect
RE::INPUT_EVENT_TYPE::kMouseMove
@ kMouseMove
RE::INPUT_EVENT_TYPE::kKinect
@ kKinect
RE::INPUT_EVENT_TYPE::kChar
@ kChar
RE::INPUT_DEVICES::INPUT_DEVICE
INPUT_DEVICE
Definition:
InputDevices.h:8
CommonLibSSE
include
RE
I
InputEvent.h
Generated by
1.9.1