Go to the documentation of this file. 1 #ifndef AIKIDO_STATESPACE_STATEHANDLE_HPP_
2 #define AIKIDO_STATESPACE_STATEHANDLE_HPP_
15 template <
class _StateSpace,
class _QualifiedState>
24 std::is_const<QualifiedState>::value,
59 template <
typename Q = QualifiedState>
61 typename std::enable_if<!std::is_const<Q>::value, Q*>::type;
68 template <
typename Q = QualifiedState>
70 typename std::conditional<std::is_const<Q>::value, Q*, const Q*>::type;
88 #include "detail/StateHandle-impl.hpp"
90 #endif // AIKIDO_STATESPACE_STATEHANDLE_HPP_
StateHandle()
Constructs a nullptr handle.
Definition: StateHandle-impl.hpp:8
Format of serialized trajectory in YAML.
Definition: algorithm.hpp:4
auto getState() -> typename std::enable_if<!std::is_const< Q >::value, Q * >::type
Returns the State.
Definition: StateHandle-impl.hpp:49
StateHandle & operator=(StateHandle &&)=default
void reset()
Resets StateHandle to nullptr.
Definition: StateHandle-impl.hpp:32
const StateSpace * mSpace
State space of the sate that is managed by this handler.
Definition: StateHandle.hpp:79
const StateSpace * getStateSpace() const
Returns the state space that created this state.
Definition: StateHandle-impl.hpp:66
typename std::conditional< std::is_const< QualifiedState >::value, QualifiedState, const QualifiedState >::type ConstState
Definition: StateHandle.hpp:26
Wrap a State with its StateSpace to provide convenient accessor methods.
Definition: StateHandle.hpp:16
The three-dimensional special Euclidean group SE(3), i.e.
Definition: SE3.hpp:19
_QualifiedState QualifiedState
Definition: StateHandle.hpp:20
QualifiedState * mState
State managed by this handler. This can be either const or non-const type.
Definition: StateHandle.hpp:82
typename StateSpace::State State
Definition: StateHandle.hpp:22