hpp::manipulation::GraphPathValidation Class Reference

Path validation for a constraint graph. More...

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

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

List of all members.

Public Member Functions

bool validate (const PathPtr_t &path, bool reverse, PathPtr_t &validPart)
 Check that the path is valid regarding the constraint graph and call the encapsulated PathValidation::validate.
virtual bool validate (const PathPtr_t &path, bool reverse, PathPtr_t &validPart, ValidationReport &report)
 Call the GraphPathValidation::validate without validation report.
void innerValidation (const PathValidationPtr_t &pathValidation)
 Set the encapsulated path validator.
const PathValidationPtr_tinnerValidation ()
 Get the encapsulated path validator.
void constraintGraph (const graph::GraphPtr_t &graph)
 Set the graph of constraints.
graph::GraphPtr_t constraintGraph () const
 Get the graph of constraints.
void addObstacle (const hpp::core::CollisionObjectPtr_t &)
virtual void removeObstacleFromJoint (const JointPtr_t &joint, const model::CollisionObjectPtr_t &obstacle)
 Remove a collision pair between a joint and an obstacle.

Static Public Member Functions

static GraphPathValidationPtr_t create (const PathValidationPtr_t &pathValidation)
 Create a new instance of this class.
template<typename T >
static GraphPathValidationPtr_t create (const model::DevicePtr_t &robot, const value_type &stepSize)

Protected Member Functions

 GraphPathValidation (const PathValidationPtr_t &pathValidation)
 Constructor.

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

Constructor.


Member Function Documentation

Set the graph of constraints.

Get the graph of constraints.

Create a new instance of this class.

Parameters:
pathValidationa PathValidation that is responsible for collision

Referenced by create().

Set the encapsulated path validator.

Get the encapsulated path validator.

virtual void hpp::manipulation::GraphPathValidation::removeObstacleFromJoint ( const JointPtr_t joint,
const model::CollisionObjectPtr_t obstacle 
) [inline, virtual]

Remove a collision pair between a joint and an obstacle.

Parameters:
jointthe joint that holds the inner objects,
obstaclethe obstacle to remove. collision configuration validation needs to know about obstacles. This virtual method does nothing for configuration validation methods that do not care about obstacles.

Reimplemented from hpp::core::PathValidation.

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

Check that the path is valid regarding the constraint graph and call the encapsulated PathValidation::validate.

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

Call the GraphPathValidation::validate without validation report.

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.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends