TQueue Class Reference

#include <tqueue.h>

Data Structures

class  ListNode

Public Member Functions

 TQueue ()
 ~TQueue ()
void Add (void *)
void * Remove (void)
void * GetFirst (void) const
int GetSize (void) const

Private Attributes

int size
ListNodehead
ListNodetail

Detailed Description

Definition at line 23 of file tqueue.h.


Constructor & Destructor Documentation

TQueue::TQueue (  ) 

Definition at line 47 of file tqueue.cpp.

00048 {
00049     size = 0;
00050     head = NULL;
00051     tail = NULL;
00052 }

TQueue::~TQueue (  ) 

Definition at line 54 of file tqueue.cpp.

00055 {
00056     if( head )
00057         delete head;
00058 }


Member Function Documentation

void TQueue::Add ( void *  d  ) 

Definition at line 60 of file tqueue.cpp.

00061 {
00062     ListNode * temp_node;
00063 
00064     temp_node = new ListNode( d, NULL );
00065 
00066     if( head == NULL )
00067     {
00068         head = tail = temp_node;
00069     }
00070     else
00071     {
00072         tail->SetNext( temp_node );
00073         tail = temp_node;
00074     }
00075     size++;
00076 }

void * TQueue::GetFirst ( void   )  const

Definition at line 98 of file tqueue.cpp.

00099 {
00100     if( head == NULL )
00101         return NULL;
00102     return head->GetData( );
00103 }

int TQueue::GetSize ( void   )  const

Definition at line 105 of file tqueue.cpp.

00106 {
00107     return size;
00108 }

void * TQueue::Remove ( void   ) 

Definition at line 78 of file tqueue.cpp.

00079 {
00080     void * temp_val;
00081     ListNode * temp_node;
00082 
00083     if( head == NULL )
00084         return NULL;
00085 
00086     temp_node = head;
00087     head = head->GetNext( );
00088 
00089     temp_val = temp_node->GetData( );
00090     temp_node->SetNext( NULL );
00091     delete temp_node;
00092 
00093     size--;
00094 
00095     return temp_val;
00096 }


Field Documentation

ListNode* TQueue::head [private]

Definition at line 40 of file tqueue.h.

int TQueue::size [private]

Definition at line 39 of file tqueue.h.

ListNode * TQueue::tail [private]

Definition at line 40 of file tqueue.h.


The documentation for this class was generated from the following files:
Generated on Wed Jul 4 16:03:38 2012 for RIO by  doxygen 1.6.3