SUMO - Simulation of Urban MObility
|
Encapsulated Xerces-SAX-attributes. More...
#include <SUMOSAXAttributesImpl_Binary.h>
Public Member Functions | |
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... | |
template<> | |
int | getInternal (const int attr) const |
template<> | |
SUMOLong | getInternal (const int attr) const |
template<> | |
SUMOReal | getInternal (const int attr) const |
template<> | |
bool | getInternal (const int attr) const |
template<> | |
std::string | getInternal (const int attr) const |
template<> | |
RGBColor | getInternal (const int) const |
template<> | |
PositionVector | getInternal (const int attr) const |
template<> | |
Boundary | getInternal (const int attr) const |
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... | |
SUMOTime | getSUMOTimeReporting (int attr, const char *objectid, bool &ok, bool report=true) const |
Tries to read given attribute assuming it is a SUMOTime. More... | |
SUMOSAXAttributesImpl_Binary (const std::map< int, std::string > &predefinedTagsMML, const std::string &objectType, BinaryInputDevice *in) | |
Constructor. More... | |
virtual | ~SUMOSAXAttributesImpl_Binary () |
Destructor. More... | |
virtual methods for retrieving attribute values | |
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... | |
static void | parseStringVector (const std::string &def, std::vector< std::string > &into) |
Splits the given string. More... | |
static void | parseStringSet (const std::string &def, std::set< std::string > &into) |
Splits the given string, stores it in a set. 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 |
methods for retrieving attribute values | |
const std::map< int, std::string > & | myAttrIds |
Map of attribute ids to names. More... | |
std::set< int > | myAttrs |
the attributes which are set More... | |
std::map< int, char > | myCharValues |
Map of attribute ids to char. More... | |
std::map< int, int > | myIntValues |
Map of attribute ids to integers. More... | |
std::map< int, SUMOReal > | myFloatValues |
Map of attribute ids to floats. More... | |
std::map< int, std::string > | myStringValues |
Map of attribute ids to string. More... | |
std::map< int, PositionVector > | myPositionVectors |
Map of attribute ids to string. More... | |
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... | |
SUMOLong | 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... | |
SUMOReal | getFloat (int id) const |
Returns the SUMOReal-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... | |
SUMOReal | getFloat (const std::string &id) const |
Returns the SUMOReal-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... | |
SumoXMLEdgeFunc | getEdgeFunc (bool &ok) const |
Returns the value of the named attribute. More... | |
SumoXMLNodeType | getNodeType (bool &ok) const |
Returns the value of the named attribute. More... | |
RGBColor | getColor () const |
Returns the value of the named attribute. More... | |
PositionVector | getShape (int attr) const |
Tries to read given attribute assuming it is a PositionVector. More... | |
Boundary | getBoundary (int attr) const |
Tries to read given attribute assuming it is a Boundary. More... | |
std::vector< std::string > | getStringVector (int attr) const |
Tries to read given attribute assuming it is a string vector. More... | |
std::string | getName (int attr) const |
Converts the given attribute id into a man readable string. More... | |
void | serialize (std::ostream &os) const |
Prints all attribute names and values into the given stream. More... | |
SUMOSAXAttributesImpl_Binary (const SUMOSAXAttributesImpl_Binary &src) | |
Invalidated copy constructor. More... | |
SUMOSAXAttributesImpl_Binary & | operator= (const SUMOSAXAttributesImpl_Binary &src) |
Invalidated assignment operator. More... | |
Encapsulated Xerces-SAX-attributes.
Definition at line 55 of file SUMOSAXAttributesImpl_Binary.h.
SUMOSAXAttributesImpl_Binary::SUMOSAXAttributesImpl_Binary | ( | const std::map< int, std::string > & | predefinedTagsMML, |
const std::string & | objectType, | ||
BinaryInputDevice * | in | ||
) |
Constructor.
[in] | attrs | The encapsulated xerces-attributes |
[in] | predefinedTags | Map of attribute ids to their xerces-representation |
[in] | predefinedTagsMML | Map of attribute ids to their (readable) string-representation |
Definition at line 51 of file SUMOSAXAttributesImpl_Binary.cpp.
References BinaryFormatter::BF_BOUNDARY, BinaryFormatter::BF_BYTE, BinaryFormatter::BF_COLOR, BinaryFormatter::BF_EDGE, BinaryFormatter::BF_EDGE_FUNCTION, BinaryFormatter::BF_FLOAT, BinaryFormatter::BF_INTEGER, BinaryFormatter::BF_LANE, BinaryFormatter::BF_LIST, BinaryFormatter::BF_NODE_TYPE, BinaryFormatter::BF_POSITION_2D, BinaryFormatter::BF_POSITION_3D, BinaryFormatter::BF_ROUTE, BinaryFormatter::BF_SCALED2INT, BinaryFormatter::BF_SCALED2INT_POSITION_2D, BinaryFormatter::BF_SCALED2INT_POSITION_3D, BinaryFormatter::BF_STRING, BinaryFormatter::BF_XML_ATTRIBUTE, myAttrs, myCharValues, myFloatValues, myIntValues, myPositionVectors, myStringValues, BinaryInputDevice::peek(), BinaryInputDevice::putback(), FileHelpers::writeByte(), and FileHelpers::writeInt().
|
virtual |
Destructor.
Definition at line 158 of file SUMOSAXAttributesImpl_Binary.cpp.
|
private |
Invalidated copy constructor.
|
protectedinherited |
Definition at line 136 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 150 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 122 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 443 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::emitUngivenError(), SUMOSAXAttributes::getName(), and SUMOSAXAttributes::hasAttribute().
Referenced by 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(), NIImporter_SUMO::addPhase(), NLHandler::addPhase(), NLHandler::addPOI(), NLHandler::addPoly(), NIImporter_SUMO::addRequest(), NLHandler::addRequest(), NLHandler::addRouteProbeDetector(), NIXMLEdgesHandler::addSplit(), ROJTRTurnDefLoader::addToEdge(), NLHandler::addVTypeProbeDetector(), 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(), PCTypeDefHandler::myStartElement(), MSRouteHandler::myStartElement(), NIXMLConnectionsHandler::myStartElement(), NIXMLTypesHandler::myStartElement(), ODAmitranHandler::myStartElement(), ROJTRTurnDefLoader::myStartElement(), PCNetProjectionLoader::myStartElement(), PCLoaderXML::myStartElement(), NIImporter_MATSim::NodesHandler::myStartElement(), PCLoaderOSM::NodesHandler::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), SAXWeightsHandler::myStartElement(), PCLoaderOSM::EdgesHandler::myStartElement(), NIImporter_OpenStreetMap::NodesHandler::myStartElement(), NIImporter_OpenStreetMap::EdgesHandler::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(), NLTriggerBuilder::parseAndBuildBusStop(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), NLTriggerBuilder::parseAndBuildRerouter(), RONetHandler::parseBusStop(), SUMOVehicleParserHelper::parseCommonAttributes(), RONetHandler::parseConnection(), ODDistrictHandler::parseConnection(), NIXMLConnectionsHandler::parseDeprecatedLaneDefinition(), RONetHandler::parseDistrict(), RONetHandler::parseDistrictEdge(), RONetHandler::parseEdge(), SUMOVehicleParserHelper::parseFlowAttributes(), RORouteHandler::parseFromViaTo(), RONetHandler::parseJunction(), RONetHandler::parseLane(), NIXMLConnectionsHandler::parseLaneDefinition(), AGActivityGenHandler::parseStation(), SUMORouteHandler::parseStop(), SUMOVehicleParserHelper::parseVehicleAttributes(), SUMOVehicleParserHelper::parseVTypeEmbedded(), NIImporter_SUMO::readPosition(), NIXMLTrafficLightsHandler::removeTlConnection(), NIXMLTrafficLightsHandler::retrieveEdge(), NIXMLTrafficLightsHandler::retrieveLaneIndex(), RORouteHandler::routePedestrian(), NLHandler::setLocation(), and NIXMLEdgesHandler::setNodes().
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 169 of file SUMOSAXAttributesImpl_Binary.cpp.
References myCharValues.
Tries to read given attribute assuming it is a Boundary.
[in] | attr | The id of the attribute to read |
Implements SUMOSAXAttributes.
Definition at line 294 of file SUMOSAXAttributesImpl_Binary.cpp.
References myPositionVectors.
|
virtual |
Returns the value of the named attribute.
Tries to retrieve the attribute from the the attribute list.
Implements SUMOSAXAttributes.
Definition at line 273 of file SUMOSAXAttributesImpl_Binary.cpp.
References myIntValues, 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 245 of file SUMOSAXAttributesImpl_Binary.cpp.
References EDGEFUNC_NORMAL, SUMOXMLDefinitions::EdgeFunctions, myCharValues, StringBijection< T >::size(), and SUMO_ATTR_FUNCTION.
Returns the SUMOReal-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>::_2SUMOReal. If the attribute is empty or ==0, TplConvert<XMLCh>::_2SUMOReal throws an EmptyData-exception which is passed. If the value can not be parsed to a SUMOReal, TplConvert<XMLCh>::_2SUMOReal 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 SUMOReal |
Implements SUMOSAXAttributes.
Definition at line 216 of file SUMOSAXAttributesImpl_Binary.cpp.
References TplConvert::_2SUMOReal(), getString(), and myFloatValues.
|
virtual |
Returns the SUMOReal-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>::_2SUMOReal. If the attribute is empty or ==0, TplConvert<XMLCh>::_2SUMOReal throws an EmptyData-exception which is passed. If the value can not be parsed to a SUMOReal, TplConvert<XMLCh>::_2SUMOReal 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 SUMOReal |
Implements SUMOSAXAttributes.
Definition at line 226 of file SUMOSAXAttributesImpl_Binary.cpp.
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 179 of file SUMOSAXAttributesImpl_Binary.cpp.
References myIntValues.
Definition at line 196 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getInt().
Definition at line 204 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getLong().
Definition at line 212 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getFloat().
Definition at line 220 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBool().
|
inherited |
Definition at line 228 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getString().
Definition at line 240 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getColor().
|
inherited |
Definition at line 248 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getShape().
Definition at line 256 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::getBoundary().
|
protectedinherited |
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 189 of file SUMOSAXAttributesImpl_Binary.cpp.
|
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 316 of file SUMOSAXAttributesImpl_Binary.cpp.
References myAttrIds.
Referenced by serialize().
|
virtual |
Returns the value of the named attribute.
Tries to retrieve the attribute from the the attribute list.
Implements SUMOSAXAttributes.
Definition at line 259 of file SUMOSAXAttributesImpl_Binary.cpp.
References myCharValues, NODETYPE_UNKNOWN, SUMOXMLDefinitions::NodeTypes, StringBijection< T >::size(), and SUMO_ATTR_TYPE.
|
inlineinherited |
return the objecttype to which these attributes belong
Definition at line 374 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::myObjectType.
Referenced by ODDistrictHandler::parseConnection(), SUMOVehicleParserHelper::parseEmissionClass(), SUMOVehicleParserHelper::parseGuiShape(), 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 469 of file SUMOSAXAttributes.h.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::getName(), and SUMOSAXAttributes::hasAttribute().
Referenced by NLDiscreteEventBuilder::addAction(), NIImporter_SUMO::addConnection(), NLHandler::addConnection(), NIXMLConnectionsHandler::addCrossing(), NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addE3Entry(), NLHandler::addE3Exit(), NIImporter_SUMO::addEdge(), NIXMLEdgesHandler::addEdge(), NLHandler::addEdgeLaneMeanData(), NLHandler::addInstantE1Detector(), NIImporter_SUMO::addLane(), NLHandler::addLane(), NIXMLEdgesHandler::addLane(), NIXMLNodesHandler::addNode(), NLHandler::addPOI(), NLHandler::addPoly(), NIImporter_SUMO::addProhibition(), NLHandler::addRequest(), NIXMLEdgesHandler::addSplit(), MSRouteHandler::addStop(), RORouteHandler::addStop(), NIXMLTrafficLightsHandler::addTlConnection(), NLHandler::addWAUTJunction(), NLHandler::beginE3Detector(), NLHandler::beginEdgeParsing(), NLDiscreteEventBuilder::buildSaveTLStateCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchesCommand(), NLDiscreteEventBuilder::buildSaveTLSwitchStatesCommand(), NLTriggerBuilder::getFileName(), NLTriggerBuilder::getPosition(), NIImporter_SUMO::initTrafficLightLogic(), NIXMLTrafficLightsHandler::initTrafficLightLogic(), NLHandler::initTrafficLightLogic(), RODFDetectorHandler::myStartElement(), GUISettingsHandler::myStartElement(), PCTypeDefHandler::myStartElement(), MSRouteHandler::myStartElement(), NIXMLConnectionsHandler::myStartElement(), NIXMLTypesHandler::myStartElement(), MSCalibrator::myStartElement(), TrajectoriesHandler::myStartElement(), PCLoaderXML::myStartElement(), MSLaneSpeedTrigger::myStartElement(), PCLoaderOSM::NodesHandler::myStartElement(), MSTriggeredRerouter::myStartElement(), NIImporter_MATSim::EdgesHandler::myStartElement(), SAXWeightsHandler::myStartElement(), PCLoaderOSM::EdgesHandler::myStartElement(), NIImporter_OpenDrive::myStartElement(), NLHandler::openJunction(), MSRouteHandler::openRoute(), RORouteHandler::openRoute(), NLTriggerBuilder::parseAndBuildBusStop(), NLTriggerBuilder::parseAndBuildCalibrator(), NLTriggerBuilder::parseAndBuildRerouter(), RONetHandler::parseBusStop(), SUMOVehicleParserHelper::parseCommonAttributes(), SUMOVehicleParserHelper::parseEmissionClass(), RORouteHandler::parseFromViaTo(), AGActivityGenHandler::parseGeneralCityInfo(), SUMOVehicleParserHelper::parseGuiShape(), RONetHandler::parseLane(), NIXMLConnectionsHandler::parseLaneBound(), AGActivityGenHandler::parseParameters(), SUMORouteHandler::parseStop(), SUMOVehicleParserHelper::parseVehicleAttributes(), SUMOVehicleParserHelper::parseVehicleClass(), NIXMLNodesHandler::processTrafficLightDefinitions(), RORouteHandler::routePedestrian(), NIXMLEdgesHandler::tryGetLaneSpread(), and NIXMLEdgesHandler::tryGetShape().
|
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<SUMOReal> 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 93 of file SUMOSAXAttributes.cpp.
References SUMOSAXAttributes::emitEmptyError(), SUMOSAXAttributes::emitFormatError(), SUMOSAXAttributes::getFloat(), SUMOSAXAttributes::getName(), and SUMOSAXAttributes::hasAttribute().
Referenced by NLHandler::addE2Detector(), NLHandler::addEdgeLaneMeanData(), NLHandler::addPhase(), NLHandler::addRouteProbeDetector(), NLHandler::beginE3Detector(), NLHandler::initTrafficLightLogic(), GUISettingsHandler::myStartElement(), MSRouteHandler::myStartElement(), MSCalibrator::myStartElement(), MSTriggeredRerouter::myStartElement(), NLHandler::openWAUT(), NLTriggerBuilder::parseAndBuildCalibrator(), and SUMORouteHandler::parseStop().
|
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 284 of file SUMOSAXAttributesImpl_Binary.cpp.
References myPositionVectors.
|
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 195 of file SUMOSAXAttributesImpl_Binary.cpp.
References myStringValues.
Referenced by getFloat(), and getStringVector().
|
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 205 of file SUMOSAXAttributesImpl_Binary.cpp.
References myStringValues.
Referenced by serialize().
|
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 238 of file SUMOSAXAttributesImpl_Binary.cpp.
|
virtual |
Tries to read given attribute assuming it is a string vector.
[in] | attr | The id of the attribute to read |
Implements SUMOSAXAttributes.
Definition at line 307 of file SUMOSAXAttributesImpl_Binary.cpp.
References getString(), and SUMOSAXAttributes::parseStringVector().
|
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<SUMOReal> 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::getFloat(), SUMOSAXAttributes::getName(), SUMOSAXAttributes::hasAttribute(), and TIME2STEPS.
Referenced by NLHandler::addE1Detector(), NLHandler::addE2Detector(), NLHandler::addPhase(), NLHandler::addRouteProbeDetector(), NLHandler::addVTypeProbeDetector(), NLHandler::addWAUTSwitch(), NLHandler::beginE3Detector(), NLTriggerBuilder::buildVaporizer(), SUMORouteHandler::myStartElement(), ROJTRTurnDefLoader::myStartElement(), MSCalibrator::myStartElement(), TrajectoriesHandler::myStartElement(), MSLaneSpeedTrigger::myStartElement(), SUMOVehicleParserHelper::parseFlowAttributes(), and RORouteHandler::routePedestrian().
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 163 of file SUMOSAXAttributesImpl_Binary.cpp.
References myAttrs.
|
virtual |
Returns the information whether the named attribute is within the current list.
Implements SUMOSAXAttributes.
Definition at line 232 of file SUMOSAXAttributesImpl_Binary.cpp.
|
private |
Invalidated assignment operator.
|
staticinherited |
Splits the given string, stores it in a set.
Spaces, ",", and ";" are assumed to be separator characters. Though, in the case a "," or a ";" occurs, a warning is generated (once).
[in] | def | The string to split |
[out] | into | The set to fill |
Definition at line 179 of file SUMOSAXAttributes.cpp.
References StringTokenizer::hasNext(), SUMOSAXAttributes::myHaveInformedAboutDeprecatedDivider, StringTokenizer::next(), and WRITE_WARNING.
Referenced by SUMORouteHandler::parseStop().
|
staticinherited |
Splits the given string.
Spaces, ",", and ";" are assumed to be separator characters. Though, in the case a "," or a ";" occurs, a warning is generated (once).
[in] | def | The string to split |
[out] | into | The vector to fill |
Definition at line 164 of file SUMOSAXAttributes.cpp.
References StringTokenizer::hasNext(), SUMOSAXAttributes::myHaveInformedAboutDeprecatedDivider, StringTokenizer::next(), and WRITE_WARNING.
Referenced by NIXMLConnectionsHandler::addCrossing(), NIImporter_SUMO::addEdge(), NIImporter_SUMO::addJunction(), NIXMLEdgesHandler::addSplit(), SUMOSAXAttributesImpl_Xerces::getStringVector(), getStringVector(), MSStateHandler::myStartElement(), NLTriggerBuilder::parseAndBuildBusStop(), NLTriggerBuilder::parseAndBuildLaneSpeedTrigger(), NLTriggerBuilder::parseAndBuildRerouter(), and NIXMLNodesHandler::processTrafficLightDefinitions().
|
virtual |
Prints all attribute names and values into the given stream.
[in] | os | The stream to use |
Implements SUMOSAXAttributes.
Definition at line 325 of file SUMOSAXAttributesImpl_Binary.cpp.
References getName(), getStringSecure(), and myAttrs.
|
staticinherited |
The encoding of parsed strings.
Definition at line 382 of file SUMOSAXAttributes.h.
Referenced by OptionsCont::writeConfiguration(), OptionsCont::writeSchema(), and OptionsCont::writeXMLHeader().
|
private |
Map of attribute ids to names.
Definition at line 294 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getName().
|
private |
the attributes which are set
Definition at line 297 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by hasAttribute(), serialize(), and SUMOSAXAttributesImpl_Binary().
|
private |
Map of attribute ids to char.
Definition at line 300 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getBool(), getEdgeFunc(), getNodeType(), and SUMOSAXAttributesImpl_Binary().
Map of attribute ids to floats.
Definition at line 306 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getFloat(), and SUMOSAXAttributesImpl_Binary().
Map of attribute ids to integers.
Definition at line 303 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getColor(), getInt(), and SUMOSAXAttributesImpl_Binary().
|
private |
Map of attribute ids to string.
Definition at line 312 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getBoundary(), getShape(), and SUMOSAXAttributesImpl_Binary().
|
private |
Map of attribute ids to string.
Definition at line 309 of file SUMOSAXAttributesImpl_Binary.h.
Referenced by getString(), getStringSecure(), and SUMOSAXAttributesImpl_Binary().