VR-Forces 5.0.2 Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Attributes | Private Member Functions
makVrv::DtLocklessQueue< T > Class Template Reference

template<class T>
class makVrv::DtLocklessQueue< T >

DtLocklessQueue is a thread safe queue for single reader/single writer. It may block if the queue fills. This provides a fast way to to transmit data between threads.

Inheritance diagram for makVrv::DtLocklessQueue< T >:
Inheritance graph
[legend]

Public Member Functions

 DtLocklessQueue (int size)
 
 ~DtLocklessQueue ()
 
void push (T newElement)
 
pop ()
 
bool okToPush ()
 
int count ()
 

Protected Attributes

std::vector< T > myElements
 
int myReadHead
 
int myWriteHead
 

Private Member Functions

 DtLocklessQueue ()
 
 DtLocklessQueue (const DtLocklessQueue &orig)
 
DtLocklessQueueoperator= (const DtLocklessQueue &rhs)
 

Constructor & Destructor Documentation

template<class T>
makVrv::DtLocklessQueue< T >::DtLocklessQueue ( int  size)

CTOR.

template<class T>
makVrv::DtLocklessQueue< T >::~DtLocklessQueue ( )

DTOR.

template<class T>
makVrv::DtLocklessQueue< T >::DtLocklessQueue ( )
private

Default CTOR (unimplemented)

template<class T>
makVrv::DtLocklessQueue< T >::DtLocklessQueue ( const DtLocklessQueue< T > &  orig)
private

Copy CTOR (unimplemented)

Member Function Documentation

template<class T>
void makVrv::DtLocklessQueue< T >::push ( newElement)

Add an element fo the queue.

template<class T>
T makVrv::DtLocklessQueue< T >::pop ( )

Remove an element from the queue.

template<class T>
bool makVrv::DtLocklessQueue< T >::okToPush ( )

Check to see if there is room in the queue. If there is not enough room, the call to push will block.

template<class T>
int makVrv::DtLocklessQueue< T >::count ( )

Get the current element count.

template<class T>
DtLocklessQueue& makVrv::DtLocklessQueue< T >::operator= ( const DtLocklessQueue< T > &  rhs)
private

Assignment operator (unimplemented)

Member Data Documentation

template<class T>
std::vector<T> makVrv::DtLocklessQueue< T >::myElements
protected
template<class T>
int makVrv::DtLocklessQueue< T >::myReadHead
protected
template<class T>
int makVrv::DtLocklessQueue< T >::myWriteHead
protected

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

Document ID: Generated on Sun Dec 4 20:22:03 EST 2022 from SVN revision 249613
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)