BRE12
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
internal::reservable_item_buffer< T, A > Class Template Reference

item_buffer with reservable front-end. NOTE: if reserving, do not More...

#include <_flow_graph_item_buffer_impl.h>

Inheritance diagram for internal::reservable_item_buffer< T, A >:
internal::item_buffer< T, A >

Public Member Functions

void reset ()
 
- Public Member Functions inherited from internal::item_buffer< T, A >
 item_buffer ()
 Constructor.
 
void reset ()
 

Protected Member Functions

bool reserve_front (T &v)
 
void consume_front ()
 
void release_front ()
 
- Protected Member Functions inherited from internal::item_buffer< T, A >
bool buffer_empty ()
 
buffer_item_typeitem (size_type i)
 
bool my_item_valid (size_type i)
 
bool my_item_reserved (size_type i)
 
const item_type & get_my_item (size_t i)
 
void set_my_item (size_t i, const item_type &o)
 
void fetch_item (size_t i, item_type &o)
 
void move_item (size_t to, size_t from)
 
bool place_item (size_t here, const item_type &me)
 
void swap_items (size_t i, size_t j)
 
void destroy_item (size_type i)
 
const item_type & front ()
 
const item_type & back ()
 
void reserve_item (size_type i)
 
void release_item (size_type i)
 
void destroy_front ()
 
void destroy_back ()
 
size_type size (size_t new_tail=0)
 
size_type capacity ()
 
bool buffer_full ()
 
void grow_my_array (size_t minimum_size)
 Grows the internal array.
 
bool push_back (item_type &v)
 
bool pop_back (item_type &v)
 
bool pop_front (item_type &v)
 
void clean_up_buffer (bool reset_pointers)
 

Protected Attributes

bool my_reserved
 
- Protected Attributes inherited from internal::item_buffer< T, A >
buffer_item_typemy_array
 
size_type my_array_size
 
size_type my_head
 
size_type my_tail
 

Additional Inherited Members

- Public Types inherited from internal::item_buffer< T, A >
enum  buffer_item_state { no_item =0, has_item =1, reserved_item =2 }
 
typedef T item_type
 
- Protected Types inherited from internal::item_buffer< T, A >
typedef size_t size_type
 
typedef aligned_pair< item_type, buffer_item_state >::type buffer_item_type
 
typedef A::template rebind< buffer_item_type >::other allocator_type
 
- Static Protected Attributes inherited from internal::item_buffer< T, A >
static const size_type initial_buffer_size = 4
 

Detailed Description

template<typename T, typename A = cache_aligned_allocator<T>>
class internal::reservable_item_buffer< T, A >

item_buffer with reservable front-end. NOTE: if reserving, do not


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