- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Hierarchy
- Class Members

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

Forwards messages of type T to all successors. More...

`#include <flow_graph.h>`

Inheritance diagram for tbb::flow::interface7::broadcast_node< T >:

## Public Types
typedef T | input_type
typedef T | output_type
typedef sender< input_type > | predecessor_type
typedef receiver< output_type > | successor_type
typedef std::vector < predecessor_type * > | predecessor_vector_type
typedef std::vector < successor_type * > | successor_vector_type
Public Types inherited from tbb::flow::interface7::receiver< T >
typedef T | input_type
| The input type of this receiver.
typedef sender< T > | predecessor_type
| The predecessor type for this node.
Public Types inherited from tbb::flow::interface7::sender< T >
typedef T | output_type
| The output type of this sender.
typedef receiver< T > | successor_type
| The successor type for this node.

## Public Member Functions
| broadcast_node (graph &g)
| broadcast_node (const broadcast_node &src)
void | set_name (const char *name)
virtual bool | register_successor (receiver< T > &r)
| Adds a successor.
virtual bool | remove_successor (receiver< T > &r)
| Removes s as a successor.
void | internal_add_built_successor (successor_type &r)
| interface to record edges for traversal & deletion
void | internal_delete_built_successor (successor_type &r)
size_t | successor_count ()
void | copy_successors (successor_vector_type &v)
void | internal_add_built_predecessor (predecessor_type &p)
void | internal_delete_built_predecessor (predecessor_type &p)
size_t | predecessor_count ()
void | copy_predecessors (predecessor_vector_type &v)
Public Member Functions inherited from tbb::flow::interface7::graph_node
| graph_node (graph &g)
virtual void | extract (reset_flags f=rf_extract)
Public Member Functions inherited from tbb::flow::interface7::receiver< T >
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.
virtual void | copy_predecessors (std::vector< predecessor_type * > &)=0
Public Member Functions inherited from tbb::flow::interface7::sender< T >
virtual bool | try_get (T &)
| Request an item from the sender.
virtual bool | try_reserve (T &)
| Reserves an item in the sender.
virtual bool | try_release ()
| Releases the reserved item.
virtual bool | try_consume ()
| Consumes the reserved item.
virtual void | copy_successors (std::vector< successor_type * > &)=0

## Protected Member Functions
task * | try_put_task (const T &t)
| build a task to run the successor if possible. Default is old behavior.
void | reset (__TBB_PFG_RESET_ARG(reset_flags f))
void | reset_receiver (__TBB_PFG_RESET_ARG(reset_flags))
Protected Member Functions inherited from tbb::flow::interface7::graph_node
virtual void | reset (__TBB_PFG_RESET_ARG(reset_flags f=rf_reset_protocol))=0
Protected Member Functions inherited from tbb::flow::interface7::receiver< T >
virtual void | reset_receiver (__TBB_PFG_RESET_ARG(reset_flags f=rf_reset_protocol))=0
virtual bool | is_continue_receiver ()

## Friends
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 Attributes inherited from tbb::flow::interface7::graph_node
graph & | my_graph
graph_node * | next
graph_node * | prev

## Detailed Description

### template<typename T>
class tbb::flow::interface7::broadcast_node< T >

Forwards messages of type T to all successors.

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

- flow_graph.h

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.