![]() |
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 43 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 42 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 51 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs, and toString().
SUMOSAXAttributesImpl_Cached::~SUMOSAXAttributesImpl_Cached | ( | ) |
Destructor.
Definition at line 64 of file SUMOSAXAttributesImpl_Cached.cpp.
|
privatedelete |
Invalidated copy constructor.
|
virtual |
return a new deep-copy attributes object
Implements SUMOSAXAttributes.
Definition at line 266 of file SUMOSAXAttributesImpl_Cached.cpp.
References SUMOSAXAttributes::getObjectType(), myAttrs, myPredefinedTagsMML, and SUMOSAXAttributesImpl_Cached().
|
protectedinherited |
Definition at line 161 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 175 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 147 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 492 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(), RONetHandler::addParam(), 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(), ODAmitranHandler::myStartElement(), MSStateHandler::myStartElement(), NIXMLConnectionsHandler::myStartElement(), MSRouteHandler::myStartElement(), RONetHandler::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(), SUMOVehicleParserHelper::parseID(), SUMOVehicleParserHelper::parseJMParams(), RONetHandler::parseJunction(), RONetHandler::parseLane(), NIXMLConnectionsHandler::parseLaneDefinition(), SUMOVehicleParserHelper::parseLCParams(), GNEAttributeCarrier::parseMaskedPositionAttribute(), GNEAdditionalHandler::parseParameter(), 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 257 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 115 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 78 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 225 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 197 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 147 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 123 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 109 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toDouble().
|
virtual |
returns fringe type
Implements SUMOSAXAttributes.
Definition at line 185 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 84 of file SUMOSAXAttributesImpl_Cached.cpp.
References getAttributeValueSecure(), and StringUtils::toInt().
|
protectedinherited |
Definition at line 53 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString().
|
protectedinherited |
Definition at line 191 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getInt().
|
protectedinherited |
Definition at line 199 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getLong().
|
protectedinherited |
Definition at line 207 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getFloat().
|
protectedinherited |
Definition at line 215 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBool().
|
protectedinherited |
Definition at line 231 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getShape().
|
protectedinherited |
Definition at line 239 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBoundary().
|
protectedinherited |
Definition at line 247 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getStringVector().
|
protectedinherited |
Definition at line 255 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getIntVector().
|
protectedinherited |
|
protectedinherited |
Definition at line 223 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 128 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 90 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 240 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 160 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 396 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 518 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::buildSaveTLSProgramCommand(), 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 142 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 123 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 90 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 173 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 203 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 96 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 135 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 102 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 113 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString(), and StringTokenizer::getVector().
Referenced by NLHandler::addDistrict(), NIImporter_SUMO::addRoundabout(), NLHandler::addRoundabout(), NIXMLEdgesHandler::addRoundabout(), NIXMLPTHandler::addRoute(), 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 63 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(), TrajectoriesHandler::myStartElement(), SUMORouteHandler::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 129 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 68 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 249 of file SUMOSAXAttributesImpl_Cached.cpp.
References myAttrs.
|
staticinherited |
The encoding of parsed strings.
Definition at line 407 of file SUMOSAXAttributes.h.
Referenced by OptionsCont::writeXMLHeader().
|
private |
The encapsulated attributes.
Definition at line 285 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 424 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 288 of file SUMOSAXAttributesImpl_Cached.h.
Referenced by clone(), getAttributeValueSecure(), getName(), and hasAttribute().