|
ATLAS Offline Software
|
Go to the documentation of this file.
41 #ifndef ALGORITHM_QUEUE_H
42 #define ALGORITHM_QUEUE_H
52 typedef struct _Queue
Queue;
64 #define QUEUE_NULL ((void *) 0)
char data[hepevt_bytes_allocation_ATLAS]
QueueValue queue_peek_tail(Queue *queue)
Read a value from the tail of a queue, without removing it from the queue.
void * QueueValue
A value stored in a Queue.
void queue_free(Queue *queue)
Destroy a queue.
Queue * queue_new(void)
Create a new double-ended queue.
int queue_push_head(Queue *queue, QueueValue data)
Add a value to the head of a queue.
struct _Queue Queue
A double-ended queue.
QueueValue queue_peek_head(Queue *queue)
Read value from the head of a queue, without removing it from the queue.
int queue_push_tail(Queue *queue, QueueValue data)
Add a value to the tail of a queue.
QueueValue queue_pop_head(Queue *queue)
Remove a value from the head of a queue.
QueueValue queue_pop_tail(Queue *queue)
Remove a value from the tail of a queue.
int queue_is_empty(Queue *queue)
Query if any values are currently in a queue.