#include <EmbeddedAspect.hpp>
◆ Base
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
      
 
 
◆ Derived
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
      
 
 
◆ Properties
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
      
 
 
◆ PropertiesData
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
      
 
 
◆ DelegateTag
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ EmbeddedPropertiesAspect() [1/5]
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
  
  | 
        
          | dart::common::detail::EmbeddedPropertiesAspect< BaseT, DerivedT, PropertiesDataT, PropertiesT, setEmbeddedProperties, getEmbeddedProperties >::EmbeddedPropertiesAspect | ( | const EmbeddedPropertiesAspect< BaseT, DerivedT, PropertiesDataT, PropertiesT, setEmbeddedProperties, getEmbeddedProperties > & |  | ) |  |  | delete | 
 
 
◆ ~EmbeddedPropertiesAspect()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ EmbeddedPropertiesAspect() [2/5]
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
Construct this Aspect without affecting the Properties. 
 
 
◆ EmbeddedPropertiesAspect() [3/5]
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
template<typename T , typename... RemainingArgs> 
 
Construct this Aspect. 
If the first argument contains PropertiesData, then it will be used by this Aspect. Otherwise, all arguments will be forwarded to the Base class. 
 
 
◆ EmbeddedPropertiesAspect() [4/5]
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
template<typename... RemainingArgs> 
 
Construct this Aspect using the PropertiesData, and pass the remaining arguments into the constructor of the Base class. 
 
 
◆ EmbeddedPropertiesAspect() [5/5]
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
template<typename... BaseArgs> 
 
Construct this Aspect without affecting the Properties, and pass all the arguments into the constructor of the Base class. 
 
 
◆ cloneAspect()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ getAspectProperties()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ getProperties()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ loseComposite()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
Save the embedded Properties of this Composite before we remove the Aspect. 
 
 
◆ setAspectProperties()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ setComposite()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ setProperties()
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ GetEmbeddedProperties
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
 
◆ mTemporaryProperties
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>> 
 
After this Aspect is constructed and during transitions between Composite objects, this will hold the Properties of the Aspect. 
Once the Aspect has been moved into a new Composite, these Properties will be pushed into the Composite and cleared. 
 
 
◆ SetEmbeddedProperties
template<class BaseT , class DerivedT , typename PropertiesDataT , typename PropertiesT  = common::Aspect::MakeProperties<PropertiesDataT>, void(*)(DerivedT *, const PropertiesT &) setEmbeddedProperties = &DefaultSetEmbeddedProperties<DerivedT, PropertiesT>, const PropertiesT &(*)(const DerivedT *) getEmbeddedProperties = &DefaultGetEmbeddedProperties<DerivedT, PropertiesT>>