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

A route definition which has some alternatives, already. More...

#include <RORouteDef_Alternatives.h>

Inheritance diagram for RORouteDef_Alternatives:
RORouteDef ReferencedItem Named

Data Structures

struct  ComparatorProbability

Public Member Functions

void addAlternative (SUMOAbstractRouter< ROEdge, ROVehicle > &router, const ROVehicle *const, RORoute *current, SUMOTime begin)
 Adds a build alternative.
virtual void addLoadedAlternative (RORoute *alternative)
 Adds an alternative loaded from the file An alternative may also be generated whicle DUA.
RORoutebuildCurrentRoute (SUMOAbstractRouter< ROEdge, ROVehicle > &router, SUMOTime begin, const ROVehicle &veh) const
 Triggers building of the complete route (via preComputeCurrentRoute) or returns precomputed route.
RORouteDefcopy (const std::string &id) const
 Returns a copy of the route definition.
const RGBColorgetColor () const
 Returns the color of the route.
const ROEdgegetDestination () const
const std::string & getID () const
 Returns the id.
void invalidateLast ()
bool isSaved () const
 Returns the information whether this item was already saved.
void markSaved ()
 Marks the item as saved.
void preComputeCurrentRoute (SUMOAbstractRouter< ROEdge, ROVehicle > &router, SUMOTime begin, const ROVehicle &veh) const
 Build the next route.
void removeLast ()
 RORouteDef_Alternatives (const std::string &id, unsigned int lastUsed, const int maxRoutes, const bool keepRoutes, const bool skipRouteCalculation)
 Constructor.
void setID (const std::string &newID)
 resets the id
virtual OutputDevicewriteXMLDefinition (SUMOAbstractRouter< ROEdge, ROVehicle > &router, OutputDevice &dev, const ROVehicle *const veh, bool asAlternatives, bool withExitTimes) const
 Saves the built route / route alternatives.
virtual ~RORouteDef_Alternatives ()
 Destructor.

Protected Member Functions

const RGBColorcopyColorIfGiven () const

Protected Attributes

const RGBColor *const myColor
 The color the route shall have.
std::string myID
 The name of the object.
RORoutemyPrecomputed
 precomputed route for out-of-order computation

Private Types

typedef std::vector< RORoute * > AlternativesVector
 Definition of the storage for alternatives.

Private Member Functions

int findRoute (RORoute *opt) const
 Searches for the route within the list of alternatives.
RORouteDef_Alternativesoperator= (const RORouteDef_Alternatives &src)
 Invalidated assignment operator.
 RORouteDef_Alternatives (const RORouteDef_Alternatives &src)
 Invalidated copy constructor.

Private Attributes

AlternativesVector myAlternatives
 The alternatives.
const bool myKeepRoutes
 Information whether all routes should be saved.
int myLastUsed
 Index of the route used within the last step.
const int myMaxRouteNumber
 The maximum route number.
bool myNewRoute
 Information whether a new route was generated.
const bool mySkipRouteCalculation
 Information whether new routes should be calculated.

Detailed Description

A route definition which has some alternatives, already.

Definition at line 52 of file RORouteDef_Alternatives.h.

Member Typedef Documentation

Definition of the storage for alternatives.

Definition at line 106 of file RORouteDef_Alternatives.h.

Constructor & Destructor Documentation

RORouteDef_Alternatives::RORouteDef_Alternatives ( const std::string &  id,
unsigned int  lastUsed,
const int  maxRoutes,
const bool  keepRoutes,
const bool  skipRouteCalculation 
)

Constructor.

Definition at line 49 of file RORouteDef_Alternatives.cpp.

Referenced by copy().

RORouteDef_Alternatives::~RORouteDef_Alternatives ( )
virtual

Destructor.

Definition at line 58 of file RORouteDef_Alternatives.cpp.

References myAlternatives.

RORouteDef_Alternatives::RORouteDef_Alternatives ( const RORouteDef_Alternatives src)
private

Invalidated copy constructor.

Member Function Documentation

void RORouteDef_Alternatives::addLoadedAlternative ( RORoute alternative)
virtual

Adds an alternative loaded from the file An alternative may also be generated whicle DUA.

Definition at line 66 of file RORouteDef_Alternatives.cpp.

References myAlternatives.

Referenced by copy(), and RORDLoader_SUMOBase::myCharacters().

RORoute * RORouteDef::buildCurrentRoute ( SUMOAbstractRouter< ROEdge, ROVehicle > &  router,
SUMOTime  begin,
const ROVehicle veh 
) const
inherited

Triggers building of the complete route (via preComputeCurrentRoute) or returns precomputed route.

Definition at line 77 of file RORouteDef.cpp.

References RORouteDef::myPrecomputed, and RORouteDef::preComputeCurrentRoute().

Referenced by RONet::computeRoute().

RORouteDef * RORouteDef_Alternatives::copy ( const std::string &  id) const
virtual

Returns a copy of the route definition.

Implements RORouteDef.

Definition at line 193 of file RORouteDef_Alternatives.cpp.

References addLoadedAlternative(), myAlternatives, myKeepRoutes, myLastUsed, myMaxRouteNumber, mySkipRouteCalculation, and RORouteDef_Alternatives().

int RORouteDef_Alternatives::findRoute ( RORoute opt) const
private

Searches for the route within the list of alternatives.

Definition at line 104 of file RORouteDef_Alternatives.cpp.

References RORoute::getEdgeVector(), and myAlternatives.

Referenced by preComputeCurrentRoute().

const RGBColor* RORouteDef::getColor ( ) const
inlineinherited

Returns the color of the route.

Definition at line 98 of file RORouteDef.h.

References RORouteDef::myColor.

const ROEdge * RORouteDef_Alternatives::getDestination ( ) const
virtual

Implements RORouteDef.

Definition at line 260 of file RORouteDef_Alternatives.cpp.

References myAlternatives.

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

Returns the id.

Returns
The stored id

Reimplemented in MS_E2_ZS_CollectorOverLanes.

Definition at line 61 of file Named.h.

References Named::myID.

Referenced by MSDetectorControl::add(), ShapeContainer::add(), addAlternative(), MSNet::addBusStop(), NBLoadedSUMOTLDef::addConnection(), NLHandler::addConnection(), NIImporter_OpenDrive::addE2EConnectionsSecure(), RONet::addNode(), NIImporter_SUMO::addPhase(), RONet::addRouteDef(), NBDistrict::addSink(), NBDistrict::addSource(), MSRouteHandler::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), NIVissimDisturbance::addToNode(), MSVehicle::addTraciStop(), NIVisumTL::build(), MS_E2_ZS_CollectorOverLanes::buildCollector(), NIImporter_VISUM::buildDistrictNode(), NIVissimConnection::buildEdgeConnections(), NBEdge::buildInnerEdges(), NIVissimEdge::buildNBEdge(), NBNodeCont::buildOffRamp(), NBNodeCont::buildOnRamp(), ODDistrictHandler::closeDistrict(), 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(), MSE3Collector::enter(), Command_SaveTLSSwitches::execute(), MSVTypeProbe::execute(), NBNodeCont::extract(), NBTrafficLightLogicCont::extract(), NBEdgeCont::extract(), MSNet::getBusStopID(), 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(), MSLane::moveCritical(), MSVehicle::MSVehicle(), RORDLoader_SUMOBase::myCharacters(), 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(), 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()(), NIImporter_VISUM::parse_EdgePolys(), NIImporter_VISUM::parse_Lanes(), NIImporter_VISUM::parse_LanesConnections(), NIImporter_VISUM::parse_Turns(), NIImporter_VISUM::parse_TurnsToSignalGroups(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), NIXMLConnectionsHandler::parseLaneBound(), NBLoadedTLDef::SignalGroup::patchTYellow(), RORouteDef_Complete::preComputeCurrentRoute(), TraCIServerAPI_Lane::processGet(), TraCIServerAPI_TLS::processGet(), TraCIServerAPI_InductionLoop::processGet(), TraCIServerAPI_Vehicle::processGet(), NWWriter_SUMO::prohibitionConnection(), NBLoadedTLDef::SignalGroup::remapIncoming(), NBLoadedTLDef::SignalGroup::remapOutgoing(), NBLoadedSUMOTLDef::removeConnection(), NBNode::removeSelfLoops(), NBEdgeCont::removeUnwishedEdges(), NBNodeCont::removeUnwishedNodes(), NBNodeCont::rename(), NBEdgeCont::rename(), NBConnection::replaceFrom(), MSBaseVehicle::replaceRouteEdges(), NBConnection::replaceTo(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), NBNodeCont::setAsTLControlled(), NBEdge::setControllingTLInformation(), MSLane::setCritical(), NIXMLEdgesHandler::setNodes(), NBOwnTLDef::setTLControllingInformation(), NBLoadedSUMOTLDef::setTLControllingInformation(), NBLoadedTLDef::setTLControllingInformation(), NBEdgeCont::splitAt(), RORDLoader_SUMOBase::startRoute(), NBEdge::startShapeAt(), NIXMLConnectionsHandler::validateLaneInfo(), MSInstantInductLoop::write(), NWWriter_SUMO::writeConnection(), NWWriter_SUMO::writeDistrict(), NWWriter_SUMO::writeEdge(), MSMeanData::writeEdge(), NWWriter_XML::writeEdgesAndConnections(), NWWriter_SUMO::writeInternalConnections(), NWWriter_SUMO::writeJunction(), NWWriter_OpenDrive::writeNetwork(), NWWriter_XML::writeNodes(), MSInductLoop::writeTypedXMLOutput(), MSRouteProbe::writeXMLOutput(), and MSE2Collector::writeXMLOutput().

void RORouteDef_Alternatives::invalidateLast ( )

Definition at line 204 of file RORouteDef_Alternatives.cpp.

References myLastUsed.

bool ReferencedItem::isSaved ( ) const
inlineinherited

Returns the information whether this item was already saved.

Returns
Whether this item was saved

Definition at line 59 of file ReferencedItem.h.

References ReferencedItem::myWasSaved.

Referenced by RONet::computeRoute(), and ROVehicle::saveAllAsXML().

void ReferencedItem::markSaved ( )
inlineinherited

Marks the item as saved.

Definition at line 66 of file ReferencedItem.h.

References ReferencedItem::myWasSaved.

RORouteDef_Alternatives& RORouteDef_Alternatives::operator= ( const RORouteDef_Alternatives src)
private

Invalidated assignment operator.

void RORouteDef_Alternatives::removeLast ( )

Definition at line 210 of file RORouteDef_Alternatives.cpp.

References myAlternatives, and myLastUsed.

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

resets the id

Definition at line 67 of file Named.h.

References Named::myID.

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

OutputDevice & RORouteDef_Alternatives::writeXMLDefinition ( SUMOAbstractRouter< ROEdge, ROVehicle > &  router,
OutputDevice dev,
const ROVehicle *const  veh,
bool  asAlternatives,
bool  withExitTimes 
) const
virtual

Saves the built route / route alternatives.

Writes the route into the given stream.

Parameters
[in]devThe device to write the route into
[in]asAlternativesWhether the route shall be saved as route alternatives
Returns
The same device for further usage

Implements RORouteDef.

Definition at line 219 of file RORouteDef_Alternatives.cpp.

References OutputDevice::closeOpener(), OutputDevice::closeTag(), RORoute::getColor(), RORoute::getCosts(), ROVehicle::getDepartureTime(), RORoute::getEdgeVector(), RORoute::getProbability(), myAlternatives, RORouteDef::myColor, myLastUsed, OutputDevice::openTag(), OutputDevice::setPrecision(), STEPS2TIME, SUMO_ATTR_COLOR, SUMO_ATTR_COST, SUMO_ATTR_EDGES, SUMO_ATTR_LAST, SUMO_ATTR_PROB, SUMO_TAG_ROUTE, SUMO_TAG_ROUTE_DISTRIBUTION, SUMOReal, toString(), and OutputDevice::writeAttr().

Field Documentation

AlternativesVector RORouteDef_Alternatives::myAlternatives
private
const RGBColor* const RORouteDef::myColor
protectedinherited
const bool RORouteDef_Alternatives::myKeepRoutes
private

Information whether all routes should be saved.

Definition at line 115 of file RORouteDef_Alternatives.h.

Referenced by addAlternative(), and copy().

int RORouteDef_Alternatives::myLastUsed
mutableprivate

Index of the route used within the last step.

Definition at line 103 of file RORouteDef_Alternatives.h.

Referenced by addAlternative(), copy(), invalidateLast(), preComputeCurrentRoute(), removeLast(), and writeXMLDefinition().

const int RORouteDef_Alternatives::myMaxRouteNumber
private

The maximum route number.

Definition at line 112 of file RORouteDef_Alternatives.h.

Referenced by addAlternative(), and copy().

bool RORouteDef_Alternatives::myNewRoute
mutableprivate

Information whether a new route was generated.

Definition at line 100 of file RORouteDef_Alternatives.h.

Referenced by addAlternative(), and preComputeCurrentRoute().

RORoute* RORouteDef::myPrecomputed
mutableprotectedinherited
const bool RORouteDef_Alternatives::mySkipRouteCalculation
private

Information whether new routes should be calculated.

Definition at line 118 of file RORouteDef_Alternatives.h.

Referenced by copy(), and preComputeCurrentRoute().


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