Aikido
|
A testable constraint grouping a set of testable constraint. More...
#include <aikido/constraint/TestableIntersection.hpp>
Public Member Functions | |
TestableIntersection (statespace::ConstStateSpacePtr _stateSpace, std::vector< ConstTestablePtr > _constraints=std::vector< ConstTestablePtr >()) | |
Construct a TestableIntersection on a specific StateSpace. 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... | |
statespace::ConstStateSpacePtr | getStateSpace () const override |
Returns StateSpace in which this constraint operates. More... | |
void | addConstraint (ConstTestablePtr constraint) |
Add a Testable to the conjunction. More... | |
![]() | |
virtual | ~Testable ()=default |
Private Member Functions | |
void | testConstraintStateSpaceOrThrow (const ConstTestablePtr &constraint) |
Private Attributes | |
statespace::ConstStateSpacePtr | mStateSpace |
std::vector< ConstTestablePtr > | mConstraints |
A testable constraint grouping a set of testable constraint.
This constriant is satisfied only if all constraints in the set are satisfied.
aikido::constraint::TestableIntersection::TestableIntersection | ( | statespace::ConstStateSpacePtr | _stateSpace, |
std::vector< ConstTestablePtr > | _constraints = std::vector< ConstTestablePtr >() |
||
) |
Construct a TestableIntersection on a specific StateSpace.
_stateSpace | StateSpace this constraint operates in. |
_constraints | Set of constraints. |
void aikido::constraint::TestableIntersection::addConstraint | ( | ConstTestablePtr | constraint | ) |
Add a Testable to the conjunction.
constraint | a constraint in the same StateSpace as the TestableIntersection was initialize with. |
|
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 |
|
private |