Eclipse SUMO - Simulation of Urban MObility
Loading...
Searching...
No Matches
MSStopOptimizer Class Reference

Finds a sequence of skips and stop alternatives to maximize priority of reached stops. More...

#include <MSStopOptimizer.h>

Collaboration diagram for MSStopOptimizer:
[legend]

Data Structures

struct  spnCompare
 
struct  StopPathNode
 information used during skip/alternative optimization More...
 

Public Member Functions

 MSStopOptimizer (MSBaseVehicle *veh, SUMOAbstractRouter< MSEdge, SUMOVehicle > &router, SUMOTime t, SUMOTime maxDelay)
 Constructor.
 
ConstMSEdgeVector optimizeSkipped (const MSEdge *source, double sourcePos, std::vector< StopEdgeInfo > &stops, ConstMSEdgeVector edges) const
 
virtual ~MSStopOptimizer ()
 Destructor.
 

Private Member Functions

bool reachableInTime (const MSEdge *from, double fromPos, const MSEdge *to, double toPos, SUMOTime arrival, ConstMSEdgeVector &into) const
 

Private Attributes

SUMOTime myMaxDelay
 
SUMOAbstractRouter< MSEdge, SUMOVehicle > & myRouter
 
SUMOTime myT
 
MSBaseVehiclemyVehicle
 

Friends

class StopPathNode
 

Detailed Description

Finds a sequence of skips and stop alternatives to maximize priority of reached stops.

Definition at line 41 of file MSStopOptimizer.h.

Constructor & Destructor Documentation

◆ MSStopOptimizer()

MSStopOptimizer::MSStopOptimizer ( MSBaseVehicle veh,
SUMOAbstractRouter< MSEdge, SUMOVehicle > &  router,
SUMOTime  t,
SUMOTime  maxDelay 
)
inline

Constructor.

Parameters
[in]idThe id of the lane speed trigger
[in]netThe net the lane speed trigger belongs to
[in]destLanesList of lanes affected by this speed trigger
[in]fileName of the file to read the speeds to set from

Definition at line 53 of file MSStopOptimizer.h.

◆ ~MSStopOptimizer()

virtual MSStopOptimizer::~MSStopOptimizer ( )
inlinevirtual

Destructor.

Definition at line 61 of file MSStopOptimizer.h.

Member Function Documentation

◆ optimizeSkipped()

ConstMSEdgeVector MSStopOptimizer::optimizeSkipped ( const MSEdge source,
double  sourcePos,
std::vector< StopEdgeInfo > &  stops,
ConstMSEdgeVector  edges 
) const

Definition at line 34 of file MSStopOptimizer.cpp.

References Named::getID(), MIN2(), myRouter, myT, myVehicle, MSBaseVehicle::StopEdgeInfo::priority, SUMOAbstractRouter< E, V >::recomputeCostsPos(), SIMSTEP, SIMTIME, MSBaseVehicle::StopEdgeInfo::skipped, and toString().

Referenced by MSBaseVehicle::reroute().

Here is the caller graph for this function:

◆ reachableInTime()

bool MSStopOptimizer::reachableInTime ( const MSEdge from,
double  fromPos,
const MSEdge to,
double  toPos,
SUMOTime  arrival,
ConstMSEdgeVector into 
) const
private

Definition at line 211 of file MSStopOptimizer.cpp.

References SUMOAbstractRouter< E, V >::compute(), myMaxDelay, myRouter, myT, myVehicle, SUMOAbstractRouter< E, V >::recomputeCostsPos(), and TIME2STEPS.

Referenced by MSStopOptimizer::StopPathNode::getSuccessor().

Here is the caller graph for this function:

Friends And Related Symbol Documentation

◆ StopPathNode

friend class StopPathNode
friend

Definition at line 43 of file MSStopOptimizer.h.

Field Documentation

◆ myMaxDelay

SUMOTime MSStopOptimizer::myMaxDelay
private

Definition at line 71 of file MSStopOptimizer.h.

Referenced by reachableInTime().

◆ myRouter

SUMOAbstractRouter<MSEdge, SUMOVehicle>& MSStopOptimizer::myRouter
private

Definition at line 69 of file MSStopOptimizer.h.

Referenced by optimizeSkipped(), and reachableInTime().

◆ myT

SUMOTime MSStopOptimizer::myT
private

Definition at line 70 of file MSStopOptimizer.h.

Referenced by optimizeSkipped(), and reachableInTime().

◆ myVehicle

MSBaseVehicle* MSStopOptimizer::myVehicle
private

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