Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages   Examples  

vpr::GuardedQueue Class Template Reference

A guarded queue. More...

#include <GuardedQueue.h>

Collaboration diagram for vpr::GuardedQueue:

Collaboration graph
[legend]
List of all members.

Public Methods

 GuardedQueue ()
 ~GuardedQueue ()
bool empty ()
value_type & front ()
value_type & back ()
void push (const value_type &val)
void pop ()
int size () const

Detailed Description

template<class value_type>
class vpr::GuardedQueue< value_type >

A guarded queue.

Guards an STL queue and implements the basic interface All the functions pass directly through to the corresponding STL queue function but they are guarded so that only a single thread can interact with the queue at once.

Definition at line 63 of file GuardedQueue.h.


Constructor & Destructor Documentation

template<class value_type>
vpr::GuardedQueue< value_type >::GuardedQueue   [inline]
 

Definition at line 66 of file GuardedQueue.h.

00067    {;}

template<class value_type>
vpr::GuardedQueue< value_type >::~GuardedQueue   [inline]
 

Definition at line 69 of file GuardedQueue.h.

00070    {;}


Member Function Documentation

template<class value_type>
bool vpr::GuardedQueue< value_type >::empty   [inline]
 

Definition at line 72 of file GuardedQueue.h.

00073    {
00074       Guard<Mutex> guard(mMutexGuard);
00075       return mQ.empty();
00076    }

template<class value_type>
value_type& vpr::GuardedQueue< value_type >::front   [inline]
 

Definition at line 78 of file GuardedQueue.h.

00079    {
00080       Guard<Mutex> guard(mMutexGuard);
00081       return mQ.front();
00082    }

template<class value_type>
value_type& vpr::GuardedQueue< value_type >::back   [inline]
 

Definition at line 84 of file GuardedQueue.h.

00085    {
00086       Guard<Mutex> guard(mMutexGuard);
00087       return mQ.back();
00088    }

template<class value_type>
void vpr::GuardedQueue< value_type >::push const value_type &    val [inline]
 

Definition at line 90 of file GuardedQueue.h.

00091    {
00092       Guard<Mutex> guard(mMutexGuard);
00093       mQ.push(val);
00094    }

template<class value_type>
void vpr::GuardedQueue< value_type >::pop   [inline]
 

Definition at line 96 of file GuardedQueue.h.

00097    {
00098       Guard<Mutex> guard(mMutexGuard);
00099       mQ.pop();
00100    }

template<class value_type>
int vpr::GuardedQueue< value_type >::size   const [inline]
 

Definition at line 102 of file GuardedQueue.h.

00103    {
00104       return mQ.size();
00105    }


The documentation for this class was generated from the following file:
Generated on Sun May 2 14:47:11 2004 for VR Juggler Portable Runtime by doxygen1.2.14 written by Dimitri van Heesch, © 1997-2002