Public Member Functions | List of all members
multi_robot_router::CollisionResolution Class Referenceabstract

#include <collision_resolution.h>

Inheritance diagram for multi_robot_router::CollisionResolution:
Inheritance graph
[legend]

Public Member Functions

virtual const std::vector< uint32_t > & getRobotCollisions () const =0
 returns amount of robot collisions found in each resolve try after resetSession More...
 
virtual void resetSession (const RouteCoordinatorWrapper *_route_querry, const PotentialCalculator *_pCalc, const uint32_t _robot_radius)=0
 resets the session (setting the new route querry and potential calculator) More...
 
virtual std::vector< std::reference_wrapper< Vertex > > resolve (Vertex &_current, Vertex &_next, int32_t _collision)=0
 resolves a found collision between two robots. More...
 
virtual void saveCollision (const uint32_t _coll)=0
 increases the collision count of one robot More...
 

Detailed Description

Definition at line 41 of file collision_resolution.h.

Member Function Documentation

virtual const std::vector<uint32_t>& multi_robot_router::CollisionResolution::getRobotCollisions ( ) const
pure virtual

returns amount of robot collisions found in each resolve try after resetSession

Returns
a std::vector where the index is the robot index and the value the number of collisions with this robot

Implemented in multi_robot_router::AvoidanceResolution, multi_robot_router::BacktrackingResolution, and multi_robot_router::EmptyResolution.

virtual void multi_robot_router::CollisionResolution::resetSession ( const RouteCoordinatorWrapper _route_querry,
const PotentialCalculator _pCalc,
const uint32_t  _robot_radius 
)
pure virtual

resets the session (setting the new route querry and potential calculator)

Parameters
_route_querrythe route coordinator to coordinate paths
_pCalcthe potential calculator for assigning potential to expanded Vertices
_robot_radiusthe radius of the current robot

Implemented in multi_robot_router::AvoidanceResolution, multi_robot_router::BacktrackingResolution, and multi_robot_router::EmptyResolution.

virtual std::vector<std::reference_wrapper<Vertex> > multi_robot_router::CollisionResolution::resolve ( Vertex _current,
Vertex _next,
int32_t  _collision 
)
pure virtual

resolves a found collision between two robots.

Parameters
_currentthe last expanded vertex
_nextthe vertex to expand to
_collisionthe index of the colliding robot
Returns
a vector of references to Vertices where the Potential Expander can continue expanding

Implemented in multi_robot_router::AvoidanceResolution, multi_robot_router::BacktrackingResolution, and multi_robot_router::EmptyResolution.

virtual void multi_robot_router::CollisionResolution::saveCollision ( const uint32_t  _coll)
pure virtual

increases the collision count of one robot

Parameters
_collthe robot elected for increasing its collisions

Implemented in multi_robot_router::AvoidanceResolution, multi_robot_router::BacktrackingResolution, and multi_robot_router::EmptyResolution.


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


tuw_multi_robot_router
Author(s): Benjamin Binder
autogenerated on Mon Jun 10 2019 15:42:49