37 #ifndef OMPL_CONTROL_CONTROL_
38 #define OMPL_CONTROL_CONTROL_
40 #include <boost/concept_check.hpp>
67 BOOST_CONCEPT_ASSERT((boost::Convertible<T *, Control *>));
69 return static_cast<const T *
>(
this);
77 BOOST_CONCEPT_ASSERT((boost::Convertible<T *, Control *>));
79 return static_cast<T *
>(
this);
93 const T *
as(
unsigned int index)
const
96 BOOST_CONCEPT_ASSERT((boost::Convertible<T *, Control *>));
98 return static_cast<const T *
>(
components[index]);
103 T *
as(
unsigned int index)
106 BOOST_CONCEPT_ASSERT((boost::Convertible<T *, Control *>));
Definition of an abstract control.
T * as(unsigned int index)
Cast a component of this instance to a desired type.
Definition of a compound control.
const T * as(unsigned int index) const
Cast a component of this instance to a desired type.
T * as()
Cast this instance to a desired type.
const T * as() const
Cast this instance to a desired type.
Control * operator[](unsigned int index)
Return the i-th control component.
Control ** components
The components that make up a compound control.
Main namespace. Contains everything in this library.