hpp::core::CollisionValidation Class Reference

Validate a configuration with respect to collision. More...

#include <hpp/core/collision-validation.hh>

Inheritance diagram for hpp::core::CollisionValidation:
Collaboration diagram for hpp::core::CollisionValidation:

Public Member Functions

virtual bool validate (const Configuration_t &config, bool throwIfInValid=false)
 Compute whether the configuration is valid. More...
 
virtual bool validate (const Configuration_t &config, ValidationReport &validationReport, bool throwIfInValid=false)
 Compute whether the configuration is valid. More...
 
virtual void addObstacle (const CollisionObjectPtr_t &object)
 Add an obstacle. More...
 
virtual void removeObstacleFromJoint (const JointPtr_t &joint, const CollisionObjectPtr_t &obstacle)
 Remove a collision pair between a joint and an obstacle. More...
 

Static Public Member Functions

static CollisionValidationPtr_t create (const DevicePtr_t &robot)
 

Protected Member Functions

 CollisionValidation (const DevicePtr_t &robot)
 
- Protected Member Functions inherited from hpp::core::ConfigValidation
 ConfigValidation ()
 

Detailed Description

Validate a configuration with respect to collision.

Constructor & Destructor Documentation

◆ CollisionValidation()

hpp::core::CollisionValidation::CollisionValidation ( const DevicePtr_t robot)
protected

Member Function Documentation

◆ addObstacle()

virtual void hpp::core::CollisionValidation::addObstacle ( const CollisionObjectPtr_t object)
virtual

Add an obstacle.

Parameters
objectobstacle added Store obstacle and build a collision pair with each body of the robot.

Reimplemented from hpp::core::ConfigValidation.

◆ create()

static CollisionValidationPtr_t hpp::core::CollisionValidation::create ( const DevicePtr_t robot)
static

◆ removeObstacleFromJoint()

virtual void hpp::core::CollisionValidation::removeObstacleFromJoint ( const JointPtr_t joint,
const CollisionObjectPtr_t obstacle 
)
virtual

Remove a collision pair between a joint and an obstacle.

Parameters
thejoint that holds the inner objects,
theobstacle 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::ConfigValidation.

◆ validate() [1/2]

virtual bool hpp::core::CollisionValidation::validate ( const Configuration_t config,
bool  throwIfInValid = false 
)
virtual

Compute whether the configuration is valid.

Parameters
configthe config to check for validity,
throwIfInValidif true throw an exception if config is invalid.
Returns
whether the whole config is valid.

Implements hpp::core::ConfigValidation.

◆ validate() [2/2]

virtual bool hpp::core::CollisionValidation::validate ( const Configuration_t config,
ValidationReport validationReport,
bool  throwIfInValid = false 
)
virtual

Compute whether the configuration is valid.

Parameters
configthe config to check for validity,
Return values
validationReportreport on validation. This parameter will dynamically cast into CollisionValidationReport type,
Parameters
throwIfInValidif true throw an exception if config is invalid,
Returns
whether the whole config is valid.

Implements hpp::core::ConfigValidation.