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

A district (origin/destination) More...

#include <ODDistrict.h>

Inheritance diagram for ODDistrict:
Named

Public Member Functions

void addSink (const std::string &id, SUMOReal weight)
 Adds a sink connection. More...
 
void addSource (const std::string &id, SUMOReal weight)
 Adds a source connection. More...
 
void addTo (const StoringVisitor &cont) const
 Adds this object to the given container. More...
 
const std::string & getID () const
 Returns the id. More...
 
std::string getRandomSink () const throw (OutOfBoundsException)
 Returns the id of a sink to use. More...
 
std::string getRandomSource () const throw (OutOfBoundsException)
 Returns the id of a source to use. More...
 
 ODDistrict (const std::string &id)
 Constructor. More...
 
void setID (const std::string &newID)
 resets the id More...
 
unsigned int sinkNumber () const
 Returns the number of sinks. More...
 
unsigned int sourceNumber () const
 Returns the number of sources. More...
 
 ~ODDistrict ()
 Destructor. More...
 

Protected Attributes

std::string myID
 The name of the object. More...
 

Private Member Functions

 ODDistrict (const ODDistrict &s)
 invalidated copy constructor More...
 
ODDistrictoperator= (const ODDistrict &s)
 invalidated assignment operator More...
 

Private Attributes

RandomDistributor< std::string > mySinks
 Container of weighted sinks. More...
 
RandomDistributor< std::string > mySources
 Container of weighted sources. More...
 

Detailed Description

A district (origin/destination)

Class representing a district which has some ingoing and outgoing connections to the road network which may be weighted.

Definition at line 51 of file ODDistrict.h.

Constructor & Destructor Documentation

ODDistrict::ODDistrict ( const std::string &  id)

Constructor.

Parameters
[in]idThe id of the district

Definition at line 48 of file ODDistrict.cpp.

ODDistrict::~ODDistrict ( )

Destructor.

Definition at line 52 of file ODDistrict.cpp.

ODDistrict::ODDistrict ( const ODDistrict s)
private

invalidated copy constructor

Member Function Documentation

void ODDistrict::addSink ( const std::string &  id,
SUMOReal  weight 
)

Adds a sink connection.

A sink connection is an edge which is used by vehicles to leave the network and reach the district. The weight is used when a random sink shall be chosen.

BTW, it is possible to add a sink twice. In this case it will occure twice within the distribution so that the behaviour is as adding both given probabilities.

Parameters
[in]idThe id of the sink
[in]weightThe weight (probability to be chosen) of the sink

Definition at line 62 of file ODDistrict.cpp.

References mySinks.

Referenced by ODDistrictHandler::addSink().

void ODDistrict::addSource ( const std::string &  id,
SUMOReal  weight 
)

Adds a source connection.

A source is an edge where vehicles leave the district from to reach the network. The weight is used when a random source shall be chosen.

BTW, it is possible to add a source twice. In this case it will occure twice within the distribution so that the behaviour is as adding both given probabilities.

Parameters
[in]idThe id of the source
[in]weightThe weight (probability to be chosen) of the source

Definition at line 56 of file ODDistrict.cpp.

References mySources.

Referenced by ODDistrictHandler::addSource().

void Named::addTo ( const StoringVisitor cont) const
inlineinherited

Adds this object to the given container.

Parameters
in,filled]cont The container to add this item to

Definition at line 114 of file Named.h.

References Named::StoringVisitor::add().

const std::string& Named::getID ( ) const
inlineinherited

Returns the id.

Returns
The stored id

Definition at line 60 of file Named.h.

References Named::myID.

Referenced by Named::StoringVisitor::add(), MSDetectorControl::add(), RORouteDef::addAlternative(), MSNet::addBusStop(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), NIImporter_OpenDrive::addE2EConnectionsSecure(), RONet::addNode(), NIImporter_SUMO::addPhase(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), NBTrafficLightLogic::addStep(), MSRouteHandler::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), MSPerson::MSPersonStage_Driving::beginEventOutput(), MSPerson::MSPersonStage_Waiting::beginEventOutput(), NIVisumTL::build(), MS_E2_ZS_CollectorOverLanes::buildCollector(), NIImporter_VISUM::buildDistrictNode(), NIVissimConnection::buildEdgeConnections(), NBEdge::buildInnerEdges(), NIVissimEdge::buildNBEdge(), NBRampsComputer::buildOffRamp(), NBRampsComputer::buildOnRamp(), MSVehicleTransfer::checkInsertions(), ODDistrictHandler::closeDistrict(), NLHandler::closeEdge(), RORouteHandler::closeRouteDistribution(), NBTrafficLightDefinition::collectEdges(), NBOwnTLDef::collectLinks(), NBTrafficLightDefinition::compute(), NBNode::computeInternalLaneShape(), NBEdge::computeLaneShapes(), NBNode::computeLogic(), NBNode::computeNodeShape(), NBTrafficLightLogicCont::computeSingleLogic(), NBTurningDirectionsComputer::computeTurnDirectionsForNode(), NBEdge::connections_sorter(), MSLane::detectCollisions(), NIVissimDistrictConnection::dict_BuildDistricts(), MSPerson::MSPersonStage_Driving::endEventOutput(), MSPerson::MSPersonStage_Waiting::endEventOutput(), MSE3Collector::enter(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), MSNet::getBusStopID(), MS_E2_ZS_CollectorOverLanes::getLanePredeccessorLanes(), NIImporter_VISUM::getNamedEdgeContinuating(), NLTriggerBuilder::getPosition(), NBNode::getPossiblySplittedIncoming(), NBNode::getPossiblySplittedOutgoing(), NIImporter_VISUM::getReversedContinuating(), NBEdgeCont::ignoreFilterMatch(), MSActuatedTrafficLightLogic::init(), MSAgentbasedTrafficLightLogic::init(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NBDistrictCont::insert(), NBTrafficLightLogicCont::insert(), NBNodeCont::insert(), NBEdgeCont::insert(), NBEdgeCont::joinSameNodeConnectingEdges(), MSE3Collector::leave(), NIImporter_OpenDrive::loadNetwork(), MSVehicle::moveChecked(), NBRampsComputer::moveRampRight(), MSPerson::MSPersonStage_Waiting::MSPersonStage_Waiting(), MSVehicle::MSVehicle(), NBOwnTLDef::myCompute(), NBLoadedTLDef::myCompute(), NIXMLTrafficLightsHandler::myEndElement(), NIXMLEdgesHandler::myEndElement(), NIImporter_SUMO::myEndElement(), NIXMLConnectionsHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSTriggeredRerouter::myStartElement(), NBConnection::NBConnection(), NBRequest::NBRequest(), MSDevice_Tripinfo::notifyEnter(), MSDevice_Tripinfo::notifyLeave(), MSDevice_Person::notifyLeave(), RORouteHandler::openRoute(), Named::ComparatorIdLess::operator()(), NBTurningDirectionsComputer::combination_by_angle_sorter::operator()(), NBOwnTLDef::edge_by_incoming_priority_sorter::operator()(), NBNetBuilder::by_id_sorter::operator()(), NBContHelper::same_connection_edge_sorter::operator()(), NBNode::nodes_by_id_sorter::operator()(), MSEdge::by_id_sorter::operator()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), RORDLoader_SUMOBase::parseRoute(), NBLoadedTLDef::SignalGroup::patchTYellow(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_Lane::processGet(), TraCIServerAPI_Vehicle::processGet(), NWWriter_SUMO::prohibitionConnection(), NBEdgeCont::recheckPostProcessConnections(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::removeUnwishedNodes(), NBNodeCont::rename(), NBEdgeCont::rename(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIImporter_DlrNavteq::TrafficlightsHandler::report(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), PCPolyContainer::save(), RONet::saveAndRemoveRoutesUntil(), NBNodeCont::setAsTLControlled(), NBEdge::setControllingTLInformation(), MSLane::setCritical(), NIXMLEdgesHandler::setNodes(), NBOwnTLDef::setTLControllingInformation(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdgeCont::splitAt(), RORDLoader_SUMOBase::startRoute(), NBEdge::startShapeAt(), NIXMLConnectionsHandler::validateLaneInfo(), MSEmissionExport::write(), MSInstantInductLoop::write(), NBSign::writeAsPOI(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), MSFullExport::writeEdge(), MSXMLRawOut::writeEdge(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeInternalConnections(), NWWriter_SUMO::writeJunction(), MSQueueExport::writeLane(), MSFullExport::writeLane(), NWWriter_DlrNavteq::writeLinksUnsplitted(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), NWWriter_DlrNavteq::writeNodesUnsplitted(), MSInductLoop::writeTypedXMLOutput(), MSFullExport::writeVehicles(), MSRouteProbe::writeXMLOutput(), and MSE2Collector::writeXMLOutput().

std::string ODDistrict::getRandomSink ( ) const throw (OutOfBoundsException)

Returns the id of a sink to use.

If the list of this district's sinks is empty, an OutOfBoundsException -exception is thrown.

Returns
One of this district's sinks chosen randomly regarding their weights
Exceptions
OutOfBoundsExceptionIf this district has no sinks

Definition at line 74 of file ODDistrict.cpp.

References mySinks.

Referenced by ODDistrictCont::getRandomSinkFromDistrict().

std::string ODDistrict::getRandomSource ( ) const throw (OutOfBoundsException)

Returns the id of a source to use.

If the list of this district's sources is empty, an OutOfBoundsException -exception is thrown.

Returns
One of this district's sources chosen randomly regarding their weights
Exceptions
OutOfBoundsExceptionIf this district has no sources

Definition at line 68 of file ODDistrict.cpp.

References mySources.

Referenced by ODDistrictCont::getRandomSourceFromDistrict().

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

invalidated assignment operator

void Named::setID ( const std::string &  newID)
inlineinherited

resets the id

Parameters
[in]newIDThe new id of this object

Definition at line 68 of file Named.h.

References Named::myID.

Referenced by NBNodeCont::rename(), and NBEdgeCont::rename().

unsigned int ODDistrict::sinkNumber ( ) const

Returns the number of sinks.

Returns
The number of known sinks

Definition at line 80 of file ODDistrict.cpp.

References mySinks.

Referenced by ODMatrix::add().

unsigned int ODDistrict::sourceNumber ( ) const

Returns the number of sources.

Returns
The number of known sources

Definition at line 86 of file ODDistrict.cpp.

References mySources.

Referenced by ODMatrix::add().

Field Documentation

RandomDistributor<std::string> ODDistrict::mySinks
private

Container of weighted sinks.

Definition at line 137 of file ODDistrict.h.

Referenced by addSink(), getRandomSink(), and sinkNumber().

RandomDistributor<std::string> ODDistrict::mySources
private

Container of weighted sources.

Definition at line 134 of file ODDistrict.h.

Referenced by addSource(), getRandomSource(), and sourceNumber().


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