UFO: Alien Invasion
Loading...
Searching...
No Matches
AiAreaSearch::LQueue Class Reference

A simple queue class. More...

Collaboration diagram for AiAreaSearch::LQueue:
Collaboration graph

Data Structures

struct  qnode_s

Public Member Functions

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

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

◆ LQueue()

AiAreaSearch::LQueue::LQueue ( void )
inline

Initialize a LQueue object.

Definition at line 48 of file g_ai.h.

References _count, _head, _tail, and nullptr.

◆ ~LQueue()

AiAreaSearch::LQueue::~LQueue ( void )

Clear LQueue internal data.

Definition at line 84 of file g_ai.cpp.

References clear().

Member Function Documentation

◆ clear()

void AiAreaSearch::LQueue::clear ( void )

Remove all data from the queue.

Definition at line 127 of file g_ai.cpp.

References _count, _head, _tail, G_MemFree, and AiAreaSearch::LQueue::qnode_s::next.

Referenced by ~LQueue().

◆ dequeue()

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 _count, _head, data, G_MemFree, isEmpty(), and VectorCopy.

◆ enqueue()

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 _count, _head, _tail, AiAreaSearch::LQueue::qnode_s::data, data, G_TagMalloc, isEmpty(), AiAreaSearch::LQueue::qnode_s::next, TAG_LEVEL, and VectorCopy.

◆ isEmpty()

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

Checks if the queue is empty.

Definition at line 59 of file g_ai.h.

References size().

Referenced by dequeue(), and enqueue().

◆ 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

◆ _count

int AiAreaSearch::LQueue::_count
private

Number of elements in the queue

Definition at line 68 of file g_ai.h.

Referenced by clear(), dequeue(), enqueue(), LQueue(), and size().

◆ _head

qnode_s* AiAreaSearch::LQueue::_head
private

Start of the queue.

Definition at line 66 of file g_ai.h.

Referenced by clear(), dequeue(), enqueue(), and LQueue().

◆ _tail

qnode_s* AiAreaSearch::LQueue::_tail
private

End of the queue.

Definition at line 67 of file g_ai.h.

Referenced by clear(), enqueue(), and LQueue().


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