Input queue implementation. More...
#include "skinkit.h"#include "skinmon.h"#include "swdevice.h"#include "hqmemcpy.h"#include "inputq.h"#include "inputqprv.h"#include "mem.h"#include "eventapi.h"#include "swevents.h"#include "apis.h"#include "rdrapi.h"#include "threadapi.h"#include "inputsapi.h"Data Structures | |
| struct | inputq_node_t |
Typedefs | |
| typedef struct inputq_node_t | inputq_node_t |
Enumerations | |
| enum | { INPUTQ_STATE_INIT , INPUTQ_STATE_RUNNING , INPUTQ_STATE_QUIT } |
Functions | |
| inputq_entry_t * | inputq_first_entry (void) |
| Take the first entry off the queue, transferring responsibility for freeing the queue entry to the caller. More... | |
| void | inputq_free_entry (inputq_entry_t *entry) |
| Free an input queue entry returned by inputq_first_entry(). More... | |
| HqBool | inputq_wait (void) |
| Block until the input queue is non-empty or explicitly woken up. More... | |
| HqBool | inputq_start (void) |
| void | inputq_end (void) |
Variables | |
| static inputq_node_t * | input_queue = ((void*)0) |
| static int32 | inputq_sources = 0 |
| static int32 | inputq_nudge_id = 0 |
| static uint32 | inputq_paused = 0 |
| static enum { ... } | inputq_state = INPUTQ_STATE_INIT |
Input queue implementation.
| typedef struct inputq_node_t inputq_node_t |
A list of input queue entries.
| anonymous enum |
| void inputq_end | ( | void | ) |
Deregister the Skinkit SDK input queue from RDR, and remove all entries. The input queue must be finalised before the RDR and event systems are terminated.
| HqBool inputq_start | ( | void | ) |
Initialise the Skinkit SDK input queue, and register its implementation in RDR. The RDR and event systems must have been initialised before the input queue is initialised.
|
static |
The actual input queue.
|
static |
An incrementing counter used to break waiting threads out of their loops. inputq_wait() will return TRUE if it is woken up and the nudge ID has changed since the wait started.
|
static |
Count of whether the input queue is paused/resumed using the SWEVT_INPUTS_ENABLE event.
|
static |
The number of persistent input sources that might add jobs to the input queue.
| enum { ... } inputq_state |
The input queue system state.