DART  6.6.2
dart::common::detail::EmbeddedStateAspect< BaseT, DerivedT, StateDataT, StateT, setEmbeddedState, getEmbeddedState >::ConvertIfState< T > Struct Template Reference

Used to identify constructor arguments that can be used as a State. More...

#include <EmbeddedAspect.hpp>

Public Types

using type = typename std::conditional< std::is_base_of< StateData, T >::value, StateData, T >::type
 

Detailed Description

template<class BaseT, class DerivedT, typename StateDataT, typename StateT = common::Aspect::MakeState<StateDataT>, void(*)(DerivedT *, const StateT &) setEmbeddedState = &DefaultSetEmbeddedState<DerivedT, StateT>, const StateT &(*)(const DerivedT *) getEmbeddedState = &DefaultGetEmbeddedState<DerivedT, StateT>>
template<typename T>
struct dart::common::detail::EmbeddedStateAspect< BaseT, DerivedT, StateDataT, StateT, setEmbeddedState, getEmbeddedState >::ConvertIfState< T >

Used to identify constructor arguments that can be used as a State.

Member Typedef Documentation

◆ type

template<class BaseT , class DerivedT , typename StateDataT , typename StateT = common::Aspect::MakeState<StateDataT>, void(*)(DerivedT *, const StateT &) setEmbeddedState = &DefaultSetEmbeddedState<DerivedT, StateT>, const StateT &(*)(const DerivedT *) getEmbeddedState = &DefaultGetEmbeddedState<DerivedT, StateT>>
template<typename T >
using dart::common::detail::EmbeddedStateAspect< BaseT, DerivedT, StateDataT, StateT, setEmbeddedState, getEmbeddedState >::ConvertIfState< T >::type = typename std::conditional< std::is_base_of<StateData, T>::value, StateData, T>::type