Functions
IPM_Initialize
void IPM_Initialize(
IPM_Config* config
)

Initialize input manager

Parameters
config
IPM_Config*

Input manager configuration structure

IPM_SetTimer
inline void IPM_SetTimer(
u8 doubleClk,
u8 hold
)

Initialize input manager

Parameters
doubleClk
u8

Double click timer

hold
u8

Hold timer

IPM_Update
void IPM_Update()

Update device manager

IPM_RegisterEvent
bool IPM_RegisterEvent(
u8 dev,
u8 input,
u8 event,
IPM_cb cb
)

Register a callback to a given device manager's event

Parameters
dev
u8

Device ID

input
u8

Input ID

event
u8

Event ID

cb
IPM_cb

Callback function

Return

TRUE if the event was registered, FALSE otherwise

IPM_GetStatus
inline u8 IPM_GetStatus(
u8 dev
)

Get current device status

Parameters
dev
u8

Device ID

Return

Current device status

IPM_GetStickDirection
u8 IPM_GetStickDirection(
u8 dev
)

Get current direction of the given device

Parameters
dev
u8

Device ID

Return

Current device direction

IPM_GetInputState
inline u8 IPM_GetInputState(
u8 dev,
u8 input
)

Get current device state

Parameters
dev
u8

Device ID

input
u8

Input ID

Return

Current device's input state

IPM_GetInputTimer
inline u8 IPM_GetInputTimer(
u8 dev,
u8 input
)

Get current device state timer

Parameters
dev
u8

Device ID

input
u8

Input ID

Return

Current device's input state timer

IPM_GetEventName
const c8* IPM_GetEventName(
u8 ev
)

Get event name

Parameters
ev
u8

Event ID

Return

Zero-terminated string containing the event name