Eclipse SUMO - Simulation of Urban MObility
|
The data loader. More...
#include <ROLoader.h>
Data Structures | |
class | EdgeFloatTimeLineRetriever_EdgeTravelTime |
Obtains edge travel times from a weights handler and stores them within the edges. More... | |
class | EdgeFloatTimeLineRetriever_EdgeWeight |
Obtains edge weights from a weights handler and stores them within the edges. More... | |
Public Member Functions | |
virtual void | loadNet (RONet &toFill, ROAbstractEdgeBuilder &eb) |
Loads the network. | |
bool | loadWeights (RONet &net, const std::string &optionName, const std::string &measure, const bool useLanes, const bool boundariesOverride) |
Loads the net weights. | |
void | openRoutes (RONet &net) |
Builds and opens all route loaders. | |
void | processRoutes (const SUMOTime start, const SUMOTime end, const SUMOTime increment, RONet &net, const RORouterProvider &provider) |
Loads routes from all previously build route loaders. | |
ROLoader (OptionsCont &oc, const bool emptyDestinationsAllowed, const bool logSteps) | |
Constructor. | |
virtual | ~ROLoader () |
Destructor. | |
Protected Member Functions | |
bool | openTypedRoutes (const std::string &optionName, RONet &net, const bool readAll=false) |
Opens route handler of the given type. | |
void | writeStats (const SUMOTime time, const SUMOTime start, const SUMOTime absNo, bool endGiven) |
Private Member Functions | |
ROLoader & | operator= (const ROLoader &src) |
Invalidated assignment operator. | |
ROLoader (const ROLoader &src) | |
Invalidated copy constructor. | |
Private Attributes | |
const bool | myEmptyDestinationsAllowed |
Information whether empty destinations are allowed. | |
SUMORouteLoaderControl | myLoaders |
List of route loaders. | |
const bool | myLogSteps |
Information whether the routing steps should be logged. | |
OptionsCont & | myOptions |
Options to use. | |
The data loader.
Loads the network and route descriptions using further classes.
Is capable to either load all routes in one step or go through them step wise.
Definition at line 53 of file ROLoader.h.
ROLoader::ROLoader | ( | OptionsCont & | oc, |
const bool | emptyDestinationsAllowed, | ||
const bool | logSteps | ||
) |
Constructor.
[in] | oc | The options to use |
[in] | emptyDestinationsAllowed | Whether trips may be given without destinations |
Definition at line 95 of file ROLoader.cpp.
|
virtual |
Destructor.
Definition at line 103 of file ROLoader.cpp.
|
private |
Invalidated copy constructor.
|
virtual |
Loads the network.
Definition at line 108 of file ROLoader.cpp.
References RONet::addJunctionTaz(), deprecatedVehicleClassesSeen, OptionsCont::exists(), OptionsCont::getBool(), RONet::getEdgeMap(), OptionsCont::getFloat(), OptionsCont::getString(), OptionsCont::getStringVector(), FileHelpers::isReadable(), OptionsCont::isSet(), myOptions, PROGRESS_BEGIN_MESSAGE, PROGRESS_DONE_MESSAGE, PROGRESS_FAILED_MESSAGE, XMLSubSys::runParser(), RONet::setBidiEdges(), GenericSAXHandler::setFileName(), TL, TLF, toString(), and WRITE_WARNINGF.
Referenced by initNet(), initNet(), and main().
bool ROLoader::loadWeights | ( | RONet & | net, |
const std::string & | optionName, | ||
const std::string & | measure, | ||
const bool | useLanes, | ||
const bool | boundariesOverride | ||
) |
Loads the net weights.
Definition at line 254 of file ROLoader.cpp.
References RONet::getEdgeMap(), OptionsCont::getStringVector(), OptionsCont::isUsableFileList(), myOptions, PROGRESS_BEGIN_MESSAGE, PROGRESS_DONE_MESSAGE, XMLSubSys::runParser(), TL, and WRITE_MESSAGE.
Referenced by initNet().
void ROLoader::openRoutes | ( | RONet & | net | ) |
Builds and opens all route loaders.
Definition at line 163 of file ROLoader.cpp.
References RONet::furtherStored(), OptionsCont::getBool(), MsgHandler::getErrorInstance(), SUMORouteLoaderControl::getFirstLoadTime(), OptionsCont::getString(), SUMORouteLoaderControl::loadNext(), myLoaders, myOptions, openTypedRoutes(), string2time(), time2string(), WRITE_MESSAGE, and WRITE_WARNING.
Referenced by computeRoutes().
|
protected |
Opens route handler of the given type.
Checks whether the given option name is known, returns true if not (this means that everything's ok, though the according handler is not built).
Checks then whether the given option name is set and his value is one or a set of valid (existing) files. This is done via a call to "OptionsCont::isUsableFileList" (which generates a proper error message).
If the given files are valid, the proper instance(s) is built using "buildNamedHandler" and if this could be done, it is added to the list of route handlers to use ("myHandler")
Returns whether the wished handler(s) could be built.
[in] | optionName | The name of the option that refers to which handler and which files shall be used |
[in] | net | The net to assign to the built handlers |
Definition at line 225 of file ROLoader.cpp.
References SUMORouteLoaderControl::add(), OptionsCont::getBool(), OptionsCont::getStringVector(), OptionsCont::isSet(), OptionsCont::isUsableFileList(), myEmptyDestinationsAllowed, myLoaders, myOptions, XMLSubSys::runParser(), TL, and WRITE_ERRORF.
Referenced by openRoutes().
void ROLoader::processRoutes | ( | const SUMOTime | start, |
const SUMOTime | end, | ||
const SUMOTime | increment, | ||
RONet & | net, | ||
const RORouterProvider & | provider | ||
) |
Loads routes from all previously build route loaders.
Definition at line 193 of file ROLoader.cpp.
References RONet::furtherStored(), MsgHandler::getErrorInstance(), SUMORouteLoaderControl::getFirstLoadTime(), OptionsCont::getOptions(), SUMORouteLoaderControl::haveAllLoaded(), OptionsCont::isDefault(), SUMORouteLoaderControl::loadNext(), MIN2(), myLoaders, myLogSteps, myOptions, RONet::saveAndRemoveRoutesUntil(), time2string(), TL, MsgHandler::wasInformed(), WRITE_MESSAGEF, and writeStats().
Referenced by computeRoutes().
|
protected |
Definition at line 296 of file ROLoader.cpp.
References myLogSteps, time2string(), and toString().
Referenced by processRoutes().
|
private |
Information whether empty destinations are allowed.
Definition at line 178 of file ROLoader.h.
Referenced by openTypedRoutes().
|
private |
List of route loaders.
Definition at line 184 of file ROLoader.h.
Referenced by openRoutes(), openTypedRoutes(), and processRoutes().
|
private |
Information whether the routing steps should be logged.
Definition at line 181 of file ROLoader.h.
Referenced by processRoutes(), and writeStats().
|
private |
Options to use.
Definition at line 175 of file ROLoader.h.
Referenced by loadNet(), loadWeights(), openRoutes(), openTypedRoutes(), and processRoutes().