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

An executable node that acts as a source, i.e. it has no predecessors. More...

#include <flow_graph.h>

Inheritance diagram for tbb::flow::interface7::source_node< Output >:
tbb::flow::interface7::graph_node tbb::flow::interface7::sender< Output >

Public Types

typedef Output output_type
 The type of the output message, which is complete.
 
typedef receiver< Output > successor_type
 The type of successors of this node.
 
typedef null_type input_type
 
typedef sender< output_type >
::successor_list_type 
successor_list_type
 
- Public Types inherited from tbb::flow::interface7::sender< Output >
typedef Output output_type
 The output type of this sender.
 
typedef receiver< Output > successor_type
 The successor type for this node.
 
typedef
internal::edge_container
< successor_type >
::edge_list_type 
successor_list_type
 interface to record edges for traversal & deletion
 

Public Member Functions

template<typename Body >
 source_node (graph &g, Body body, bool is_active=true)
 Constructor for a node with a successor.
 
 source_node (const source_node &src)
 Copy constructor.
 
 ~source_node ()
 The destructor.
 
void set_name (const char *name)
 
bool register_successor (successor_type &r)
 Add a new successor to this node.
 
bool remove_successor (successor_type &r)
 Removes a successor from this node.
 
void internal_add_built_successor (successor_type &r)
 
void internal_delete_built_successor (successor_type &r)
 
size_t successor_count ()
 
void copy_successors (successor_list_type &v)
 
bool try_get (output_type &v)
 Request an item from the node.
 
bool try_reserve (output_type &v)
 Reserves an item.
 
bool try_release ()
 Release a reserved item. More...
 
bool try_consume ()
 Consumes a reserved item.
 
void activate ()
 Activates a node that was created in the inactive state.
 
template<typename Body >
Body copy_function_object ()
 
- Public Member Functions inherited from tbb::flow::interface7::graph_node
 graph_node (graph &g)
 
virtual void extract (reset_flags f=rf_extract)
 

Protected Member Functions

void reset (__TBB_PFG_RESET_ARG(reset_flags f))
 resets the source_node to its initial state
 
- Protected Member Functions inherited from tbb::flow::interface7::graph_node
virtual void reset (__TBB_PFG_RESET_ARG(reset_flags f=rf_reset_protocol))=0
 

Friends

class internal::source_task_bypass< source_node< output_type > >
 

Additional Inherited Members

- Protected Attributes inherited from tbb::flow::interface7::graph_node
graphmy_graph
 
graph_nodenext
 
graph_nodeprev
 

Detailed Description

template<typename Output>
class tbb::flow::interface7::source_node< Output >

An executable node that acts as a source, i.e. it has no predecessors.

Member Function Documentation

template<typename Output >
bool tbb::flow::interface7::source_node< Output >::try_release ( )
inlinevirtual

Release a reserved item.

true = item has been released and so remains in sender, dest must request or reserve future items

Reimplemented from tbb::flow::interface7::sender< Output >.


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

Copyright © 2005-2015 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.