DART
6.10.1
|
#include <Aspect.hpp>
Public Types | |
template<class Mixin > | |
using | MakeState = MakeCloneable< State, Mixin > |
Use the MakeState class to easily create a State extension from an existing class or struct. More... | |
template<class Mixin > | |
using | MakeProperties = MakeCloneable< Properties, Mixin > |
Use the MakeProperties class to easily create a Properties extension from an existing class or struct. More... | |
Public Member Functions | |
CompositeTrackingAspect () | |
Default constructor. More... | |
CompositeType * | getComposite () |
Get the Composite of this Aspect. More... | |
const CompositeType * | getComposite () const |
Get the Composite of this Aspect. More... | |
bool | hasComposite () const |
Returns true if this Aspect has a Composite that matches CompositeType. More... | |
virtual std::unique_ptr< Aspect > | cloneAspect () const =0 |
Clone this Aspect into a new composite. More... | |
virtual void | setAspectState (const State &otherState) |
Set the State of this Aspect. By default, this does nothing. More... | |
virtual const State * | getAspectState () const |
Get the State of this Aspect. More... | |
virtual void | setAspectProperties (const Properties &someProperties) |
Set the Properties of this Aspect. By default, this does nothing. More... | |
virtual const Properties * | getAspectProperties () const |
Get the Properties of this Aspect. More... | |
Protected Member Functions | |
void | setComposite (Composite *newComposite) override |
Grab the new Composite. More... | |
void | loseComposite (Composite *oldComposite) override |
Clear the old Composite. More... | |
Protected Attributes | |
CompositeType * | mComposite |
Pointer to the current Composite of this Aspect. More... | |
|
inherited |
Use the MakeProperties class to easily create a Properties extension from an existing class or struct.
|
inherited |
Use the MakeState class to easily create a State extension from an existing class or struct.
dart::common::CompositeTrackingAspect< CompositeType >::CompositeTrackingAspect |
Default constructor.
|
pure virtualinherited |
Clone this Aspect into a new composite.
Implemented in dart::common::EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, dart::common::detail::EmbeddedPropertiesAspect< detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedPropertiesAspect< CompositeTrackingAspect< CompositeT >, EmbeddedPropertiesAspect< CompositeT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, and dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAspect< CompositeT, StateDataT >, StateDataT >.
|
virtualinherited |
Get the Properties of this Aspect.
By default, this returns a nullptr which implies that the Aspect has no properties.
Reimplemented in dart::common::detail::EmbeddedPropertiesAspect< detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, PropertiesDataT >, and dart::common::detail::EmbeddedPropertiesAspect< CompositeTrackingAspect< CompositeT >, EmbeddedPropertiesAspect< CompositeT, PropertiesDataT >, PropertiesDataT >.
|
virtualinherited |
Get the State of this Aspect.
By default, this returns a nullptr which implies that the Aspect is stateless.
Reimplemented in dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, and dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAspect< CompositeT, StateDataT >, StateDataT >.
CompositeType * dart::common::CompositeTrackingAspect< CompositeType >::getComposite |
const CompositeType * dart::common::CompositeTrackingAspect< CompositeType >::getComposite |
bool dart::common::CompositeTrackingAspect< CompositeType >::hasComposite |
|
overrideprotectedvirtual |
Clear the old Composite.
Reimplemented from dart::common::Aspect.
Reimplemented in dart::common::detail::EmbeddedPropertiesAspect< detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedPropertiesAspect< CompositeTrackingAspect< CompositeT >, EmbeddedPropertiesAspect< CompositeT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, and dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAspect< CompositeT, StateDataT >, StateDataT >.
|
virtualinherited |
Set the Properties of this Aspect. By default, this does nothing.
Reimplemented in dart::common::detail::EmbeddedPropertiesAspect< detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, PropertiesDataT >, and dart::common::detail::EmbeddedPropertiesAspect< CompositeTrackingAspect< CompositeT >, EmbeddedPropertiesAspect< CompositeT, PropertiesDataT >, PropertiesDataT >.
|
virtualinherited |
Set the State of this Aspect. By default, this does nothing.
Reimplemented in dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, and dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAspect< CompositeT, StateDataT >, StateDataT >.
|
overrideprotectedvirtual |
Grab the new Composite.
Reimplemented from dart::common::Aspect.
Reimplemented in dart::common::detail::EmbeddedPropertiesAspect< detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedPropertiesAspect< CompositeTrackingAspect< CompositeT >, EmbeddedPropertiesAspect< CompositeT, PropertiesDataT >, PropertiesDataT >, dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAndPropertiesAspect< CompositeT, StateDataT, PropertiesDataT >, StateDataT >, and dart::common::detail::EmbeddedStateAspect< CompositeTrackingAspect< CompositeT >, EmbeddedStateAspect< CompositeT, StateDataT >, StateDataT >.
|
protected |