1 #ifndef _DYN_SEQUENCER_H_
3 #include <scene/dynamic/DynSequence.h>
6 #include <unordered_map>
11 using std::unordered_map;
13 using std::shared_ptr;
29 friend class boost::serialization::access;
36 template <
typename Archive>
37 void serialize(Archive &ar,
const unsigned int version){
49 unordered_map<string, shared_ptr<DynSequence<T>>>
dynseqs;
53 shared_ptr<DynSequence<T>>
start;
101 shared_ptr<DynSequence<T>>
get(
string const &
id);
109 inline bool has(
string const &
id)
117 #include <scene/dynamic/DynSequencer.tpp>
118 #define _DYN_SEQUENCER_H_
Dynamic sequence is a set of elements that must be applied during dynamic simulations to provide dyna...
Definition: DynSequence.h:37
Dynamic sequencer handles dynamic sequences in a sequential fashion.
Definition: DynSequencer.h:25
bool has(string const &id)
Check if the dynamic sequencer has a dynamic sequence with given identifier.
Definition: DynSequencer.h:109
void add(shared_ptr< DynSequence< T >> dynseq)
Add the dynamic sequence to the sequencer.
shared_ptr< DynSequence< T > > start
The start dynamic sequence.
Definition: DynSequencer.h:53
shared_ptr< DynSequence< T > > get(string const &id)
Get the dynamic sequence with given identifier.
DynSequencer()
Default constructor for the dynamic sequencer.
Definition: DynSequencer.h:64
void serialize(Archive &ar, const unsigned int version)
Serialize a dynamic sequencer to a stream of bytes.
Definition: DynSequencer.h:37
shared_ptr< DynSequence< T > > current
The current dynamic sequence.
Definition: DynSequencer.h:57
void clear()
Remove all dynamic sequences composing the dynamic sequencer.
Definition: DynSequencer.h:114
virtual bool hasNextStep()
Check if the dynamic sequencer supports a next step or not.
Definition: DynSequencer.h:78
unordered_map< string, shared_ptr< DynSequence< T > > > dynseqs
The dynamic sequences handled by the dynamic sequencer.
Definition: DynSequencer.h:49
void remove(string const &id)
Remove the dynamic sequence with given identifier.
Definition: DynSequencer.h:95
virtual vector< shared_ptr< T > > nextStep()
Handle next sequential behavior.