UFO: Alien Invasion
|
Header file for the priority queue implementation. More...
#include "../shared/shared.h"
Go to the source code of this file.
Data Structures | |
struct | priorityQueueElement_s |
struct | priorityQueue_s |
the priority queue struct the actual data is stored in priorityQueueElement_t More... | |
Macros | |
#define | PQueueIsEmpty(pq) ((pq)->currentSize == 0) |
Typedefs | |
typedef int | priorityQueueRating_t |
typedef struct priorityQueueElement_s | priorityQueueElement_t |
typedef struct priorityQueue_s | priorityQueue_t |
the priority queue struct the actual data is stored in priorityQueueElement_t More... | |
Functions | |
void | PQueueInitialise (priorityQueue_t *pq, uint32_t maxElements) |
initialise the priority queue with a maximum size of maxelements. More... | |
void | PQueueFree (priorityQueue_t *pq) |
free up memory for pqueue More... | |
void | PQueuePush (priorityQueue_t *pq, const pos4_t item, priorityQueueRating_t rating) |
void | PQueuePop (priorityQueue_t *pq, pos4_t item) |
remove the first node from the pqueue and provide a pointer to it More... | |
Header file for the priority queue implementation.
Definition in file pqueue.h.
#define PQueueIsEmpty | ( | pq | ) | ((pq)->currentSize == 0) |
Definition at line 48 of file pqueue.h.
Referenced by Grid_CalcPathing(), Grid_FindPath(), and PQueuePop().
typedef struct priorityQueue_s priorityQueue_t |
the priority queue struct the actual data is stored in priorityQueueElement_t
typedef struct priorityQueueElement_s priorityQueueElement_t |
typedef int priorityQueueRating_t |
void PQueueFree | ( | priorityQueue_t * | pq | ) |
free up memory for pqueue
Definition at line 83 of file pqueue.cpp.
References priorityQueue_s::elements, and Mem_Free.
Referenced by Grid_CalcPathing(), and Grid_FindPath().
void PQueueInitialise | ( | priorityQueue_t * | pq, |
uint32_t | maxElements | ||
) |
initialise the priority queue with a maximum size of maxelements.
Definition at line 36 of file pqueue.cpp.
References priorityQueue_s::currentSize, priorityQueue_s::elements, priorityQueue_s::maxSize, Mem_AllocTypeN, and Sys_Error().
Referenced by Grid_CalcPathing(), and Grid_FindPath().
void PQueuePop | ( | priorityQueue_t * | pq, |
pos4_t | item | ||
) |
remove the first node from the pqueue and provide a pointer to it
Definition at line 91 of file pqueue.cpp.
References priorityQueue_s::currentSize, priorityQueue_s::elements, i, priorityQueueElement_s::item, PQ_FIRST_ENTRY, PQ_LEFT_CHILD_INDEX, PQueueIsEmpty, and priorityQueueElement_s::rating.
Referenced by Grid_CalcPathing(), and Grid_FindPath().
void PQueuePush | ( | priorityQueue_t * | pq, |
const pos4_t | item, | ||
priorityQueueRating_t | rating | ||
) |
Definition at line 47 of file pqueue.cpp.
References priorityQueue_s::currentSize, priorityQueue_s::elements, i, priorityQueueElement_s::item, priorityQueue_s::maxSize, Mem_ReAlloc, PQ_FIRST_ENTRY, PQ_PARENT_INDEX, and priorityQueueElement_s::rating.
Referenced by Grid_CalcPathing(), and Grid_FindPath().