|
msl 1.3.0
|
Graph-related objects and functions.
Classes | |
| class | AbstractNode |
| Base class for all graph nodes. More... | |
| class | Action |
Node calling a function when run is called. More... | |
| class | Block |
| Node encapsulating a block (anything respecting the API of SeqBuildBlock). More... | |
| class | Case |
| Node encapsulating a switch/case structure based on a boolean key or a function key. More... | |
| class | FlexibleFunctionAdapter |
| Adapt a FlexibleFunction to its nominal form. More... | |
| class | If |
| Node running its children based on a boolean key or a function key. More... | |
| class | IteratorTemplate |
| Node encapsulating an msl::Iterator. More... | |
| class | Loop |
| Node encapsulating a loop structure, using a Counter from the registry. More... | |
| class | Node |
| Container node, prepare and run its children sequentially. More... | |
Typedefs | |
| template<typename T > | |
| using | FlexibleFunction = boost::variant< std::function< T()>, std::function< T(Dictionary::Pointer)>, std::function< T(MrProt &)>, std::function< T(MrProt &, Dictionary::Pointer)>, std::function< T(MrProt &, SeqLim &, SeqExpo &)>, std::function< T(MrProt &, SeqLim &, SeqExpo &, Dictionary::Pointer)> > |
| A graph function (e.g. Case or If), with flexible arguments. | |
| template<typename T > | |
| using | ConstIterator = IteratorTemplate< msl::ConstIterator< T > > |
| Const iterator node. | |
| template<typename T > | |
| using | Iterator = IteratorTemplate< msl::Iterator< T > > |
| Non-const iterator node. | |
Functions | |
| template<typename T , typename U > | |
| std::shared_ptr< T > | NodeCast (std::shared_ptr< U > const &p) |
| Up- or down-cast node pointers. | |
| template<typename T > | |
| std::function< T(MrProt &, SeqLim &, SeqExpo &, Dictionary::Pointer)> | function_adapter (FlexibleFunction< T > const &f) |
| Adapt a FlexibleFunction to its nominal form. | |
| using msl::graph::FlexibleFunction = typedef boost::variant< std::function<T()>, std::function<T(Dictionary::Pointer)>, std::function<T(MrProt &)>, std::function<T(MrProt &, Dictionary::Pointer)>, std::function<T(MrProt &, SeqLim &, SeqExpo &)>, std::function<T(MrProt &, SeqLim &, SeqExpo &, Dictionary::Pointer)> > |
A graph function (e.g. Case or If), with flexible arguments.
| using msl::graph::ConstIterator = typedef IteratorTemplate<msl::ConstIterator<T> > |
Const iterator node.
| using msl::graph::Iterator = typedef IteratorTemplate<msl::Iterator<T> > |
Non-const iterator node.
| std::shared_ptr< T > msl::graph::NodeCast | ( | std::shared_ptr< U > const & | p | ) |
Up- or down-cast node pointers.
| std::function< T(MrProt &, SeqLim &, SeqExpo &, Dictionary::Pointer)> msl::graph::function_adapter | ( | FlexibleFunction< T > const & | f | ) |
Adapt a FlexibleFunction to its nominal form.