UFO: Alien Invasion
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
AiAreaSearch::LQueue Class Reference

A simple queue class. More...

Data Structures

struct  qnode_s
 

Public Member Functions

 LQueue (void)
 Initialize a LQueue object. More...
 
 ~LQueue (void)
 Clear LQueue internal data. More...
 
void enqueue (const pos3_t data)
 Add an entry to the queue. More...
 
bool dequeue (pos3_t data)
 Retrieve an entry form the queue. More...
 
int size (void) const
 Gets the number of elements in the queue. More...
 
bool isEmpty (void) const
 Checks if the queue is empty. More...
 
void clear (void)
 Remove all data from the queue. More...
 

Private Attributes

qnode_s_head
 
qnode_s_tail
 
int _count
 

Detailed Description

A simple queue class.

Definition at line 43 of file g_ai.h.

Constructor & Destructor Documentation

AiAreaSearch::LQueue::LQueue ( void  )
inline

Initialize a LQueue object.

Definition at line 48 of file g_ai.h.

AiAreaSearch::LQueue::~LQueue ( void  )

Clear LQueue internal data.

Definition at line 84 of file g_ai.cpp.

References clear().

Member Function Documentation

void AiAreaSearch::LQueue::clear ( void  )

Remove all data from the queue.

Definition at line 127 of file g_ai.cpp.

References G_MemFree, and AiAreaSearch::LQueue::qnode_s::next.

Referenced by AiAreaSearch::~AiAreaSearch(), and ~LQueue().

bool AiAreaSearch::LQueue::dequeue ( pos3_t  data)

Retrieve an entry form the queue.

Parameters
[out]dataThe data retrieved.
Returns
true if the data was retrieved false otherwise.

Definition at line 111 of file g_ai.cpp.

References G_MemFree, AiAreaSearch::LQueue::qnode_s::next, and VectorCopy.

Referenced by AiAreaSearch::getNext().

void AiAreaSearch::LQueue::enqueue ( const pos3_t  data)

Add an entry to the queue.

Parameters
[in]dataData to add.

Definition at line 92 of file g_ai.cpp.

References AiAreaSearch::LQueue::qnode_s::data, G_TagMalloc, AiAreaSearch::LQueue::qnode_s::next, TAG_LEVEL, and VectorCopy.

Referenced by AiAreaSearch::plotPos().

bool AiAreaSearch::LQueue::isEmpty ( void  ) const
inline

Checks if the queue is empty.

Definition at line 59 of file g_ai.h.

References size().

int AiAreaSearch::LQueue::size ( void  ) const
inline

Gets the number of elements in the queue.

Definition at line 55 of file g_ai.h.

References _count.

Referenced by isEmpty().

Field Documentation

int AiAreaSearch::LQueue::_count
private

Number of elements in the queue

Definition at line 68 of file g_ai.h.

Referenced by size().

qnode_s* AiAreaSearch::LQueue::_head
private

Start of the queue.

Definition at line 66 of file g_ai.h.

qnode_s* AiAreaSearch::LQueue::_tail
private

End of the queue.

Definition at line 67 of file g_ai.h.


The documentation for this class was generated from the following files: