#include <avoidance_resolution.h>
 | 
| void  | addCollision (const uint32_t robot) | 
|   | 
| void  | avoid (Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
| void  | avoidGoal (Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
| void  | avoidStart (Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
| bool  | expandSegment (const Vertex &cSeg, Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
| void  | moveSegment (Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
| void  | trackBack (Vertex &_current, Vertex &_next, const int32_t _collision, const float _freePotential) | 
|   | 
Definition at line 39 of file avoidance_resolution.h.
 
      
        
          | multi_robot_router::AvoidanceResolution::AvoidanceResolution  | 
          ( | 
          uint32_t  | 
          _timeoverlap | ) | 
           | 
        
      
 
constructor 
- Parameters
 - 
  
    | _timeoverlap | the timeoverlap used for assigning new vertices (e.g. Vertex _current form 0 to 10 + timeoverlap Vertex _nex from 10 - timeoverlap to 20 + timeoverlap)  | 
  
   
Definition at line 35 of file avoidance_resolution.cpp.
 
 
      
        
          | multi_robot_router::AvoidanceResolution::AvoidanceResolution  | 
          ( | 
           | ) | 
           | 
        
      
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::addCollision  | 
          ( | 
          const uint32_t  | 
          robot | ) | 
           | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::avoid  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::avoidGoal  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::avoidStart  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | bool multi_robot_router::AvoidanceResolution::expandSegment  | 
          ( | 
          const Vertex &  | 
          cSeg,  | 
         
        
           | 
           | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | const std::vector< uint32_t > & multi_robot_router::AvoidanceResolution::getRobotCollisions  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
virtual   | 
  
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::moveSegment  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
resets the session (setting the new route querry and potential calculator) 
- Parameters
 - 
  
    | _route_querry | the route coordinator to coordinate paths  | 
    | _pCalc | the potential calculator for assigning potential to expanded Vertices  | 
    | _robot_radius | the radius of the current robot  | 
  
   
Implements multi_robot_router::CollisionResolution.
Definition at line 43 of file avoidance_resolution.cpp.
 
 
  
  
      
        
          | std::vector< std::reference_wrapper< Vertex > > multi_robot_router::AvoidanceResolution::resolve  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          int32_t  | 
          _collision  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
virtual   | 
  
 
resolves a found collision between two robots. 
- Parameters
 - 
  
    | _current | the last expanded vertex  | 
    | _next | the vertex to expand to  | 
    | _collision | the index of the colliding robot  | 
  
   
- Returns
 - a vector of references to Vertices where the Potential Expander can continue expanding 
 
Implements multi_robot_router::CollisionResolution.
Definition at line 73 of file avoidance_resolution.cpp.
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::saveCollision  | 
          ( | 
          const uint32_t  | 
          _coll | ) | 
           | 
         
       
   | 
  
virtual   | 
  
 
 
  
  
      
        
          | void multi_robot_router::AvoidanceResolution::trackBack  | 
          ( | 
          Vertex &  | 
          _current,  | 
         
        
           | 
           | 
          Vertex &  | 
          _next,  | 
         
        
           | 
           | 
          const int32_t  | 
          _collision,  | 
         
        
           | 
           | 
          const float  | 
          _freePotential  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | bool multi_robot_router::AvoidanceResolution::avoidStartPredecessorDone_ = false | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | bool multi_robot_router::AvoidanceResolution::avoidStartSuccessorDone_ = false | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | std::vector<uint32_t> multi_robot_router::AvoidanceResolution::encounteredCollisions_ | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | std::vector<std::reference_wrapper<Vertex> > multi_robot_router::AvoidanceResolution::foundSolutions_ | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | std::vector<std::vector<std::unique_ptr<Vertex> > > multi_robot_router::AvoidanceResolution::generatedSubgraphs_ | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | std::queue<queueElement> multi_robot_router::AvoidanceResolution::queue_ | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | uint32_t multi_robot_router::AvoidanceResolution::resolutionAttemp_ = 0 | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | uint32_t multi_robot_router::AvoidanceResolution::robotDiameter_ | 
         
       
   | 
  
private   | 
  
 
 
  
  
      
        
          | uint32_t multi_robot_router::AvoidanceResolution::timeoverlap_ | 
         
       
   | 
  
private   | 
  
 
 
The documentation for this class was generated from the following files: