SUMO - Simulation of Urban MObility
MSNet Class Reference

The simulated network and simulation perfomer. More...

#include <MSNet.h>

Inheritance diagram for MSNet:
GUINet

Data Structures

class  VehicleStateListener
 Interface for objects listening to vehicle state changes. More...
 

Public Types

typedef PedestrianRouterDijkstra< MSEdge, MSLane, MSJunctionMSPedestrianRouterDijkstra
 
enum  SimulationState {
  SIMSTATE_RUNNING, SIMSTATE_END_STEP_REACHED, SIMSTATE_NO_FURTHER_VEHICLES, SIMSTATE_CONNECTION_CLOSED,
  SIMSTATE_ERROR_IN_SIM, SIMSTATE_TOO_MANY_VEHICLES
}
 Possible states of a simulation - running or stopped with different reasons. More...
 

Public Member Functions

void closeBuilding (MSEdgeControl *edges, MSJunctionControl *junctions, SUMORouteLoaderControl *routeLoaders, MSTLLogicControl *tlc, std::vector< SUMOTime > stateDumpTimes, std::vector< std::string > stateDumpFiles, bool hasInternalLinks)
 Closes the network's building process. More...
 
void closeSimulation (SUMOTime start)
 Closes the simulation (all files, connections, etc.) More...
 
SUMOTime getCurrentTimeStep () const
 Returns the current simulation step. More...
 
const NamedRTreegetLanesRTree () const
 Returns an RTree that contains lane IDs. More...
 
MSPedestrianRouterDijkstragetPedestrianRouter (const MSEdgeVector &prohibited=MSEdgeVector()) const
 
SUMOAbstractRouter< MSEdge, SUMOVehicle > & getRouterEffort (const MSEdgeVector &prohibited=MSEdgeVector()) const
 
SUMOAbstractRouter< MSEdge, SUMOVehicle > & getRouterTT (const MSEdgeVector &prohibited=MSEdgeVector()) const
 
bool hasInternalLinks () const
 return whether the network contains internal links More...
 
bool hasRestrictions () const
 Returns whether the network has vehicle class restrictions. More...
 
void loadRoutes ()
 loads routes for the next few steps More...
 
bool logSimulationDuration () const
 Returns whether duration shall be logged. More...
 
 MSNet (MSVehicleControl *vc, MSEventControl *beginOfTimestepEvents, MSEventControl *endOfTimestepEvents, MSEventControl *insertionEvents, ShapeContainer *shapeCont=0)
 Constructor. More...
 
void setCurrentTimeStep (const SUMOTime step)
 Sets the current simulation step (used by state loading) More...
 
void setRestrictionFound ()
 Labels the network to contain vehicle class restrictions. More...
 
int simulate (SUMOTime start, SUMOTime stop)
 Simulates from timestep start to stop. More...
 
SimulationState simulationState (SUMOTime stopTime) const
 Called after a simulation step, this method returns the current simulation state. More...
 
void simulationStep ()
 Performs a single simulation step. More...
 
void writeOutput ()
 Write netstate, summary and detector output. More...
 
virtual ~MSNet ()
 Destructor. More...
 
Output during the simulation
void preSimStepOutput () const
 Prints the current step number. More...
 
void postSimStepOutput () const
 Prints the statistics of the step at its end. More...
 
Retrieval of references to substructures
MSVehicleControlgetVehicleControl ()
 Returns the vehicle control. More...
 
virtual MSPersonControlgetPersonControl ()
 Returns the person control. More...
 
virtual MSContainerControlgetContainerControl ()
 Returns the container control. More...
 
MSEdgeControlgetEdgeControl ()
 Returns the edge control. More...
 
MSInsertionControlgetInsertionControl ()
 Returns the insertion control. More...
 
MSDetectorControlgetDetectorControl ()
 Returns the detector control. More...
 
MSTLLogicControlgetTLSControl ()
 Returns the tls logics control. More...
 
MSJunctionControlgetJunctionControl ()
 Returns the junctions control. More...
 
MSEventControlgetBeginOfTimestepEvents ()
 Returns the event control for events executed at the begin of a time step. More...
 
MSEventControlgetEndOfTimestepEvents ()
 Returns the event control for events executed at the end of a time step. More...
 
MSEventControlgetInsertionEvents ()
 Returns the event control for insertion events. More...
 
ShapeContainergetShapeContainer ()
 Returns the shapes container. More...
 
MSEdgeWeightsStoragegetWeightsStorage ()
 Returns the net's internal edge travel times/efforts container. More...
 
Insertion and retrieval of bus stops
bool addBusStop (MSBusStop *busStop)
 Adds a bus stop. More...
 
MSBusStopgetBusStop (const std::string &id) const
 Returns the named bus stop. More...
 
std::string getBusStopID (const MSLane *lane, const SUMOReal pos) const
 Returns the bus stop close to the given position. More...
 
Insertion and retrieval of container stops
bool addContainerStop (MSContainerStop *containerStop)
 Adds a container stop. More...
 
MSContainerStopgetContainerStop (const std::string &id) const
 Returns the named container stop. More...
 
std::string getContainerStopID (const MSLane *lane, const SUMOReal pos) const
 Returns the container stop close to the given position. More...
 

Static Public Member Functions

static void clearAll ()
 Clears all dictionaries. More...
 
static SUMOReal getEffort (const MSEdge *const e, const SUMOVehicle *const v, SUMOReal t)
 Returns the effort to pass an edge. More...
 
static MSNetgetInstance ()
 Returns the pointer to the unique instance of MSNet (singleton). More...
 
static std::string getStateMessage (SimulationState state)
 Returns the message to show if a certain state occurs. More...
 
static SUMOReal getTravelTime (const MSEdge *const e, const SUMOVehicle *const v, SUMOReal t)
 Returns the travel time to pass an edge. More...
 

Protected Attributes

NamedObjectCont< MSBusStop * > myBusStopDict
 Dictionary of bus stops. More...
 
NamedObjectCont< MSContainerStop * > myContainerStopDict
 Dictionary of container stops. More...
 
bool myHasInternalLinks
 Whether the network contains internal links/lanes/edges. More...
 
bool myHaveRestrictions
 Whether the network contains edges which not all vehicles may pass. More...
 
std::pair< bool, NamedRTreemyLanesRTree
 An RTree structure holding lane IDs. More...
 
MSPedestrianRouterDijkstramyPedestrianRouter
 
SUMORouteLoaderControlmyRouteLoaders
 Route loader for dynamic loading of routes. More...
 
DijkstraRouterEffort< MSEdge, SUMOVehicle, prohibited_withRestrictions< MSEdge, SUMOVehicle > > * myRouterEffort
 
AStarRouter< MSEdge, SUMOVehicle, prohibited_withRestrictions< MSEdge, SUMOVehicle > > * myRouterTTAStar
 
DijkstraRouterTT< MSEdge, SUMOVehicle, prohibited_withRestrictions< MSEdge, SUMOVehicle > > * myRouterTTDijkstra
 
bool myRouterTTInitialized
 
SUMOTime myStep
 Current time step. More...
 
int myTooManyVehicles
 Storage for maximum vehicle number. More...
 
std::vector< VehicleStateListener * > myVehicleStateListeners
 Container for vehicle state listener. More...
 
Substructures
MSVehicleControlmyVehicleControl
 Controls vehicle building and deletion;. More...
 
MSPersonControlmyPersonControl
 Controls person building and deletion;. More...
 
MSContainerControlmyContainerControl
 Controls container building and deletion;. More...
 
MSEdgeControlmyEdges
 Controls edges, performs vehicle movement;. More...
 
MSJunctionControlmyJunctions
 Controls junctions, realizes right-of-way rules;. More...
 
MSTLLogicControlmyLogics
 Controls tls logics, realizes waiting on tls rules;. More...
 
MSInsertionControlmyInserter
 Controls vehicle insertion;. More...
 
MSDetectorControlmyDetectorControl
 Controls detectors;. More...
 
MSEventControlmyBeginOfTimestepEvents
 Controls events executed at the begin of a time step;. More...
 
MSEventControlmyEndOfTimestepEvents
 Controls events executed at the end of a time step;. More...
 
MSEventControlmyInsertionEvents
 Controls insertion events;. More...
 
ShapeContainermyShapeContainer
 A container for geometrical shapes;. More...
 
MSEdgeWeightsStoragemyEdgeWeights
 The net's knowledge about edge efforts/travel times;. More...
 
data needed for computing performance values
bool myLogExecutionTime
 Information whether the simulation duration shall be logged. More...
 
bool myLogStepNumber
 Information whether the number of the simulation step shall be logged. More...
 
long mySimStepBegin
 The last simulation step begin, end and duration. More...
 
long mySimStepEnd
 
long mySimStepDuration
 
long mySimBeginMillis
 The overall simulation duration. More...
 
SUMOLong myVehiclesMoved
 The overall number of vehicle movements. More...
 
State output variables
std::vector< SUMOTimemyStateDumpTimes
 Times at which a state shall be written. More...
 
std::vector< std::string > myStateDumpFiles
 The names for the state files. More...
 

Static Protected Attributes

static MSNetmyInstance = 0
 Unique instance of MSNet. More...
 
static const std::string STAGE_EVENTS
 string constants for simstep stages More...
 
static const std::string STAGE_INSERTIONS
 
static const std::string STAGE_LANECHANGE
 
static const std::string STAGE_MOVEMENTS
 

Private Member Functions

 MSNet (const MSNet &)
 Invalidated copy constructor. More...
 
MSNetoperator= (const MSNet &)
 Invalidated assignment operator. More...
 

Notification about vehicle state changes

enum  VehicleState {
  VEHICLE_STATE_BUILT, VEHICLE_STATE_DEPARTED, VEHICLE_STATE_STARTING_TELEPORT, VEHICLE_STATE_ENDING_TELEPORT,
  VEHICLE_STATE_ARRIVED, VEHICLE_STATE_NEWROUTE, VEHICLE_STATE_STARTING_PARKING, VEHICLE_STATE_ENDING_PARKING,
  VEHICLE_STATE_STARTING_STOP, VEHICLE_STATE_ENDING_STOP
}
 Definition of a vehicle state. More...
 
void addVehicleStateListener (VehicleStateListener *listener)
 Adds a vehicle states listener. More...
 
void removeVehicleStateListener (VehicleStateListener *listener)
 Removes a vehicle states listener. More...
 
void informVehicleStateListener (const SUMOVehicle *const vehicle, VehicleState to)
 Informs all added listeners about a vehicle's state change. More...
 

Detailed Description

The simulated network and simulation perfomer.

Definition at line 94 of file MSNet.h.

Member Typedef Documentation

Member Enumeration Documentation

Possible states of a simulation - running or stopped with different reasons.

Enumerator
SIMSTATE_RUNNING 

The simulation is running.

SIMSTATE_END_STEP_REACHED 

The final simulation step has been performed.

SIMSTATE_NO_FURTHER_VEHICLES 

The simulation does not contain further vehicles.

SIMSTATE_CONNECTION_CLOSED 

The connection to a client was closed by the client.

SIMSTATE_ERROR_IN_SIM 

An error occured during the simulation step.

SIMSTATE_TOO_MANY_VEHICLES 

The simulation contains too many vehicles (.

Deprecated:
)

Definition at line 99 of file MSNet.h.

Definition of a vehicle state.

Enumerator
VEHICLE_STATE_BUILT 

The vehicle was built, but has not yet departed.

VEHICLE_STATE_DEPARTED 

The vehicle has departed (was inserted into the network)

VEHICLE_STATE_STARTING_TELEPORT 

The vehicle started to teleport.

VEHICLE_STATE_ENDING_TELEPORT 

The vehicle ended being teleported.

VEHICLE_STATE_ARRIVED 

The vehicle arrived at his destination (is deleted)

VEHICLE_STATE_NEWROUTE 

The vehicle got a new route.

VEHICLE_STATE_STARTING_PARKING 

The vehicles starts to park.

VEHICLE_STATE_ENDING_PARKING 

The vehicle ends to park.

VEHICLE_STATE_STARTING_STOP 

The vehicles starts to stop.

VEHICLE_STATE_ENDING_STOP 

The vehicle ends to stop.

Definition at line 483 of file MSNet.h.

Constructor & Destructor Documentation

MSNet::MSNet ( MSVehicleControl vc,
MSEventControl beginOfTimestepEvents,
MSEventControl endOfTimestepEvents,
MSEventControl insertionEvents,
ShapeContainer shapeCont = 0 
)

Constructor.

This constructor builds a net of which only some basic structures are initialised. It prepares the network for being filled while loading. As soon as all edge/junction/traffic lights and other containers are build, they must be initialised using "closeBuilding".

Parameters
[in]vcThe vehicle control to use
[in]beginOfTimestepEventsThe event control to use for simulation step begin events
[in]endOfTimestepEventsThe event control to use for simulation step end events
[in]insertionEventsThe event control to use for insertion events
[in]shapeContThe shape container to use
Exceptions
ProcessErrorIf a network was already constructed
See also
closeBuilding

Definition at line 167 of file MSNet.cpp.

References OptionsCont::getBool(), OptionsCont::getInt(), OptionsCont::getOptions(), OptionsCont::getString(), MSGlobals::gUseMesoSim, myBeginOfTimestepEvents, myContainerControl, myDetectorControl, myEdges, myEdgeWeights, myEndOfTimestepEvents, myInserter, myInsertionEvents, myInstance, myJunctions, myLanesRTree, myLogExecutionTime, myLogics, myLogStepNumber, myPersonControl, myRouteLoaders, myShapeContainer, myStep, myTooManyVehicles, myVehicleControl, and string2time().

MSNet::MSNet ( const MSNet )
private

Invalidated copy constructor.

Member Function Documentation

bool MSNet::addBusStop ( MSBusStop busStop)

Adds a bus stop.

If another bus stop with the same id exists, false is returned. Otherwise, the bus stop is added to the internal bus stop container "myBusStopDict".

This control gets responsible for deletion of the added bus stop.

Parameters
[in]busStopThe bus stop to add
Returns
Whether the bus stop could be added

Definition at line 742 of file MSNet.cpp.

References NamedObjectCont< T >::add(), Named::getID(), and myBusStopDict.

Referenced by GUITriggerBuilder::buildBusStop(), and NLTriggerBuilder::buildBusStop().

bool MSNet::addContainerStop ( MSContainerStop containerStop)

Adds a container stop.

If another container stop with the same id exists, false is returned. Otherwise, the container stop is added to the internal container stop container "myContainerStopDict".

This control gets responsible for deletion of the added container stop.

Parameters
[in]containerStopThe container stop to add
Returns
Whether the container stop could be added

Definition at line 767 of file MSNet.cpp.

References NamedObjectCont< T >::add(), Named::getID(), and myContainerStopDict.

Referenced by GUITriggerBuilder::buildContainerStop(), and NLTriggerBuilder::buildContainerStop().

void MSNet::addVehicleStateListener ( VehicleStateListener listener)

Adds a vehicle states listener.

Parameters
[in]listenerThe listener to add

Definition at line 715 of file MSNet.cpp.

References myVehicleStateListeners.

Referenced by MSDevice_Vehroutes::init(), and TraCIServer::TraCIServer().

void MSNet::closeBuilding ( MSEdgeControl edges,
MSJunctionControl junctions,
SUMORouteLoaderControl routeLoaders,
MSTLLogicControl tlc,
std::vector< SUMOTime stateDumpTimes,
std::vector< std::string >  stateDumpFiles,
bool  hasInternalLinks 
)

Closes the network's building process.

Assigns the structures built while loading to this network.

Parameters
[in]edgesThe control of edges which belong to this network
[in]junctionsThe control of junctions which belong to this network
[in]routeLoadersThe route loaders used
[in]tlcThe control of traffic lights which belong to this network
[in]stateDumpTimesList of time steps at which state shall be written
[in]stateDumpFilesFilenames for states
[in]hasInternalLinksWhether the network actually contains internal links
Todo:
Try to move all this to the constructor?

Definition at line 215 of file MSNet.cpp.

References SysUtils::getCurrentMillis(), hasInternalLinks(), myEdges, myHasInternalLinks, myJunctions, myLogExecutionTime, myLogics, myRouteLoaders, mySimBeginMillis, myStateDumpFiles, myStateDumpTimes, and MSJunctionControl::postloadInitContainer().

Referenced by NLBuilder::buildNet().

MSBusStop * MSNet::getBusStop ( const std::string &  id) const

Returns the named bus stop.

Parameters
[in]idThe id of the bus stop to return.
Returns
The named bus stop, or 0 if no such stop exists

Definition at line 748 of file MSNet.cpp.

References NamedObjectCont< T >::get(), and myBusStopDict.

Referenced by MSRouteHandler::addStop(), MSVehicle::addStop(), MSRouteHandler::myStartElement(), and TraCIServerAPI_Simulation::processGet().

std::string MSNet::getBusStopID ( const MSLane lane,
const SUMOReal  pos 
) const

Returns the bus stop close to the given position.

Parameters
[in]lanethe lane of the bus stop to return.
[in]posthe position of the bus stop to return.
Returns
The bus stop id on the location, or "" if no such stop exists

Definition at line 754 of file MSNet.cpp.

References MSBusStop::getEndLanePosition(), Named::getID(), MSBusStop::getLane(), NamedObjectCont< T >::getMyMap(), myBusStopDict, and POSITION_EPS.

Referenced by MSVehicle::addTraciStop().

MSContainerStop * MSNet::getContainerStop ( const std::string &  id) const

Returns the named container stop.

Parameters
[in]idThe id of the container stop to return.
Returns
The named container stop, or 0 if no such stop exists

Definition at line 772 of file MSNet.cpp.

References NamedObjectCont< T >::get(), and myContainerStopDict.

Referenced by MSRouteHandler::addStop(), MSVehicle::addStop(), and MSRouteHandler::myStartElement().

std::string MSNet::getContainerStopID ( const MSLane lane,
const SUMOReal  pos 
) const

Returns the container stop close to the given position.

Parameters
[in]lanethe lane of the container stop to return.
[in]posthe position of the container stop to return.
Returns
The container stop id on the location, or "" if no such stop exists

Definition at line 777 of file MSNet.cpp.

References MSContainerStop::getEndLanePosition(), Named::getID(), MSContainerStop::getLane(), NamedObjectCont< T >::getMyMap(), myContainerStopDict, and POSITION_EPS.

Referenced by MSVehicle::addTraciStop().

SUMOTime MSNet::getCurrentTimeStep ( ) const
inline

Returns the current simulation step.

Returns
the current simulation step

Definition at line 235 of file MSNet.h.

References myStep.

Referenced by MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSDevice_Vehroutes::addRoute(), MSTLLogicControl::addWAUTJunction(), MSPersonControl::boardAnyWaiting(), NLDetectorBuilder::buildE2Detector(), MSDevice_Routing::buildVehicleDevices(), MSVehicle::checkRewindLinkLanes(), NLJunctionControlBuilder::closeTrafficLightLogic(), MSTLLogicControl::closeWAUT(), TraCIServerAPI_Simulation::commandDistanceRequest(), MSActuatedTrafficLightLogic::duration(), Command_SaveTLCoupledLaneDet::execute(), Command_SaveTLCoupledDet::execute(), MSActuatedTrafficLightLogic::gapControl(), MSDevice_Tripinfo::generateOutput(), MSPerson::getAngle(), MSContainer::getAngle(), MSLane::getCriticalLeader(), MSInductLoop::getCurrentOccupancy(), GUIApplicationWindow::getCurrentSimTime(), MSLaneSpeedTrigger::getCurrentSpeed(), GUIViewTraffic::getCurrentTimeStep(), MSEventControl::getCurrentTimeStep(), MSPerson::getEdgePos(), MSContainer::getEdgePos(), MSLane::getLeaderOnConsecutive(), MSPerson::getPosition(), MSContainer::getPosition(), MSPerson::getWaitingSeconds(), MSContainer::getWaitingSeconds(), GUIApplicationWindow::handleEvent_SimulationStep(), MSLaneSpeedTrigger::init(), TraCIServer::initialiseSubscription(), MSTLLogicControl::initWautSwitch(), MSLane::isInsertionSuccess(), MSContainerControl::loadAnyWaiting(), GUIRunThread::makeStep(), MSPModel_Striping::MSPModel_Striping(), MSDevice_Vehroutes::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSDevice_Container::notifyLeave(), MSDevice_Person::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_Vehroutes::notifyLeave(), MSDevice_Container::notifyMove(), MSDevice_Person::notifyMove(), GUIApplicationWindow::onCmdTimeToggle(), MSBaseVehicle::onDepart(), TraCIServer::postProcessSimulationStep2(), TraCIServerAPI_Lane::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_TLS::processSet(), TraCIServerAPI_Vehicle::processSet(), MSTrafficLightLogic::resetLinkStates(), GUIRunThread::run(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), simulate(), MSSimpleTrafficLightLogic::trySwitch(), and MSActuatedTrafficLightLogic::trySwitch().

SUMOReal MSNet::getEffort ( const MSEdge *const  e,
const SUMOVehicle *const  v,
SUMOReal  t 
)
static

Returns the effort to pass an edge.

Parameters
[in]eThe edge for which the effort to be passed shall be returned
[in]vThe vehicle that is rerouted
[in]tThe time for which the effort shall be returned [s]
Returns
The effort (abstract) for an edge
See also
DijkstraRouterTT_ByProxi

Definition at line 127 of file MSNet.cpp.

References getInstance(), MSVehicle::getWeightsStorage(), getWeightsStorage(), MSEdgeWeightsStorage::retrieveExistingEffort(), and SUMOReal.

Referenced by getRouterEffort().

MSEventControl* MSNet::getEndOfTimestepEvents ( )
inline

Returns the event control for events executed at the end of a time step.

Returns
The control responsible for events that are executed at the end of a time step
See also
MSEventControl
myEndOfTimestepEvents

Definition at line 379 of file MSNet.h.

References myEndOfTimestepEvents.

Referenced by MSDevice_BTreceiver::BTreceiverUpdate::BTreceiverUpdate(), MSDevice_Routing::buildVehicleDevices(), Command_SaveTLSState::Command_SaveTLSState(), Command_SaveTLSSwitches::Command_SaveTLSSwitches(), Command_SaveTLSSwitchStates::Command_SaveTLSSwitchStates(), MSCalibrator::init(), and MSVTypeProbe::MSVTypeProbe().

MSEventControl* MSNet::getInsertionEvents ( )
inline

Returns the event control for insertion events.

Returns
The control responsible for insertion events
See also
MSEventControl
myInsertionEvents

Definition at line 389 of file MSNet.h.

References myInsertionEvents.

Referenced by MSDevice_Routing::MSDevice_Routing().

MSNet * MSNet::getInstance ( void  )
static

Returns the pointer to the unique instance of MSNet (singleton).

Returns
Pointer to the unique MSNet-instance
Exceptions
ProcessErrorIf a network was not yet constructed

Definition at line 159 of file MSNet.cpp.

References myInstance.

Referenced by MSLCM_JE2013::_patchSpeed(), MSLCM_JE2013::_wantsChange(), MSLCM_LC2013::_wantsChange(), MSDevice_Routing::adaptEdgeEfforts(), MSVehicleTransfer::add(), MSInsertionControl::add(), MSTrafficLightLogic::addLink(), MSTLLogicControl::TLSLogicVariants::addLogic(), MSDevice_Vehroutes::addRoute(), MSRouteHandler::addStop(), MSVehicle::addStop(), MSVehicle::addTraciStop(), MSTLLogicControl::addWAUTJunction(), GUITrafficLightLogicWrapper::begin2TrackPhases(), MSPersonControl::boardAnyWaiting(), MSDevice_BTreceiver::BTreceiverUpdate::BTreceiverUpdate(), NLTriggerBuilder::buildVaporizer(), GUIVehicleControl::buildVehicle(), MSVehicleControl::buildVehicle(), MSDevice_Routing::buildVehicleDevices(), MSSimpleTrafficLightLogic::changeStepAndDuration(), MSLane::checkFailure(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), MSVehicle::checkRewindLinkLanes(), MSRouteHandler::closeContainer(), MSRouteHandler::closeFlow(), MSRouteHandler::closePerson(), MSRouteHandler::closeRoute(), MSRouteHandler::closeVehicle(), MSRouteHandler::closeVehicleTypeDistribution(), MSTLLogicControl::closeWAUT(), Command_SaveTLSState::Command_SaveTLSState(), Command_SaveTLSSwitches::Command_SaveTLSSwitches(), Command_SaveTLSSwitchStates::Command_SaveTLSSwitchStates(), TraCIServerAPI_Simulation::commandDistanceRequest(), MSAbstractLaneChangeModel::continueLaneChangeManeuver(), TraCIServerAPI_Simulation::convertCartesianToRoadMap(), NLDetectorBuilder::createEdgeLaneMeanData(), MSInsertionControl::determineCandidates(), TraCIServer::dispatchCommand(), GUITrafficLightLogicWrapper::drawGL(), GUITriggeredRerouter::GUITriggeredRerouterEdge::drawGL(), GUILane::drawGL(), MSActuatedTrafficLightLogic::duration(), MSDevice::equippedByDefaultAssignmentOptions(), MSContainerControl::erase(), MSPersonControl::erase(), MSCalibrator::execute(), Command_SaveTLCoupledLaneDet::execute(), Command_SaveTLCoupledDet::execute(), MSVTypeProbe::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), MSActuatedTrafficLightLogic::gapControl(), MSDevice_Tripinfo::generateOutput(), MSDevice_Vehroutes::generateOutput(), MSPerson::getAngle(), MSContainer::getAngle(), GUILane::getColorValue(), MSLane::getCriticalLeader(), MSInductLoop::getCurrentLength(), MSInductLoop::getCurrentOccupancy(), MSInductLoop::getCurrentPassedNumber(), MSLaneSpeedTrigger::getCurrentSpeed(), MSInductLoop::getCurrentSpeed(), GUIViewTraffic::getCurrentTimeStep(), MSEventControl::getCurrentTimeStep(), MSInductLoop::getCurrentVehicleIDs(), MSPerson::getEdgePos(), MSContainer::getEdgePos(), getEffort(), GUINet::getGUIInstance(), MSLane::getLeaderOnConsecutive(), GUILane::getLoadedEdgeWeight(), MSLane::getMaximumBrakeDist(), MSPModel::getModel(), MSCModel_NonInteracting::getModel(), MSPModel_Striping::getNextLane(), TraCIServerAPI_Vehicle::getOrBuildVTDMap(), MSTLLogicControl::getPhaseDef(), TraCIServerAPI_POI::getPoI(), TraCIServerAPI_Polygon::getPolygon(), TraCIServerAPI_InductionLoop::getPosition(), TraCIServerAPI_Junction::getPosition(), TraCIServerAPI_Vehicle::getPosition(), TraCIServerAPI_Person::getPosition(), MSPerson::getPosition(), MSContainer::getPosition(), MSVTKExport::getPositions(), GUILane::getScaleValue(), MSVTKExport::getSpeed(), GUILane::getStoredEdgeTravelTime(), MSInductLoop::getTimestepsSinceLastDetection(), getTravelTime(), MSEdge::getTravelTimeStatic(), TraCIServerAPI_Junction::getTree(), TraCIServerAPI_InductionLoop::getTree(), TraCIServerAPI_POI::getTree(), TraCIServerAPI_Polygon::getTree(), MSPerson::getWaitingSeconds(), MSContainer::getWaitingSeconds(), MSLane::handleCollision(), MSLane::incorporateVehicle(), MSVehicle::influenceChangeDecision(), MSLCM_JE2013::inform(), MSLCM_JE2013::informFollower(), MSLCM_JE2013::informLeader(), MSDevice_Vehroutes::init(), MSRailSignal::init(), MSActuatedTrafficLightLogic::init(), MSLaneSpeedTrigger::init(), MSCalibrator::init(), MSMeanData::init(), TraCIServer::initialiseSubscription(), MSTLLogicControl::initWautSwitch(), MSLane::isInsertionSuccess(), MSDevice_BTreceiver::BTreceiverUpdate::leaveRange(), MSContainerControl::loadAnyWaiting(), MSPerson::MSPersonStage_Walking::moveToNextEdge(), MSContainer::MSContainerStage_Tranship::moveToNextEdge(), MSDevice_Routing::MSDevice_Routing(), MSTrafficLightLogic::MSTrafficLightLogic(), MSVTypeProbe::MSVTypeProbe(), GUITriggeredRerouter::myEndElement(), MSStateHandler::myEndElement(), MSRouteHandler::myEndElement(), MSTriggeredRerouter::myEndElement(), MSStateHandler::myStartElement(), MSRouteHandler::myStartElement(), MSCalibrator::myStartElement(), MSDevice_Container::notifyEnter(), MSDevice_Person::notifyEnter(), MSDevice_Vehroutes::notifyEnter(), MSTriggeredRerouter::notifyEnter(), MSCalibrator::VehicleRemover::notifyEnter(), MSDevice_Routing::notifyEnter(), MSDevice_Container::notifyLeave(), MSDevice_Tripinfo::notifyLeave(), MSDevice_Person::notifyLeave(), MSDevice_Vehroutes::notifyLeave(), MSDevice_Container::notifyMove(), MSDevice_Person::notifyMove(), MSE3Collector::MSE3EntryReminder::notifyMove(), MSInstantInductLoop::notifyMove(), MSInductLoop::notifyMove(), MSE3Collector::MSE3LeaveReminder::notifyMove(), GUISUMOViewParent::onCmdLocate(), MSBaseVehicle::onDepart(), GUIViewTraffic::onGamingClick(), MSRouteHandler::openVehicleTypeDistribution(), MSLCM_JE2013::patchSpeed(), MSVehicle::planMoveInternal(), TraCIServer::postProcessSimulationStep2(), TraCIServer::postProcessVTD(), MSPerson::MSPersonStage_Walking::proceed(), MSContainer::MSContainerStage_Tranship::proceed(), TraCIServerAPI_Edge::processGet(), TraCIServerAPI_Polygon::processGet(), TraCIServerAPI_Junction::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_POI::processGet(), TraCIServerAPI_MeMeDetector::processGet(), TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_ArealDetector::processGet(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Simulation::processGet(), TraCIServerAPI_Person::processGet(), TraCIServerAPI_Lane::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_Edge::processSet(), TraCIServerAPI_POI::processSet(), TraCIServerAPI_Polygon::processSet(), TraCIServerAPI_TLS::processSet(), TraCIServerAPI_Vehicle::processSet(), TraCIServerAPI_Simulation::processSet(), TraCIServerAPI_Person::processSet(), TraCIServerAPI_GUI::processSet(), TraCIServerAPI_VehicleType::processSet(), MSPModel_Striping::PState::PState(), MSCalibrator::remainingVehicleCapacity(), MSCalibrator::removePending(), MSVehicle::replaceRoute(), MSDevice_Routing::reroute(), MSTrafficLightLogic::resetLinkStates(), MSVehicle::resumeFromStopping(), MSLCM_JE2013::saveBlockerLength(), MSStateHandler::saveState(), MSVehicleControl::scheduleVehicleRemoval(), GUIVehicle::setFunctionalColor(), MSLaneSpeedTrigger::setOverriding(), MSLaneSpeedTrigger::setOverridingValue(), MSTriggeredRerouter::setPermissions(), MSTLLogicControl::TLSLogicVariants::setStateInstantiatingOnline(), MSLCM_JE2013::slowDownForBlocked(), MSLane::succLinkSec(), MSTLLogicControl::TLSLogicVariants::switchTo(), TraCIServer::TraCIServer(), MSSimpleTrafficLightLogic::trySwitch(), MSActuatedTrafficLightLogic::trySwitch(), MSRailSignal::trySwitch(), MSVehicleControl::vehicleDeparted(), MSLCM_JE2013::wantsChange(), MSFCDExport::write(), MSEmissionExport::write(), MSAmitranTrajectories::write(), MSMeanData_Emissions::MSLaneMeanDataValues::write(), MSQueueExport::writeEdge(), MSFullExport::writeEdge(), writeOutput(), MSFullExport::writeTLS(), MSFullExport::writeVehicles(), MSDevice_BTreceiver::BTreceiverUpdate::~BTreceiverUpdate(), MSDevice_Routing::~MSDevice_Routing(), and TraCIServer::~TraCIServer().

MSJunctionControl& MSNet::getJunctionControl ( )
inline

Returns the junctions control.

Returns
The junctions control
See also
MSJunctionControl
myJunctions

Definition at line 359 of file MSNet.h.

References myJunctions.

Referenced by TraCIServerAPI_Junction::getPosition(), TraCIServerAPI_Junction::getTree(), and TraCIServerAPI_Junction::processGet().

const NamedRTree & MSNet::getLanesRTree ( ) const

Returns an RTree that contains lane IDs.

Returns
An Rtree containing lane IDs

Definition at line 838 of file MSNet.cpp.

References MSLane::fill(), and myLanesRTree.

SUMOAbstractRouter< MSEdge, SUMOVehicle > & MSNet::getRouterEffort ( const MSEdgeVector prohibited = MSEdgeVector()) const
std::string MSNet::getStateMessage ( MSNet::SimulationState  state)
static

Returns the message to show if a certain state occurs.

Returns
Readable description of the state

Definition at line 520 of file MSNet.cpp.

References SIMSTATE_CONNECTION_CLOSED, SIMSTATE_END_STEP_REACHED, SIMSTATE_ERROR_IN_SIM, SIMSTATE_NO_FURTHER_VEHICLES, SIMSTATE_RUNNING, and SIMSTATE_TOO_MANY_VEHICLES.

Referenced by GUIApplicationWindow::handleEvent_SimulationEnded(), GUIRunThread::makeStep(), and simulate().

SUMOReal MSNet::getTravelTime ( const MSEdge *const  e,
const SUMOVehicle *const  v,
SUMOReal  t 
)
static

Returns the travel time to pass an edge.

Parameters
[in]eThe edge for which the travel time to be passed shall be returned
[in]vThe vehicle that is rerouted
[in]tThe time for which the travel time shall be returned [s]
Returns
The travel time for an edge
See also
DijkstraRouterTT_ByProxi

Definition at line 141 of file MSNet.cpp.

References getInstance(), MSEdge::getMinimumTravelTime(), MSVehicle::getWeightsStorage(), getWeightsStorage(), MSEdgeWeightsStorage::retrieveExistingTravelTime(), and SUMOReal.

Referenced by MSDevice_Routing::buildVehicleDevices(), getRouterEffort(), getRouterTT(), and MSEdge::getTravelTimeStatic().

MSVehicleControl& MSNet::getVehicleControl ( )
inline

Returns the vehicle control.

Returns
The vehicle control
See also
MSVehicleControl
myVehicleControl

Definition at line 288 of file MSNet.h.

References myVehicleControl.

Referenced by MSVehicleTransfer::add(), MSInsertionControl::add(), GUIApplicationWindow::checkGamingEvents(), MSVehicleTransfer::checkInsertions(), MSRouteHandler::closeContainer(), MSRouteHandler::closePerson(), MSRouteHandler::closeVehicle(), MSInsertionControl::determineCandidates(), MSDevice::equippedByDefaultAssignmentOptions(), MSCalibrator::execute(), MSVTypeProbe::execute(), MSVehicle::executeMove(), MSLane::executeMovements(), MSLane::getMaximumBrakeDist(), GUINet::getParameterWindow(), TraCIServerAPI_Vehicle::getPosition(), MSVTKExport::getPositions(), MSVTKExport::getSpeed(), MSLane::handleCollision(), MSStateHandler::myEndElement(), MSStateHandler::myStartElement(), MSRouteHandler::myStartElement(), MSCalibrator::myStartElement(), GUISUMOViewParent::onCmdLocate(), MSBaseVehicle::onDepart(), MSRouteHandler::openVehicleTypeDistribution(), TraCIServer::postProcessVTD(), MSContainer::MSContainerStage_Driving::proceed(), MSPerson::MSPersonStage_Driving::proceed(), TraCIServerAPI_VehicleType::processGet(), TraCIServerAPI_Vehicle::processGet(), MSVehicle::processNextStop(), TraCIServerAPI_Vehicle::processSet(), TraCIServerAPI_GUI::processSet(), TraCIServerAPI_VehicleType::processSet(), MSCalibrator::remainingVehicleCapacity(), MSCalibrator::removePending(), MSVehicle::resumeFromStopping(), MSStateHandler::saveState(), GUINet::setSimDuration(), MSFCDExport::write(), MSEmissionExport::write(), MSAmitranTrajectories::write(), MSMeanData_Emissions::MSLaneMeanDataValues::write(), writeOutput(), and MSFullExport::writeVehicles().

MSEdgeWeightsStorage & MSNet::getWeightsStorage ( )

Returns the net's internal edge travel times/efforts container.

If the net does not have such a container, it is built.

Returns
The net's knowledge about edge weights

Definition at line 675 of file MSNet.cpp.

References myEdgeWeights.

Referenced by NLBuilder::EdgeFloatTimeLineRetriever_EdgeEffort::addEdgeWeight(), NLBuilder::EdgeFloatTimeLineRetriever_EdgeTravelTime::addEdgeWeight(), GUILane::getColorValue(), getEffort(), GUILane::getLoadedEdgeWeight(), GUILane::getScaleValue(), GUILane::getStoredEdgeTravelTime(), getTravelTime(), and TraCIServerAPI_Edge::processSet().

bool MSNet::hasInternalLinks ( ) const
inline

return whether the network contains internal links

Definition at line 585 of file MSNet.h.

References myHasInternalLinks.

Referenced by closeBuilding(), and MSDevice_Tripinfo::generateOutput().

bool MSNet::hasRestrictions ( ) const
inline

Returns whether the network has vehicle class restrictions.

Returns
whether restrictions are present

Definition at line 171 of file MSNet.h.

References myHaveRestrictions.

Referenced by MSDevice_Routing::reroute().

void MSNet::informVehicleStateListener ( const SUMOVehicle *const  vehicle,
VehicleState  to 
)

Informs all added listeners about a vehicle's state change.

Parameters
[in]vehicleThe vehicle which changed its state
[in]toThe state the vehicle has changed to
See also
VehicleStateListener:vehicleStateChanged

Definition at line 732 of file MSNet.cpp.

References myVehicleStateListeners.

Referenced by MSVehicleTransfer::add(), GUIVehicleControl::buildVehicle(), MSVehicleControl::buildVehicle(), MSVehicleTransfer::checkInsertions(), MSVehicle::processNextStop(), MSVehicle::replaceRoute(), MSVehicle::resumeFromStopping(), MSVehicleControl::scheduleVehicleRemoval(), and MSVehicleControl::vehicleDeparted().

void MSNet::loadRoutes ( )

loads routes for the next few steps

Definition at line 325 of file MSNet.cpp.

References SUMORouteLoaderControl::loadNext(), myRouteLoaders, and myStep.

Referenced by GUIRunThread::init(), simulate(), and simulationStep().

bool MSNet::logSimulationDuration ( ) const

Returns whether duration shall be logged.

Returns
Whether duration shall be logged

Definition at line 652 of file MSNet.cpp.

References myLogExecutionTime.

Referenced by GUINet::getParameterWindow().

MSNet& MSNet::operator= ( const MSNet )
private

Invalidated assignment operator.

void MSNet::postSimStepOutput ( ) const

Prints the statistics of the step at its end.

Called on the end of a simulation step

Definition at line 690 of file MSNet.cpp.

References DELTA_T, MSVehicleControl::getDepartedVehicleNo(), MSVehicleControl::getRunningVehicleNo(), myLogExecutionTime, mySimStepDuration, myStep, myVehicleControl, OUTPUT_ACCURACY, SUMOReal, and time2string().

Referenced by simulate().

void MSNet::preSimStepOutput ( ) const

Prints the current step number.

Called on the begin of a simulation step

Definition at line 684 of file MSNet.cpp.

References myStep, and time2string().

Referenced by simulate().

void MSNet::removeVehicleStateListener ( VehicleStateListener listener)

Removes a vehicle states listener.

Parameters
[in]listenerThe listener to remove

Definition at line 723 of file MSNet.cpp.

References myVehicleStateListeners.

Referenced by TraCIServer::~TraCIServer().

void MSNet::setCurrentTimeStep ( const SUMOTime  step)
inline

Sets the current simulation step (used by state loading)

Parameters
stepthe current simulation step

Definition at line 243 of file MSNet.h.

References myStep.

Referenced by GUIRunThread::init().

void MSNet::setRestrictionFound ( )
inline

Labels the network to contain vehicle class restrictions.

Definition at line 177 of file MSNet.h.

References myHaveRestrictions.

Referenced by NLHandler::addLane().

int MSNet::simulate ( SUMOTime  start,
SUMOTime  stop 
)

Simulates from timestep start to stop.

Parameters
[in]startThe begin time step of the simulation
[in]stopThe end time step of the simulation
Returns
Returns always 0
Todo:

Recheck return value

What exceptions may occure?

Definition at line 280 of file MSNet.cpp.

References closeSimulation(), getCurrentTimeStep(), OptionsCont::getOptions(), getStateMessage(), loadRoutes(), myLogStepNumber, myStep, postSimStepOutput(), preSimStepOutput(), SIMSTATE_RUNNING, simulationState(), simulationStep(), time2string(), TraCIServer::wasClosed(), and WRITE_MESSAGE.

Referenced by main().

Field Documentation

MSEventControl* MSNet::myBeginOfTimestepEvents
protected

Controls events executed at the begin of a time step;.

See also
MSEventControl

Definition at line 621 of file MSNet.h.

Referenced by getBeginOfTimestepEvents(), MSNet(), simulationStep(), and ~MSNet().

NamedObjectCont<MSBusStop*> MSNet::myBusStopDict
protected

Dictionary of bus stops.

Definition at line 676 of file MSNet.h.

Referenced by addBusStop(), getBusStop(), and getBusStopID().

MSContainerControl* MSNet::myContainerControl
protected

Controls container building and deletion;.

See also
MSContainerControl

Definition at line 609 of file MSNet.h.

Referenced by GUINet::getContainerControl(), getContainerControl(), MSNet(), simulationState(), simulationStep(), and ~MSNet().

NamedObjectCont<MSContainerStop*> MSNet::myContainerStopDict
protected

Dictionary of container stops.

Definition at line 679 of file MSNet.h.

Referenced by addContainerStop(), getContainerStop(), and getContainerStopID().

MSDetectorControl* MSNet::myDetectorControl
protected

Controls detectors;.

See also
MSDetectorControl

Definition at line 619 of file MSNet.h.

Referenced by closeSimulation(), getDetectorControl(), GUINet::initGUIStructures(), MSNet(), writeOutput(), and ~MSNet().

MSEdgeControl* MSNet::myEdges
protected

Controls edges, performs vehicle movement;.

See also
MSEdgeControl

Definition at line 611 of file MSNet.h.

Referenced by closeBuilding(), getEdgeControl(), MSNet(), simulationStep(), writeOutput(), and ~MSNet().

MSEdgeWeightsStorage* MSNet::myEdgeWeights
protected

The net's knowledge about edge efforts/travel times;.

See also
MSEdgeWeightsStorage

Definition at line 629 of file MSNet.h.

Referenced by getWeightsStorage(), MSNet(), and ~MSNet().

MSEventControl* MSNet::myEndOfTimestepEvents
protected

Controls events executed at the end of a time step;.

See also
MSEventControl

Definition at line 623 of file MSNet.h.

Referenced by getEndOfTimestepEvents(), MSNet(), simulationStep(), and ~MSNet().

bool MSNet::myHasInternalLinks
protected

Whether the network contains internal links/lanes/edges.

Definition at line 670 of file MSNet.h.

Referenced by closeBuilding(), and hasInternalLinks().

bool MSNet::myHaveRestrictions
protected

Whether the network contains edges which not all vehicles may pass.

Definition at line 667 of file MSNet.h.

Referenced by hasRestrictions(), and setRestrictionFound().

MSInsertionControl* MSNet::myInserter
protected

Controls vehicle insertion;.

See also
MSInsertionControl

Definition at line 617 of file MSNet.h.

Referenced by closeSimulation(), getInsertionControl(), MSNet(), simulationState(), simulationStep(), writeOutput(), and ~MSNet().

MSEventControl* MSNet::myInsertionEvents
protected

Controls insertion events;.

See also
MSEventControl

Definition at line 625 of file MSNet.h.

Referenced by getInsertionEvents(), MSNet(), simulationState(), simulationStep(), and ~MSNet().

MSNet * MSNet::myInstance = 0
staticprotected

Unique instance of MSNet.

Definition at line 591 of file MSNet.h.

Referenced by getInstance(), MSNet(), and ~MSNet().

MSJunctionControl* MSNet::myJunctions
protected

Controls junctions, realizes right-of-way rules;.

See also
MSJunctionControl

Definition at line 613 of file MSNet.h.

Referenced by closeBuilding(), getJunctionControl(), GUINet::getJunctionPosition(), GUINet::getParameterWindow(), GUINet::initGUIStructures(), MSNet(), and ~MSNet().

std::pair<bool, NamedRTree> MSNet::myLanesRTree
mutableprotected

An RTree structure holding lane IDs.

Definition at line 697 of file MSNet.h.

Referenced by getLanesRTree(), MSNet(), and ~MSNet().

bool MSNet::myLogExecutionTime
protected

Information whether the simulation duration shall be logged.

Definition at line 638 of file MSNet.h.

Referenced by closeBuilding(), closeSimulation(), logSimulationDuration(), MSNet(), postSimStepOutput(), simulationStep(), and writeOutput().

MSTLLogicControl* MSNet::myLogics
protected

Controls tls logics, realizes waiting on tls rules;.

See also
MSJunctionControl

Definition at line 615 of file MSNet.h.

Referenced by closeBuilding(), GUINet::createTLWrapper(), GUINet::getLinkTLID(), GUINet::getLinkTLIndex(), getTLSControl(), MSNet(), simulationStep(), and ~MSNet().

bool MSNet::myLogStepNumber
protected

Information whether the number of the simulation step shall be logged.

Definition at line 641 of file MSNet.h.

Referenced by MSNet(), and simulate().

MSPedestrianRouterDijkstra* MSNet::myPedestrianRouter
mutableprotected

Definition at line 693 of file MSNet.h.

Referenced by getPedestrianRouter().

MSPersonControl* MSNet::myPersonControl
protected

Controls person building and deletion;.

See also
MSPersonControl

Definition at line 607 of file MSNet.h.

Referenced by GUINet::getPersonControl(), getPersonControl(), MSNet(), simulationState(), simulationStep(), and ~MSNet().

SUMORouteLoaderControl* MSNet::myRouteLoaders
protected

Route loader for dynamic loading of routes.

Definition at line 594 of file MSNet.h.

Referenced by closeBuilding(), loadRoutes(), MSNet(), and ~MSNet().

Definition at line 692 of file MSNet.h.

Referenced by getRouterEffort(), and ~MSNet().

AStarRouter<MSEdge, SUMOVehicle, prohibited_withRestrictions<MSEdge, SUMOVehicle> >* MSNet::myRouterTTAStar
mutableprotected

Definition at line 691 of file MSNet.h.

Referenced by getRouterTT(), and ~MSNet().

DijkstraRouterTT<MSEdge, SUMOVehicle, prohibited_withRestrictions<MSEdge, SUMOVehicle> >* MSNet::myRouterTTDijkstra
mutableprotected

Definition at line 690 of file MSNet.h.

Referenced by getRouterTT(), and ~MSNet().

bool MSNet::myRouterTTInitialized
mutableprotected

Definition at line 689 of file MSNet.h.

Referenced by getRouterTT().

ShapeContainer* MSNet::myShapeContainer
protected

A container for geometrical shapes;.

See also
ShapeContainer

Definition at line 627 of file MSNet.h.

Referenced by getShapeContainer(), MSNet(), and ~MSNet().

long MSNet::mySimBeginMillis
protected

The overall simulation duration.

Definition at line 647 of file MSNet.h.

Referenced by closeBuilding(), and closeSimulation().

long MSNet::mySimStepBegin
protected

The last simulation step begin, end and duration.

Definition at line 644 of file MSNet.h.

Referenced by simulationStep().

long MSNet::mySimStepDuration
protected

Definition at line 644 of file MSNet.h.

Referenced by postSimStepOutput(), simulationStep(), and writeOutput().

long MSNet::mySimStepEnd
protected

Definition at line 644 of file MSNet.h.

Referenced by simulationStep().

std::vector<std::string> MSNet::myStateDumpFiles
protected

The names for the state files.

Definition at line 661 of file MSNet.h.

Referenced by closeBuilding(), and simulationStep().

std::vector<SUMOTime> MSNet::myStateDumpTimes
protected

Times at which a state shall be written.

Definition at line 659 of file MSNet.h.

Referenced by closeBuilding(), and simulationStep().

int MSNet::myTooManyVehicles
protected

Storage for maximum vehicle number.

Definition at line 673 of file MSNet.h.

Referenced by MSNet(), and simulationState().

MSVehicleControl* MSNet::myVehicleControl
protected
SUMOLong MSNet::myVehiclesMoved
protected

The overall number of vehicle movements.

Definition at line 650 of file MSNet.h.

Referenced by closeSimulation(), GUINet::getMeanUPS(), and simulationStep().

std::vector<VehicleStateListener*> MSNet::myVehicleStateListeners
protected

Container for vehicle state listener.

Definition at line 682 of file MSNet.h.

Referenced by addVehicleStateListener(), informVehicleStateListener(), and removeVehicleStateListener().

const std::string MSNet::STAGE_EVENTS
staticprotected

string constants for simstep stages

Definition at line 701 of file MSNet.h.

Referenced by simulationStep().

const std::string MSNet::STAGE_INSERTIONS
staticprotected

Definition at line 704 of file MSNet.h.

Referenced by simulationStep().

const std::string MSNet::STAGE_LANECHANGE
staticprotected

Definition at line 703 of file MSNet.h.

Referenced by simulationStep().

const std::string MSNet::STAGE_MOVEMENTS
staticprotected

Definition at line 702 of file MSNet.h.

Referenced by simulationStep().


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