UFO: Alien Invasion
Toggle main menu visibility
Loading...
Searching...
No Matches
pqueue.h
Go to the documentation of this file.
1
5
6
/*
7
Originally written by Justin-Heyes Jones
8
Modified by Shlomi Fish, 2000
9
Modified by Florian Festi, 2007
10
11
This file is in the public domain (it's uncopyrighted).
12
13
Check out Justin-Heyes Jones' A* page from which this code has
14
originated:
15
http://www.geocities.com/jheyesjones/astar.html
16
*/
17
18
#pragma once
19
20
#include "
../shared/shared.h
"
21
27
28
typedef
int
priorityQueueRating_t
;
29
30
typedef
struct
priorityQueueElement_s {
31
pos4_t
item
;
32
priorityQueueRating_t
rating
;
33
}
priorityQueueElement_t
;
34
39
typedef
struct
priorityQueue_s {
40
uint32_t
maxSize
;
41
uint32_t
currentSize
;
42
priorityQueueElement_t
*
elements
;
43
}
priorityQueue_t
;
44
45
void
PQueueInitialise
(
priorityQueue_t
* pq, uint32_t maxElements);
46
void
PQueueFree
(
priorityQueue_t
* pq);
47
48
#define PQueueIsEmpty(pq) ((pq)->currentSize == 0)
49
void
PQueuePush
(
priorityQueue_t
* pq,
const
pos4_t
item,
priorityQueueRating_t
rating);
50
void
PQueuePop
(
priorityQueue_t
* pq,
pos4_t
item);
PQueuePush
void PQueuePush(priorityQueue_t *pq, const pos4_t item, priorityQueueRating_t rating)
Definition
pqueue.cpp:47
PQueueFree
void PQueueFree(priorityQueue_t *pq)
free up memory for pqueue
Definition
pqueue.cpp:83
PQueueInitialise
void PQueueInitialise(priorityQueue_t *pq, uint32_t maxElements)
initialise the priority queue with a maximum size of maxelements.
Definition
pqueue.cpp:36
priorityQueueRating_t
int priorityQueueRating_t
Definition
pqueue.h:28
PQueuePop
void PQueuePop(priorityQueue_t *pq, pos4_t item)
remove the first node from the pqueue and provide a pointer to it
Definition
pqueue.cpp:91
shared.h
priorityQueue_t
the priority queue struct the actual data is stored in priorityQueueElement_t
Definition
pqueue.h:39
priorityQueue_t::maxSize
uint32_t maxSize
Definition
pqueue.h:40
priorityQueue_t::elements
priorityQueueElement_t * elements
Definition
pqueue.h:42
priorityQueue_t::currentSize
uint32_t currentSize
Definition
pqueue.h:41
priorityQueueElement_t
Definition
pqueue.h:30
priorityQueueElement_t::rating
priorityQueueRating_t rating
Definition
pqueue.h:32
priorityQueueElement_t::item
pos4_t item
Definition
pqueue.h:31
pos4_t
pos_t pos4_t[4]
Definition
ufotypes.h:59
src
common
pqueue.h
Generated on __DATE__ __TIME__ for UFO: Alien Invasion by
1.17.0