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

The two-phase join port. More...

#include <_flow_graph_join_impl.h>

Inheritance diagram for internal::reserving_port< T >:

Public Types

typedef T input_type
 
typedef receiver< input_type >::predecessor_type predecessor_type
 

Public Member Functions

 reserving_port ()
 Constructor.
 
 reserving_port (const reserving_port &)
 
void set_join_node_pointer (forwarding_base *join)
 
bool register_predecessor (predecessor_type &src)
 Add a predecessor.
 
bool remove_predecessor (predecessor_type &src)
 Remove a predecessor.
 
bool reserve (T &v)
 Reserve an item from the port.
 
void release ()
 Release the port.
 
void consume ()
 Complete use of the port.
 
void reset_receiver (reset_flags f)
 

Protected Member Functions

task * try_put_task (const T &)
 

Friends

class internal::aggregating_functor< class_type, reserving_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
 

Detailed Description

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

The two-phase join port.


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