OpenPose  1.7.0
The first real-time multi-person system to jointly detect human body, hand, facial, and foot keypoints
op::QueueBase< TDatums, TQueue > Class Template Referenceabstract

#include <queueBase.hpp>

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
 

Detailed Description

template<typename TDatums, typename TQueue>
class op::QueueBase< TDatums, TQueue >

Definition at line 12 of file queueBase.hpp.

Constructor & Destructor Documentation

◆ QueueBase()

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

Definition at line 98 of file queueBase.hpp.

◆ ~QueueBase()

template<typename TDatums , typename TQueue >
op::QueueBase< TDatums, TQueue >::~QueueBase
virtual

Definition at line 109 of file queueBase.hpp.

Member Function Documentation

◆ addPopper()

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::addPopper

Definition at line 342 of file queueBase.hpp.

◆ addPusher()

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::addPusher

Definition at line 358 of file queueBase.hpp.

◆ clear()

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::clear

Definition at line 419 of file queueBase.hpp.

◆ empty()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::empty

Definition at line 286 of file queueBase.hpp.

◆ forceEmplace()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::forceEmplace ( TDatums &  tDatums)

Definition at line 124 of file queueBase.hpp.

◆ forcePush()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::forcePush ( const TDatums &  tDatums)

Definition at line 174 of file queueBase.hpp.

◆ front()

template<typename TDatums , typename TQueue >
virtual TDatums op::QueueBase< TDatums, TQueue >::front ( ) const
pure virtual

◆ getMaxSize()

template<typename TDatums , typename TQueue >
unsigned long long op::QueueBase< TDatums, TQueue >::getMaxSize
protected

Definition at line 434 of file queueBase.hpp.

◆ isFull()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::isFull

Definition at line 389 of file queueBase.hpp.

◆ isRunning()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::isRunning

Definition at line 374 of file queueBase.hpp.

◆ pop()

template<typename TDatums , typename TQueue >
virtual bool op::QueueBase< TDatums, TQueue >::pop ( TDatums &  tDatums)
protectedpure virtual

◆ size()

template<typename TDatums , typename TQueue >
size_t op::QueueBase< TDatums, TQueue >::size

Definition at line 404 of file queueBase.hpp.

◆ stop()

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::stop

Definition at line 301 of file queueBase.hpp.

◆ stopPusher()

template<typename TDatums , typename TQueue >
void op::QueueBase< TDatums, TQueue >::stopPusher

Definition at line 320 of file queueBase.hpp.

◆ tryEmplace()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryEmplace ( TDatums &  tDatums)

Definition at line 141 of file queueBase.hpp.

◆ tryPop() [1/2]

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPop

Definition at line 239 of file queueBase.hpp.

◆ tryPop() [2/2]

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPop ( TDatums &  tDatums)

Definition at line 224 of file queueBase.hpp.

◆ tryPush()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::tryPush ( const TDatums &  tDatums)

Definition at line 191 of file queueBase.hpp.

◆ waitAndEmplace()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndEmplace ( TDatums &  tDatums)

Definition at line 158 of file queueBase.hpp.

◆ waitAndPop() [1/2]

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPop

Definition at line 270 of file queueBase.hpp.

◆ waitAndPop() [2/2]

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPop ( TDatums &  tDatums)

Definition at line 254 of file queueBase.hpp.

◆ waitAndPush()

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::waitAndPush ( const TDatums &  tDatums)

Definition at line 208 of file queueBase.hpp.

Member Data Documentation

◆ mConditionVariable

template<typename TDatums , typename TQueue >
std::condition_variable op::QueueBase< TDatums, TQueue >::mConditionVariable
protected

Definition at line 66 of file queueBase.hpp.

◆ mMaxPoppersPushers

template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mMaxPoppersPushers
protected

Definition at line 63 of file queueBase.hpp.

◆ mMutex

template<typename TDatums , typename TQueue >
std::mutex op::QueueBase< TDatums, TQueue >::mMutex
mutableprotected

Definition at line 60 of file queueBase.hpp.

◆ mPopIsStopped

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::mPopIsStopped
protected

Definition at line 64 of file queueBase.hpp.

◆ mPoppers

template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mPoppers
protected

Definition at line 61 of file queueBase.hpp.

◆ mPushers

template<typename TDatums , typename TQueue >
long long op::QueueBase< TDatums, TQueue >::mPushers
protected

Definition at line 62 of file queueBase.hpp.

◆ mPushIsStopped

template<typename TDatums , typename TQueue >
bool op::QueueBase< TDatums, TQueue >::mPushIsStopped
protected

Definition at line 65 of file queueBase.hpp.

◆ mTQueue

template<typename TDatums , typename TQueue >
TQueue op::QueueBase< TDatums, TQueue >::mTQueue
protected

Definition at line 67 of file queueBase.hpp.


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