#ifndef FIRM_ADT_PQUEUE_H
#define FIRM_ADT_PQUEUE_H
-typedef struct _pqueue_t pqueue;
+typedef struct _pqueue_t pqueue_t;
/**
* Creates a new priority queue.
* @return A priority queue of initial length 0.
*/
-pqueue *new_pqueue(void);
+pqueue_t *new_pqueue(void);
/**
* Frees all memory allocated by the priority queue.
* @param q The priority queue to destroy.
*/
-void del_pqueue(pqueue *q);
+void del_pqueue(pqueue_t *q);
/**
* Inserts a new element into a priority queue.
- * @param q The priority queue the element should be inserted to.
- * @param data The actual data which should be stored in the queue.
- * @param key The priority for the data.
+ * @param q The priority queue the element should be inserted to.
+ * @param data The actual data which should be stored in the queue.
+ * @param priority The priority for the data.
*/
-void pqueue_put(pqueue *q, void *data, int key);
+void pqueue_put(pqueue_t *q, void *data, int priority);
/**
* Returns and removes the first element, ie. that one with the highest priority, from the queue.
* @param q The priority queue.
* @return The first element of the queue. Asserts if queue is empty.
*/
-void *pqueue_get(pqueue *q);
+void *pqueue_pop_front(pqueue_t *q);
/**
* Get the length of the priority queue.
* @param q The priority queue.
* @return The length of the queue.
*/
-int pqueue_length(pqueue *q);
+int pqueue_length(const pqueue_t *q);
/**
* Returns true if queue is empty.
* @param q The priority queue.
* @return 1 if the queue is empty, 0 otherwise.
*/
-int pqueue_empty(pqueue *q);
+int pqueue_empty(const pqueue_t *q);
#endif