SUMO - Simulation of Urban MObility
MSTransportable::Stage Class Referenceabstract

#include <MSTransportable.h>

Inheritance diagram for MSTransportable::Stage:
Inheritance graph
Collaboration diagram for MSTransportable::Stage:
Collaboration graph

Public Member Functions

virtual void abort (MSTransportable *)
 abort this stage (TraCI) More...
 
virtual void beginEventOutput (const MSTransportable &transportable, SUMOTime t, OutputDevice &os) const =0
 Called for writing the events output (begin of an action) More...
 
virtual void endEventOutput (const MSTransportable &transportable, SUMOTime t, OutputDevice &os) const =0
 Called for writing the events output (end of an action) More...
 
virtual double getAngle (SUMOTime now) const =0
 returns the angle of the transportable More...
 
double getArrivalPos () const
 
const MSEdgegetDestination () const
 returns the destination edge More...
 
MSStoppingPlacegetDestinationStop () const
 returns the destination stop (if any) More...
 
virtual const MSEdgegetEdge () const
 Returns the current edge. More...
 
double getEdgeAngle (const MSEdge *e, double at) const
 get angle of the edge at a certain position More...
 
virtual double getEdgePos (SUMOTime now) const
 
Position getEdgePosition (const MSEdge *e, double at, double offset) const
 get position on edge e at length at with orthogonal offset More...
 
virtual ConstMSEdgeVector getEdges () const
 the edges of the current stage More...
 
virtual const MSEdgegetFromEdge () const
 
Position getLanePosition (const MSLane *lane, double at, double offset) const
 get position on lane at length at with orthogonal offset More...
 
virtual Position getPosition (SUMOTime now) const =0
 returns the position of the transportable More...
 
virtual double getSpeed () const
 the speed of the transportable More...
 
virtual std::string getStageDescription () const =0
 return (brief) string representation of the current stage More...
 
virtual std::string getStageSummary () const =0
 return string summary of the current stage More...
 
StageType getStageType () const
 
virtual SUMOVehiclegetVehicle () const
 Whether the transportable waits for a vehicle. More...
 
virtual SUMOTime getWaitingTime (SUMOTime now) const
 the time this transportable spent waiting More...
 
virtual bool isWaiting4Vehicle () const
 Whether the transportable waits for a vehicle. More...
 
virtual bool isWaitingFor (const std::string &line) const
 Whether the transportable waits for a vehicle of the line specified. More...
 
virtual void proceed (MSNet *net, MSTransportable *transportable, SUMOTime now, Stage *previous)=0
 proceeds to this stage More...
 
virtual void routeOutput (OutputDevice &os, const bool withRouteLength) const =0
 Called on writing vehroute output. More...
 
virtual void setArrived (MSNet *net, MSTransportable *transportable, SUMOTime now)
 logs end of the step More...
 
void setDeparted (SUMOTime now)
 logs end of the step More...
 
virtual void setSpeed (double)
 sets the walking speed (ignored in other stages) More...
 
 Stage (const MSEdge *destination, MSStoppingPlace *toStop, const double arrivalPos, StageType type)
 constructor More...
 
virtual void tripInfoOutput (OutputDevice &os, const MSTransportable *const transportable) const =0
 Called on writing tripinfo output. More...
 
virtual ~Stage ()
 destructor More...
 

Protected Attributes

double myArrivalPos
 the position at which we want to arrive More...
 
SUMOTime myArrived
 the time at which this stage ended More...
 
SUMOTime myDeparted
 the time at which this stage started More...
 
const MSEdgemyDestination
 the next edge to reach by getting transported More...
 
MSStoppingPlacemyDestinationStop
 the stop to reach by getting transported (if any) More...
 
StageType myType
 The type of this stage. More...
 

Private Member Functions

Stageoperator= (const Stage &)
 Invalidated assignment operator. More...
 
 Stage (const Stage &)
 Invalidated copy constructor. More...
 

Detailed Description

The "abstract" class for a single stage of a movement Contains the destination of the current movement step

Definition at line 72 of file MSTransportable.h.

Constructor & Destructor Documentation

◆ Stage() [1/2]

MSTransportable::Stage::Stage ( const MSEdge destination,
MSStoppingPlace toStop,
const double  arrivalPos,
StageType  type 
)

constructor

Definition at line 51 of file MSTransportable.cpp.

◆ ~Stage()

MSTransportable::Stage::~Stage ( )
virtual

destructor

Definition at line 54 of file MSTransportable.cpp.

◆ Stage() [2/2]

MSTransportable::Stage::Stage ( const Stage )
private

Invalidated copy constructor.

Member Function Documentation

◆ abort()

virtual void MSTransportable::Stage::abort ( MSTransportable )
inlinevirtual

abort this stage (TraCI)

Reimplemented in MSTransportable::Stage_Driving, MSTransportable::Stage_Waiting, and MSPerson::MSPersonStage_Walking.

Definition at line 118 of file MSTransportable.h.

◆ beginEventOutput()

virtual void MSTransportable::Stage::beginEventOutput ( const MSTransportable transportable,
SUMOTime  t,
OutputDevice os 
) const
pure virtual

◆ endEventOutput()

virtual void MSTransportable::Stage::endEventOutput ( const MSTransportable transportable,
SUMOTime  t,
OutputDevice os 
) const
pure virtual

◆ getAngle()

virtual double MSTransportable::Stage::getAngle ( SUMOTime  now) const
pure virtual

◆ getArrivalPos()

double MSTransportable::Stage::getArrivalPos ( ) const
inline

◆ getDestination()

◆ getDestinationStop()

◆ getEdge()

◆ getEdgeAngle()

double MSTransportable::Stage::getEdgeAngle ( const MSEdge e,
double  at 
) const

◆ getEdgePos()

◆ getEdgePosition()

Position MSTransportable::Stage::getEdgePosition ( const MSEdge e,
double  at,
double  offset 
) const

get position on edge e at length at with orthogonal offset

Definition at line 118 of file MSTransportable.cpp.

References getLanePosition(), and MSEdge::getLanes().

Referenced by MSTransportable::Stage_Waiting::getPosition(), MSTransportable::Stage_Driving::getPosition(), and getVehicle().

◆ getEdges()

◆ getFromEdge()

const MSEdge * MSTransportable::Stage::getFromEdge ( ) const
virtual

◆ getLanePosition()

Position MSTransportable::Stage::getLanePosition ( const MSLane lane,
double  at,
double  offset 
) const

◆ getPosition()

virtual Position MSTransportable::Stage::getPosition ( SUMOTime  now) const
pure virtual

◆ getSpeed()

double MSTransportable::Stage::getSpeed ( ) const
virtual

◆ getStageDescription()

virtual std::string MSTransportable::Stage::getStageDescription ( ) const
pure virtual

◆ getStageSummary()

◆ getStageType()

StageType MSTransportable::Stage::getStageType ( ) const
inline

◆ getVehicle()

virtual SUMOVehicle* MSTransportable::Stage::getVehicle ( ) const
inlinevirtual

Whether the transportable waits for a vehicle.

Reimplemented in MSTransportable::Stage_Driving.

Definition at line 138 of file MSTransportable.h.

References beginEventOutput(), endEventOutput(), getEdgeAngle(), getEdgePosition(), getEdges(), getLanePosition(), getSpeed(), getWaitingTime(), routeOutput(), and tripInfoOutput().

◆ getWaitingTime()

SUMOTime MSTransportable::Stage::getWaitingTime ( SUMOTime  now) const
virtual

◆ isWaiting4Vehicle()

virtual bool MSTransportable::Stage::isWaiting4Vehicle ( ) const
inlinevirtual

Whether the transportable waits for a vehicle.

Reimplemented in MSTransportable::Stage_Driving.

Definition at line 133 of file MSTransportable.h.

◆ isWaitingFor()

bool MSTransportable::Stage::isWaitingFor ( const std::string &  line) const
virtual

Whether the transportable waits for a vehicle of the line specified.

Reimplemented in MSTransportable::Stage_Driving.

Definition at line 113 of file MSTransportable.cpp.

Referenced by setSpeed().

◆ operator=()

Stage& MSTransportable::Stage::operator= ( const Stage )
private

Invalidated assignment operator.

◆ proceed()

◆ routeOutput()

virtual void MSTransportable::Stage::routeOutput ( OutputDevice os,
const bool  withRouteLength 
) const
pure virtual

◆ setArrived()

◆ setDeparted()

void MSTransportable::Stage::setDeparted ( SUMOTime  now)

logs end of the step

Definition at line 101 of file MSTransportable.cpp.

References myDeparted.

Referenced by MSTransportable::getVehicleType(), and setSpeed().

◆ setSpeed()

virtual void MSTransportable::Stage::setSpeed ( double  )
inlinevirtual

sets the walking speed (ignored in other stages)

Reimplemented in MSPerson::MSPersonStage_Walking.

Definition at line 121 of file MSTransportable.h.

References isWaitingFor(), setArrived(), and setDeparted().

Referenced by MSTransportable::getVehicle().

◆ tripInfoOutput()

virtual void MSTransportable::Stage::tripInfoOutput ( OutputDevice os,
const MSTransportable *const  transportable 
) const
pure virtual

Field Documentation

◆ myArrivalPos

◆ myArrived

◆ myDeparted

◆ myDestination

const MSEdge* MSTransportable::Stage::myDestination
protected

◆ myDestinationStop

◆ myType

StageType MSTransportable::Stage::myType
protected

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