Logo
ApraPipes 1.0
Loading...
Searching...
No Matches
threadsafe_que< T > Class Template Reference

#include <ThreadSafeQue.h>

Collaboration diagram for threadsafe_que< T >:
Collaboration graph

Public Types

typedef boost::container::deque< T > container_type
 
typedef container_type::size_type size_type
 
typedef container_type::value_type value_type
 

Public Member Functions

 threadsafe_que ()
 
void push (typename boost::call_traits< value_type >::param_type item)
 
value_type try_pop ()
 
value_type pop ()
 
void clear ()
 
size_t size ()
 
value_type try_pop_external ()
 
void setWake ()
 

Private Member Functions

 threadsafe_que (const threadsafe_que &)
 
threadsafe_queoperator= (const threadsafe_que &)
 
bool is_not_empty () const
 
bool is_not_empty_external () const
 

Private Attributes

bool m_wakeExternally
 
size_type m_unread
 
container_type m_container
 
boost::mutex m_mutex
 
boost::condition m_not_empty
 

Member Typedef Documentation

◆ container_type

template<class T >
boost::container::deque<T> threadsafe_que< T >::container_type

◆ size_type

template<class T >
container_type::size_type threadsafe_que< T >::size_type

◆ value_type

template<class T >
container_type::value_type threadsafe_que< T >::value_type

Constructor & Destructor Documentation

◆ threadsafe_que() [1/2]

template<class T >
threadsafe_que< T >::threadsafe_que ( )
inlineexplicit

◆ threadsafe_que() [2/2]

template<class T >
threadsafe_que< T >::threadsafe_que ( const threadsafe_que< T > & )
private

Member Function Documentation

◆ clear()

template<class T >
void threadsafe_que< T >::clear ( )
inline
Here is the caller graph for this function:

◆ is_not_empty()

template<class T >
bool threadsafe_que< T >::is_not_empty ( ) const
inlineprivate
Here is the caller graph for this function:

◆ is_not_empty_external()

template<class T >
bool threadsafe_que< T >::is_not_empty_external ( ) const
inlineprivate

◆ operator=()

template<class T >
threadsafe_que & threadsafe_que< T >::operator= ( const threadsafe_que< T > & )
private

◆ pop()

template<class T >
value_type threadsafe_que< T >::pop ( )
inline

◆ push()

template<class T >
void threadsafe_que< T >::push ( typename boost::call_traits< value_type >::param_type item)
inline
Here is the caller graph for this function:

◆ setWake()

template<class T >
void threadsafe_que< T >::setWake ( )
inline
Here is the caller graph for this function:

◆ size()

template<class T >
size_t threadsafe_que< T >::size ( )
inline
Here is the caller graph for this function:

◆ try_pop()

template<class T >
value_type threadsafe_que< T >::try_pop ( )
inline
Here is the call graph for this function:

◆ try_pop_external()

template<class T >
value_type threadsafe_que< T >::try_pop_external ( )
inline
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ m_container

template<class T >
container_type threadsafe_que< T >::m_container
private

◆ m_mutex

template<class T >
boost::mutex threadsafe_que< T >::m_mutex
private

◆ m_not_empty

template<class T >
boost::condition threadsafe_que< T >::m_not_empty
private

◆ m_unread

template<class T >
size_type threadsafe_que< T >::m_unread
private

◆ m_wakeExternally

template<class T >
bool threadsafe_que< T >::m_wakeExternally
private

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