SUMO - Simulation of Urban MObility
|
A DFROUTER-network. More...
#include <RODFNet.h>
Data Structures | |
class | DFRouteDescByTimeComperator |
struct | idComp |
comparator for maps using edges as key, used only in myDetectorsOnEdges to make tests comparable More... | |
struct | IterationEdge |
Public Member Functions | |
void | buildApproachList () |
void | buildDetectorDependencies (RODFDetectorCon &detectors) |
void | buildEdgeFlowMap (const RODFDetectorFlows &flows, const RODFDetectorCon &detectors, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset) |
void | buildRoutes (RODFDetectorCon &det, bool keepUnfoundEnds, bool includeInBetween, bool keepShortestOnly, int maxFollowingLength) const |
void | closeOutput () |
closes the file output for computed routes More... | |
void | computeTypes (RODFDetectorCon &dets, bool sourcesStrict) const |
SUMOReal | getAbsPos (const RODFDetector &det) const |
const std::vector< std::string > & | getDetectorList (ROEdge *edge) const |
const std::map< std::string, ROEdge * > & | getEdgeMap () const |
unsigned int | getEdgeNo () const |
Returns the number of edges the network contains. More... | |
unsigned int | getEdgeNoWithoutInternal () const |
Returns the number of non-internal edges the network contains. More... | |
OutputDevice * | getRouteOutput (const bool alternative=false) |
bool | hasDetector (ROEdge *edge) const |
bool | hasRestrictions () const |
void | mesoJoin (RODFDetectorCon &detectors, RODFDetectorFlows &flows) |
void | openOutput (const std::string &filename, const std::string altFilename, const std::string typeFilename) |
Opens the output for computed routes. More... | |
void | removeEmptyDetectors (RODFDetectorCon &detectors, RODFDetectorFlows &flows) |
void | reportEmptyDetectors (RODFDetectorCon &detectors, RODFDetectorFlows &flows) |
void | revalidateFlows (const RODFDetectorCon &detectors, RODFDetectorFlows &flows, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset) |
RODFNet (bool amInHighwayMode) | |
Constructor. More... | |
void | setRestrictionFound () |
~RODFNet () | |
Destructor. More... | |
Insertion and retrieval of graph parts | |
virtual bool | addEdge (ROEdge *edge) |
ROEdge * | getEdge (const std::string &name) const |
Retrieves an edge from the network. More... | |
void | addNode (RONode *node) |
RONode * | getNode (const std::string &id) const |
Retrieves an node from the network. More... | |
void | addBusStop (const std::string &id, SUMOVehicleParameter::Stop *stop) |
const SUMOVehicleParameter::Stop * | getBusStop (const std::string &id) const |
Retrieves a bus stop from the network. More... | |
Insertion and retrieval of vehicle types, vehicles, routes, and route definitions | |
bool | checkVType (const std::string &id) |
Checks whether the vehicle type (distribution) may be added. More... | |
virtual bool | addVehicleType (SUMOVTypeParameter *type) |
Adds a read vehicle type definition to the network. More... | |
bool | addVTypeDistribution (const std::string &id, RandomDistributor< SUMOVTypeParameter * > *vehTypeDistribution) |
Adds a vehicle type distribution. More... | |
SUMOVTypeParameter * | getVehicleTypeSecure (const std::string &id) |
Retrieves the named vehicle type. More... | |
bool | addRouteDef (RORouteDef *def) |
RORouteDef * | getRouteDef (const std::string &name) const |
Returns the named route definition. More... | |
virtual bool | addVehicle (const std::string &id, ROVehicle *veh) |
bool | addFlow (SUMOVehicleParameter *flow, const bool randomize) |
void | addPerson (const SUMOTime depart, const std::string desc) |
Processing stored vehicle definitions | |
SUMOTime | saveAndRemoveRoutesUntil (OptionsCont &options, SUMOAbstractRouter< ROEdge, ROVehicle > &router, SUMOTime time) |
Computes routes described by their definitions and saves them. More... | |
virtual bool | furtherStored () |
Returns the information whether further vehicles are stored. More... | |
Protected Types | |
typedef std::multimap< const SUMOTime, const std::string > | PersonMap |
Known persons. More... | |
typedef std::map< std::string, RandomDistributor< SUMOVTypeParameter * > * > | VTypeDistDictType |
Vehicle type distribution dictionary type. More... | |
Protected Member Functions | |
void | buildDetectorEdgeDependencies (RODFDetectorCon &dets) const |
void | checkFlows (SUMOTime time) |
bool | computeRoute (OptionsCont &options, SUMOAbstractRouter< ROEdge, ROVehicle > &router, const ROVehicle *const veh) |
void | computeRoutesFor (ROEdge *edge, RODFRouteDesc &base, int no, bool keepUnfoundEnds, bool keepShortestOnly, std::vector< ROEdge * > &visited, const RODFDetector &det, RODFRouteCont &into, const RODFDetectorCon &detectors, int maxFollowingLength, std::vector< ROEdge * > &seen) const |
ROEdge * | getDetectorEdge (const RODFDetector &det) const |
ROVehicleCont & | getVehicles () |
return vehicles for use by RouteAggregator More... | |
bool | hasApproached (ROEdge *edge) const |
bool | hasApproaching (ROEdge *edge) const |
bool | hasInBetweenDetectorsOnly (ROEdge *edge, const RODFDetectorCon &detectors) const |
bool | hasSourceDetector (ROEdge *edge, const RODFDetectorCon &detectors) const |
bool | isDestination (const RODFDetector &det, const RODFDetectorCon &detectors) const |
bool | isDestination (const RODFDetector &det, ROEdge *edge, std::vector< ROEdge * > &seen, const RODFDetectorCon &detectors) const |
bool | isFalseSource (const RODFDetector &det, const RODFDetectorCon &detectors) const |
bool | isFalseSource (const RODFDetector &det, ROEdge *edge, std::vector< ROEdge * > &seen, const RODFDetectorCon &detectors) const |
bool | isSource (const RODFDetector &det, const RODFDetectorCon &detectors, bool strict) const |
bool | isSource (const RODFDetector &det, ROEdge *edge, std::vector< ROEdge * > &seen, const RODFDetectorCon &detectors, bool strict) const |
void | revalidateFlows (const RODFDetector *detector, RODFDetectorFlows &flows, SUMOTime startTime, SUMOTime endTime, SUMOTime stepOffset) |
Protected Attributes | |
std::map< std::string, SUMOVehicleParameter::Stop * > | myBusStops |
Known bus stops. More... | |
bool | myDefaultVTypeMayBeDeleted |
Whether no vehicle type was loaded. More... | |
std::map< std::string, std::vector< SUMOTime > > | myDepartures |
Departure times for randomized flows. More... | |
unsigned int | myDiscardedRouteNo |
The number of discarded routes. More... | |
NamedObjectCont< ROEdge * > | myEdges |
Known edges. More... | |
NamedObjectCont< SUMOVehicleParameter * > | myFlows |
Known flows. More... | |
bool | myHaveRestrictions |
Whether the network contains edges which not all vehicles may pass. More... | |
NamedObjectCont< RONode * > | myNodes |
Known nodes. More... | |
int | myNumInternalEdges |
The number of internal edges in the dictionary. More... | |
PersonMap | myPersons |
unsigned int | myReadRouteNo |
The number of read routes. More... | |
OutputDevice * | myRouteAlternativesOutput |
The file to write the computed route alternatives into. More... | |
NamedObjectCont< RORouteDef * > | myRoutes |
Known routes. More... | |
OutputDevice * | myRoutesOutput |
The file to write the computed routes into. More... | |
OutputDevice * | myTypesOutput |
The file to write the vehicle types into. More... | |
ROVehicleCont | myVehicles |
Known vehicles. More... | |
NamedObjectCont< SUMOVTypeParameter * > | myVehicleTypes |
Known vehicle types. More... | |
std::set< std::string > | myVehIDs |
Known vehicle ids. More... | |
VTypeDistDictType | myVTypeDistDict |
A distribution of vehicle types (probability->vehicle type) More... | |
unsigned int | myWrittenRouteNo |
The number of written routes. More... | |
Private Attributes | |
bool | myAmInHighwayMode |
std::map< ROEdge *, std::vector< ROEdge * > > | myApproachedEdges |
Map of edge name->list of names of edges approached by this edge. More... | |
std::map< ROEdge *, std::vector< ROEdge * > > | myApproachingEdges |
Map of edge name->list of names of this edge approaching edges. More... | |
std::map< std::string, ROEdge * > | myDetectorEdges |
std::map< ROEdge *, std::vector< std::string >, idComp > | myDetectorsOnEdges |
std::vector< std::string > | myDisallowedEdges |
List of ids of edges that shall not be used. More... | |
size_t | myInBetweenNumber |
size_t | myInvalidNumber |
bool | myKeepTurnarounds |
size_t | mySinkNumber |
size_t | mySourceNumber |
|
protectedinherited |
|
protectedinherited |
RODFNet::RODFNet | ( | bool | amInHighwayMode | ) |
Constructor.
[in] | amInHighwayMode | Whether search for following edges shall stop at slow edges |
Definition at line 56 of file RODFNet.cpp.
References OptionsCont::getBool(), OptionsCont::getOptions(), OptionsCont::getStringVector(), myDisallowedEdges, and myKeepTurnarounds.
RODFNet::~RODFNet | ( | ) |
Destructor.
Definition at line 64 of file RODFNet.cpp.
|
inherited |
Definition at line 103 of file RONet.cpp.
References RONet::myBusStops, and WRITE_ERROR.
Referenced by RONetHandler::parseBusStop().
Definition at line 80 of file RONet.cpp.
References NamedObjectCont< T >::add(), ROEdge::ET_INTERNAL, Named::getID(), ROEdge::getType(), RONet::myEdges, RONet::myNumInternalEdges, and WRITE_ERROR.
Referenced by RONetHandler::parseDistrict(), and RONetHandler::parseEdge().
|
inherited |
Definition at line 239 of file RONet.cpp.
References NamedObjectCont< T >::add(), SUMOVehicleParameter::depart, SUMOVehicleParameter::id, RONet::myDepartures, RONet::myFlows, RandHelper::rand(), SUMOVehicleParameter::repetitionNumber, and SUMOVehicleParameter::repetitionOffset.
Referenced by RORouteHandler::closeFlow().
|
inherited |
Definition at line 94 of file RONet.cpp.
References NamedObjectCont< T >::add(), Named::getID(), RONet::myNodes, and WRITE_ERROR.
Referenced by RONetHandler::parseEdge(), and RONetHandler::parseJunction().
|
inherited |
Definition at line 253 of file RONet.cpp.
References RONet::myPersons.
Referenced by RORouteHandler::closePerson().
|
inherited |
Definition at line 114 of file RONet.cpp.
References NamedObjectCont< T >::add(), Named::getID(), and RONet::myRoutes.
Referenced by RORouteHandler::closeRoute(), and RORouteHandler::closeRouteDistribution().
Definition at line 227 of file RONet.cpp.
References ROVehicleCont::add(), RONet::myReadRouteNo, RONet::myVehicles, RONet::myVehIDs, and WRITE_ERROR.
Referenced by RONet::checkFlows(), and RORouteHandler::closeVehicle().
|
virtualinherited |
Adds a read vehicle type definition to the network.
If the vehicle type definition is already known (another one with the same id exists), false is returned, and the vehicle type is deleted.
[in] | def | The vehicle type to add |
Definition at line 204 of file RONet.cpp.
References NamedObjectCont< T >::add(), RONet::checkVType(), SUMOVTypeParameter::id, RONet::myVehicleTypes, and WRITE_ERROR.
Referenced by RONet::getVehicleTypeSecure(), and RORouteHandler::myEndElement().
|
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.
[in] | id | The id of the distribution to add |
[in] | vehTypeDistribution | The vehicle type distribution to add |
Definition at line 217 of file RONet.cpp.
References RONet::checkVType(), and RONet::myVTypeDistDict.
Referenced by RORouteHandler::closeVehicleTypeDistribution().
void RODFNet::buildApproachList | ( | ) |
Definition at line 69 of file RODFNet.cpp.
References RONet::getEdgeMap(), ROEdge::getFollower(), ROEdge::getFromNode(), Named::getID(), ROEdge::getNoFollowing(), ROEdge::getToNode(), myApproachedEdges, myApproachingEdges, myDisallowedEdges, and myKeepTurnarounds.
void RODFNet::buildDetectorDependencies | ( | RODFDetectorCon & | detectors | ) |
Definition at line 1007 of file RODFNet.cpp.
References RODFDetector::addPriorDetector(), buildDetectorEdgeDependencies(), RODFDetectorCon::getDetector(), RODFDetectorCon::getModifiableDetector(), RODFDetector::getRouteVector(), RODFDetector::hasRoutes(), myDetectorEdges, and myDetectorsOnEdges.
Referenced by startComputation().
|
protected |
Definition at line 101 of file RODFNet.cpp.
References getDetectorEdge(), RODFDetectorCon::getDetectors(), myDetectorEdges, and myDetectorsOnEdges.
Referenced by buildDetectorDependencies(), buildRoutes(), computeTypes(), and mesoJoin().
void RODFNet::buildEdgeFlowMap | ( | const RODFDetectorFlows & | flows, |
const RODFDetectorCon & | detectors, | ||
SUMOTime | startTime, | ||
SUMOTime | endTime, | ||
SUMOTime | stepOffset | ||
) |
Definition at line 934 of file RODFNet.cpp.
References FlowDef::fLKW, RODFDetectorCon::getDetector(), RODFDetectorFlows::getFlowDefs(), Named::getID(), RODFDetector::getPos(), ROEdge::getSpeed(), FlowDef::isLKW, RODFDetectorFlows::knows(), myDetectorsOnEdges, FlowDef::qLKW, FlowDef::qPKW, SUMOReal, FlowDef::vLKW, FlowDef::vPKW, and WRITE_MESSAGE.
Referenced by startComputation().
void RODFNet::buildRoutes | ( | RODFDetectorCon & | det, |
bool | keepUnfoundEnds, | ||
bool | includeInBetween, | ||
bool | keepShortestOnly, | ||
int | maxFollowingLength | ||
) | const |
!!;
!!routes->removeIllegal(illegals);
!!;
Definition at line 346 of file RODFNet.cpp.
References BETWEEN_DETECTOR, buildDetectorEdgeDependencies(), computeRoutesFor(), RODFRouteDesc::distance, RODFRouteDesc::distance2Last, RODFRouteDesc::duration2Last, RODFRouteDesc::duration_2, RODFRouteDesc::edges2Pass, RODFRouteDesc::endDetectorEdge, RODFRouteDesc::factor, RODFRouteCont::get(), RODFDetectorCon::getDetector(), getDetectorEdge(), RODFDetectorCon::getDetectors(), ROEdge::getLength(), ROEdge::getSpeed(), RODFDetector::getType(), RODFRouteDesc::lastDetectorEdge, myDetectorsOnEdges, RODFRouteDesc::overallProb, and SUMOReal.
Referenced by startComputation().
|
protectedinherited |
Definition at line 298 of file RONet.cpp.
References RONet::addVehicle(), RORouteDef::copy(), DELTA_T, SUMOVehicleParameter::depart, NamedObjectCont< T >::erase(), NamedObjectCont< T >::getMyMap(), RONet::getRouteDef(), RONet::getVehicleTypeSecure(), SUMOVehicleParameter::id, RONet::myDepartures, RONet::myFlows, SUMOVehicleParameter::repetitionNumber, SUMOVehicleParameter::repetitionOffset, SUMOVehicleParameter::repetitionsDone, SUMOVehicleParameter::routeid, toString(), and SUMOVehicleParameter::vtypeid.
Referenced by RONet::saveAndRemoveRoutesUntil().
|
inherited |
Checks whether the vehicle type (distribution) may be added.
This method checks also whether the default type may still be replaced
[in] | id | The id of the vehicle type (distribution) to add |
Definition at line 186 of file RONet.cpp.
References DEFAULT_VTYPE_ID, NamedObjectCont< T >::get(), RONet::myDefaultVTypeMayBeDeleted, RONet::myVehicleTypes, RONet::myVTypeDistDict, and NamedObjectCont< T >::remove().
Referenced by RONet::addVehicleType(), and RONet::addVTypeDistribution().
|
inherited |
closes the file output for computed routes
Definition at line 139 of file RONet.cpp.
References OutputDevice::close(), RONet::myRouteAlternativesOutput, RONet::myRoutesOutput, and RONet::myTypesOutput.
Referenced by computeRoutes().
|
protectedinherited |
Definition at line 259 of file RONet.cpp.
References RORouteDef::addAlternative(), RORouteDef::buildCurrentRoute(), OptionsCont::getBool(), ROVehicle::getDepartureTime(), MsgHandler::getErrorInstance(), ROVehicle::getID(), OptionsCont::getOptions(), ROVehicle::getRouteDefinition(), MsgHandler::getWarningInstance(), MsgHandler::inform(), ReferencedItem::isSaved(), RORoute::recheckForLoops(), and RORoute::size().
Referenced by RONet::saveAndRemoveRoutesUntil().
|
protected |
!!! //toDiscard.push_back(current);
!!
Definition at line 187 of file RODFNet.cpp.
References RODFRouteCont::addRouteDesc(), RODFRouteDesc::distance, RODFRouteDesc::distance2Last, RODFRouteDesc::duration2Last, RODFRouteDesc::duration_2, RODFRouteDesc::edges2Pass, RODFRouteDesc::endDetectorEdge, RODFRouteDesc::factor, getDetectorEdge(), OptionsCont::getFloat(), Named::getID(), OptionsCont::getOptions(), ROEdge::getSpeed(), hasApproached(), hasDetector(), hasInBetweenDetectorsOnly(), hasSourceDetector(), RODFRouteDesc::lastDetectorEdge, myAmInHighwayMode, myApproachedEdges, RODFRouteDesc::passedNo, RODFRouteCont::removeRouteDesc(), SUMOReal, UNUSED_PARAMETER, and WRITE_WARNING.
Referenced by buildRoutes().
void RODFNet::computeTypes | ( | RODFDetectorCon & | dets, |
bool | sourcesStrict | ||
) | const |
Definition at line 114 of file RODFNet.cpp.
References BETWEEN_DETECTOR, buildDetectorEdgeDependencies(), DISCARDED_DETECTOR, RODFDetectorCon::getDetectors(), isDestination(), isFalseSource(), isSource(), myInBetweenNumber, myInvalidNumber, mySinkNumber, mySourceNumber, PROGRESS_BEGIN_MESSAGE, PROGRESS_DONE_MESSAGE, SINK_DETECTOR, SOURCE_DETECTOR, toString(), TYPE_NOT_DEFINED, and WRITE_MESSAGE.
Referenced by startComputation().
|
virtualinherited |
Returns the information whether further vehicles are stored.
Definition at line 389 of file RONet.cpp.
References RONet::myFlows, RONet::myPersons, RONet::myVehicles, and NamedObjectCont< T >::size().
Referenced by ROLoader::openRoutes(), and ROLoader::processRoutes().
SUMOReal RODFNet::getAbsPos | ( | const RODFDetector & | det | ) | const |
Definition at line 676 of file RODFNet.cpp.
References getDetectorEdge(), ROEdge::getLength(), and RODFDetector::getPos().
Referenced by isDestination(), and isSource().
|
inlineinherited |
Retrieves a bus stop from the network.
[in] | name | The name of the stop to retrieve |
Definition at line 145 of file RONet.h.
References RONet::myBusStops.
Referenced by RORouteHandler::addStop().
|
protected |
Definition at line 631 of file RODFNet.cpp.
References RONet::getEdge(), Named::getID(), and RODFDetector::getLaneID().
Referenced by buildDetectorEdgeDependencies(), buildRoutes(), computeRoutesFor(), getAbsPos(), isDestination(), isFalseSource(), isSource(), and revalidateFlows().
const std::vector< std::string > & RODFNet::getDetectorList | ( | ROEdge * | edge | ) | const |
Definition at line 670 of file RODFNet.cpp.
References myDetectorsOnEdges.
|
inlineinherited |
Retrieves an edge from the network.
This is not very pretty, but necessary, though, as routes run over instances, not over ids.
[in] | name | The name of the edge to retrieve |
Definition at line 102 of file RONet.h.
References NamedObjectCont< T >::get(), and RONet::myEdges.
Referenced by ROLoader::EdgeFloatTimeLineRetriever_EdgeTravelTime::addEdgeWeight(), RORouteHandler::addStop(), ROVehicle::addStop(), ROJTRTurnDefLoader::addToEdge(), ROJTRTurnDefLoader::beginFromEdge(), getDetectorEdge(), loadJTRDefinitions(), RONetHandler::myEndElement(), RODFDetectorHandler::myStartElement(), ROJTRTurnDefLoader::myStartElement(), RONetHandler::parseBusStop(), RONetHandler::parseConnection(), RONetHandler::parseDistrict(), RONetHandler::parseDistrictEdge(), RORouteHandler::parseEdges(), RORouteHandler::parseFromViaTo(), AGActivityGenHandler::parseStreets(), RORouteHandler::routePedestrian(), RODFDetectorCon::writeEmitters(), and RODFDetectorCon::writeSpeedTrigger().
|
inherited |
Definition at line 407 of file RONet.cpp.
References NamedObjectCont< T >::getMyMap(), and RONet::myEdges.
Referenced by buildApproachList(), AGCity::completeStreets(), initNet(), and ROLoader::loadWeights().
|
inherited |
Returns the number of edges the network contains.
Definition at line 395 of file RONet.cpp.
References RONet::myEdges, and NamedObjectCont< T >::size().
Referenced by computeRoutes().
|
inherited |
Returns the number of non-internal edges the network contains.
Definition at line 401 of file RONet.cpp.
References RONet::myEdges, RONet::myNumInternalEdges, and NamedObjectCont< T >::size().
Referenced by main().
|
inlineinherited |
Retrieves an node from the network.
[in] | name | The name of the node to retrieve |
Definition at line 124 of file RONet.h.
References NamedObjectCont< T >::get(), and RONet::myNodes.
Referenced by RONetHandler::myEndElement(), RONetHandler::parseEdge(), and RONetHandler::parseJunction().
|
inlineinherited |
Returns the named route definition.
[in] | name | The name of the route definition to retrieve |
Check whether a const pointer may be returned
Rename myRoutes to myRouteDefinitions
Definition at line 231 of file RONet.h.
References NamedObjectCont< T >::get(), and RONet::myRoutes.
Referenced by RONet::checkFlows(), RORouteHandler::closeFlow(), RORouteHandler::closeRoute(), RORouteHandler::closeVehicle(), RORouteHandler::openRoute(), and RORouteHandler::openRouteDistribution().
|
inlineinherited |
Definition at line 327 of file RONet.h.
References RONet::myRouteAlternativesOutput, and RONet::myRoutesOutput.
|
inlineprotectedinherited |
return vehicles for use by RouteAggregator
Definition at line 339 of file RONet.h.
References RONet::myVehicles.
|
inherited |
Retrieves the named vehicle type.
If the named vehicle type was not added to the net before, a default vehicle type which consists of the id only is generated, added to the net and returned.
Only if the name is "", 0 is returned.
[in] | id | The id of the vehicle type to return |
Definition at line 157 of file RONet.cpp.
References RONet::addVehicleType(), DEFAULT_VTYPE_ID, NamedObjectCont< T >::get(), RONet::myDefaultVTypeMayBeDeleted, RONet::myVehicleTypes, RONet::myVTypeDistDict, SUMOVTypeParameter::onlyReferenced, and SVC_IGNORING.
Referenced by RONet::checkFlows(), RORouteHandler::closeFlow(), RORouteHandler::closeVehicle(), computeRoutes(), and RORouteHandler::openVehicleTypeDistribution().
Definition at line 652 of file RODFNet.cpp.
References myApproachedEdges.
Referenced by computeRoutesFor(), and isDestination().
Definition at line 643 of file RODFNet.cpp.
References myApproachingEdges.
Referenced by isSource().
Definition at line 661 of file RODFNet.cpp.
References myDetectorsOnEdges.
Referenced by RODFDetector::buildDestinationDistribution(), computeRoutesFor(), RODFDetector::computeSplitProbabilities(), isDestination(), isFalseSource(), isSource(), and revalidateFlows().
|
protected |
Definition at line 154 of file RODFNet.cpp.
References BETWEEN_DETECTOR, RODFDetectorCon::getDetector(), RODFDetector::getType(), and myDetectorsOnEdges.
Referenced by computeRoutesFor().
|
inherited |
Definition at line 413 of file RONet.cpp.
References RONet::myHaveRestrictions.
Referenced by computeRoutes().
|
protected |
Definition at line 170 of file RODFNet.cpp.
References RODFDetectorCon::getDetector(), RODFDetector::getType(), myDetectorsOnEdges, and SOURCE_DETECTOR.
Referenced by computeRoutesFor().
|
protected |
Definition at line 699 of file RODFNet.cpp.
References getDetectorEdge().
Referenced by computeTypes(), and isDestination().
|
protected |
Definition at line 809 of file RODFNet.cpp.
References getAbsPos(), RODFDetectorCon::getDetector(), getDetectorEdge(), Named::getID(), ROEdge::getSpeed(), hasApproached(), hasDetector(), isDestination(), myAmInHighwayMode, myApproachedEdges, myDetectorEdges, myDetectorsOnEdges, and WRITE_WARNING.
|
protected |
Definition at line 692 of file RODFNet.cpp.
References getDetectorEdge().
Referenced by computeTypes(), and isFalseSource().
|
protected |
Definition at line 885 of file RODFNet.cpp.
References BETWEEN_DETECTOR, RODFDetectorCon::getDetector(), getDetectorEdge(), Named::getID(), ROEdge::getSpeed(), RODFDetector::getType(), hasDetector(), isFalseSource(), myAmInHighwayMode, myApproachedEdges, myDetectorsOnEdges, SINK_DETECTOR, SOURCE_DETECTOR, and WRITE_WARNING.
|
protected |
Definition at line 684 of file RODFNet.cpp.
References getDetectorEdge().
Referenced by computeTypes(), and isSource().
|
protected |
Definition at line 706 of file RODFNet.cpp.
References getAbsPos(), RODFDetectorCon::getDetector(), getDetectorEdge(), Named::getID(), ROEdge::getSpeed(), hasApproaching(), hasDetector(), isSource(), myAmInHighwayMode, myApproachingEdges, myDetectorEdges, myDetectorsOnEdges, and WRITE_WARNING.
void RODFNet::mesoJoin | ( | RODFDetectorCon & | detectors, |
RODFDetectorFlows & | flows | ||
) |
Definition at line 1054 of file RODFNet.cpp.
References buildDetectorEdgeDependencies(), RODFDetectorCon::getDetector(), RODFDetector::getPos(), RODFDetectorFlows::mesoJoin(), RODFDetectorCon::mesoJoin(), myDetectorsOnEdges, and SUMOReal.
|
inherited |
Opens the output for computed routes.
If the second parameter is set, a second file for route alternatives will be opened. If one of the file outputs can not be build, an IOError is thrown.
[in] | filename | The (base) name of the file(s) to create |
[in] | altFilename | The name of the file for writing alternatives, "" means no alternatives |
[in] | filename | The name of the vtype file to create, "" means no separate types |
Definition at line 120 of file RONet.cpp.
References OutputDevice::getDevice(), RONet::myRouteAlternativesOutput, RONet::myRoutesOutput, RONet::myTypesOutput, SUMO_TAG_ROUTES, OutputDevice::writeAttr(), OutputDevice::writeHeader(), and OutputDevice::writeXMLHeader().
Referenced by computeRoutes().
void RODFNet::removeEmptyDetectors | ( | RODFDetectorCon & | detectors, |
RODFDetectorFlows & | flows | ||
) |
Definition at line 590 of file RODFNet.cpp.
References RODFDetectorCon::getDetectors(), RODFDetectorFlows::knows(), RODFDetectorCon::removeDetector(), RODFDetectorFlows::removeFlow(), and WRITE_MESSAGE.
Referenced by startComputation().
void RODFNet::reportEmptyDetectors | ( | RODFDetectorCon & | detectors, |
RODFDetectorFlows & | flows | ||
) |
Definition at line 613 of file RODFNet.cpp.
References RODFDetectorCon::getDetectors(), RODFDetectorFlows::knows(), and WRITE_MESSAGE.
Referenced by startComputation().
void RODFNet::revalidateFlows | ( | const RODFDetectorCon & | detectors, |
RODFDetectorFlows & | flows, | ||
SUMOTime | startTime, | ||
SUMOTime | endTime, | ||
SUMOTime | stepOffset | ||
) |
Definition at line 576 of file RODFNet.cpp.
References RODFDetectorCon::getDetectors().
Referenced by startComputation().
|
protected |
Definition at line 428 of file RODFNet.cpp.
References RODFNet::IterationEdge::depth, RODFNet::IterationEdge::edge, getDetectorEdge(), RODFDetectorFlows::getFlowDefs(), RODFEdge::getFlows(), Named::getID(), hasDetector(), RODFDetectorFlows::knows(), myApproachedEdges, myApproachingEdges, FlowDef::qLKW, FlowDef::qPKW, RODFDetectorFlows::setFlows(), SUMOReal, FlowDef::vLKW, FlowDef::vPKW, and WRITE_WARNING.
|
inherited |
Computes routes described by their definitions and saves them.
As long a vehicle with a departure time not larger than the given exists, its route is computed and it is written and removed from the internal container.
[in] | options | The options used during this process |
[in] | router | The router to use for routes computation |
[in] | options | The time until which route definitions shall be processed |
Definition at line 335 of file RONet.cpp.
References RONet::checkFlows(), RONet::computeRoute(), ROVehicleCont::erase(), NamedObjectCont< T >::erase(), OptionsCont::getBool(), ROVehicle::getDepartureTime(), Named::getID(), ROVehicle::getID(), OptionsCont::getInt(), ROVehicle::getRouteDefinition(), ROVehicleCont::getTopVehicle(), MIN2(), RONet::myDiscardedRouteNo, RONet::myPersons, RONet::myReadRouteNo, RONet::myRouteAlternativesOutput, RONet::myRoutes, RONet::myRoutesOutput, RONet::myTypesOutput, RONet::myVehicles, RONet::myWrittenRouteNo, ROVehicle::saveAllAsXML(), NamedObjectCont< T >::size(), SUMOTime_MAX, toString(), WRITE_MESSAGE, and OutputDevice::writePreformattedTag().
Referenced by ROLoader::processRoutes().
|
inherited |
Definition at line 419 of file RONet.cpp.
References RONet::myHaveRestrictions.
Referenced by RONetHandler::parseLane().
|
private |
Definition at line 169 of file RODFNet.h.
Referenced by computeRoutesFor(), isDestination(), isFalseSource(), and isSource().
Map of edge name->list of names of edges approached by this edge.
Definition at line 164 of file RODFNet.h.
Referenced by buildApproachList(), computeRoutesFor(), hasApproached(), isDestination(), isFalseSource(), and revalidateFlows().
Map of edge name->list of names of this edge approaching edges.
Definition at line 161 of file RODFNet.h.
Referenced by buildApproachList(), hasApproaching(), isSource(), and revalidateFlows().
|
protectedinherited |
Known bus stops.
Definition at line 358 of file RONet.h.
Referenced by RONet::addBusStop(), and RONet::getBusStop().
|
protectedinherited |
Whether no vehicle type was loaded.
Definition at line 369 of file RONet.h.
Referenced by RONet::checkVType(), and RONet::getVehicleTypeSecure().
|
protectedinherited |
Departure times for randomized flows.
Definition at line 385 of file RONet.h.
Referenced by RONet::addFlow(), and RONet::checkFlows().
|
mutableprivate |
Definition at line 167 of file RODFNet.h.
Referenced by buildDetectorDependencies(), buildDetectorEdgeDependencies(), isDestination(), and isSource().
Definition at line 166 of file RODFNet.h.
Referenced by buildDetectorDependencies(), buildDetectorEdgeDependencies(), buildEdgeFlowMap(), buildRoutes(), getDetectorList(), hasDetector(), hasInBetweenDetectorsOnly(), hasSourceDetector(), isDestination(), isFalseSource(), isSource(), and mesoJoin().
|
private |
List of ids of edges that shall not be used.
Definition at line 173 of file RODFNet.h.
Referenced by buildApproachList(), and RODFNet().
|
protectedinherited |
The number of discarded routes.
Definition at line 400 of file RONet.h.
Referenced by RONet::saveAndRemoveRoutesUntil().
|
protectedinherited |
Known edges.
Definition at line 355 of file RONet.h.
Referenced by RONet::addEdge(), RONet::getEdge(), RONet::getEdgeMap(), RONet::getEdgeNo(), RONet::getEdgeNoWithoutInternal(), and RONet::~RONet().
|
protectedinherited |
Known flows.
Definition at line 378 of file RONet.h.
Referenced by RONet::addFlow(), RONet::checkFlows(), and RONet::furtherStored().
|
protectedinherited |
Whether the network contains edges which not all vehicles may pass.
Definition at line 406 of file RONet.h.
Referenced by RONet::hasRestrictions(), and RONet::setRestrictionFound().
|
mutableprivate |
Definition at line 170 of file RODFNet.h.
Referenced by computeTypes().
|
mutableprivate |
Definition at line 170 of file RODFNet.h.
Referenced by computeTypes().
|
private |
Definition at line 176 of file RODFNet.h.
Referenced by buildApproachList(), and RODFNet().
|
protectedinherited |
Known nodes.
Definition at line 352 of file RONet.h.
Referenced by RONet::addNode(), RONet::getNode(), and RONet::~RONet().
|
protectedinherited |
The number of internal edges in the dictionary.
Definition at line 409 of file RONet.h.
Referenced by RONet::addEdge(), and RONet::getEdgeNoWithoutInternal().
|
protectedinherited |
Definition at line 382 of file RONet.h.
Referenced by RONet::addPerson(), RONet::furtherStored(), and RONet::saveAndRemoveRoutesUntil().
|
protectedinherited |
The number of read routes.
Definition at line 397 of file RONet.h.
Referenced by RONet::addVehicle(), and RONet::saveAndRemoveRoutesUntil().
|
protectedinherited |
The file to write the computed route alternatives into.
Definition at line 391 of file RONet.h.
Referenced by RONet::closeOutput(), RONet::getRouteOutput(), RONet::openOutput(), and RONet::saveAndRemoveRoutesUntil().
|
protectedinherited |
Known routes.
Definition at line 372 of file RONet.h.
Referenced by RONet::addRouteDef(), RONet::getRouteDef(), RONet::saveAndRemoveRoutesUntil(), and RONet::~RONet().
|
protectedinherited |
The file to write the computed routes into.
Definition at line 388 of file RONet.h.
Referenced by RONet::closeOutput(), RONet::getRouteOutput(), RONet::openOutput(), and RONet::saveAndRemoveRoutesUntil().
|
mutableprivate |
Definition at line 170 of file RODFNet.h.
Referenced by computeTypes().
|
mutableprivate |
Definition at line 170 of file RODFNet.h.
Referenced by computeTypes().
|
protectedinherited |
The file to write the vehicle types into.
Definition at line 394 of file RONet.h.
Referenced by RONet::closeOutput(), RONet::openOutput(), and RONet::saveAndRemoveRoutesUntil().
|
protectedinherited |
Known vehicles.
Definition at line 375 of file RONet.h.
Referenced by RONet::addVehicle(), RONet::furtherStored(), RONet::getVehicles(), RONet::saveAndRemoveRoutesUntil(), and RONet::~RONet().
|
protectedinherited |
Known vehicle types.
Definition at line 361 of file RONet.h.
Referenced by RONet::addVehicleType(), RONet::checkVType(), RONet::getVehicleTypeSecure(), RONet::RONet(), and RONet::~RONet().
|
protectedinherited |
|
protectedinherited |
A distribution of vehicle types (probability->vehicle type)
Definition at line 366 of file RONet.h.
Referenced by RONet::addVTypeDistribution(), RONet::checkVType(), and RONet::getVehicleTypeSecure().
|
protectedinherited |
The number of written routes.
Definition at line 403 of file RONet.h.
Referenced by RONet::saveAndRemoveRoutesUntil().