BRE12
Classes | Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
internal::queueing_port< T > Class Template Reference

queueing join_port More...

#include <_flow_graph_join_impl.h>

Inheritance diagram for internal::queueing_port< T >:
internal::item_buffer< T >

Public Types

typedef T input_type
 
typedef receiver< input_type >::predecessor_type predecessor_type
 
typedef queueing_port< T > class_type
 
- Public Types inherited from internal::item_buffer< T >
enum  buffer_item_state
 
typedef T item_type
 

Public Member Functions

 queueing_port ()
 Constructor.
 
 queueing_port (const queueing_port &)
 copy constructor
 
void set_join_node_pointer (forwarding_base *join)
 record parent for tallying available items
 
bool get_item (T &v)
 
void reset_port ()
 
void reset_receiver (reset_flags f)
 
- Public Member Functions inherited from internal::item_buffer< T >
 item_buffer ()
 Constructor.
 
void reset ()
 

Protected Member Functions

task * try_put_task (const T &v)
 
- Protected Member Functions inherited from internal::item_buffer< T >
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)
 

Friends

class internal::aggregating_functor< class_type, queueing_port_operation >
 
template<typename R , typename B >
class run_and_put_task
 
template<typename X , typename Y >
class internal::broadcast_cache
 
template<typename X , typename Y >
class internal::round_robin_cache
 

Additional Inherited Members

- Protected Types inherited from internal::item_buffer< T >
typedef size_t size_type
 
typedef aligned_pair< item_type, buffer_item_state >::type buffer_item_type
 
typedef cache_aligned_allocator< T > ::template rebind< buffer_item_type >::other allocator_type
 
- Protected Attributes inherited from internal::item_buffer< T >
buffer_item_typemy_array
 
size_type my_array_size
 
size_type my_head
 
size_type my_tail
 
- Static Protected Attributes inherited from internal::item_buffer< T >
static const size_type initial_buffer_size
 

Detailed Description

template<typename T>
class internal::queueing_port< T >

queueing join_port


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