176 #ifndef ti_sysbios_knl_Queue__include 177 #define ti_sysbios_knl_Queue__include 191 #define ti_sysbios_knl_Queue_long_names 192 #include "Queue_defs.h" 233 extern void Queue_Instance_init(Queue_Object *obj,
const Queue_Params *prms);
307 extern void Queue_elemClear(
Queue_Elem *qelem);
366 extern bool Queue_isQueued(
Queue_Elem *qelem);
435 extern void *
Queue_get(Queue_Handle queue);
495 static inline Queue_Handle Queue_handle(Queue_Struct *str)
497 return ((Queue_Handle)str);
500 static inline Queue_Struct * Queue_struct(Queue_Handle handle)
502 return ((Queue_Struct *)handle);
512 #undef ti_sysbios_knl_Queue_long_names 513 #include "Queue_defs.h" void Queue_Params_init(Queue_Params *prms)
Initialize the Queue_Params structure with default values.
bool Queue_empty(Queue_Handle queue)
Test for an empty queue.
void Queue_put(Queue_Handle queue, Queue_Elem *elem)
Put element at end of queue (atomically).
Queue_Handle Queue_create(const Queue_Params *prms, Error_Block *eb)
Create a Queue object.
void Queue_insert(Queue_Elem *qelem, Queue_Elem *elem)
Insert elem in the queue in front of qelem.
struct Queue_Elem Queue_Elem
Opaque queue element.
Opaque queue element.
Definition: Queue.h:204
void Queue_remove(Queue_Elem *qelem)
Remove qelem from middle of queue (non-atomically).
Queue_Elem Queue_Struct
Definition: Queue.h:219
void * Queue_prev(Queue_Elem *qelem)
Return previous element in queue (non-atomically).
void * Queue_get(Queue_Handle queue)
Get element from front of queue (atomically).
Error block.
Definition: Error.h:152
void * Queue_head(Queue_Handle queue)
Return element at front of queue. (atomically)
void Queue_destruct(Queue_Struct *obj)
Destruct a queue.
void * Queue_dequeue(Queue_Handle queue)
Remove the element from the front of queue and return elem (non- atomically).
void Queue_delete(Queue_Handle *queue)
Delete a queue.
struct Queue_Elem *volatile next
Opaque queue element.
Definition: Queue.h:210
struct Queue_Elem *volatile prev
Opaque queue element.
Definition: Queue.h:216
Queue_Struct * Queue_Handle
Definition: Queue.h:221
void Queue_putHead(Queue_Handle queue, Queue_Elem *elem)
Put element at the front of the queue (atomically).
Queue_Handle Queue_construct(Queue_Struct *obj, const Queue_Params *prms)
Construct a queue.
Queue_Struct Queue_Object
Definition: Queue.h:220
void * Queue_next(Queue_Elem *qelem)
Return next element in queue (non-atomically).
void Queue_enqueue(Queue_Handle queue, Queue_Elem *elem)
Insert at end of queue (non-atomically).
void * Queue_getTail(Queue_Handle queue)
Get the element at the end of the queue (atomically).