Aikido
|
Testable for CompoundStates. More...
#include <aikido/constraint/CartesianProductTestable.hpp>
Public Member Functions | |
CartesianProductTestable (std::shared_ptr< const statespace::CartesianProduct > _stateSpace, std::vector< ConstTestablePtr > _constraints) | |
Constructor. More... | |
statespace::ConstStateSpacePtr | getStateSpace () const override |
Returns StateSpace in which this constraint operates. More... | |
bool | isSatisfied (const aikido::statespace::StateSpace::State *_state, TestableOutcome *outcome=nullptr) const override |
Returns true if state satisfies this constraint. More... | |
std::unique_ptr< TestableOutcome > | createOutcome () const override |
Return an instance of DefaultTestableOutcome, since this class doesn't have a more specialized TestableOutcome derivative assigned to it. More... | |
![]() | |
virtual | ~Testable ()=default |
Private Attributes | |
std::shared_ptr< const statespace::CartesianProduct > | mStateSpace |
std::vector< ConstTestablePtr > | mConstraints |
Testable for CompoundStates.
It takes in a set of Testables and test i-th substate on the i-th Testable.
aikido::constraint::CartesianProductTestable::CartesianProductTestable | ( | std::shared_ptr< const statespace::CartesianProduct > | _stateSpace, |
std::vector< ConstTestablePtr > | _constraints | ||
) |
Constructor.
_stateSpace | StateSpace in which this constraint operates. |
_constraints | Set of testables. The size of _constraints should match the number of subspaces in _stateSpace. i-th constraint applies to i-th subspace. |
|
overridevirtual |
Return an instance of DefaultTestableOutcome, since this class doesn't have a more specialized TestableOutcome derivative assigned to it.
Implements aikido::constraint::Testable.
|
overridevirtual |
Returns StateSpace in which this constraint operates.
Implements aikido::constraint::Testable.
|
overridevirtual |
Returns true if state satisfies this constraint.
[in] | _state | given state to test. |
[in] | outcome | pointer to TestableOutcome derivative instance that method will populate with useful information. Each derivative class of Testable may expect outcome to be a different derivative class of TestableOutcome (this casting and population is done under the hood). If this argument is missing, it is ignored. |
Implements aikido::constraint::Testable.
|
private |
|
private |