Types for defining, extending, and executing control-flow graphs. More...
Classes | |
| struct | control< P > |
| The control type provides a control model for specifying a set of control points as a coarse-grained control flow graph, with each node of the graph specifying a set of actions as a directed acyclic graph (DAG). More... | |
| struct | control_base |
| Base class for providing default implementations for optional interfaces. More... | |
| struct | control_policy |
| An example control policy that is not really implemented. More... | |
| struct | cycle< Predicate, ControlPoints > |
| Allow users to define cyclic control points. More... | |
| struct | point_walker< P > |
| The point_walker class allows execution of statically-defined control points. More... | |
Typedefs | |
| using | call |
| A trivial control model that calls a single function. | |
| template<auto CP> | |
| using | control_point |
| A control point for application use. | |
| template<bool(*)() P, typename... CP> | |
| using | cycle |
| A control-flow cycle. | |
Functions | |
| const char * | operator* (control_policy::control_points_enum) |
| A control policy must provide names for its control points. | |
Types for defining, extending, and executing control-flow graphs.
| using control_point |
A control point for application use.
| CP | control point enumerator |
| using cycle |
A control-flow cycle.
| P | tested before each iteration |
| CP | control_point or cycle types |
| using call |
A trivial control model that calls a single function.
Its control policy object can be constructed from any callable with the signature int(flecsi::scheduler&) or (deprecated) int().
| const char * operator* | ( | control_policy::control_points_enum | ) |
A control policy must provide names for its control points.