Loading...
Searching...
No Matches
ompl::vamp::VampMotionValidator< Robot, rake > Class Template Reference
Inheritance diagram for ompl::vamp::VampMotionValidator< Robot, rake >:

Public Types

using Environment = ::vamp::collision::Environment<::vamp::FloatVector<rake>>

Public Member Functions

 VampMotionValidator (ob::SpaceInformation *si, const Environment &env)
 VampMotionValidator (const ob::SpaceInformationPtr &si, const Environment &env)
auto checkMotion (const ob::State *s1, const ob::State *s2) const -> bool override
 Check if the path between two states (from s1 to s2) is valid. This function assumes s1 is valid.
auto checkMotion (const ob::State *s1, const ob::State *s2, std::pair< ob::State *, double > &last_valid) const -> bool override
 Check if the path between two states is valid. Also compute the last state that was valid and the time of that state. The time is used to parametrize the motion from s1 to s2, s1 being at t = 0 and s2 being at t = 1. This function assumes s1 is valid.
Public Member Functions inherited from ompl::base::MotionValidator
 MotionValidator (SpaceInformation *si)
 Constructor.
 MotionValidator (const SpaceInformationPtr &si)
 Constructor.
unsigned int getValidMotionCount () const
 Get the number of segments that tested as valid.
unsigned int getInvalidMotionCount () const
 Get the number of segments that tested as invalid.
unsigned int getCheckedMotionCount () const
 Get the total number of segments tested, regardless of result.
double getValidMotionFraction () const
 Get the fraction of segments that tested as valid.
void resetMotionCounter ()
 Reset the counters for valid and invalid segments.

Additional Inherited Members

Protected Attributes inherited from ompl::base::MotionValidator
SpaceInformationsi_
 The instance of space information this state validity checker operates on.
unsigned int valid_
 Number of valid segments.
unsigned int invalid_
 Number of invalid segments.

Detailed Description

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
class ompl::vamp::VampMotionValidator< Robot, rake >

Definition at line 23 of file VampMotionValidator.h.

Member Typedef Documentation

◆ Environment

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
using ompl::vamp::VampMotionValidator< Robot, rake >::Environment = ::vamp::collision::Environment<::vamp::FloatVector<rake>>

Definition at line 26 of file VampMotionValidator.h.

Constructor & Destructor Documentation

◆ VampMotionValidator() [1/2]

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
ompl::vamp::VampMotionValidator< Robot, rake >::VampMotionValidator ( ob::SpaceInformation * si,
const Environment & env )
inline

Definition at line 28 of file VampMotionValidator.h.

◆ VampMotionValidator() [2/2]

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
ompl::vamp::VampMotionValidator< Robot, rake >::VampMotionValidator ( const ob::SpaceInformationPtr & si,
const Environment & env )
inline

Definition at line 32 of file VampMotionValidator.h.

Member Function Documentation

◆ checkMotion() [1/2]

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
auto ompl::vamp::VampMotionValidator< Robot, rake >::checkMotion ( const ob::State * s1,
const ob::State * s2 ) const -> bool
inlineoverridevirtual

Check if the path between two states (from s1 to s2) is valid. This function assumes s1 is valid.

Note
This function updates the number of valid and invalid segments.

Implements ompl::base::MotionValidator.

Definition at line 37 of file VampMotionValidator.h.

◆ checkMotion() [2/2]

template<typename Robot, std::size_t rake = ::vamp::FloatVectorWidth>
auto ompl::vamp::VampMotionValidator< Robot, rake >::checkMotion ( const ob::State * s1,
const ob::State * s2,
std::pair< ob::State *, double > & lastValid ) const -> bool
inlineoverridevirtual

Check if the path between two states is valid. Also compute the last state that was valid and the time of that state. The time is used to parametrize the motion from s1 to s2, s1 being at t = 0 and s2 being at t = 1. This function assumes s1 is valid.

Parameters
s1start state of the motion to be checked (assumed to be valid)
s2final state of the motion to be checked
lastValidfirst: storage for the last valid state (may be nullptr, if the user does not care about the exact state); this need not be different from s1 or s2. second: the time (between 0 and 1) of the last valid state, on the motion from s1 to s2. If the function returns false, lastValid.first must be set to a valid state, even if that implies copying s1 to lastValid.first (in case lastValid.second = 0). If the function returns true, lastValid.first and lastValid.second should not be modified.
Note
This function updates the number of valid and invalid segments.

Implements ompl::base::MotionValidator.

Definition at line 43 of file VampMotionValidator.h.


The documentation for this class was generated from the following file: