37 #ifndef OMPL_BASE_STATE_ 38 #define OMPL_BASE_STATE_ 40 #include <boost/concept_check.hpp> 77 BOOST_CONCEPT_ASSERT((boost::Convertible<T*, State*>));
79 return static_cast<const T*
>(
this);
87 BOOST_CONCEPT_ASSERT((boost::Convertible<T*, State*>));
89 return static_cast<T*
>(
this);
109 const T*
as(
const unsigned int index)
const 112 BOOST_CONCEPT_ASSERT((boost::Convertible<T*, State*>));
114 return static_cast<const T*
>(components[index]);
119 T*
as(
const unsigned int index)
122 BOOST_CONCEPT_ASSERT((boost::Convertible<T*, State*>));
124 return static_cast<T*
>(components[index]);
131 return components[i];
138 return components[i];
Definition of a compound state.
T * as()
Cast this instance to a desired type.
Main namespace. Contains everything in this library.
Definition of an abstract state.
State * operator[](unsigned int i)
Access element ith component. This does not check whether the index is within bounds.
T * as(const unsigned int index)
Cast a component of this instance to a desired type.
State ** components
The components that make up a compound state.
const T * as() const
Cast this instance to a desired type.
const State * operator[](unsigned int i) const
Access const element ith component. This does not check whether the index is within bounds...
const T * as(const unsigned int index) const
Cast a component of this instance to a desired type.