LocalQueue Class Reference

#include <localqueue.h>

Public Member Functions

 LocalQueue ()
 ~LocalQueue ()
LocalQueueEleFirst ()
void Put (LocalQueueEle *ep)
LocalQueueEleGet ()
void Remove (LocalQueueEle *ep)

Private Attributes

LocalQueueEle m_Head

Detailed Description

Definition at line 46 of file localqueue.h.


Constructor & Destructor Documentation

LocalQueue::LocalQueue (  ) 

Definition at line 32 of file localqueue.cpp.

00033 {
00034     m_Head.linkf = 0;
00035     m_Head.linkb = &m_Head;
00036 }

LocalQueue::~LocalQueue (  ) 

Definition at line 38 of file localqueue.cpp.

00039 {
00040 }


Member Function Documentation

LocalQueueEle * LocalQueue::First (  ) 

Definition at line 44 of file localqueue.cpp.

00045 {
00046     return( m_Head.linkf );
00047 }

LocalQueueEle * LocalQueue::Get ( void   ) 

Definition at line 62 of file localqueue.cpp.

00063 {
00064     LocalQueueEle *ep;
00065     ep = m_Head.linkf;
00066 
00067     if( ep != 0 )
00068     {
00069         Remove( ep );
00070     }
00071 
00072     return ep;
00073 }

void LocalQueue::Put ( LocalQueueEle ep  ) 

Definition at line 51 of file localqueue.cpp.

00052 {
00053     ep->linkf = 0;
00054     ep->linkb = ( m_Head.linkb );
00055     ( m_Head.linkb )->linkf = ep;
00056     m_Head.linkb = ep;
00057 }

void LocalQueue::Remove ( LocalQueueEle ep  ) 

Definition at line 78 of file localqueue.cpp.

00079 {
00080     LocalQueueEle *prev = ep->linkb;
00081     LocalQueueEle *next = ep->linkf;
00082 
00083     prev->linkf = next;
00084     if( next == 0 )  // check if last element on queue
00085     {
00086         m_Head.linkb = ep->linkb;  // change last element pointer
00087     }
00088     else
00089     {
00090         next->linkb = ep->linkb;   // change next back pointer
00091     }
00092 }


Field Documentation

Definition at line 59 of file localqueue.h.


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