#include <tpie/pipelining/factory_helpers.h>
Inherits tpie::pipelining::factory_base.
Public Types | |
| typedef R | constructed_type |
Public Member Functions | |
| termfactory (const termfactory &o)=delete | |
| termfactory (termfactory &&o)=default | |
| termfactory & | operator= (const termfactory &o)=delete |
| termfactory & | operator= (termfactory &&o)=default |
| template<typename... Args> | |
| termfactory (Args &&... v) | |
| R | construct () |
| R | construct_copy () |
| void | memory (double amount) noexcept |
| Set memory fraction for this node in the pipeline phase. More... | |
| double | memory () const noexcept |
| Set memory fraction for this node in the pipeline phase. More... | |
| void | hook_initialization (factory_init_hook *hook) |
| Add a node initialization hook. More... | |
| void | copy_hooks_to (factory_base &other) const |
| Copy the hooks that have been added to this factory to another. More... | |
| void | init_node (node &r) |
| \Brief Initialize node constructed in a subclass. More... | |
| void | init_sub_node (node &r) |
| Initialize node constructed in a subclass. More... | |
| void | add_default_edge (node &r, const node &dest) const |
| Used by pipe_base classes to set a default actor edge for ordinary push/pull nodes. More... | |
| void | add_default_edge (node &r, const node_token &dest) const |
| Used by pipe_base classes to set a default actor edge for ordinary push/pull nodes. More... | |
| void | add_node_set_edges (node &r) const |
| void | name (const std::string &n, priority_type p) |
| Set name for this node. More... | |
| void | phase_name (const std::string &n, priority_type p) |
| Set name for this phase. More... | |
| void | push_breadcrumb (const std::string &n) |
| Set a prefix for the name of this node. More... | |
| void | set_destination_kind_push () noexcept |
| Used by pipe_base classes to indicate that the default actor edge is a push edge. More... | |
| void | set_destination_kind_pull () noexcept |
| Used by pipe_base classes to indicate that the default actor edge is a pull edge. More... | |
| void | add_to_set (node_set s) |
| void | add_dependencies (node_set s) |
| void | add_forwarding_dependencies (node_set s) |
| void | forward (const std::string &key, any_noncopyable value) |
Node factory for variadic argument terminators.
Definition at line 78 of file factory_helpers.h.
|
inherited |
Used by pipe_base classes to set a default actor edge for ordinary push/pull nodes.
|
inherited |
Used by pipe_base classes to set a default actor edge for ordinary push/pull nodes.
|
inherited |
Copy the hooks that have been added to this factory to another.
|
inherited |
Add a node initialization hook.
When a node is instantiated in construct(), the given hook will get a chance to do some additional initialization.
|
inherited |
\Brief Initialize node constructed in a subclass.
This lets the user define a name or memory fraction for this certain node in the pipeline phase, and it lets initialization hooks do their thing.
If more than one node is constructed in the subclass in construct(), the implementation should use init_sub_node instead.
|
inherited |
Initialize node constructed in a subclass.
This lets the user define a name or memory fraction for this certain node in the pipeline phase, and it lets initialization hooks do their thing.
If just one node is constructed in the subclass in construct(), the implementation should use init_node instead.
|
inlinenoexceptinherited |
Set memory fraction for this node in the pipeline phase.
In the absence of minimum and maximum memory requirements set by node implementations, the memory assigned to the node will be proportional to the amount parameter which sets the memory priority of this node in relation to the rest of the phase.
Definition at line 99 of file factory_base.h.
|
inlinenoexceptinherited |
Set memory fraction for this node in the pipeline phase.
In the absence of minimum and maximum memory requirements set by node implementations, the memory assigned to the node will be proportional to the amount parameter which sets the memory priority of this node in relation to the rest of the phase.
Definition at line 87 of file factory_base.h.
Referenced by tpie::pipelining::bits::pipe_base< pipe_begin< fact_t > >::memory().
|
inlineinherited |
Set name for this node.
The name is used in the GraphViz plot generated by pipeline::plot.
The name priority given in the second argument should indicate how important this node is for the current phase, and is used in naming the progress indicator for this phase. The node with the highest priority name gets to name the entire phase.
Definition at line 160 of file factory_base.h.
Referenced by tpie::pipelining::bits::pipe_base< pipe_begin< fact_t > >::name().
|
inlineinherited |
Set name for this phase.
The maximal priority phase name given for a phase wins.
Definition at line 171 of file factory_base.h.
Referenced by tpie::pipelining::bits::pipe_base< pipe_begin< fact_t > >::phase_name().
|
inlineinherited |
Set a prefix for the name of this node.
The name is used in the GraphViz plot generated by pipeline::plot.
Definition at line 183 of file factory_base.h.
Referenced by tpie::pipelining::bits::pipe_base< pipe_begin< fact_t > >::breadcrumb().
|
inlinenoexceptinherited |
Used by pipe_base classes to indicate that the default actor edge is a pull edge.
Definition at line 200 of file factory_base.h.
|
inlinenoexceptinherited |
Used by pipe_base classes to indicate that the default actor edge is a push edge.
Definition at line 192 of file factory_base.h.
Referenced by tpie::pipelining::pipe_middle< fact_t >::operator|().