dart
Public Types | Public Member Functions | Protected Attributes | List of all members
dart::common::EmbedStateAndProperties< DerivedT, StateDataT, PropertiesDataT > Class Template Reference

Inherit this class to embed both State and Properties into your Composite object. More...

#include <EmbeddedAspect.hpp>

Inheritance diagram for dart::common::EmbedStateAndProperties< DerivedT, StateDataT, PropertiesDataT >:
Inheritance graph
[legend]
Collaboration diagram for dart::common::EmbedStateAndProperties< DerivedT, StateDataT, PropertiesDataT >:
Collaboration graph
[legend]

Public Types

using Derived = DerivedT
 
using Aspect = common::EmbeddedStateAndPropertiesAspect< DerivedT, StateDataT, PropertiesDataT >
 
using AspectState = typename Aspect::State
 
using AspectStateData = typename Aspect::StateData
 
using AspectProperties = typename Aspect::Properties
 
using AspectPropertiesData = typename Aspect::PropertiesData
 
using Base = common::RequiresAspect< Aspect >
 

Public Member Functions

template<typename... Args>
 EmbedStateAndProperties (Args &&... args)
 
const AspectState & getAspectState () const
 
const AspectProperties & getAspectProperties () const
 

Protected Attributes

AspectState mAspectState
 Aspect::State data, directly accessible to your derived class.
 
AspectProperties mAspectProperties
 Aspect::Properties data, directly accessible to your derived class.
 

Detailed Description

template<class DerivedT, typename StateDataT, typename PropertiesDataT>
class dart::common::EmbedStateAndProperties< DerivedT, StateDataT, PropertiesDataT >

Inherit this class to embed both State and Properties into your Composite object.

DerivedT is the name of your class, StateDataT is a "plain-old data" structure that holds your state information, and PropertiesDataT is a "plain-old data" structure that holds your properties information.

Your derived class must implement the following functions:

void setAspectState(const AspectState& state);
void setAspectProperties(const AspectProperties& state);

The documentation for this class was generated from the following file: