Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
tbb::flow::interface7::receiver< T > Class Template Referenceabstract

Pure virtual template class that defines a receiver of messages of type T. More...

#include <flow_graph.h>

Inheritance diagram for tbb::flow::interface7::receiver< T >:
tbb::flow::interface7::broadcast_node< T > tbb::flow::interface7::buffer_node< T, A > tbb::flow::interface7::limiter_node< T > tbb::flow::interface7::overwrite_node< T > tbb::flow::interface7::priority_queue_node< T, Compare, A > tbb::flow::interface7::queue_node< T, A > tbb::flow::interface7::write_once_node< T > tbb::flow::interface7::sequencer_node< T, A >

Public Types

typedef T input_type
 The input type of this receiver.
 
typedef sender< T > predecessor_type
 The predecessor type for this node.
 

Public Member Functions

virtual ~receiver ()
 Destructor.
 
bool try_put (const T &t)
 Put an item to the receiver.
 
virtual bool register_predecessor (predecessor_type &)
 Add a predecessor to the node.
 
virtual bool remove_predecessor (predecessor_type &)
 Remove a predecessor from the node.
 

Protected Member Functions

virtual task * try_put_task (const T &t)=0
 
virtual void reset_receiver ()=0
 
virtual bool is_continue_receiver ()
 

Friends

template<typename R , typename B >
class run_and_put_task
 put item to successor; return task to run the successor if possible.
 
template<typename X , typename Y >
class internal::broadcast_cache
 
template<typename X , typename Y >
class internal::round_robin_cache
 
template<typename U >
class limiter_node
 put receiver back in initial state
 
template<typename TT , typename M >
class internal::successor_cache
 

Detailed Description

template<typename T>
class tbb::flow::interface7::receiver< T >

Pure virtual template class that defines a receiver of messages of type T.


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

Copyright © 2005-2014 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.