forked from suyu/suyu
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
|
* Gets a pointer to the PadData structure inside HID shared memory
|
||||||
*/
|
*/
|
||||||
static inline SharedMem* GetPadData() {
|
static inline SharedMem* GetSharedMem() {
|
||||||
if (g_shared_mem == nullptr)
|
if (g_shared_mem == nullptr)
|
||||||
return nullptr;
|
return nullptr;
|
||||||
return reinterpret_cast<SharedMem*>(g_shared_mem->GetPointer().ValueOr(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;
|
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) {
|
void PadButtonPress(const PadState& pad_state) {
|
||||||
next_state.hex |= pad_state.hex;
|
next_state.hex |= pad_state.hex;
|
||||||
UpdateNextCirclePadState();
|
UpdateNextCirclePadState();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
|
||||||
* Sets a Pad state (button or button combo) as released
|
|
||||||
*/
|
|
||||||
void PadButtonRelease(const PadState& pad_state) {
|
void PadButtonRelease(const PadState& pad_state) {
|
||||||
next_state.hex &= ~pad_state.hex;
|
next_state.hex &= ~pad_state.hex;
|
||||||
UpdateNextCirclePadState();
|
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() {
|
void PadUpdateComplete() {
|
||||||
SharedMem* shared_mem = GetPadData();
|
SharedMem* shared_mem = GetSharedMem();
|
||||||
|
|
||||||
if (shared_mem == nullptr)
|
if (shared_mem == nullptr)
|
||||||
return;
|
return;
|
||||||
|
@ -135,17 +125,6 @@ void PadUpdateComplete() {
|
||||||
g_event_pad_or_touch_2->Signal();
|
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) {
|
void GetIPCHandles(Service::Interface* self) {
|
||||||
u32* cmd_buff = Kernel::GetCommandBuffer();
|
u32* cmd_buff = Kernel::GetCommandBuffer();
|
||||||
|
|
||||||
|
|
|
@ -162,9 +162,22 @@ const PadState PAD_CIRCLE_DOWN = {{1u << 31}};
|
||||||
*/
|
*/
|
||||||
void GetIPCHandles(Interface* self);
|
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);
|
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);
|
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 PadUpdateComplete();
|
||||||
|
|
||||||
void HIDInit();
|
void HIDInit();
|
||||||
|
|
Loading…
Reference in a new issue