![]() |
Eclipse SUMO - Simulation of Urban MObility
|
Encapsulated Xerces-SAX-attributes. More...
#include <SUMOSAXAttributesImpl_Cached.h>
Public Member Functions | |
SUMOSAXAttributes * | clone () const |
return a new deep-copy attributes object More... | |
template<typename T > | |
T | get (int attr, const char *objectid, bool &ok, bool report=true) const |
Tries to read given attribute assuming it is an int. More... | |
std::vector< std::string > | getAttributeNames () const |
Retrieves all attribute names. More... | |
Boundary | getBoundary (int attr) const |
Tries to read given attribute assuming it is a Boundary. More... | |
RGBColor | getColor () const |
Returns the value of the named attribute. More... | |
SumoXMLEdgeFunc | getEdgeFunc (bool &ok) const |
Returns the value of the named attribute. More... | |
FringeType | getFringeType (bool &ok) const |
returns fringe type More... | |
std::string | getName (int attr) const |
Converts the given attribute id into a man readable string. More... | |
SumoXMLNodeType | getNodeType (bool &ok) const |
Returns the value of the named attribute. More... | |
template<typename T > | |
T | getOpt (int attr, const char *objectid, bool &ok, T defaultValue, bool report=true) const |
Tries to read given attribute assuming it is an int. More... | |
SUMOTime | getOptSUMOTimeReporting (int attr, const char *objectid, bool &ok, SUMOTime defaultValue, bool report=true) const |
Tries to read given attribute assuming it is a SUMOTime. More... | |
RightOfWay | getRightOfWay (bool &ok) const |
returns rightOfWay method More... | |
PositionVector | getShape (int attr) const |
Tries to read given attribute assuming it is a PositionVector. More... | |
SUMOTime | getSUMOTimeReporting (int attr, const char *objectid, bool &ok, bool report=true) const |
Tries to read given attribute assuming it is a SUMOTime. More... | |
void | serialize (std::ostream &os) const |
Prints all attribute names and values into the given stream. More... | |
SUMOSAXAttributesImpl_Cached (const std::map< std::string, std::string > &attrs, const std::map< int, std::string > &predefinedTagsMML, const std::string &objectType) | |
Constructor. More... | |
SUMOSAXAttributesImpl_Cached (const std::map< SumoXMLAttr, std::string > &attrs, const std::map< int, std::string > &predefinedTagsMML, const std::string &objectType) | |
Constructor. More... | |
~SUMOSAXAttributesImpl_Cached () | |
Destructor. More... | |
methods for retrieving attribute values | |
bool | hasAttribute (int id) const |
Returns the information whether the named (by its enum-value) attribute is within the current list. More... | |
bool | getBool (int id) const |
Returns the bool-value of the named (by its enum-value) attribute. More... | |
int | getInt (int id) const |
Returns the int-value of the named (by its enum-value) attribute. More... | |
long long int | getLong (int id) const |
Returns the long-value of the named (by its enum-value) attribute. More... | |
std::string | getString (int id) const |
Returns the string-value of the named (by its enum-value) attribute. More... | |
std::string | getStringSecure (int id, const std::string &def) const |
Returns the string-value of the named (by its enum-value) attribute. More... | |
double | getFloat (int id) const |
Returns the double-value of the named (by its enum-value) attribute. More... | |
bool | hasAttribute (const std::string &id) const |
Returns the information whether the named attribute is within the current list. More... | |
double | getFloat (const std::string &id) const |
Returns the double-value of the named attribute. More... | |
std::string | getStringSecure (const std::string &id, const std::string &def) const |
Returns the string-value of the named (by its enum-value) attribute. More... | |
Protected Member Functions | |
template<> | |
std::string | getInternal (const int attr) const |
template<> | |
int | getInternal (const int attr) const |
template<> | |
long long int | getInternal (const int attr) const |
template<> | |
double | getInternal (const int attr) const |
template<> | |
bool | getInternal (const int attr) const |
template<> | |
PositionVector | getInternal (const int attr) const |
template<> | |
Boundary | getInternal (const int attr) const |
template<> | |
std::vector< std::string > | getInternal (const int attr) const |
template<> | |
std::vector< int > | getInternal (const int attr) const |
template<> | |
RGBColor | getInternal (const int) const |
Private Member Functions | |
const std::string & | getAttributeValueSecure (int id) const |
Returns Xerces-value of the named attribute. More... | |
SUMOSAXAttributesImpl_Cached & | operator= (const SUMOSAXAttributesImpl_Cached &src)=delete |
Invalidated assignment operator. More... | |
SUMOSAXAttributesImpl_Cached (const SUMOSAXAttributesImpl_Cached &src)=delete | |
Invalidated copy constructor. More... | |
Private Attributes | |
std::map< std::string, std::string > | myAttrs |
The encapsulated attributes. More... | |
const std::map< int, std::string > & | myPredefinedTagsMML |
Map of attribute ids to their (readable) string-representation. More... | |
virtual methods for retrieving attribute values | |
std::string | myObjectType |
the object type to use in error reporting More... | |
const std::vector< std::string > | getStringVector (int attr) const |
Tries to read given attribute assuming it is a string vector. More... | |
const std::vector< std::string > | getOptStringVector (int attr, const char *objectid, bool &ok, bool report=true) const |
convenience function to avoid the default argument and the template stuff at getOpt<> More... | |
const std::vector< int > | getIntVector (int attr) const |
Tries to read given attribute assuming it is an int vector. More... | |
const std::vector< int > | getOptIntVector (int attr, const char *objectid, bool &ok, bool report=true) const |
convenience function to avoid the default argument and the template stuff at getOpt<> More... | |
const std::string & | getObjectType () const |
return the objecttype to which these attributes belong More... | |
static const std::string | ENCODING = " encoding=\"UTF-8\"" |
The encoding of parsed strings. More... | |
template<typename T > | |
T | getInternal (const int attr) const |
void | emitUngivenError (const std::string &attrname, const char *objectid) const |
void | emitEmptyError (const std::string &attrname, const char *objectid) const |
void | emitFormatError (const std::string &attrname, const std::string &type, const char *objectid) const |
Encapsulated Xerces-SAX-attributes.
Definition at line 44 of file SUMOSAXAttributesImpl_Cached.h.
SUMOSAXAttributesImpl_Cached::SUMOSAXAttributesImpl_Cached | ( | const std::map< std::string, std::string > & | attrs, |
const std::map< int, std::string > & | predefinedTagsMML, | ||
const std::string & | objectType | ||
) |
Constructor.
[in] | attrs | The encapsulated xerces-attributes (string-string) |
[in] | predefinedTagsMML | Map of attribute ids to their (readable) string-representation |
[in] | objectType | object type in string format |
Definition at line 43 of file SUMOSAXAttributesImpl_Cached.cpp.
Referenced by clone().
SUMOSAXAttributesImpl_Cached::SUMOSAXAttributesImpl_Cached | ( | const std::map< SumoXMLAttr, std::string > & | attrs, |
const std::map< int, std::string > & | predefinedTagsMML, | ||
const std::string & | objectType | ||
) |
Constructor.
[in] | attrs | The encapsulated xerces-attributes (SumoXMLAttr-string) |
[in] | predefinedTagsMML | Map of attribute ids to their (readable) string-representation |
[in] | objectType | object type in string format |
Definition at line 52 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs, and toString().
SUMOSAXAttributesImpl_Cached::~SUMOSAXAttributesImpl_Cached | ( | ) |
Destructor.
Definition at line 65 of file SUMOSAXAttributesImpl_Cached.cpp.
|
privatedelete |
Invalidated copy constructor.
|
virtual |
return a new deep-copy attributes object
Implements SUMOSAXAttributes.
Definition at line 267 of file SUMOSAXAttributesImpl_Cached.cpp.
References SUMOSAXAttributes::getObjectType(), myAttrs, myPredefinedTagsMML, and SUMOSAXAttributesImpl_Cached().
|
protectedinherited |
Definition at line 162 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::myObjectType, and WRITE_ERROR.
Referenced by SUMOSAXAttributes::get(), SUMOSAXAttributes::getOpt(), SUMOSAXAttributes::getOptSUMOTimeReporting(), and SUMOSAXAttributes::getSUMOTimeReporting().
|
protectedinherited |
Definition at line 176 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::myObjectType, and WRITE_ERROR.
Referenced by SUMOSAXAttributes::get(), SUMOSAXAttributes::getOpt(), SUMOSAXAttributes::getOptSUMOTimeReporting(), and SUMOSAXAttributes::getSUMOTimeReporting().
|
protectedinherited |
Definition at line 148 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::myObjectType, and WRITE_ERROR.
Referenced by SUMOSAXAttributes::get(), and SUMOSAXAttributes::getSUMOTimeReporting().
|
inherited |
Tries to read given attribute assuming it is an int.
If an error occurs (the attribute is not there, it is not numeric), "ok" is set to false. If report is true an error message is written to MsgHandler::getErrorInstance.
If the value could be read, "ok" is not changed, and the value is returned.
[in] | attr | The id of the attribute to read |
[in] | objectid | The name of the parsed object; used for error message generation |
[out] | ok | Whether the value could be read |
[in] | report | Whether errors shall be written to msg handler's error instance |
Definition at line 493 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::emitUngivenError(), SUMOSAXAttributes::getName(), and SUMOSAXAttributes::hasAttribute().
Referenced by NIXMLPTHandler::addAccess(), NIImporter_SUMO::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), NLHandler::addDistrict(), NLHandler::addDistrictEdge(), NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addE3Entry(), NLHandler::addE3Exit(), NIImporter_SUMO::addEdge(), NIXMLEdgesHandler::addEdge(), NLHandler::addEdgeLaneMeanData(), NLHandler::addInstantE1Detector(), NIXMLNodesHandler::addJoinCluster(), NIXMLNodesHandler::addJoinExclusion(), NIImporter_SUMO::addJunction(), NIImporter_SUMO::addLane(), NLHandler::addLane(), NIXMLEdgesHandler::addLane(), NIXMLNodesHandler::addNode(), NLHandler::addParam(), SUMORouteHandler::addParam(), RORouteHandler::addPersonTrip(), NIImporter_SUMO::addPhase(), NLHandler::addPhase(), ShapeHandler::addPOI(), ShapeHandler::addPoly(), NIXMLPTHandler::addPTLine(), NIXMLPTHandler::addPTLineStop(), NIXMLPTHandler::addPTStop(), NIImporter_SUMO::addRequest(), NLHandler::addRequest(), NLHandler::addRouteProbeDetector(), NIXMLEdgesHandler::addSplit(), ROJTRTurnDefLoader::addToEdge(), NLHandler::addVTypeProbeDetector(), MSRouteHandler::addWalk(), RORouteHandler::addWalk(), NIXMLConnectionsHandler::addWalkingArea(), NLHandler::addWAUTJunction(), NLHandler::addWAUTSwitch(), NLHandler::beginE3Detector(), NLHandler::beginEdgeParsing(), ROJTRTurnDefLoader::beginFromEdge(), SUMOVehicleParserHelper::beginVTypeParsing(), NLTriggerBuilder::buildVaporizer(), NIXMLEdgesHandler::deleteEdge(), NIXMLNodesHandler::deleteNode(), NLTriggerBuilder::getLane(), NLTriggerBuilder::getPosition(), NLHandler::initJunctionLogic(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NLHandler::initTrafficLightLogic(), NIImporter_SUMO::loadLocation(), RODFDetectorHandler::myStartElement(), GUISettingsHandler::myStartElement(), NIXMLTypesHandler::myStartElement(), PCTypeDefHandler::myStartElement(), NIXMLTrafficLightsHandler::myStartElement(), NIXMLConnectionsHandler::myStartElement(), ODAmitranHandler::myStartElement(), MSStateHandler::myStartElement(), RONetHandler::myStartElement(), MSRouteHandler::myStartElement(), ShapeHandler::myStartElement(), ROJTRTurnDefLoader::myStartElement(), RORouteHandler::myStartElement(), PCNetProjectionLoader::myStartElement(), NIXMLPTHandler::myStartElement(), TrajectoriesHandler::myStartElement(), NIXMLNodesHandler::myStartElement(), NIXMLEdgesHandler::myStartElement(), PCLoaderXML::myStartElement(), NIImporter_MATSim::NodesHandler::myStartElement(), NIImporter_SUMO::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Streckendefinition::myStartElement(), NLHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Zuflussdefinition::myStartElement(), PCLoaderOSM::NodesHandler::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Parkplatzdefinition::myStartElement(), PCLoaderOSM::RelationsHandler::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Fahrzeugklassendefinition::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_VWunschentscheidungsdefinition::myStartElement(), PCLoaderOSM::EdgesHandler::myStartElement(), NIImporter_OpenStreetMap::NodesHandler::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Geschwindigkeitsverteilungsdefinition::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_Routenentscheidungsdefinition::myStartElement(), NIImporter_OpenStreetMap::EdgesHandler::myStartElement(), NIImporter_Vissim::NIVissimXMLHandler_ConflictArea::myStartElement(), NIImporter_OpenStreetMap::RelationHandler::myStartElement(), NIImporter_OpenDrive::myStartElement(), ODDistrictHandler::openDistrict(), NLHandler::openJunction(), MSRouteHandler::openRoute(), RORouteHandler::openRoute(), MSRouteHandler::openRouteDistribution(), RORouteHandler::openRouteDistribution(), MSRouteHandler::openVehicleTypeDistribution(), RORouteHandler::openVehicleTypeDistribution(), NLHandler::openWAUT(), RONetHandler::parseAccess(), NLTriggerBuilder::parseAndAddLotEntry(), NLTriggerBuilder::parseAndBeginParkingArea(), GNEAdditionalHandler::parseAndBuildAccess(), NLTriggerBuilder::parseAndBuildCalibrator(), GNEAdditionalHandler::parseAndBuildCalibratorFlow(), NLTriggerBuilder::parseAndBuildChargingStation(), GNEAdditionalHandler::parseAndBuildDetectorEntry(), GNEAdditionalHandler::parseAndBuildDetectorExit(), NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), GNEAdditionalHandler::parseAndBuildParkingSpace(), NLTriggerBuilder::parseAndBuildRerouter(), GNEAdditionalHandler::parseAndBuildRerouterClosingLaneReroute(), GNEAdditionalHandler::parseAndBuildRerouterClosingReroute(), GNEAdditionalHandler::parseAndBuildRerouterDestProbReroute(), GNEAdditionalHandler::parseAndBuildRerouterInterval(), GNEAdditionalHandler::parseAndBuildRerouterParkingAreaReroute(), GNEAdditionalHandler::parseAndBuildRerouterRouteProbReroute(), NLTriggerBuilder::parseAndBuildStoppingPlace(), GNEAdditionalHandler::parseAndBuildTAZ(), GNEAdditionalHandler::parseAndBuildTAZSink(), GNEAdditionalHandler::parseAndBuildTAZSource(), GNEAdditionalHandler::parseAndBuildVariableSpeedSignStep(), GNEAttributeCarrier::parseAttributeFromXML(), SUMOVehicleParserHelper::parseCommonAttributes(), RONetHandler::parseConnection(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), RONetHandler::parseDistrict(), RONetHandler::parseDistrictEdge(), RONetHandler::parseEdge(), SUMOVehicleParserHelper::parseFlowAttributes(), RORouteHandler::parseFromViaTo(), GNEAdditionalHandler::parseGenericParameter(), SUMOVehicleParserHelper::parseID(), SUMOVehicleParserHelper::parseJMParams(), RONetHandler::parseJunction(), RONetHandler::parseLane(), NIXMLConnectionsHandler::parseLaneDefinition(), SUMOVehicleParserHelper::parseLCParams(), GNEAttributeCarrier::parseMaskedPositionAttribute(), AGActivityGenHandler::parseStation(), SUMORouteHandler::parseStop(), parseStopOffsets(), RONetHandler::parseStoppingPlace(), ODDistrictHandler::parseTAZ(), SUMOVehicleParserHelper::parseVehicleAttributes(), SUMOVehicleParserHelper::parseVTypeEmbedded(), MSRouteHandler::parseWalkPositions(), NIXMLNodesHandler::processNodeType(), NIImporter_SUMO::readPosition(), NIXMLTrafficLightsHandler::removeTlConnection(), NIXMLTrafficLightsHandler::retrieveEdge(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RONetHandler::setLocation(), NLHandler::setLocation(), and NIXMLEdgesHandler::setNodes().
|
virtual |
Retrieves all attribute names.
Implements SUMOSAXAttributes.
Definition at line 258 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs.
|
private |
Returns Xerces-value of the named attribute.
It is assumed that this attribute is within the stored attributes.
[in] | id | The id of the attribute to retrieve the vale of |
Definition at line 116 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs, and myPredefinedTagsMML.
Referenced by getBool(), getFloat(), getInt(), getLong(), getString(), and getStringSecure().
|
virtual |
Returns the bool-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2bool. If the attribute is empty or ==0, TplConvert<XMLCh>::_2bool throws an EmptyData-exception which is passed. If the value can not be parsed to a bool, TplConvert<XMLCh>::_2bool throws a BoolFormatException-exception which is passed.
[in] | id | The id of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
BoolFormatException | If the attribute value can not be parsed to a bool |
Implements SUMOSAXAttributes.
Definition at line 79 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toBool().
|
virtual |
Tries to read given attribute assuming it is a Boundary.
[in] | attr | The id of the attribute to read |
Implements SUMOSAXAttributes.
Definition at line 226 of file SUMOSAXAttributesImpl_Cached.cpp.
References getString(), StringTokenizer::next(), StringTokenizer::size(), and StringUtils::toDouble().
|
virtual |
Returns the value of the named attribute.
Tries to retrieve the attribute from the the attribute list.
Implements SUMOSAXAttributes.
Definition at line 198 of file SUMOSAXAttributesImpl_Cached.cpp.
References getString(), RGBColor::parseColor(), and SUMO_ATTR_COLOR.
|
virtual |
Returns the value of the named attribute.
Tries to retrieve the attribute from the the attribute list.
Implements SUMOSAXAttributes.
Definition at line 148 of file SUMOSAXAttributesImpl_Cached.cpp.
References EDGEFUNC_NORMAL, SUMOXMLDefinitions::EdgeFunctions, StringBijection< T >::get(), getString(), hasAttribute(), and SUMO_ATTR_FUNCTION.
|
virtual |
Returns the double-value of the named attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2double. If the attribute is empty or ==0, TplConvert<XMLCh>::_2double throws an EmptyData-exception which is passed. If the value can not be parsed to a double, TplConvert<XMLCh>::_2double throws a NumberFormatException-exception which is passed.
[in] | id | The name of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
NumberFormatException | If the attribute value can not be parsed to an double |
Implements SUMOSAXAttributes.
Definition at line 124 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs, and StringUtils::toDouble().
|
virtual |
Returns the double-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2double. If the attribute is empty or ==0, TplConvert<XMLCh>::_2double throws an EmptyData-exception which is passed. If the value can not be parsed to a double, TplConvert<XMLCh>::_2double throws a NumberFormatException-exception which is passed.
[in] | id | The id of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
NumberFormatException | If the attribute value can not be parsed to an double |
Implements SUMOSAXAttributes.
Definition at line 110 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toDouble().
|
virtual |
returns fringe type
Implements SUMOSAXAttributes.
Definition at line 186 of file SUMOSAXAttributesImpl_Cached.cpp.
References FRINGE_TYPE_DEFAULT, SUMOXMLDefinitions::FringeTypeValues, StringBijection< T >::get(), getString(), hasAttribute(), and SUMO_ATTR_FRINGE.
|
virtual |
Returns the int-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2int. If the attribute is empty or ==0, TplConvert<XMLCh>::_2int throws an EmptyData-exception which is passed. If the value can not be parsed to an int, TplConvert<XMLCh>::_2int throws a NumberFormatException-exception which is passed.
[in] | id | The id of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
NumberFormatException | If the attribute value can not be parsed to an int |
Implements SUMOSAXAttributes.
Definition at line 85 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toInt().
|
protectedinherited |
Definition at line 54 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString().
|
protectedinherited |
Definition at line 192 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getInt().
|
protectedinherited |
Definition at line 200 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getLong().
|
protectedinherited |
Definition at line 208 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getFloat().
|
protectedinherited |
Definition at line 216 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBool().
|
protectedinherited |
Definition at line 232 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getShape().
|
protectedinherited |
Definition at line 240 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBoundary().
|
protectedinherited |
Definition at line 248 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getStringVector().
|
protectedinherited |
Definition at line 256 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getIntVector().
|
protectedinherited |
|
protectedinherited |
Definition at line 224 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getColor().
|
inherited |
Tries to read given attribute assuming it is an int vector.
The behavior is similar to Python's string.split(), so multiple consecutive whitespace do not generate empty strings and leading and trailing whitespace is silently omitted.
[in] | attr | The id of the attribute to read |
Definition at line 129 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString(), StringTokenizer::getVector(), and StringUtils::toInt().
Referenced by SUMOSAXAttributes::getInternal().
|
virtual |
Returns the long-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2long. If the attribute is empty or ==0, TplConvert<XMLCh>::_2long throws an EmptyData-exception which is passed. If the value can not be parsed to a long, TplConvert<XMLCh>::_2long throws a NumberFormatException-exception which is passed.
[in] | id | The id of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
NumberFormatException | If the attribute value can not be parsed to an int |
Implements SUMOSAXAttributes.
Definition at line 91 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toLong().
|
virtual |
Converts the given attribute id into a man readable string.
Returns a "?" if the attribute is not known.
[in] | attr | The id of the attribute to return the name of |
Implements SUMOSAXAttributes.
Definition at line 241 of file SUMOSAXAttributesImpl_Cached.cpp.
References myPredefinedTagsMML.
|
virtual |
Returns the value of the named attribute.
Tries to retrieve the attribute from the the attribute list.
Implements SUMOSAXAttributes.
Definition at line 161 of file SUMOSAXAttributesImpl_Cached.cpp.
References StringBijection< T >::get(), getString(), hasAttribute(), NODETYPE_UNKNOWN, SUMOXMLDefinitions::NodeTypes, and SUMO_ATTR_TYPE.
|
inlineinherited |
return the objecttype to which these attributes belong
Definition at line 397 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::myObjectType.
Referenced by GNERouteHandler::addPersonTrip(), clone(), SUMOSAXAttributesImpl_Xerces::clone(), SUMOSAXAttributesImpl_Binary::clone(), SUMOVehicleParserHelper::parseGuiShape(), ODDistrictHandler::parseTAZ(), and SUMOVehicleParserHelper::parseVehicleClass().
|
inherited |
Tries to read given attribute assuming it is an int.
If the attribute is not existing in the current element, the default value is returned. If an error occurs on parsing (the attribute is empty, it is not numeric), "ok" is set to false. If report is true an error message is written to MsgHandler::getErrorInstance.
If the value could be read, "ok" is not changed, and the value is returned.
[in] | attr | The id of the attribute to read |
[in] | objectid | The name of the parsed object; used for error message generation |
[out] | ok | Whether the value could be read |
[in] | defaultValue | The value to return if the attribute is not within the element |
[in] | report | Whether errors shall be written to msg handler's error instance |
Definition at line 519 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::getName(), and SUMOSAXAttributes::hasAttribute().
Referenced by NIXMLPTHandler::addAccess(), NLTriggerBuilder::addAccess(), NLDiscreteEventBuilder::addAction(), NIImporter_SUMO::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), NLHandler::addDistrict(), NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addE3Entry(), NLHandler::addE3Exit(), NIImporter_SUMO::addEdge(), NIXMLEdgesHandler::addEdge(), NLHandler::addEdgeLaneMeanData(), NLHandler::addInstantE1Detector(), NIXMLNodesHandler::addJoinCluster(), NIImporter_SUMO::addJunction(), NIImporter_SUMO::addLane(), NLHandler::addLane(), NIXMLEdgesHandler::addLane(), MSRouteHandler::addPersonTrip(), RORouteHandler::addPersonTrip(), NIImporter_SUMO::addPhase(), NLHandler::addPhase(), ShapeHandler::addPOI(), ShapeHandler::addPoly(), NIImporter_SUMO::addProhibition(), NIXMLPTHandler::addPTLine(), NIXMLPTHandler::addPTStop(), NLHandler::addRequest(), NLHandler::addRouteProbeDetector(), NIXMLEdgesHandler::addSplit(), MSRouteHandler::addStop(), RORouteHandler::addStop(), GNERouteHandler::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), MSRouteHandler::addWalk(), RORouteHandler::addWalk(), NIXMLConnectionsHandler::addWalkingArea(), NLHandler::addWAUTJunction(), NLHandler::beginE3Detector(), NLHandler::beginEdgeParsing(), SUMOVehicleParserHelper::beginVTypeParsing(), NLDiscreteEventBuilder::buildSaveTLStateCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchesCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchStatesCommand(), NIXMLEdgesHandler::deleteEdge(), NLTriggerBuilder::getFileName(), NLTriggerBuilder::getPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NLHandler::initTrafficLightLogic(), RODFDetectorHandler::myStartElement(), GUISettingsHandler::myStartElement(), PCTypeDefHandler::myStartElement(), NIXMLTypesHandler::myStartElement(), MSStateHandler::myStartElement(), NIXMLConnectionsHandler::myStartElement(), MSRouteHandler::myStartElement(), RORouteHandler::myStartElement(), TrajectoriesHandler::myStartElement(), PCLoaderXML::myStartElement(), NIImporter_SUMO::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSCalibrator::myStartElement(), NLHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), PCLoaderOSM::NodesHandler::myStartElement(), SAXWeightsHandler::myStartElement(), MSTriggeredRerouter::myStartElement(), PCLoaderOSM::RelationsHandler::myStartElement(), PCLoaderOSM::EdgesHandler::myStartElement(), NIImporter_OpenDrive::myStartElement(), NLHandler::openJunction(), MSRouteHandler::openRoute(), RORouteHandler::openRoute(), RORouteHandler::openRouteDistribution(), RONetHandler::parseAccess(), NLTriggerBuilder::parseAndAddLotEntry(), NLTriggerBuilder::parseAndBeginParkingArea(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildChargingStation(), GNEAdditionalHandler::parseAndBuildPoly(), NLTriggerBuilder::parseAndBuildRerouter(), GNEAdditionalHandler::parseAndBuildRerouter(), NLTriggerBuilder::parseAndBuildStoppingPlace(), SUMOVehicleParserHelper::parseCommonAttributes(), RONetHandler::parseConnection(), RONetHandler::parseEdge(), MSRouteHandler::parseFromViaTo(), RORouteHandler::parseFromViaTo(), AGActivityGenHandler::parseGeneralCityInfo(), SUMOVehicleParserHelper::parseGuiShape(), RONetHandler::parseJunction(), RONetHandler::parseLane(), NIXMLConnectionsHandler::parseLaneBound(), AGActivityGenHandler::parseParameters(), SUMORouteHandler::parseStop(), parseStopOffsets(), RONetHandler::parseStoppingPlace(), SUMOVehicleParserHelper::parseVehicleAttributes(), SUMOVehicleParserHelper::parseVehicleClass(), MSRouteHandler::parseWalkPositions(), NIXMLNodesHandler::processNodeType(), NIXMLNodesHandler::processTrafficLightDefinitions(), NIImporter_SUMO::readPosition(), NIXMLEdgesHandler::tryGetLaneSpread(), and NIXMLEdgesHandler::tryGetShape().
|
inherited |
convenience function to avoid the default argument and the template stuff at getOpt<>
Definition at line 143 of file SUMOSAXAttributes.cpp.
Referenced by NIImporter_SUMO::addPhase(), and NLHandler::addPhase().
|
inherited |
convenience function to avoid the default argument and the template stuff at getOpt<>
Definition at line 124 of file SUMOSAXAttributes.cpp.
Referenced by NIXMLEdgesHandler::addSplit(), NLTriggerBuilder::parseAndBeginParkingArea(), NLTriggerBuilder::parseAndBuildStoppingPlace(), SUMORouteHandler::parseStop(), and NIXMLNodesHandler::processTrafficLightDefinitions().
|
inherited |
Tries to read given attribute assuming it is a SUMOTime.
If the attribute is not existing in the current element, the default value is returned. If an error occurs on parsing (the attribute is empty, it is not numeric), "ok" is set to false. If report is true an error message is written to MsgHandler::getErrorInstance.
Otherwise, "ok" is not changed.
In dependence to the used time representation, either get<int> or get<double> is used.
[in] | attr | The id of the attribute to read |
[in] | objectid | The name of the parsed object; used for error message generation |
[out] | ok | Whether the value could be read |
[in] | defaultValue | The value to return if the attribute is not within the element |
[in] | report | Whether errors shall be written to msg handler's error instance |
Definition at line 91 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::getName(), SUMOSAXAttributes::hasAttribute(), and string2time().
Referenced by NLHandler::addE2Detector(), NLHandler::addEdgeLaneMeanData(), MSRouteHandler::addPersonTrip(), NIImporter_SUMO::addPhase(), NLHandler::addPhase(), NLHandler::addRouteProbeDetector(), MSRouteHandler::addWalk(), NLHandler::beginE3Detector(), NLHandler::initTrafficLightLogic(), GUISettingsHandler::myStartElement(), MSRouteHandler::myStartElement(), MSCalibrator::myStartElement(), MSTriggeredRerouter::myStartElement(), NLHandler::openWAUT(), NLTriggerBuilder::parseAndBuildCalibrator(), and SUMORouteHandler::parseStop().
|
virtual |
returns rightOfWay method
Implements SUMOSAXAttributes.
Definition at line 174 of file SUMOSAXAttributesImpl_Cached.cpp.
References StringBijection< T >::get(), getString(), hasAttribute(), RIGHT_OF_WAY_DEFAULT, SUMOXMLDefinitions::RightOfWayValues, and SUMO_ATTR_RIGHT_OF_WAY.
|
virtual |
Tries to read given attribute assuming it is a PositionVector.
[in] | attr | The id of the attribute to read |
Implements SUMOSAXAttributes.
Definition at line 204 of file SUMOSAXAttributesImpl_Cached.cpp.
References getString(), StringTokenizer::hasNext(), StringTokenizer::next(), and StringUtils::toDouble().
|
virtual |
Returns the string-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2str. If the attribute is ==0, TplConvert<XMLCh>::_2str throws an EmptyData-exception which is passed.
[in] | id | The id of the attribute to return the value of |
EmptyData | If the attribute is not known or the attribute value is an empty string |
Implements SUMOSAXAttributes.
Definition at line 97 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure().
Referenced by getBoundary(), getColor(), getEdgeFunc(), getFringeType(), getNodeType(), getRightOfWay(), and getShape().
|
virtual |
Returns the string-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. If the attribute is ==0, TplConvert<XMLCh>::_2strSec returns the default value.
[in] | id | The name of the attribute to return the value of |
[in] | def | The default value to return if the attribute is not in attributes |
Implements SUMOSAXAttributes.
Definition at line 136 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs.
|
virtual |
Returns the string-value of the named (by its enum-value) attribute.
Tries to retrieve the attribute from the the attribute list. The retrieved attribute (which may be 0) is then parsed using TplConvert<XMLCh>::_2strSec. If the attribute is ==0, TplConvert<XMLCh>::_2strSec returns the default value.
[in] | id | The id of the attribute to return the value of |
[in] | def | The default value to return if the attribute is not in attributes |
EmptyData | If the attribute is not known or the attribute value is an empty string |
Implements SUMOSAXAttributes.
Definition at line 103 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure().
|
inherited |
Tries to read given attribute assuming it is a string vector.
The behavior is similar to Python's string.split(), so multiple consecutive whitespace do not generate empty strings and leading and trailing whitespace is silently omitted.
[in] | attr | The id of the attribute to read |
Definition at line 114 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString(), and StringTokenizer::getVector().
Referenced by NLHandler::addDistrict(), NIImporter_SUMO::addRoundabout(), NLHandler::addRoundabout(), NIXMLEdgesHandler::addRoundabout(), SUMOSAXAttributes::getInternal(), MSStateHandler::myStartElement(), ODDistrictHandler::openDistrict(), and RONetHandler::parseDistrict().
|
inherited |
Tries to read given attribute assuming it is a SUMOTime.
If an error occurs (the attribute is not there, it is not numeric), "ok" is set to false and an error message is written to MsgHandler::getErrorInstance.
Otherwise, "ok" is not changed.
In dependence to the used time representation, either get<int> or get<double> is used.
[in] | attr | The id of the attribute to read |
[in] | objectid | The name of the parsed object; used for error message generation |
[out] | ok | Whether the value could be read |
[in] | report | Whether errors shall be written to msg handler's error instance |
Definition at line 64 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::emitUngivenError(), SUMOSAXAttributes::getName(), SUMOSAXAttributes::hasAttribute(), and string2time().
Referenced by NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addPhase(), NLHandler::addRouteProbeDetector(), NLHandler::addVTypeProbeDetector(), NLHandler::addWAUTSwitch(), NLHandler::beginE3Detector(), SUMOVehicleParserHelper::beginVTypeParsing(), NLTriggerBuilder::buildVaporizer(), GUISettingsHandler::myStartElement(), SUMORouteHandler::myStartElement(), TrajectoriesHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), MSCalibrator::myStartElement(), SAXWeightsHandler::myStartElement(), GUINet::DiscoverAttributes::myStartElement(), and SUMOVehicleParserHelper::parseFlowAttributes().
|
virtual |
Returns the information whether the named attribute is within the current list.
Implements SUMOSAXAttributes.
Definition at line 130 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs.
|
virtual |
Returns the information whether the named (by its enum-value) attribute is within the current list.
[in] | id | The id of the searched attribute |
Implements SUMOSAXAttributes.
Definition at line 69 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs, and myPredefinedTagsMML.
Referenced by getEdgeFunc(), getFringeType(), getNodeType(), and getRightOfWay().
|
privatedelete |
Invalidated assignment operator.
|
virtual |
Prints all attribute names and values into the given stream.
[in] | os | The stream to use |
Implements SUMOSAXAttributes.
Definition at line 250 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs.
|
staticinherited |
The encoding of parsed strings.
Definition at line 408 of file SUMOSAXAttributes.h.
Referenced by OptionsCont::writeXMLHeader().
|
private |
The encapsulated attributes.
Definition at line 286 of file SUMOSAXAttributesImpl_Cached.h.
Referenced by clone(), getAttributeNames(), getAttributeValueSecure(), getFloat(), getStringSecure(), hasAttribute(), serialize(), and SUMOSAXAttributesImpl_Cached().
|
privateinherited |
the object type to use in error reporting
Definition at line 425 of file SUMOSAXAttributes.h.
Referenced by SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::emitUngivenError(), and SUMOSAXAttributes::getObjectType().
|
private |
Map of attribute ids to their (readable) string-representation.
Definition at line 289 of file SUMOSAXAttributesImpl_Cached.h.
Referenced by clone(), getAttributeValueSecure(), getName(), and hasAttribute().