ariba::utility::SystemQueue::QueueThread Class Reference

Inherited by ariba::utility::SystemQueue::QueueThreadDelay, and ariba::utility::SystemQueue::QueueThreadDirect.

Collaboration diagram for ariba::utility::SystemQueue::QueueThread:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 QueueThread (QueueThread *_transferQueue=NULL)
virtual ~QueueThread ()
void run ()
void cancel ()
bool isEmpty ()
void insert (const SystemEvent &event, uint32_t delay)
void enter ()
void leave ()
void dropAll (const SystemEventListener *mlistener)

Protected Member Functions

virtual void onItemInserted (const SystemEvent &event)=0
virtual void onNextQueueItem (const SystemEvent &event)=0

Protected Attributes

QueueThreadtransferQueue
EventQueue eventsQueue
boost::mutex queueMutex

Static Private Member Functions

static void threadFunc (QueueThread *obj)

Private Attributes

boost::thread * queueThread
boost::condition_variable itemsAvailable
volatile bool running

Detailed Description

Definition at line 179 of file SystemQueue.h.


Constructor & Destructor Documentation

ariba::utility::SystemQueue::QueueThread::QueueThread ( QueueThread _transferQueue = NULL  ) 

Definition at line 133 of file SystemQueue.cpp.

ariba::utility::SystemQueue::QueueThread::~QueueThread (  )  [virtual]

Definition at line 137 of file SystemQueue.cpp.


Member Function Documentation

void ariba::utility::SystemQueue::QueueThread::cancel (  ) 
void ariba::utility::SystemQueue::QueueThread::dropAll ( const SystemEventListener mlistener  ) 

Definition at line 201 of file SystemQueue.cpp.

References eventsQueue, and queueMutex.

Referenced by ariba::utility::SystemQueue::dropAll().

void ariba::utility::SystemQueue::QueueThread::enter (  ) 

Definition at line 264 of file SystemQueue.cpp.

References queueMutex.

Referenced by ariba::utility::SystemQueue::enterMethod().

void ariba::utility::SystemQueue::QueueThread::insert ( const SystemEvent event,
uint32_t  delay 
)
bool ariba::utility::SystemQueue::QueueThread::isEmpty (  ) 

Definition at line 178 of file SystemQueue.cpp.

References eventsQueue, and queueMutex.

Referenced by ariba::utility::SystemQueue::isEmpty().

void ariba::utility::SystemQueue::QueueThread::leave (  ) 

Definition at line 268 of file SystemQueue.cpp.

References queueMutex.

Referenced by ariba::utility::SystemQueue::leaveMethod().

virtual void ariba::utility::SystemQueue::QueueThread::onItemInserted ( const SystemEvent event  )  [protected, pure virtual]
virtual void ariba::utility::SystemQueue::QueueThread::onNextQueueItem ( const SystemEvent event  )  [protected, pure virtual]
void ariba::utility::SystemQueue::QueueThread::run (  ) 

Definition at line 140 of file SystemQueue.cpp.

References queueThread, running, and threadFunc().

Referenced by ariba::utility::SystemQueue::run().

void ariba::utility::SystemQueue::QueueThread::threadFunc ( QueueThread obj  )  [static, private]

Definition at line 220 of file SystemQueue.cpp.

References eventsQueue, itemsAvailable, logging_debug, onNextQueueItem(), queueMutex, and running.

Referenced by run().


Member Data Documentation

boost::condition_variable ariba::utility::SystemQueue::QueueThread::itemsAvailable [private]

Definition at line 200 of file SystemQueue.h.

Referenced by cancel(), insert(), and threadFunc().

Definition at line 196 of file SystemQueue.h.

Referenced by cancel(), dropAll(), enter(), insert(), isEmpty(), leave(), and threadFunc().

Definition at line 198 of file SystemQueue.h.

Referenced by cancel(), and run().

Definition at line 201 of file SystemQueue.h.

Referenced by cancel(), run(), and threadFunc().


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

Generated on Fri Dec 10 11:09:25 2010 for Ariba by  doxygen 1.6.1