Public Types | Public Member Functions | Private Member Functions | Private Attributes | List of all members
atomic_queue_reserved< T, SIZE > Class Template Reference

Atomic FIFO of a pre-defined size for copy-able class. More...

#include <atomic_queue.h>

Inheritance diagram for atomic_queue_reserved< T, SIZE >:
Inheritance graph
[legend]

Public Types

typedef atomic_pointer_queue
< T, SIZE >::nospace_error 
nospace_error
 
typedef uint_cas_max key
 

Public Member Functions

void push (const T &t)
 
void pop ()
 This is not reentrant.
 
T & front ()
 This is not reentrant.
 
bool empty () const
 This is not reentrant.
 
unsigned int size () const
 
bool atomicPop (key item)
 
key atomicFront (T *val)
 Try to obtain the front item.
 

Private Member Functions

int key2index (key i)
 
int key2serial (key i)
 
key key_index_serial (int index, int serial)
 

Private Attributes

atomic_nonzero_pod_queue< key,
SIZE > 
m_queue
 
atomic_nonzero_pod_queue< key,
SIZE > 
m_reservoir
 
m_array [SIZE]
 

Detailed Description

template<typename T, unsigned int SIZE>
class atomic_queue_reserved< T, SIZE >

Atomic FIFO of a pre-defined size for copy-able class.

Definition at line 209 of file atomic_queue.h.

Member Function Documentation

template<typename T, unsigned int SIZE>
bool atomic_queue_reserved< T, SIZE >::atomicPop ( key  item)
inline

Try to pop the front item.

Parameters
itemto be released.
Returns
true if succeeded.

Definition at line 272 of file atomic_queue.h.


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

Generated for KAME4 by  doxygen 1.8.3