DART  6.10.1
dart::common::CompositeTrackingAspect< CompositeType > Class Template Referenceabstract

#include <Aspect.hpp>

Inheritance diagram for dart::common::CompositeTrackingAspect< CompositeType >:
dart::common::Aspect

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< AspectcloneAspect () 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 StategetAspectState () 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 PropertiesgetAspectProperties () 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...
 

Member Typedef Documentation

◆ MakeProperties

template<class Mixin >
using dart::common::Aspect::MakeProperties = MakeCloneable<Properties, Mixin>
inherited

Use the MakeProperties class to easily create a Properties extension from an existing class or struct.

◆ MakeState

template<class Mixin >
using dart::common::Aspect::MakeState = MakeCloneable<State, Mixin>
inherited

Use the MakeState class to easily create a State extension from an existing class or struct.

Constructor & Destructor Documentation

◆ CompositeTrackingAspect()

template<class CompositeType >
dart::common::CompositeTrackingAspect< CompositeType >::CompositeTrackingAspect

Default constructor.

Member Function Documentation

◆ cloneAspect()

◆ getAspectProperties()

◆ getAspectState()

◆ getComposite() [1/2]

template<class CompositeType >
CompositeType * dart::common::CompositeTrackingAspect< CompositeType >::getComposite

Get the Composite of this Aspect.

◆ getComposite() [2/2]

template<class CompositeType >
const CompositeType * dart::common::CompositeTrackingAspect< CompositeType >::getComposite

Get the Composite of this Aspect.

◆ hasComposite()

template<class CompositeType >
bool dart::common::CompositeTrackingAspect< CompositeType >::hasComposite

Returns true if this Aspect has a Composite that matches CompositeType.

◆ loseComposite()

◆ setAspectProperties()

◆ setAspectState()

◆ setComposite()

Member Data Documentation

◆ mComposite

template<class CompositeType >
CompositeType* dart::common::CompositeTrackingAspect< CompositeType >::mComposite
protected

Pointer to the current Composite of this Aspect.