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 >:

## 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 > ::built_successors_type | built_successors_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 > | built_successors_type
| interface to record edges for traversal & deletion
typedef built_successors_type::edge_list_type | successor_list_type

## 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.
built_successors_type & | built_successors ()
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 ()
void | extract ()
Public Member Functions inherited from tbb::flow::interface7::graph_node
| graph_node (graph &g)

## Protected Member Functions

void | reset_node (__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_node (__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
graph & | my_graph
graph_node * | next
graph_node * | prev

## 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 | ( | ) |  |

inline virtual

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:

- flow_graph.h

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.