libzmq  master
ZeroMQ C++ Core Engine (LIBZMQ)
zmq::yqueue_t< T, N > Class Template Reference

#include <yqueue.hpp>

Inheritance diagram for zmq::yqueue_t< T, N >:
Collaboration diagram for zmq::yqueue_t< T, N >:

Classes

struct  chunk_t
 

Public Member Functions

 yqueue_t ()
 
 ~yqueue_t ()
 
T & back ()
 
T & front ()
 
void pop ()
 
void push ()
 
void unpush ()
 

Private Member Functions

 yqueue_t (const yqueue_t &)
 
chunk_tallocate_chunk ()
 
const yqueue_toperator= (const yqueue_t &)
 

Private Attributes

chunk_tback_chunk
 
int back_pos
 
chunk_tbegin_chunk
 
int begin_pos
 
chunk_tend_chunk
 
int end_pos
 
atomic_ptr_t< chunk_tspare_chunk
 

Detailed Description

template<typename T, int N>
class zmq::yqueue_t< T, N >

Definition at line 62 of file yqueue.hpp.

Constructor & Destructor Documentation

template<typename T, int N>
zmq::yqueue_t< T, N >::yqueue_t ( )
inline

Definition at line 68 of file yqueue.hpp.

template<typename T, int N>
zmq::yqueue_t< T, N >::~yqueue_t ( )
inline

Definition at line 80 of file yqueue.hpp.

template<typename T, int N>
zmq::yqueue_t< T, N >::yqueue_t ( const yqueue_t< T, N > &  )
private

Member Function Documentation

template<typename T, int N>
chunk_t* zmq::yqueue_t< T, N >::allocate_chunk ( )
inlineprivate

Definition at line 190 of file yqueue.hpp.

Referenced by zmq::yqueue_t< command_t, N >::push(), and zmq::yqueue_t< command_t, N >::yqueue_t().

Here is the caller graph for this function:

template<typename T, int N>
T& zmq::yqueue_t< T, N >::back ( )
inline

Definition at line 105 of file yqueue.hpp.

template<typename T, int N>
T& zmq::yqueue_t< T, N >::front ( )
inline

Definition at line 98 of file yqueue.hpp.

template<typename T, int N>
const yqueue_t& zmq::yqueue_t< T, N >::operator= ( const yqueue_t< T, N > &  )
private
template<typename T, int N>
void zmq::yqueue_t< T, N >::pop ( )
inline

Definition at line 164 of file yqueue.hpp.

template<typename T, int N>
void zmq::yqueue_t< T, N >::push ( )
inline

Definition at line 111 of file yqueue.hpp.

template<typename T, int N>
void zmq::yqueue_t< T, N >::unpush ( )
inline

Definition at line 139 of file yqueue.hpp.

Member Data Documentation

template<typename T, int N>
int zmq::yqueue_t< T, N >::begin_pos
private
template<typename T, int N>
int zmq::yqueue_t< T, N >::end_pos
private
template<typename T, int N>
atomic_ptr_t<chunk_t> zmq::yqueue_t< T, N >::spare_chunk
private