// header files #include "QueueUtility.h" /* Data Structures typedef struct StateArrayStruct { StateDataType *array; int size, capacity; } QueueType; (aka StateArrayType) Data Structures*/ // function implementations /* Name: clearQueue Process: clears QueueType, returns NULL Function input/parameters: pointer to queue type (QueueType *) Function output/parameters: none Function output/returned: NULL Device input/---: none Device output/---: none Dependencies: clearDataStructure */ QueueType *clearQueue( QueueType *queue ) { // clear the entire data structure clearDataStructure(queue); // return NULL return NULL; } /* Name: createQueue Process: creates QueueType, initializes front index to zero, rear index to -1, returns pointer to data structure Function input/parameters: initial capacity (int) Function output/parameters: none Function output/returned: pointer to queue type (QueueType *) Device input/---: none Device output/---: none Dependencies: createDataStructure */ QueueType *createQueue( int initialCapacity ) { // create the data structure QueueType *queueDataStructure; queueDataStructure = createDataStructure(initialCapacity); // return QueueType return queueDataStructure; } /* Name: peekFront Process: captures value at front of queue returns true if successful and sets return value, otherwise, sets return value to empty, returns false Function input/parameters: pointer to queue type (QueueType *) Function output/parameters: pointer to return value (StateDataType *) Function output/returned: Boolean result of operation Device input/---: none Device output/---: none Dependencies: getItemAtIndex, getListSize */ bool peekFront( StateDataType *returnVal, const QueueType queue ) { // return false (TEMP) return false; } /* Name: dequeue Process: captures value at front of queue, removes and returns value, returns true if successful, otherwise, sets return value to empty, returns false Function input/parameters: pointer to queue type (QueueType *) Function output/parameters: pointer to return value (StateDataType *) Function output/returned: Boolean result of operation Device input/---: none Device output/---: none Dependencies: removeItemAtIndex, getListSize */ bool dequeue( StateDataType *returnVal, QueueType *queue ) { // return false (TEMP) return false; } /* Name: enqueue Process: sets value at rear of queue returns true if successful, false otherwise Function input/parameters: pointer to queue type (QueueType *) Function output/parameters: value to be pushed (const StateDataType) Function output/returned: Boolean result of operation Device input/---: none Device output/---: none Dependencies: insertItemAtIndex */ bool enqueue( QueueType *queue, const StateDataType toBePushed ) { // return false (TEMP) return false; }