hpp-manipulation  4.9.0
Classes for manipulation planning.
hpp::manipulation::GraphPathValidation Class Reference

#include <hpp/manipulation/graph-path-validation.hh>

Inheritance diagram for hpp::manipulation::GraphPathValidation:
Collaboration diagram for hpp::manipulation::GraphPathValidation:

Public Member Functions

virtual bool validate (const PathPtr_t &path, bool reverse, PathPtr_t &validPart, PathValidationReportPtr_t &report)
 Call the encapsulated PathValidation::validate. More...
 
void innerValidation (const PathValidationPtr_t &pathValidation)
 Set the encapsulated path validator. More...
 
const PathValidationPtr_tinnerValidation ()
 Get the encapsulated path validator. More...
 
void constraintGraph (const graph::GraphPtr_t &graph)
 Set the graph of constraints. More...
 
graph::GraphPtr_t constraintGraph () const
 Get the graph of constraints. More...
 
void addObstacle (const hpp::core::CollisionObjectConstPtr_t &object)
 
void removeObstacleFromJoint (const JointPtr_t &joint, const pinocchio::CollisionObjectConstPtr_t &obstacle)
 
void filterCollisionPairs (const core::RelativeMotion::matrix_type &relMotion)
 Filter collision pairs. More...
 
void setSecurityMargins (const matrix_t &securityMargins)
 
- Public Member Functions inherited from hpp::core::PathValidation
virtual bool validate (const PathPtr_t &path, bool reverse, PathPtr_t &validPart, PathValidationReportPtr_t &report)=0
 
virtual ~PathValidation ()
 
virtual bool validate (const PathPtr_t &path, bool reverse, PathPtr_t &validPart, PathValidationReportPtr_t &report)=0
 
virtual ~PathValidation ()
 
- Public Member Functions inherited from hpp::core::ObstacleUserInterface
virtual ~ObstacleUserInterface ()
 
virtual ~ObstacleUserInterface ()
 

Static Public Member Functions

static GraphPathValidationPtr_t create (const PathValidationPtr_t &pathValidation)
 
template<typename T >
static GraphPathValidationPtr_t create (const pinocchio::DevicePtr_t &robot, const value_type &stepSize)
 

Protected Member Functions

 GraphPathValidation (const PathValidationPtr_t &pathValidation)
 Constructor. More...
 
- Protected Member Functions inherited from hpp::core::PathValidation
 PathValidation ()
 
 PathValidation ()
 

Detailed Description

Path validation for a constraint graph

This class encapsulates another path validation class. The encapsulated path validation is responsible for collision checking, whereas this class checks if a path is valid regarding the constraint graph.

Constructor & Destructor Documentation

◆ GraphPathValidation()

hpp::manipulation::GraphPathValidation::GraphPathValidation ( const PathValidationPtr_t pathValidation)
protected

Constructor.

Member Function Documentation

◆ addObstacle()

void hpp::manipulation::GraphPathValidation::addObstacle ( const hpp::core::CollisionObjectConstPtr_t object)
inlinevirtual

Add obstacle in the environment

Dynamic cast inner path validation into hpp::core::ObstacleUserInterface and calls hpp::core::ObstacleUserInterface::addObstacle in case of success.

Implements hpp::core::ObstacleUserInterface.

◆ constraintGraph() [1/2]

void hpp::manipulation::GraphPathValidation::constraintGraph ( const graph::GraphPtr_t graph)
inline

Set the graph of constraints.

◆ constraintGraph() [2/2]

graph::GraphPtr_t hpp::manipulation::GraphPathValidation::constraintGraph ( ) const
inline

Get the graph of constraints.

◆ create()

static GraphPathValidationPtr_t hpp::manipulation::GraphPathValidation::create ( const PathValidationPtr_t pathValidation)
static

Create a new instance of this class.

Parameters
pathValidationa PathValidation that is responsible for collision

◆ filterCollisionPairs()

void hpp::manipulation::GraphPathValidation::filterCollisionPairs ( const core::RelativeMotion::matrix_type relMotion)
inlinevirtual

Filter collision pairs.

Dynamic cast inner path validation into hpp::core::ObstacleUserInterface and calls hpp::core::ObstacleUserInterface::filterCollisionPairs in case of success.

Implements hpp::core::ObstacleUserInterface.

◆ innerValidation() [1/2]

void hpp::manipulation::GraphPathValidation::innerValidation ( const PathValidationPtr_t pathValidation)
inline

Set the encapsulated path validator.

◆ innerValidation() [2/2]

const PathValidationPtr_t& hpp::manipulation::GraphPathValidation::innerValidation ( )
inline

Get the encapsulated path validator.

◆ removeObstacleFromJoint()

void hpp::manipulation::GraphPathValidation::removeObstacleFromJoint ( const JointPtr_t joint,
const pinocchio::CollisionObjectConstPtr_t obstacle 
)
inlinevirtual

Remove a collision pair between a joint and an obstacle

Dynamic cast inner path validation into hpp::core::ObstacleUserInterface and calls hpp::core::ObstacleUserInterface::removeObstacleFromJoint in case of success.

Implements hpp::core::ObstacleUserInterface.

◆ setSecurityMargins()

void hpp::manipulation::GraphPathValidation::setSecurityMargins ( const matrix_t securityMargins)
inlinevirtual

Set different security margins for collision pairs

Dynamic cast inner path validation into hpp::core::ObstacleUserInterface and calls hpp::core::ObstacleUserInterface::setSecurityMargins in case of success.

Implements hpp::core::ObstacleUserInterface.

◆ validate()

virtual bool hpp::manipulation::GraphPathValidation::validate ( const PathPtr_t path,
bool  reverse,
PathPtr_t validPart,
PathValidationReportPtr_t report 
)
virtual

Call the encapsulated PathValidation::validate.

Check that path is valid regarding the constraint graph.

Parameters
paththe path to check for validity,
reverseif true check from the end,
Return values
theextracted valid part of the path, pointer to path if path is valid,
reportinformation about the validation process. unused in this case,
Returns
whether the whole path is valid.

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