mirror of
https://git.suyu.dev/suyu/suyu.git
synced 2024-12-27 19:00:58 +01:00
HID: Moved some docstrings to the header.
This commit is contained in:
parent
83a66dd701
commit
3229b048d9
2 changed files with 16 additions and 24 deletions
|
@ -32,7 +32,7 @@ static s16 next_pad_circle_y = 0;
|
|||
/**
|
||||
* Gets a pointer to the PadData structure inside HID shared memory
|
||||
*/
|
||||
static inline SharedMem* GetPadData() {
|
||||
static inline SharedMem* GetSharedMem() {
|
||||
if (g_shared_mem == nullptr)
|
||||
return nullptr;
|
||||
return reinterpret_cast<SharedMem*>(g_shared_mem->GetPointer().ValueOr(nullptr));
|
||||
|
@ -66,28 +66,18 @@ static void UpdateNextCirclePadState() {
|
|||
next_pad_circle_y += next_state.circle_up ? max_value : 0x0;
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a Pad state (button or button combo) as pressed
|
||||
*/
|
||||
void PadButtonPress(const PadState& pad_state) {
|
||||
next_state.hex |= pad_state.hex;
|
||||
UpdateNextCirclePadState();
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets a Pad state (button or button combo) as released
|
||||
*/
|
||||
void PadButtonRelease(const PadState& pad_state) {
|
||||
next_state.hex &= ~pad_state.hex;
|
||||
UpdateNextCirclePadState();
|
||||
}
|
||||
|
||||
/**
|
||||
* Called after all Pad changes to be included in this update have been made,
|
||||
* including both Pad key changes and analog circle Pad changes.
|
||||
*/
|
||||
void PadUpdateComplete() {
|
||||
SharedMem* shared_mem = GetPadData();
|
||||
SharedMem* shared_mem = GetSharedMem();
|
||||
|
||||
if (shared_mem == nullptr)
|
||||
return;
|
||||
|
@ -135,17 +125,6 @@ void PadUpdateComplete() {
|
|||
g_event_pad_or_touch_2->Signal();
|
||||
}
|
||||
|
||||
// If we just updated index 0, provide a new timestamp
|
||||
if (pad_data->index == 0) {
|
||||
pad_data->index_reset_ticks_previous = pad_data->index_reset_ticks;
|
||||
pad_data->index_reset_ticks = (s64)Core::g_app_core->GetTicks();
|
||||
}
|
||||
|
||||
// Signal both handles when there's an update to Pad or touch
|
||||
g_event_pad_or_touch_1->Signal();
|
||||
g_event_pad_or_touch_2->Signal();
|
||||
}
|
||||
|
||||
void GetIPCHandles(Service::Interface* self) {
|
||||
u32* cmd_buff = Kernel::GetCommandBuffer();
|
||||
|
||||
|
|
|
@ -162,9 +162,22 @@ const PadState PAD_CIRCLE_DOWN = {{1u << 31}};
|
|||
*/
|
||||
void GetIPCHandles(Interface* self);
|
||||
|
||||
// Methods for updating the HID module's state
|
||||
/**
|
||||
* Sets a Pad state (button or button combo) as pressed
|
||||
* @param pad_state PadState data indicating which buttons have been pressed
|
||||
*/
|
||||
void PadButtonPress(const PadState& pad_state);
|
||||
|
||||
/**
|
||||
* Sets a Pad state (button or button combo) as released
|
||||
* @param pad_state PadState data indicating which buttons have been released
|
||||
*/
|
||||
void PadButtonRelease(const PadState& pad_state);
|
||||
|
||||
/**
|
||||
* Called after all Pad changes to be included in this update have been made, including both Pad
|
||||
* key changes and analog circle Pad changes.
|
||||
*/
|
||||
void PadUpdateComplete();
|
||||
|
||||
void HIDInit();
|
||||
|
|
Loading…
Reference in a new issue