OpenPose  1.0.0rc2
OpenPose: A Real-Time Multi-Person Key-Point Detection And Multi-Threading C++ Library
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
op::QueueBase< TDatums, TQueue > Class Template Referenceabstract

#include <queueBase.hpp>

Inherited by op::PriorityQueue< TDatums, TQueue >, and op::Queue< TDatums, TQueue >.

Public Member Functions

 QueueBase (const long long maxSize=-1)
 
virtual ~QueueBase ()
 
bool forceEmplace (TDatums &tDatums)
 
bool tryEmplace (TDatums &tDatums)
 
bool waitAndEmplace (TDatums &tDatums)
 
bool forcePush (const TDatums &tDatums)
 
bool tryPush (const TDatums &tDatums)
 
bool waitAndPush (const TDatums &tDatums)
 
bool tryPop (TDatums &tDatums)
 
bool tryPop ()
 
bool waitAndPop (TDatums &tDatums)
 
bool waitAndPop ()
 
bool empty () const
 
void stop ()
 
void stopPusher ()
 
void addPopper ()
 
void addPusher ()
 
bool isRunning () const
 
bool isFull () const
 
size_t size () const
 
void clear ()
 
virtual TDatums front () const =0
 

Protected Member Functions

virtual bool pop (TDatums &tDatums)=0
 
unsigned long long getMaxSize () const
 

Protected Attributes

std::mutex mMutex
 
long long mPoppers
 
long long mPushers
 
long long mMaxPoppersPushers
 
bool mPopIsStopped
 
bool mPushIsStopped
 
std::condition_variable mConditionVariable
 
TQueue mTQueue
 

Constructor & Destructor Documentation

template<typename TDatums , typename TQueue >
op::QueueBase< TDatums, TQueue >::QueueBase ( const long long  maxSize = -1)
explicit
template<typename TDatums , typename TQueue >
op::QueueBase< TDatums, TQueue >::~QueueBase ( )
virtual

Member Function Documentation

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::addPopper ( )
template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::addPusher ( )
template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::clear ( )
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::empty ( ) const
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::forceEmplace ( TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::forcePush ( const TDatums &  tDatums)
template<typename TDatums , typename TQueue >
virtual TDatums op::QueueBase< TDatums, TQueue >::front ( ) const
pure virtual
template<typename TDatums , typename TQueue >
unsigned long long op::QueueBase< TDatums, TQueue >::getMaxSize ( ) const
protected
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::isFull ( ) const
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::isRunning ( ) const
template<typename TDatums , typename TQueue >
virtual bool op::QueueBase< TDatums, TQueue >::pop ( TDatums &  tDatums)
protectedpure virtual
template<typename TDatums , typename TQueue >
size_t op::QueueBase< TDatums, TQueue >::size ( ) const
template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::stop ( )
template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::stopPusher ( )
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryEmplace ( TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPop ( TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPop ( )
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPush ( const TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndEmplace ( TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPop ( TDatums &  tDatums)
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPop ( )
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPush ( const TDatums &  tDatums)

Member Data Documentation

template<typename TDatums , typename TQueue >
std::condition_variable op::QueueBase< TDatums, TQueue >::mConditionVariable
protected
template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mMaxPoppersPushers
protected
template<typename TDatums , typename TQueue >
std::mutex op::QueueBase< TDatums, TQueue >::mMutex
mutableprotected
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::mPopIsStopped
protected
template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mPoppers
protected
template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mPushers
protected
template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::mPushIsStopped
protected
template<typename TDatums , typename TQueue >
TQueue op::QueueBase< TDatums, TQueue >::mTQueue
protected

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