DART
6.7.3
|
Inherit this class to embed a State into your Composite object. More...
#include <EmbeddedAspect.hpp>
Public Types | |
using | Derived = DerivedT |
using | Aspect = common::EmbeddedStateAspect< Derived, StateDataT > |
using | AspectState = typename Aspect::State |
using | AspectStateData = typename Aspect::StateData |
using | Base = common::RequiresAspect< Aspect > |
Public Member Functions | |
template<typename... Args> | |
EmbedState (Args &&... args) | |
virtual | ~EmbedState ()=default |
const AspectState & | getAspectState () const |
Protected Attributes | |
AspectState | mAspectState |
Aspect::State data, directly accessible to your derived class. More... | |
Inherit this class to embed a State into your Composite object.
DerivedT is the name of your class and StateDataT is a "plain-old data" structure that holds your state information.
Your derived class must implement the following functions:
To embed both state and properties information, use EmbedStateAndProperties.
It is possible to customize the way an EmbeddedStateAspect interacts with your Composite by using the dart::common::detail::EmbeddedStateAspect class directly instead of inheriting this class.
using dart::common::EmbedState< DerivedT, StateDataT >::Aspect = common::EmbeddedStateAspect<Derived, StateDataT> |
using dart::common::EmbedState< DerivedT, StateDataT >::AspectState = typename Aspect::State |
using dart::common::EmbedState< DerivedT, StateDataT >::AspectStateData = typename Aspect::StateData |
using dart::common::EmbedState< DerivedT, StateDataT >::Base = common::RequiresAspect<Aspect> |
using dart::common::EmbedState< DerivedT, StateDataT >::Derived = DerivedT |
|
inline |
|
virtualdefault |
|
inline |
|
protected |
Aspect::State data, directly accessible to your derived class.