class
#include <iDynTree/XMLElement.h>
XMLElement Class representing an XML element.
This class represents an XML element encountered during parsing, i.e. the XML part between (and comprising) <tag> ... </tag>
Derived classes
- class ForceTorqueSensorElement
- class GeometryElement
- class InertialElement
- class JointElement
- class LinkElement
- class MaterialElement
- class OriginElement
- class RobotElement
- class SensorElement
- class VisualElement
Constructors, destructors, conversion operators
- XMLElement(XMLParserState& parserState) explicit
- Default constructor.
- XMLElement(XMLParserState& parserState, const std::string& name) explicit
- Constructs a named XML Element with no attributes.
-
XMLElement(XMLParserState& parserState,
const std::string& name,
const std::unordered_map<std::string, std::shared_ptr<iDynTree::
XMLAttribute>>& attributes) explicit - Constructs a named XML Element with the specified attributes.
- ~XMLElement() virtual
- Destructor.
Public functions
-
void setAttributeCallback(std::function<bool(const std::unordered_map<std::string, std::shared_ptr<iDynTree::
XMLAttribute>>&)> callback) - Sets a callback that will be called when attributes will be parsed.
- void setExitScopeCallback(std::function<void()> callback)
- Sets a callback that will be called when the element has been finished parsing.
- void setChildHasBeenParsedCallback(std::function<void(std::shared_ptr<XMLElement>)> callback)
- Sets a callback that will be called when a child element has been finished parsing.
-
auto attributeCallback() const -> std::function<bool(const std::unordered_map<std::string, std::shared_ptr<iDynTree::
XMLAttribute>>&)> - auto exitScopeCallback() const -> std::function<void()>
- auto name() const -> std::string
- auto children() const -> const std::vector<std::shared_ptr<XMLElement>>
-
auto attributes() const -> const std::unordered_map<std::string, std::shared_ptr<iDynTree::
XMLAttribute>> - auto childElementForName(const std::string& name) -> std::shared_ptr<XMLElement> virtual
- Factory method to create child element given the name.
- void exitElementScope() virtual
- void childHasBeenParsed(std::shared_ptr<XMLElement> parsedChild) virtual
-
auto setAttributes(const std::unordered_map<std::string, std::shared_ptr<iDynTree::
XMLAttribute>>& attributes) -> bool virtual - void parsedCharacters(const std::string& characters) virtual
- auto getParsedTextContent() const -> std::string
- auto description() const -> std::string
Protected functions
- auto getParserState() -> XMLParserState&
Function documentation
iDynTree:: XMLElement:: XMLElement(XMLParserState& parserState) explicit
Default constructor.
Parameters | |
---|---|
parserState | a reference to the parser state to propagate to the elements. |
Constructs an unnamed XML Element with no attributes.
iDynTree:: XMLElement:: XMLElement(XMLParserState& parserState,
const std::string& name) explicit
Constructs a named XML Element with no attributes.
Parameters | |
---|---|
parserState | a reference to the parser state to propagate to the elements. |
name | the name of the XML element. |
iDynTree:: XMLElement:: XMLElement(XMLParserState& parserState,
const std::string& name,
const std::unordered_map<std::string, std::shared_ptr<iDynTree:: XMLAttribute>>& attributes) explicit
Constructs a named XML Element with the specified attributes.
Parameters | |
---|---|
parserState | a reference to the parser state to propagate to the elements. |
name | the name of the XML element. |
attributes | the attributes of the XML element. |
This is the designated initializer.
void iDynTree:: XMLElement:: setAttributeCallback(std::function<bool(const std::unordered_map<std::string, std::shared_ptr<iDynTree:: XMLAttribute>>&)> callback)
Sets a callback that will be called when attributes will be parsed.
Parameters | |
---|---|
callback | the callback to be set |
The function should have the following signature const std::unordered_map<std::string, std::shared_ptr<iDynTree::
. The attributes parsed from the XML will be passed as argument to the function. In case of error, it should return false, true otherwise.
void iDynTree:: XMLElement:: setExitScopeCallback(std::function<void()> callback)
Sets a callback that will be called when the element has been finished parsing.
Parameters | |
---|---|
callback | the callback |
The function should have the following signature void -> void
.
void iDynTree:: XMLElement:: setChildHasBeenParsedCallback(std::function<void(std::shared_ptr<XMLElement>)> callback)
Sets a callback that will be called when a child element has been finished parsing.
Parameters | |
---|---|
callback | the callback |
The callback should have the following signature std::shared_ptr<XMLElement> -> void
, where the element passed is the child element that has been parsed.
std::shared_ptr<XMLElement> iDynTree:: XMLElement:: childElementForName(const std::string& name) virtual
Factory method to create child element given the name.
Parameters | |
---|---|
name | name of the element to create |
Returns | a new parser element for the corresponding tag |