My library
Library for common tasks
queue.h
Go to the documentation of this file.
1
7#ifndef SEEN_QUEUE
8#define SEEN_QUEUE
9
10#include "types.h"
11
17Queue newQueue(const spec_t spec);
18
25void enqueue(Queue queue, ...);
26
32void dequeue(Queue queue, void *dest);
33
39void printQueue(const spec_t spec, const Queue queue);
40
46unsigned int getQueueLength(const Queue queue);
47
53
59void peekQueue(const Queue queue, void *dest);
60
65void deleteQueue(Queue queue);
66
76byte isInQueue(Queue queue, ...);
77
85Queue chooseNewQueueFromArray(const spec_t spec, const void *arr, unsigned int size);
86
92void enqueueFromPtr(Queue queue, const void *element);
93
100byte isQueueEmpty(Stack stack);
101
106Queue newQueueFromCharArray(const char arr[], unsigned int size);
107
112Queue newQueueFromIntArray(const int arr[], unsigned int size);
113
118Queue newQueueFromFloatArray(const float arr[], unsigned int size);
119
124Queue newQueueFromDoubleArray(const double arr[], unsigned int size);
125
130Queue newQueueFromPtrArray(const void *arr, unsigned int size);
131
140byte areQueuesEqual(const Queue queue1, const Queue queue2);
141
142#endif
void deleteQueue(Queue queue)
Delete a Queue.
void peekQueue(const Queue queue, void *dest)
Get the item in the head of a Queue without dequeueing it.
void deleteHeadFromQueue(Queue queue)
Delete current Queue head.
Queue newQueueFromIntArray(const int arr[], unsigned int size)
Create a Queue from an array of integers.
void enqueueFromPtr(Queue queue, const void *element)
Enqueue an item into a Queue.
Queue newQueueFromPtrArray(const void *arr, unsigned int size)
Create a Queue from an array of pointers.
Queue newQueueFromFloatArray(const float arr[], unsigned int size)
Create a Queue from an array of floats.
Queue newQueue(const spec_t spec)
Allocate a new Queue of specified type.
byte areQueuesEqual(const Queue queue1, const Queue queue2)
Compare two Queue.
Queue newQueueFromDoubleArray(const double arr[], unsigned int size)
Create a Queue from an array of doubles.
byte isInQueue(Queue queue,...)
Detect if an item is inside a Queue.
void dequeue(Queue queue, void *dest)
Dequeue an item from a Queue.
Queue newQueueFromCharArray(const char arr[], unsigned int size)
Create a Queue from an array of chars.
Queue chooseNewQueueFromArray(const spec_t spec, const void *arr, unsigned int size)
Create a Queue from an array.
void printQueue(const spec_t spec, const Queue queue)
Print contents from a Queue.
unsigned int getQueueLength(const Queue queue)
Get the size of a Queue.
byte isQueueEmpty(Stack stack)
Check if Queue is empty.
void enqueue(Queue queue,...)
Enqueue an item into a Queue.
Queue type
Definition: types.h:111
Stack type
Definition: types.h:95
Collection of useful types.
char * spec_t
Used to specify type of argument passed in functions that require a type specifier.
Definition: types.h:20