SUMO - Simulation of Urban MObility
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
MSPerson::MSPersonStage_Driving Class Reference

#include <MSPerson.h>

Inheritance diagram for MSPerson::MSPersonStage_Driving:
MSPerson::MSPersonStage

Public Member Functions

virtual void beginEventOutput (const MSPerson &p, SUMOTime t, OutputDevice &os) const
 Called for writing the events output. More...
 
virtual void endEventOutput (const MSPerson &p, SUMOTime t, OutputDevice &os) const
 Called for writing the events output (end of an action) More...
 
SUMOReal getAngle (SUMOTime now) const
 
const MSEdgegetDestination () const
 returns the destination edge More...
 
const MSEdgegetEdge (SUMOTime now) const
 Returns the current edge. More...
 
SUMOReal getEdgeAngle (const MSEdge *e, SUMOReal at) const
 
SUMOReal getEdgePos (SUMOTime now) const
 
Position getEdgePosition (const MSEdge *e, SUMOReal at, SUMOReal offset) const
 get position on edge e at length at with orthogonal offset More...
 
const MSEdgegetFromEdge () const
 
Position getPosition (SUMOTime now) const
 
StageType getStageType () const
 
std::string getStageTypeName () const
 return string representation of the current stage More...
 
bool isWaiting4Vehicle () const
 Whether the person waits for a vehicle. More...
 
bool isWaitingFor (const std::string &line) const
 Whether the person waits for a vehicle of the line specified. More...
 
 MSPersonStage_Driving (const MSEdge &destination, MSBusStop *toBS, const std::vector< std::string > &lines)
 constructor More...
 
virtual void proceed (MSNet *net, MSPerson *person, SUMOTime now, MSEdge *previousEdge, const SUMOReal at)
 proceeds to the next step More...
 
virtual void routeOutput (OutputDevice &os) const
 Called on writing vehroute output. More...
 
void setArrived (SUMOTime now)
 logs end of the step More...
 
void setDeparted (SUMOTime now)
 logs end of the step More...
 
void setVehicle (SUMOVehicle *v)
 
SUMOTime timeWaiting4Vehicle (SUMOTime now) const
 time spent waiting for a ride More...
 
virtual void tripInfoOutput (OutputDevice &os) const
 Called on writing tripinfo output. More...
 
 ~MSPersonStage_Driving ()
 destructor More...
 

Protected Attributes

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 (either by walking or driving) More...
 
StageType myType
 The type of this stage. More...
 

Private Member Functions

 MSPersonStage_Driving (const MSPersonStage_Driving &)
 Invalidated copy constructor. More...
 
MSPersonStage_Drivingoperator= (const MSPersonStage_Driving &)
 Invalidated assignment operator. More...
 

Private Attributes

MSBusStopmyDestinationBusStop
 
const std::set< std::string > myLines
 the lines to choose from More...
 
SUMOVehiclemyVehicle
 The taken vehicle. More...
 
const MSEdgemyWaitingEdge
 
SUMOReal myWaitingPos
 
SUMOTime myWaitingSince
 The time since which this person is waiting for a ride. More...
 

Detailed Description

A "real" stage performing the travelling by a transport system The given route will be chosen. The travel time is computed by the simulation

Definition at line 310 of file MSPerson.h.

Constructor & Destructor Documentation

MSPerson::MSPersonStage_Driving::MSPersonStage_Driving ( const MSEdge destination,
MSBusStop toBS,
const std::vector< std::string > &  lines 
)

constructor

Definition at line 288 of file MSPerson.cpp.

MSPerson::MSPersonStage_Driving::~MSPersonStage_Driving ( )

destructor

Definition at line 294 of file MSPerson.cpp.

MSPerson::MSPersonStage_Driving::MSPersonStage_Driving ( const MSPersonStage_Driving )
private

Invalidated copy constructor.

Member Function Documentation

void MSPerson::MSPersonStage_Driving::beginEventOutput ( const MSPerson p,
SUMOTime  t,
OutputDevice os 
) const
virtual

Called for writing the events output.

Parameters
[in]osThe stream to write the information into
Exceptions
IOErrornot yet implemented

Implements MSPerson::MSPersonStage.

Definition at line 408 of file MSPerson.cpp.

References MSPerson::getEdge(), Named::getID(), MSPerson::getID(), OutputDevice::openTag(), and time2string().

void MSPerson::MSPersonStage_Driving::endEventOutput ( const MSPerson p,
SUMOTime  t,
OutputDevice os 
) const
virtual

Called for writing the events output (end of an action)

Parameters
[in]osThe stream to write the information into
Exceptions
IOErrornot yet implemented

Implements MSPerson::MSPersonStage.

Definition at line 419 of file MSPerson.cpp.

References MSPerson::getEdge(), Named::getID(), MSPerson::getID(), OutputDevice::openTag(), and time2string().

SUMOReal MSPerson::MSPersonStage_Driving::getAngle ( SUMOTime  now) const
virtual

Implements MSPerson::MSPersonStage.

Definition at line 333 of file MSPerson.cpp.

References MSVehicle::getAngle().

const MSEdge & MSPerson::MSPersonStage::getDestination ( ) const
inherited

returns the destination edge

Definition at line 70 of file MSPerson.cpp.

const MSEdge * MSPerson::MSPersonStage_Driving::getEdge ( SUMOTime  now) const
virtual

Returns the current edge.

Implements MSPerson::MSPersonStage.

Definition at line 298 of file MSPerson.cpp.

SUMOReal MSPerson::MSPersonStage::getEdgeAngle ( const MSEdge e,
SUMOReal  at 
) const
inherited

Definition at line 106 of file MSPerson.cpp.

References MSEdge::getLanes(), and PositionVector::rotationDegreeAtOffset().

SUMOReal MSPerson::MSPersonStage_Driving::getEdgePos ( SUMOTime  now) const
virtual

Implements MSPerson::MSPersonStage.

Definition at line 313 of file MSPerson.cpp.

References MSPerson::getEdge(), MSEdge::getLength(), and MIN2().

Position MSPerson::MSPersonStage::getEdgePosition ( const MSEdge e,
SUMOReal  at,
SUMOReal  offset 
) const
inherited

get position on edge e at length at with orthogonal offset

Definition at line 96 of file MSPerson.cpp.

References MSEdge::getLanes(), MSLane::getShape(), MSLane::interpolateLanePosToGeometryPos(), PositionVector::move2side(), and PositionVector::positionAtOffset().

const MSEdge * MSPerson::MSPersonStage_Driving::getFromEdge ( ) const
virtual

Implements MSPerson::MSPersonStage.

Definition at line 307 of file MSPerson.cpp.

Position MSPerson::MSPersonStage_Driving::getPosition ( SUMOTime  now) const
virtual
Bug:
this fails while vehicle is driving across a junction

Implements MSPerson::MSPersonStage.

Definition at line 323 of file MSPerson.cpp.

References MSPerson::SIDEWALK_OFFSET.

StageType MSPerson::MSPersonStage::getStageType ( ) const
inlineinherited

Definition at line 100 of file MSPerson.h.

References MSPerson::MSPersonStage::myType.

std::string MSPerson::MSPersonStage_Driving::getStageTypeName ( ) const
virtual

return string representation of the current stage

Implements MSPerson::MSPersonStage.

Definition at line 386 of file MSPerson.cpp.

References MSPerson::isWaiting4Vehicle(), and joinToString().

bool MSPerson::MSPersonStage_Driving::isWaiting4Vehicle ( ) const
virtual

Whether the person waits for a vehicle.

Reimplemented from MSPerson::MSPersonStage.

Definition at line 374 of file MSPerson.cpp.

bool MSPerson::MSPersonStage_Driving::isWaitingFor ( const std::string &  line) const
virtual

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

Reimplemented from MSPerson::MSPersonStage.

Definition at line 368 of file MSPerson.cpp.

MSPersonStage_Driving& MSPerson::MSPersonStage_Driving::operator= ( const MSPersonStage_Driving )
private

Invalidated assignment operator.

void MSPerson::MSPersonStage_Driving::routeOutput ( OutputDevice os) const
virtual

Called on writing vehroute output.

Parameters
[in]osThe stream to write the information into
Exceptions
IOErrornot yet implemented

Implements MSPerson::MSPersonStage.

Definition at line 401 of file MSPerson.cpp.

References OutputDevice::closeTag(), MSPerson::getDestination(), MSPerson::getFromEdge(), MSPerson::getID(), OutputDevice::openTag(), SUMO_ATTR_FROM, SUMO_ATTR_LINES, SUMO_ATTR_TO, and OutputDevice::writeAttr().

void MSPerson::MSPersonStage::setArrived ( SUMOTime  now)
inherited

logs end of the step

Definition at line 84 of file MSPerson.cpp.

void MSPerson::MSPersonStage::setDeparted ( SUMOTime  now)
inherited

logs end of the step

Definition at line 76 of file MSPerson.cpp.

void MSPerson::MSPersonStage_Driving::setVehicle ( SUMOVehicle v)
inline

Definition at line 343 of file MSPerson.h.

References myVehicle.

SUMOTime MSPerson::MSPersonStage_Driving::timeWaiting4Vehicle ( SUMOTime  now) const
virtual

time spent waiting for a ride

Reimplemented from MSPerson::MSPersonStage.

Definition at line 380 of file MSPerson.cpp.

References MSPerson::isWaiting4Vehicle().

void MSPerson::MSPersonStage_Driving::tripInfoOutput ( OutputDevice os) const
virtual

Called on writing tripinfo output.

Parameters
[in]osThe stream to write the information into
Exceptions
IOErrornot yet implemented

Implements MSPerson::MSPersonStage.

Definition at line 392 of file MSPerson.cpp.

References OutputDevice::openTag(), and time2string().

Field Documentation

SUMOTime MSPerson::MSPersonStage::myArrived
protectedinherited

the time at which this stage ended

Definition at line 167 of file MSPerson.h.

SUMOTime MSPerson::MSPersonStage::myDeparted
protectedinherited

the time at which this stage started

Definition at line 164 of file MSPerson.h.

const MSEdge& MSPerson::MSPersonStage::myDestination
protectedinherited

the next edge to reach (either by walking or driving)

Definition at line 161 of file MSPerson.h.

Referenced by MSPerson::MSPersonStage_Waiting::MSPersonStage_Waiting().

MSBusStop* MSPerson::MSPersonStage_Driving::myDestinationBusStop
private

Definition at line 380 of file MSPerson.h.

const std::set<std::string> MSPerson::MSPersonStage_Driving::myLines
private

the lines to choose from

Definition at line 375 of file MSPerson.h.

StageType MSPerson::MSPersonStage::myType
protectedinherited

The type of this stage.

Definition at line 170 of file MSPerson.h.

Referenced by MSPerson::MSPersonStage::getStageType().

SUMOVehicle* MSPerson::MSPersonStage_Driving::myVehicle
private

The taken vehicle.

Definition at line 378 of file MSPerson.h.

Referenced by setVehicle().

const MSEdge* MSPerson::MSPersonStage_Driving::myWaitingEdge
private

Definition at line 384 of file MSPerson.h.

SUMOReal MSPerson::MSPersonStage_Driving::myWaitingPos
private

Definition at line 381 of file MSPerson.h.

SUMOTime MSPerson::MSPersonStage_Driving::myWaitingSince
private

The time since which this person is waiting for a ride.

Definition at line 383 of file MSPerson.h.


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