RISA
glados::Queue< Object > Class Template Reference

#include <Queue.h>

Public Member Functions

 Queue ()
 
 Queue (std::size_t limit)
 
template<class Item >
void push (Item &&item)
 
Object take ()
 

Private Attributes

const std::size_t limit_
 
std::size_t count_
 
std::mutex mutex_
 
std::condition_variable item_cv_
 
std::condition_variable count_cv_
 
std::queue< Object > queue_
 

Detailed Description

template<class Object>
class glados::Queue< Object >

Definition at line 42 of file Queue.h.

Constructor & Destructor Documentation

template<class Object>
glados::Queue< Object >::Queue ( )
inline

Definition at line 48 of file Queue.h.

template<class Object>
glados::Queue< Object >::Queue ( std::size_t  limit)
inlineexplicit

Definition at line 49 of file Queue.h.

Member Function Documentation

template<class Object>
template<class Item >
void glados::Queue< Object >::push ( Item &&  item)
inline

Definition at line 56 of file Queue.h.

template<class Object>
Object glados::Queue< Object >::take ( )
inline

Definition at line 73 of file Queue.h.

Member Data Documentation

template<class Object>
std::size_t glados::Queue< Object >::count_
private

Definition at line 93 of file Queue.h.

template<class Object>
std::condition_variable glados::Queue< Object >::count_cv_
private

Definition at line 95 of file Queue.h.

template<class Object>
std::condition_variable glados::Queue< Object >::item_cv_
private

Definition at line 95 of file Queue.h.

template<class Object>
const std::size_t glados::Queue< Object >::limit_
private

Definition at line 92 of file Queue.h.

template<class Object>
std::mutex glados::Queue< Object >::mutex_
mutableprivate

Definition at line 94 of file Queue.h.

template<class Object>
std::queue<Object> glados::Queue< Object >::queue_
private

Definition at line 96 of file Queue.h.


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