hpp-core: hpp::core::ObstacleUserVector< Derived > Class Template Reference

hpp-core 9.0.2 Implement basic classes for canonical path planning for kinematic chains.

Loading...
Searching...
No Matches
Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
hpp::core::ObstacleUserVector< Derived > Class Template Reference

`#include <hpp/core/obstacle-user.hh>`

Inheritance diagram for hpp::core::ObstacleUserVector< Derived >:
[legend]
Collaboration diagram for hpp::core::ObstacleUserVector< Derived >:
[legend]

## Public Member Functions
virtual | ~ObstacleUserVector ()=default
void | addObstacle (const CollisionObjectConstPtr_t &object)
void | removeObstacleFromJoint (const JointPtr_t &joint, const CollisionObjectConstPtr_t &object)
void | filterCollisionPairs (const RelativeMotion::matrix_type &relMotion)
void | setSecurityMargins (const matrix_t &securityMatrix)
void | setSecurityMarginBetweenBodies (const std::string &body_a, const std::string &body_b, const value_type &margin)
void | clear ()
Public Member Functions inherited from hpp::core::ObstacleUserInterface
virtual | ~ObstacleUserInterface ()=default

## Protected Types
typedef Derived | value_t
typedef std::vector< value_t > | values_t

## Protected Member Functions
| ObstacleUserVector ()=default
| ObstacleUserVector (std::initializer_list< value_t > validations)

## Protected Attributes
values_t | validations_

## Detailed Description

template<typename Derived>
class hpp::core::ObstacleUserVector< Derived >

Vector of validation class instances.

Template Parameters

  Derived | must be a shared point to some validation class. For instance ConfigValidationPtr_t or PathValidationPtr_t .

This class implements the abstract interface defined by ObstacleUserInterface and stores a vector of path or config validation class instances. Methods addObstacle , removeObstacleFromJoint, and filterCollisionPairs iteratively dynamic cast each instance into Obstacle user interface and calls the derived implementation in case of success.

## Member Typedef Documentation

## ◆ value_t

template<typename Derived >

typedef Derived hpp::core::ObstacleUserVector< Derived >::value_t
| protected

## ◆ values_t

template<typename Derived >

typedef std::vector<value_t> hpp::core::ObstacleUserVector< Derived >::values_t
| protected

## Constructor & Destructor Documentation

## ◆ ~ObstacleUserVector()

template<typename Derived >

virtual hpp::core::ObstacleUserVector< Derived >::~ObstacleUserVector | ( |  | ) |
| virtualdefault

## ◆ ObstacleUserVector() [1/2]

template<typename Derived >

hpp::core::ObstacleUserVector< Derived >::ObstacleUserVector | ( |  | ) |
| protecteddefault

## ◆ ObstacleUserVector() [2/2]

template<typename Derived >

hpp::core::ObstacleUserVector< Derived >::ObstacleUserVector | ( | std::initializer_list< value_t > | validations | ) |
| inlineprotected

## Member Function Documentation

## ◆ addObstacle()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::addObstacle | ( | const CollisionObjectConstPtr_t & | object | ) |
| inlinevirtual

Add obstacle to each element

Dynamic cast into ObstacleUserInterface each element of validations_ and call method addObstacle of element.

Implements hpp::core::ObstacleUserInterface.

## ◆ clear()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::clear | ( |  | ) |
| inline

## ◆ filterCollisionPairs()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::filterCollisionPairs | ( | const RelativeMotion::matrix_type & | relMotion | ) |
| inlinevirtual

Filter collision pairs to each element

Dynamic cast into ObstacleUserInterface each element of validations_ and call method filterCollisionPairs of element.

Implements hpp::core::ObstacleUserInterface.

## ◆ removeObstacleFromJoint()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::removeObstacleFromJoint | ( | const JointPtr_t & | joint,
|  | const CollisionObjectConstPtr_t & | object
| ) |  |
| inlinevirtual

Remove obstacle from joint to each element

Dynamic cast into ObstacleUserInterface each element of validations_ and call method removeObstacleFromJoint of element.

Implements hpp::core::ObstacleUserInterface.

## ◆ setSecurityMarginBetweenBodies()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::setSecurityMarginBetweenBodies | ( | const std::string & | body_a,
|  | const std::string & | body_b,
|  | const value_type & | margin
| ) |  |
| inlinevirtual

Set security margin for collision pair between the two bodies.

See also
  coal::CollisionRequest::security_margin.

Implements hpp::core::ObstacleUserInterface.

## ◆ setSecurityMargins()

template<typename Derived >

void hpp::core::ObstacleUserVector< Derived >::setSecurityMargins | ( | const matrix_t & | securityMatrix | ) |
| inlinevirtual

Set different security margins for collision pairs

This function works joint-wise. If you need a finer control, use setSecurityMarginBetweenBodies

This method enables users to choose different security margins for each pair of robot joint or each pair robot joint - obstacle.

See also
  coal::CollisionRequest::security_margin.

Implements hpp::core::ObstacleUserInterface.

## Member Data Documentation

## ◆ validations_

template<typename Derived >

values_t hpp::core::ObstacleUserVector< Derived >::validations_
| protected

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

- include/hpp/core/obstacle-user.hh