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

The class responsible for building and deletion of vehicles (gui-version) More...

#include <GUIVehicleControl.h>

Inheritance diagram for GUIVehicleControl:
MSVehicleControl

Public Types

typedef std::map< std::string,
SUMOVehicle * >
::const_iterator 
constVehIt
 Definition of the internal vehicles map iterator. More...
 

Public Member Functions

void abortWaiting ()
 removes any vehicles that are still waiting More...
 
bool addVehicle (const std::string &id, SUMOVehicle *v)
 Tries to insert the vehicle into the internal vehicle container. More...
 
void addWaiting (const MSEdge *const edge, SUMOVehicle *vehicle)
 
void deleteVehicle (SUMOVehicle *v, bool discard=false)
 Deletes the vehicle. More...
 
SUMOVehiclegetWaitingVehicle (const MSEdge *const edge, const std::set< std::string > &lines)
 
 GUIVehicleControl ()
 Constructor. More...
 
void insertVehicleIDs (std::vector< GUIGlID > &into)
 Returns the list of all known vehicles by gl-id. More...
 
void registerCollision ()
 registers one collision-related teleport More...
 
void registerOneWaitingForPerson ()
 increases the count of vehicles waiting for a person to allow recogniztion of person related deadlocks More...
 
void registerTeleport ()
 register one non-collision-related teleport More...
 
void releaseVehicles ()
 unlock access to vehicle removal/additions for thread synchronization More...
 
void removeWaiting (const MSEdge *const edge, SUMOVehicle *vehicle)
 
void secureVehicles ()
 lock access to vehicle removal/additions for thread synchronization More...
 
void unregisterOneWaitingForPerson ()
 decreases the count of vehicles waiting for a person to allow recogniztion of person related deadlocks More...
 
 ~GUIVehicleControl ()
 Destructor. More...
 
Vehicle creation
SUMOVehiclebuildVehicle (SUMOVehicleParameter *defs, const MSRoute *route, const MSVehicleType *type)
 Builds a vehicle, increases the number of built vehicles. More...
 
Insertion, deletion and retrieval of vehicles
SUMOVehiclegetVehicle (const std::string &id) const
 Returns the vehicle with the given id. More...
 
void scheduleVehicleRemoval (SUMOVehicle *veh)
 Removes a vehicle after it has ended. More...
 
constVehIt loadedVehBegin () const
 Returns the begin of the internal vehicle map. More...
 
constVehIt loadedVehEnd () const
 Returns the end of the internal vehicle map. More...
 
Setting vehicle statistics
void vehicleDeparted (const SUMOVehicle &v)
 Informs this control about a vehicle's departure. More...
 
Retrieval of vehicle statistics (always accessable)
unsigned int getLoadedVehicleNo () const
 Returns the number of build vehicles. More...
 
unsigned int getEndedVehicleNo () const
 Returns the number of removed vehicles. More...
 
unsigned int getRunningVehicleNo () const
 Returns the number of build and inserted, but not yet deleted vehicles. More...
 
unsigned int getDepartedVehicleNo () const
 Returns the number of inserted vehicles. More...
 
bool isInQuota (SUMOReal frac=-1) const
 Returns the information whether the currently vehicle number shall be emitted considering that only frac of all vehicles shall be emitted overall if a negative fraction is given the demand scaling factor is used (–scale or –incremental-dua-step / –incremental-dua-base) More...
 
int getActiveVehicleCount () const
 Returns the number of build vehicles that have not been removed or need to wait for a passenger. More...
 
unsigned int getCollisionCount () const
 return the number of collisions More...
 
unsigned int getTeleportCount () const
 return the number of teleports (including collisions) More...
 
Retrieval of vehicle statistics (availability depends on simulation settings)
void printMeanWaitingTime (OutputDevice &od) const
 Prints the mean waiting time of vehicles. The mean time vehicles had to wait for being inserted (-1 if no vehicle was inserted, yet) More...
 
void printMeanTravelTime (OutputDevice &od) const
 Returns the mean travel time of vehicles The mean travel time of ended vehicles (-1 if no vehicle has ended, yet) More...
 
Insertion and retrieval of vehicle types
bool addVType (MSVehicleType *vehType)
 Adds a vehicle type. More...
 
bool addVTypeDistribution (const std::string &id, RandomDistributor< MSVehicleType * > *vehTypeDistribution)
 Adds a vehicle type distribution. More...
 
bool hasVTypeDistribution (const std::string &id) const
 Asks for a vehicle type distribution. More...
 
MSVehicleTypegetVType (const std::string &id=DEFAULT_VTYPE_ID)
 Returns the named vehicle type or a sample from the named distribution. More...
 
void insertVTypeIDs (std::vector< std::string > &into) const
 Inserts ids of all known vehicle types and vehicle type distributions to the given vector. More...
 
State I/O (mesosim only)
virtual void saveState (std::ostream &os)
 Loads the state of this control from the given stream. More...
 
virtual void loadState (BinaryInputDevice &bis, const SUMOTime offset)
 Saves the current state into the given stream. More...
 

Static Public Attributes

static MTRand myVehicleParamsRNG
 A random number generator used to choose from vtype/route distributions and computing the speed factors. More...
 

Protected Attributes

Vehicle statistics (always accessable)
unsigned int myLoadedVehNo
 The number of build vehicles. More...
 
unsigned int myRunningVehNo
 The number of vehicles within the network (build and inserted but not removed) More...
 
unsigned int myEndedVehNo
 The number of removed vehicles. More...
 
unsigned int myDiscarded
 The number of vehicles which were discarded while loading. More...
 
unsigned int myCollisions
 The number of collisions. More...
 
unsigned int myTeleports
 The number of teleports (including collisions) More...
 
Vehicle statistics
SUMOReal myTotalDepartureDelay
 The aggregated time vehicles had to wait for departure (in seconds) More...
 
SUMOReal myTotalTravelTime
 The aggregated time vehicles needed to aacomplish their route (in seconds) More...
 

Private Member Functions

 GUIVehicleControl (const GUIVehicleControl &s)
 invalidated copy constructor More...
 
GUIVehicleControloperator= (const GUIVehicleControl &s)
 invalidated assignment operator More...
 

Private Attributes

MFXMutex myLock
 The mutex used to avoid concurrent updates of the vehicle buffer. More...
 

Vehicle container

typedef std::map< std::string,
SUMOVehicle * > 
VehicleDictType
 Vehicle dictionary type. More...
 
VehicleDictType myVehicleDict
 Dictionary of vehicles. More...
 

Vehicle type container

typedef std::map< std::string,
MSVehicleType * > 
VTypeDictType
 Vehicle type dictionary type. More...
 
typedef std::map< std::string,
RandomDistributor
< MSVehicleType * > * > 
VTypeDistDictType
 Vehicle type distribution dictionary type. More...
 
VTypeDictType myVTypeDict
 Dictionary of vehicle types. More...
 
VTypeDistDictType myVTypeDistDict
 A distribution of vehicle types (probability->vehicle type) More...
 
bool myDefaultVTypeMayBeDeleted
 Whether no vehicle type was loaded. More...
 
std::map< const MSEdge *const,
std::vector< SUMOVehicle * > > 
myWaiting
 the lists of waiting vehicles More...
 
unsigned int myWaitingForPerson
 the number of vehicles contained in myWaiting which can only continue by being triggered More...
 
SUMOReal myScale
 The scaling factor (especially for inc-dua) More...
 

Detailed Description

The class responsible for building and deletion of vehicles (gui-version)

Builds GUIVehicle instances instead of MSVehicle.

See Also
MSVehicleControl
Todo:

This is partially unsecure due to concurrent access...

Recheck vehicle deletion

Definition at line 58 of file GUIVehicleControl.h.

Member Typedef Documentation

typedef std::map<std::string, SUMOVehicle*>::const_iterator MSVehicleControl::constVehIt
inherited

Definition of the internal vehicles map iterator.

Definition at line 78 of file MSVehicleControl.h.

typedef std::map< std::string, SUMOVehicle* > MSVehicleControl::VehicleDictType
protectedinherited

Vehicle dictionary type.

Definition at line 436 of file MSVehicleControl.h.

typedef std::map< std::string, MSVehicleType* > MSVehicleControl::VTypeDictType
protectedinherited

Vehicle type dictionary type.

Definition at line 446 of file MSVehicleControl.h.

typedef std::map< std::string, RandomDistributor<MSVehicleType*>* > MSVehicleControl::VTypeDistDictType
protectedinherited

Vehicle type distribution dictionary type.

Definition at line 451 of file MSVehicleControl.h.

Constructor & Destructor Documentation

GUIVehicleControl::GUIVehicleControl ( )

Constructor.

Definition at line 47 of file GUIVehicleControl.cpp.

GUIVehicleControl::~GUIVehicleControl ( )

Destructor.

Definition at line 51 of file GUIVehicleControl.cpp.

References MFXMutex::locked(), myLock, and MFXMutex::unlock().

GUIVehicleControl::GUIVehicleControl ( const GUIVehicleControl s)
private

invalidated copy constructor

Member Function Documentation

void MSVehicleControl::abortWaiting ( )
inherited

removes any vehicles that are still waiting

Definition at line 320 of file MSVehicleControl.cpp.

References MSVehicleControl::myVehicleDict, and WRITE_WARNING.

Referenced by MSNet::simulationState().

bool GUIVehicleControl::addVehicle ( const std::string &  id,
SUMOVehicle v 
)
virtual

Tries to insert the vehicle into the internal vehicle container.

Identical to the MSVehicleControl implementation except for locking.

Parameters
[in]idThe id of the vehicle
[in]vThe vehicle
Returns
Whether the vehicle could be inserted (no other vehicle with the same id was inserted before)

Reimplemented from MSVehicleControl.

Definition at line 70 of file GUIVehicleControl.cpp.

References MSVehicleControl::addVehicle(), and myLock.

bool MSVehicleControl::addVType ( MSVehicleType vehType)
inherited

Adds a vehicle type.

If another vehicle type (or distribution) with the same id exists, false is returned. Otherwise, the vehicle type is added to the internal vehicle type container "myVTypeDict".

This control get responsible for deletion of the added vehicle type.

Parameters
[in]vehTypeThe vehicle type to add
Returns
Whether the vehicle type could be added

Definition at line 231 of file MSVehicleControl.cpp.

References MSVehicleControl::checkVType(), MSVehicleType::getID(), and MSVehicleControl::myVTypeDict.

bool MSVehicleControl::addVTypeDistribution ( const std::string &  id,
RandomDistributor< MSVehicleType * > *  vehTypeDistribution 
)
inherited

Adds a vehicle type distribution.

If another vehicle type (or distribution) with the same id exists, false is returned. Otherwise, the vehicle type distribution is added to the internal vehicle type distribution container "myVTypeDistDict".

This control get responsible for deletion of the added vehicle type distribution.

Parameters
[in]idThe id of the distribution to add
[in]vehTypeDistributionThe vehicle type distribution to add
Returns
Whether the vehicle type could be added

Definition at line 241 of file MSVehicleControl.cpp.

References MSVehicleControl::checkVType(), and MSVehicleControl::myVTypeDistDict.

void MSVehicleControl::addWaiting ( const MSEdge *const  edge,
SUMOVehicle vehicle 
)
inherited
SUMOVehicle * GUIVehicleControl::buildVehicle ( SUMOVehicleParameter defs,
const MSRoute route,
const MSVehicleType type 
)
virtual

Builds a vehicle, increases the number of built vehicles.

Instead of a MSVehicle, a GUIVehicle is built

Parameters
[in]defsThe parameter defining the vehicle
[in]routeThe route of this vehicle
[in]typeThe type of this vehicle
Returns
The built vehicle (MSVehicle instance)
See Also
MSVehicleControl::buildVehicle

Reimplemented from MSVehicleControl.

Definition at line 60 of file GUIVehicleControl.cpp.

References MSVehicleType::computeChosenSpeedDeviation(), MSNet::getInstance(), MSNet::informVehicleStateListener(), MSVehicleControl::myLoadedVehNo, MSVehicleControl::myVehicleParamsRNG, and MSNet::VEHICLE_STATE_BUILT.

void GUIVehicleControl::deleteVehicle ( SUMOVehicle v,
bool  discard = false 
)
virtual

Deletes the vehicle.

Identical to the MSVehicleControl implementation except for locking.

Parameters
[in]vThe vehicle to delete
discard]Whether the vehicle is discard during loading (scale < 1)

Reimplemented from MSVehicleControl.

Definition at line 77 of file GUIVehicleControl.cpp.

References MSVehicleControl::deleteVehicle(), and myLock.

int MSVehicleControl::getActiveVehicleCount ( ) const
inlineinherited

Returns the number of build vehicles that have not been removed or need to wait for a passenger.

Returns
Number of active vehicles

Definition at line 239 of file MSVehicleControl.h.

References MSVehicleControl::myEndedVehNo, MSVehicleControl::myLoadedVehNo, and MSVehicleControl::myWaitingForPerson.

Referenced by MSNet::simulationState().

unsigned int MSVehicleControl::getCollisionCount ( ) const
inlineinherited

return the number of collisions

Definition at line 244 of file MSVehicleControl.h.

References MSVehicleControl::myCollisions.

Referenced by MSNet::closeSimulation(), and GUINet::getParameterWindow().

unsigned int MSVehicleControl::getDepartedVehicleNo ( ) const
inlineinherited

Returns the number of inserted vehicles.

Returns
The number of vehicles that have entered the simulation so far

Definition at line 221 of file MSVehicleControl.h.

References MSVehicleControl::myDiscarded, MSVehicleControl::myEndedVehNo, and MSVehicleControl::myRunningVehNo.

Referenced by MSNet::closeSimulation(), GUINet::getParameterWindow(), MSNet::postSimStepOutput(), MSVehicleControl::printMeanWaitingTime(), and MSNet::writeOutput().

unsigned int MSVehicleControl::getEndedVehicleNo ( ) const
inlineinherited

Returns the number of removed vehicles.

Returns
The number of vehicles that have left the simulation

Definition at line 205 of file MSVehicleControl.h.

References MSVehicleControl::myEndedVehNo.

Referenced by GUINet::getParameterWindow(), and MSNet::writeOutput().

unsigned int MSVehicleControl::getLoadedVehicleNo ( ) const
inlineinherited

Returns the number of build vehicles.

Returns
The number of loaded (build) vehicles

Definition at line 197 of file MSVehicleControl.h.

References MSVehicleControl::myLoadedVehNo.

Referenced by MSNet::closeSimulation(), GUINet::getParameterWindow(), and MSNet::writeOutput().

unsigned int MSVehicleControl::getRunningVehicleNo ( ) const
inlineinherited

Returns the number of build and inserted, but not yet deleted vehicles.

Returns
The number simulated vehicles (including those in teleporter)

Definition at line 213 of file MSVehicleControl.h.

References MSVehicleControl::myRunningVehNo.

Referenced by MSNet::closeSimulation(), GUINet::getParameterWindow(), MSNet::postSimStepOutput(), GUINet::setSimDuration(), MSNet::simulationState(), MSNet::simulationStep(), and MSNet::writeOutput().

unsigned int MSVehicleControl::getTeleportCount ( ) const
inlineinherited

return the number of teleports (including collisions)

Definition at line 250 of file MSVehicleControl.h.

References MSVehicleControl::myTeleports.

Referenced by MSNet::closeSimulation(), and GUINet::getParameterWindow().

SUMOVehicle * MSVehicleControl::getVehicle ( const std::string &  id) const
inherited

Returns the vehicle with the given id.

If no vehicle with the given id is store din "myVehicleDict", 0 is returned.

Parameters
[in]idThe id of the vehicle to retrieve
Returns
The vehicle with the given id, 0 if no such vehicle exists

Definition at line 180 of file MSVehicleControl.cpp.

References MSVehicleControl::myVehicleDict.

Referenced by MSInsertionControl::checkFlows(), MSRouteHandler::closeVehicle(), TraCIServerAPI_Vehicle::getPosition(), TraCIServerAPI_Vehicle::processGet(), TraCIServerAPI_Vehicle::processSet(), TraCIServerAPI_GUI::processSet(), and GUINet::vehicleExists().

MSVehicleType * MSVehicleControl::getVType ( const std::string &  id = DEFAULT_VTYPE_ID)
inherited
SUMOVehicle * MSVehicleControl::getWaitingVehicle ( const MSEdge *const  edge,
const std::set< std::string > &  lines 
)
inherited
bool MSVehicleControl::hasVTypeDistribution ( const std::string &  id) const
inherited

Asks for a vehicle type distribution.

If vehicle type distribution with the id exists, true is returned, false otherwise.

Parameters
[in]idThe id of the distribution
Returns
Whether the vehicle type distribution exists

Definition at line 251 of file MSVehicleControl.cpp.

References MSVehicleControl::myVTypeDistDict.

Referenced by MSInsertionControl::add().

void GUIVehicleControl::insertVehicleIDs ( std::vector< GUIGlID > &  into)

Returns the list of all known vehicles by gl-id.

Parameters
fill]into The list to fill with vehicle ids
Todo:
Well, what about concurrent modifications?

Definition at line 84 of file GUIVehicleControl.cpp.

References SUMOVehicle::isOnRoad(), myLock, and MSVehicleControl::myVehicleDict.

void MSVehicleControl::insertVTypeIDs ( std::vector< std::string > &  into) const
inherited

Inserts ids of all known vehicle types and vehicle type distributions to the given vector.

Parameters
[in]intoThe vector to fill with ids

Definition at line 274 of file MSVehicleControl.cpp.

References MSVehicleControl::myVTypeDict, and MSVehicleControl::myVTypeDistDict.

Referenced by TraCIServerAPI_VehicleType::processGet().

bool MSVehicleControl::isInQuota ( SUMOReal  frac = -1) const
inherited

Returns the information whether the currently vehicle number shall be emitted considering that only frac of all vehicles shall be emitted overall if a negative fraction is given the demand scaling factor is used (–scale or –incremental-dua-step / –incremental-dua-base)

Returns
True iff the vehicle number is acceptable

Definition at line 328 of file MSVehicleControl.cpp.

References MSVehicleControl::myLoadedVehNo, and MSVehicleControl::myScale.

Referenced by MSDevice_HBEFA::buildVehicleDevices(), MSDevice_Routing::buildVehicleDevices(), MSInsertionControl::checkFlows(), and MSRouteHandler::closeVehicle().

MSVehicleControl::constVehIt MSVehicleControl::loadedVehBegin ( ) const
inherited

Returns the begin of the internal vehicle map.

Returns
The begin of the internal vehicle map

Definition at line 201 of file MSVehicleControl.cpp.

References MSVehicleControl::myVehicleDict.

Referenced by MSVTypeProbe::execute(), MSVTKExport::getPositions(), MSVTKExport::getSpeed(), TraCIServerAPI_Vehicle::processGet(), MSFCDExport::write(), MSEmissionExport::write(), and MSFullExport::writeVehicles().

MSVehicleControl::constVehIt MSVehicleControl::loadedVehEnd ( ) const
inherited

Returns the end of the internal vehicle map.

Returns
The end of the internal vehicle map

Definition at line 207 of file MSVehicleControl.cpp.

References MSVehicleControl::myVehicleDict.

Referenced by MSVTypeProbe::execute(), MSVTKExport::getPositions(), MSVTKExport::getSpeed(), TraCIServerAPI_Vehicle::processGet(), MSFCDExport::write(), MSEmissionExport::write(), and MSFullExport::writeVehicles().

void MSVehicleControl::loadState ( BinaryInputDevice bis,
const SUMOTime  offset 
)
virtualinherited

Saves the current state into the given stream.

Todo:
Does not work for microsim

Definition at line 163 of file MSVehicleControl.cpp.

GUIVehicleControl& GUIVehicleControl::operator= ( const GUIVehicleControl s)
private

invalidated assignment operator

void MSVehicleControl::printMeanTravelTime ( OutputDevice od) const
inherited

Returns the mean travel time of vehicles The mean travel time of ended vehicles (-1 if no vehicle has ended, yet)

Todo:
Enable this for guisim?

Definition at line 140 of file MSVehicleControl.cpp.

References MSVehicleControl::myEndedVehNo, MSVehicleControl::myTotalTravelTime, and SUMOReal.

Referenced by MSNet::writeOutput().

void MSVehicleControl::printMeanWaitingTime ( OutputDevice od) const
inherited

Prints the mean waiting time of vehicles. The mean time vehicles had to wait for being inserted (-1 if no vehicle was inserted, yet)

Todo:
Enable this for guisim?

Definition at line 130 of file MSVehicleControl.cpp.

References MSVehicleControl::getDepartedVehicleNo(), MSVehicleControl::myTotalDepartureDelay, and SUMOReal.

Referenced by MSNet::writeOutput().

void MSVehicleControl::registerCollision ( )
inlineinherited

registers one collision-related teleport

Definition at line 352 of file MSVehicleControl.h.

References MSVehicleControl::myCollisions, and MSVehicleControl::myTeleports.

Referenced by MSLane::detectCollisions().

void MSVehicleControl::registerOneWaitingForPerson ( )
inlineinherited

increases the count of vehicles waiting for a person to allow recogniztion of person related deadlocks

Definition at line 341 of file MSVehicleControl.h.

References MSVehicleControl::myWaitingForPerson.

Referenced by MSRouteHandler::closeVehicle(), and MSVehicle::processNextStop().

void MSVehicleControl::registerTeleport ( )
inlineinherited

register one non-collision-related teleport

Definition at line 358 of file MSVehicleControl.h.

References MSVehicleControl::myTeleports.

Referenced by MSLane::setCritical().

void GUIVehicleControl::releaseVehicles ( )

unlock access to vehicle removal/additions for thread synchronization

Definition at line 103 of file GUIVehicleControl.cpp.

References myLock, and MFXMutex::unlock().

void MSVehicleControl::removeWaiting ( const MSEdge *const  edge,
SUMOVehicle vehicle 
)
inherited
void MSVehicleControl::saveState ( std::ostream &  os)
virtualinherited

Loads the state of this control from the given stream.

Todo:
Does not work for microsim

Definition at line 158 of file MSVehicleControl.cpp.

void MSVehicleControl::scheduleVehicleRemoval ( SUMOVehicle veh)
inherited

Removes a vehicle after it has ended.

Writes output to tripinfos and vehroutes if wished; decrements the number of running vehicles and increments the number of ended vehicles. Then deletes the vehicle using "deleteVehicle".

This method should be called for each vehicle that was inserted into the network and quits its ride.

Parameters
[in]vehThe vehicle to remove

Definition at line 114 of file MSVehicleControl.cpp.

References OutputDevice::closeTag(), MSVehicleControl::deleteVehicle(), SUMOVehicle::getDeparture(), OutputDevice::getDeviceByOption(), SUMOVehicle::getDevices(), MSNet::getInstance(), OptionsCont::getOptions(), MSNet::informVehicleStateListener(), MSVehicleControl::myRunningVehNo, MSVehicleControl::myTotalTravelTime, STEPS2TIME, and MSNet::VEHICLE_STATE_ARRIVED.

Referenced by MSVehicleTransfer::addVeh(), MSVehicleTransfer::checkInsertions(), TraCIServerAPI_Vehicle::processSet(), and MSLane::setCritical().

void GUIVehicleControl::secureVehicles ( )

lock access to vehicle removal/additions for thread synchronization

Definition at line 97 of file GUIVehicleControl.cpp.

References MFXMutex::lock(), and myLock.

void MSVehicleControl::unregisterOneWaitingForPerson ( )
inlineinherited

decreases the count of vehicles waiting for a person to allow recogniztion of person related deadlocks

Definition at line 347 of file MSVehicleControl.h.

References MSVehicleControl::myWaitingForPerson.

Referenced by MSPerson::MSPersonStage_Driving::proceed(), and MSVehicle::processNextStop().

void MSVehicleControl::vehicleDeparted ( const SUMOVehicle v)
inherited

Informs this control about a vehicle's departure.

If the mean waiting time shall be computed (f.e. for summary-output), the absolut waiting time is increased by the waiting time of the given vehicle.

Parameters
[in]vThe inserted vehicle

Definition at line 150 of file MSVehicleControl.cpp.

References SUMOVehicleParameter::depart, SUMOVehicle::getDeparture(), MSNet::getInstance(), SUMOVehicle::getParameter(), MSNet::informVehicleStateListener(), MSVehicleControl::myRunningVehNo, MSVehicleControl::myTotalDepartureDelay, STEPFLOOR, STEPS2TIME, and MSNet::VEHICLE_STATE_DEPARTED.

Referenced by MSBaseVehicle::onDepart().

Field Documentation

unsigned int MSVehicleControl::myCollisions
protectedinherited

The number of collisions.

Definition at line 414 of file MSVehicleControl.h.

Referenced by MSVehicleControl::getCollisionCount(), and MSVehicleControl::registerCollision().

bool MSVehicleControl::myDefaultVTypeMayBeDeleted
protectedinherited

Whether no vehicle type was loaded.

Definition at line 456 of file MSVehicleControl.h.

Referenced by MSVehicleControl::checkVType(), and MSVehicleControl::getVType().

unsigned int MSVehicleControl::myDiscarded
protectedinherited

The number of vehicles which were discarded while loading.

Definition at line 411 of file MSVehicleControl.h.

Referenced by MSVehicleControl::deleteVehicle(), and MSVehicleControl::getDepartedVehicleNo().

unsigned int MSVehicleControl::myEndedVehNo
protectedinherited
unsigned int MSVehicleControl::myLoadedVehNo
protectedinherited
MFXMutex GUIVehicleControl::myLock
mutableprivate

The mutex used to avoid concurrent updates of the vehicle buffer.

Definition at line 123 of file GUIVehicleControl.h.

Referenced by addVehicle(), deleteVehicle(), insertVehicleIDs(), releaseVehicles(), secureVehicles(), and ~GUIVehicleControl().

unsigned int MSVehicleControl::myRunningVehNo
protectedinherited

The number of vehicles within the network (build and inserted but not removed)

Definition at line 405 of file MSVehicleControl.h.

Referenced by MSVehicleControl::getDepartedVehicleNo(), MSVehicleControl::getRunningVehicleNo(), MSVehicleControl::scheduleVehicleRemoval(), and MSVehicleControl::vehicleDeparted().

SUMOReal MSVehicleControl::myScale
protectedinherited

The scaling factor (especially for inc-dua)

Definition at line 465 of file MSVehicleControl.h.

Referenced by MSVehicleControl::isInQuota(), and MSVehicleControl::MSVehicleControl().

unsigned int MSVehicleControl::myTeleports
protectedinherited

The number of teleports (including collisions)

Definition at line 417 of file MSVehicleControl.h.

Referenced by MSVehicleControl::getTeleportCount(), MSVehicleControl::registerCollision(), and MSVehicleControl::registerTeleport().

SUMOReal MSVehicleControl::myTotalDepartureDelay
protectedinherited

The aggregated time vehicles had to wait for departure (in seconds)

Definition at line 425 of file MSVehicleControl.h.

Referenced by MSVehicleControl::printMeanWaitingTime(), and MSVehicleControl::vehicleDeparted().

SUMOReal MSVehicleControl::myTotalTravelTime
protectedinherited

The aggregated time vehicles needed to aacomplish their route (in seconds)

Definition at line 428 of file MSVehicleControl.h.

Referenced by MSVehicleControl::printMeanTravelTime(), and MSVehicleControl::scheduleVehicleRemoval().

MTRand MSVehicleControl::myVehicleParamsRNG
staticinherited

A random number generator used to choose from vtype/route distributions and computing the speed factors.

Definition at line 384 of file MSVehicleControl.h.

Referenced by buildVehicle(), MSVehicleControl::buildVehicle(), MSVehicleControl::getVType(), main(), and GUILoadThread::run().

VTypeDistDictType MSVehicleControl::myVTypeDistDict
protectedinherited
std::map<const MSEdge* const, std::vector<SUMOVehicle*> > MSVehicleControl::myWaiting
protectedinherited

the lists of waiting vehicles

Definition at line 459 of file MSVehicleControl.h.

Referenced by MSVehicleControl::addWaiting(), MSVehicleControl::getWaitingVehicle(), and MSVehicleControl::removeWaiting().

unsigned int MSVehicleControl::myWaitingForPerson
protectedinherited

the number of vehicles contained in myWaiting which can only continue by being triggered

Definition at line 462 of file MSVehicleControl.h.

Referenced by MSVehicleControl::getActiveVehicleCount(), MSVehicleControl::registerOneWaitingForPerson(), and MSVehicleControl::unregisterOneWaitingForPerson().


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