38 const double departPos,
const double arrivalPos,
const double departPosLat,
const int departLane) :
39 MSStage(type, route.back(), toStop, arrivalPos),
109 inline const std::vector<const MSEdge*>&
getRoute()
const {
113 inline const std::vector<const MSEdge*>::iterator
getRouteStep()
const {
std::vector< const MSEdge * > ConstMSEdgeVector
SUMOVehicleClass
Definition of vehicle classes to differ between different lane usage and authority types.
#define UNUSED_PARAMETER(x)
A road/street connecting two junctions.
Representation of a lane in the micro simulation.
virtual SUMOTime getWaitingTime() const
double getAngle(SUMOTime now) const
Returns the angle of the container.
std::string myRouteID
The original route id.
const MSLane * getLane() const
Returns the current lane.
static const MSLane * checkDepartLane(const MSEdge *edge, SUMOVehicleClass svc, int laneIndex, const std::string &id)
interpret custom depart lane
virtual bool moveToNextEdge(MSTransportable *transportable, SUMOTime currentTime, int prevDir, MSEdge *nextInternal=0)=0
move forward and return whether the transportable arrived
double getEdgePos(SUMOTime now) const
Returns the offset from the start of the current edge measured in its natural direction.
int getDirection() const
Return the movement directon on the edge.
virtual void activateEntryReminders(MSTransportable *person, const bool isDepart=false)
add the move reminders for the current lane on entry
ConstMSEdgeVector getEdges() const
the edges of the current stage
void setPState(MSTransportableStateAdapter *pstate)
double myDepartPosLat
the lateral depart position
double getSpeed() const
Returns the speed of the container.
const std::vector< const MSEdge * >::iterator getRouteStep() const
double getDepartPosLat() const
int getDepartLane() const
double mySpeed
the speed of the transportable
int myDepartLane
the depart lane or -1
MSEdge * myCurrentInternalEdge
The current internal edge this transportable is on or nullptr.
Position getPosition(SUMOTime now) const
Returns the position of the container.
const MSEdge * getEdge() const
Returns the current edge.
double getConfiguredSpeed() const
Returns the configured speed in this stage.
MSTransportableStateAdapter * myPState
state that is to be manipulated by MSPModel
virtual const MSEdge * getNextRouteEdge() const =0
const std::vector< const MSEdge * > & getRoute() const
virtual void setRouteIndex(MSTransportable *const transportable, int routeOffset)
place transportable on a previously passed edge
MSStageMoving(const MSStageType type, const std::vector< const MSEdge * > &route, const std::string &routeID, MSStoppingPlace *toStop, const double speed, const double departPos, const double arrivalPos, const double departPosLat, const int departLane)
constructor
std::vector< const MSEdge * > myRoute
The route of the container.
double getDepartPos() const
MSTransportableStateAdapter * getPState() const
double myDepartPos
the depart position
const MSEdge * getFromEdge() const
Returns first edge of the containers route.
virtual void replaceRoute(MSTransportable *const transportable, const ConstMSEdgeVector &edges, int routeOffset)
virtual double getMaxSpeed(const MSTransportable *const transportable=nullptr) const =0
the maximum speed of the transportable
std::vector< const MSEdge * >::iterator myRouteStep
current step
void setDepartPos(const double pos)
virtual ~MSStageMoving()
destructor
A lane area vehicles can halt at.
abstract base class for managing callbacks to retrieve various state information from the model
A point in 2D or 3D with translation and scaling methods.