CommonLibSSE NG
BSInputEventQueue.h
Go to the documentation of this file.
1
#pragma once
2
3
#include "
RE/B/BSTSingleton.h
"
4
#include "
RE/B/ButtonEvent.h
"
5
#include "
RE/C/CharEvent.h
"
6
#include "
RE/D/DeviceConnectEvent.h
"
7
#include "
RE/K/KinectEvent.h
"
8
#include "
RE/M/MouseMoveEvent.h
"
9
#include "
RE/T/ThumbstickEvent.h
"
10
11
namespace
RE
12
{
13
class
BSInputEventQueue
:
public
BSTSingletonSDM
<BSInputEventQueue>
14
{
15
public
:
16
inline
static
constexpr std::uint8_t
MAX_BUTTON_EVENTS
= 10;
17
inline
static
constexpr std::uint8_t
MAX_CHAR_EVENTS
= 5;
18
inline
static
constexpr std::uint8_t
MAX_MOUSE_EVENTS
= 1;
19
inline
static
constexpr std::uint8_t
MAX_THUMBSTICK_EVENTS
= 2;
20
inline
static
constexpr std::uint8_t
MAX_CONNECT_EVENTS
= 1;
21
inline
static
constexpr std::uint8_t
MAX_KINECT_EVENTS
= 1;
22
23
static
BSInputEventQueue
*
GetSingleton
();
24
25
void
AddButtonEvent
(
INPUT_DEVICE
a_device, std::int32_t a_id,
float
a_value,
float
a_duration);
26
void
AddCharEvent
(std::uint32_t a_keyCode);
27
void
AddMouseMoveEvent
(std::int32_t a_mouseInputX, std::int32_t a_mouseInputY);
28
void
AddThumbstickEvent
(
ThumbstickEvent::InputType
a_id,
float
a_xValue,
float
a_yValue);
29
void
AddConnectEvent
(
INPUT_DEVICE
a_device,
bool
a_connected);
30
void
AddKinectEvent
(
const
BSFixedString
& a_userEvent,
const
BSFixedString
& a_heard);
31
void
PushOntoInputQueue
(
InputEvent
* a_event);
32
void
ClearInputQueue
();
33
34
// members
35
std::uint8_t
pad001
;
// 001
36
std::uint16_t
pad002
;
// 002
37
std::uint32_t
buttonEventCount
;
// 004
38
std::uint32_t
charEventCount
;
// 008
39
std::uint32_t
mouseEventCount
;
// 00C
40
std::uint32_t
thumbstickEventCount
;
// 010
41
std::uint32_t
connectEventCount
;
// 014
42
std::uint32_t
kinectEventCount
;
// 018
43
std::uint32_t
pad01C
;
// 01C
44
ButtonEvent
buttonEvents
[
MAX_BUTTON_EVENTS
];
// 020
45
CharEvent
charEvents
[
MAX_CHAR_EVENTS
];
// 200
46
MouseMoveEvent
mouseEvents
[
MAX_MOUSE_EVENTS
];
// 2A0
47
ThumbstickEvent
thumbstickEvents
[
MAX_THUMBSTICK_EVENTS
];
// 2D0
48
DeviceConnectEvent
connectEvents
[
MAX_CONNECT_EVENTS
];
// 330
49
KinectEvent
kinectEvents
[
MAX_KINECT_EVENTS
];
// 350
50
InputEvent
*
queueHead
;
// 380
51
InputEvent
*
queueTail
;
// 388
52
};
53
static_assert(
sizeof
(
BSInputEventQueue
) == 0x390);
54
}
BSTSingleton.h
ButtonEvent.h
CharEvent.h
DeviceConnectEvent.h
KinectEvent.h
MouseMoveEvent.h
ThumbstickEvent.h
RE::BSInputEventQueue
Definition:
BSInputEventQueue.h:14
RE::BSInputEventQueue::kinectEvents
KinectEvent kinectEvents[MAX_KINECT_EVENTS]
Definition:
BSInputEventQueue.h:49
RE::BSInputEventQueue::AddCharEvent
void AddCharEvent(std::uint32_t a_keyCode)
RE::BSInputEventQueue::kinectEventCount
std::uint32_t kinectEventCount
Definition:
BSInputEventQueue.h:42
RE::BSInputEventQueue::buttonEventCount
std::uint32_t buttonEventCount
Definition:
BSInputEventQueue.h:37
RE::BSInputEventQueue::MAX_MOUSE_EVENTS
static constexpr std::uint8_t MAX_MOUSE_EVENTS
Definition:
BSInputEventQueue.h:18
RE::BSInputEventQueue::MAX_BUTTON_EVENTS
static constexpr std::uint8_t MAX_BUTTON_EVENTS
Definition:
BSInputEventQueue.h:16
RE::BSInputEventQueue::ClearInputQueue
void ClearInputQueue()
RE::BSInputEventQueue::AddKinectEvent
void AddKinectEvent(const BSFixedString &a_userEvent, const BSFixedString &a_heard)
RE::BSInputEventQueue::pad001
std::uint8_t pad001
Definition:
BSInputEventQueue.h:35
RE::BSInputEventQueue::GetSingleton
static BSInputEventQueue * GetSingleton()
RE::BSInputEventQueue::queueTail
InputEvent * queueTail
Definition:
BSInputEventQueue.h:51
RE::BSInputEventQueue::AddConnectEvent
void AddConnectEvent(INPUT_DEVICE a_device, bool a_connected)
RE::BSInputEventQueue::charEventCount
std::uint32_t charEventCount
Definition:
BSInputEventQueue.h:38
RE::BSInputEventQueue::pad01C
std::uint32_t pad01C
Definition:
BSInputEventQueue.h:43
RE::BSInputEventQueue::charEvents
CharEvent charEvents[MAX_CHAR_EVENTS]
Definition:
BSInputEventQueue.h:45
RE::BSInputEventQueue::MAX_CHAR_EVENTS
static constexpr std::uint8_t MAX_CHAR_EVENTS
Definition:
BSInputEventQueue.h:17
RE::BSInputEventQueue::mouseEvents
MouseMoveEvent mouseEvents[MAX_MOUSE_EVENTS]
Definition:
BSInputEventQueue.h:46
RE::BSInputEventQueue::pad002
std::uint16_t pad002
Definition:
BSInputEventQueue.h:36
RE::BSInputEventQueue::MAX_KINECT_EVENTS
static constexpr std::uint8_t MAX_KINECT_EVENTS
Definition:
BSInputEventQueue.h:21
RE::BSInputEventQueue::connectEventCount
std::uint32_t connectEventCount
Definition:
BSInputEventQueue.h:41
RE::BSInputEventQueue::mouseEventCount
std::uint32_t mouseEventCount
Definition:
BSInputEventQueue.h:39
RE::BSInputEventQueue::thumbstickEvents
ThumbstickEvent thumbstickEvents[MAX_THUMBSTICK_EVENTS]
Definition:
BSInputEventQueue.h:47
RE::BSInputEventQueue::PushOntoInputQueue
void PushOntoInputQueue(InputEvent *a_event)
RE::BSInputEventQueue::queueHead
InputEvent * queueHead
Definition:
BSInputEventQueue.h:50
RE::BSInputEventQueue::connectEvents
DeviceConnectEvent connectEvents[MAX_CONNECT_EVENTS]
Definition:
BSInputEventQueue.h:48
RE::BSInputEventQueue::AddMouseMoveEvent
void AddMouseMoveEvent(std::int32_t a_mouseInputX, std::int32_t a_mouseInputY)
RE::BSInputEventQueue::MAX_THUMBSTICK_EVENTS
static constexpr std::uint8_t MAX_THUMBSTICK_EVENTS
Definition:
BSInputEventQueue.h:19
RE::BSInputEventQueue::AddThumbstickEvent
void AddThumbstickEvent(ThumbstickEvent::InputType a_id, float a_xValue, float a_yValue)
RE::BSInputEventQueue::buttonEvents
ButtonEvent buttonEvents[MAX_BUTTON_EVENTS]
Definition:
BSInputEventQueue.h:44
RE::BSInputEventQueue::MAX_CONNECT_EVENTS
static constexpr std::uint8_t MAX_CONNECT_EVENTS
Definition:
BSInputEventQueue.h:20
RE::BSInputEventQueue::AddButtonEvent
void AddButtonEvent(INPUT_DEVICE a_device, std::int32_t a_id, float a_value, float a_duration)
RE::BSInputEventQueue::thumbstickEventCount
std::uint32_t thumbstickEventCount
Definition:
BSInputEventQueue.h:40
RE::ButtonEvent
Definition:
ButtonEvent.h:11
RE::CharEvent
Definition:
CharEvent.h:8
RE::DeviceConnectEvent
Definition:
DeviceConnectEvent.h:8
RE::InputEvent
Definition:
InputEvent.h:25
RE::KinectEvent
Definition:
KinectEvent.h:9
RE::MouseMoveEvent
Definition:
MouseMoveEvent.h:8
RE::ThumbstickEvent
Definition:
ThumbstickEvent.h:8
RE::detail::BSFixedString< char >
RE
Definition:
AbsorbEffect.h:6
RE::BSTSingletonSDM
Definition:
BSTSingleton.h:50
RE::INPUT_DEVICES::INPUT_DEVICE
INPUT_DEVICE
Definition:
InputDevices.h:8
RE::ThumbstickEvent::InputTypes::InputType
InputType
Definition:
ThumbstickEvent.h:15
CommonLibSSE-NG
include
RE
B
BSInputEventQueue.h
Generated by
1.9.1