VR-Forces 5.0.3 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
makVrf::DtLocklessQueue< T > Class Template Reference

template<class T>
class makVrf::DtLocklessQueue< T >

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

Inheritance diagram for makVrf::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>
makVrf::DtLocklessQueue< T >::DtLocklessQueue ( int  size)

CTOR.

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

DTOR.

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

Default CTOR (unimplemented)

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

Copy CTOR (unimplemented)

Member Function Documentation

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

Add an element on the queue.

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

Remove an element from the queue.

template<class T>
bool makVrf::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 makVrf::DtLocklessQueue< T >::count ( )

Get the current element count.

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

Assignment operator (unimplemented)

Member Data Documentation

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

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

Document ID: Generated on Thu Jun 1 17:58:13 EDT 2023 from SVN revision 255404
Copyright © 2005-2021 MAK Technologies. All Rights Reserved (www.mak.com)