int32_t hf_queue_count(struct queue *q)
Counts the number of nodes in a queue.
Definition: queue.c:74
int32_t hf_queue_swap(struct queue *q, int32_t elem1, int32_t elem2)
Swap the position of two nodes in the queue.
Definition: queue.c:185
void * hf_queue_get(struct queue *q, int32_t elem)
Returns a node from the queue.
Definition: queue.c:149
void * hf_queue_remtail(struct queue *q)
Removes a node from the tail of the queue.
Definition: queue.c:128
int32_t head
Definition: queue.h:10
Queue data structure.
Definition: queue.h:7
void ** data
Definition: queue.h:12
int32_t hf_queue_addtail(struct queue *q, void *ptr)
Adds a node to the tail of the queue.
Definition: queue.c:87
int32_t tail
Definition: queue.h:11
struct queue * hf_queue_create(int32_t size)
Creates a queue of specified size.
Definition: queue.c:30
int32_t size
Definition: queue.h:8
int32_t elem
Definition: queue.h:9
void * hf_queue_remhead(struct queue *q)
Removes a node from the head of the queue.
Definition: queue.c:108
int32_t hf_queue_destroy(struct queue *q)
Destroys a queue.
Definition: queue.c:56
int32_t hf_queue_set(struct queue *q, int32_t elem, void *ptr)
Updates a node on the queue.
Definition: queue.c:168