|
FERS 1.0.0
The Flexible Extensible Radar Simulator
|
Classes | |
| struct | AssetLoaders |
| Container for functions that load external file-backed assets. More... | |
| struct | ParserContext |
| Encapsulates the state required during the XML parsing process. More... | |
| struct | ReferenceLookup |
| Holds maps to resolve string names to internal SimId references during XML parsing. More... | |
Functions | |
| RealType | get_child_real_type (const XmlElement &element, const std::string &elementName) |
| Extracts a floating-point (RealType) value from a named child element. | |
| bool | get_attribute_bool (const XmlElement &element, const std::string &attributeName, bool defaultVal) |
| Extracts a boolean value from a named attribute. | |
| SimId | assign_id_from_attribute (const std::string &owner, ObjectType type) |
| Generates a unique SimId based on the requested object type. | |
| SimId | resolve_reference_id (const XmlElement &element, const std::string &attributeName, const std::string &owner, const std::unordered_map< std::string, SimId > &name_map) |
| Resolves an XML string reference into an internal SimId. | |
| std::vector< radar::SchedulePeriod > | parseSchedule (const XmlElement &parent, const std::string &parentName, bool isPulsed, RealType pri=0.0) |
| Parses a schedule (active periods) for a transmitter or receiver. | |
| void | parseParameters (const XmlElement ¶meters, params::Parameters ¶ms_out) |
Parses the <parameters> block into the isolated context parameters. | |
| void | parseWaveform (const XmlElement &waveform, ParserContext &ctx) |
Parses a <waveform> block and adds it to the World. | |
| void | parseTiming (const XmlElement &timing, ParserContext &ctx) |
Parses a <timing> block and adds the prototype timing to the World. | |
| void | parseAntenna (const XmlElement &antenna, ParserContext &ctx) |
Parses an <antenna> block and adds it to the World. | |
| void | parseMotionPath (const XmlElement &motionPath, radar::Platform *platform) |
Parses a <motionpath> block and attaches it to a Platform. | |
| void | parseRotationPath (const XmlElement &rotation, radar::Platform *platform, params::RotationAngleUnit unit) |
Parses a <rotationpath> block and attaches it to a Platform. | |
| void | parseFixedRotation (const XmlElement &rotation, radar::Platform *platform, params::RotationAngleUnit unit) |
Parses a <fixedrotation> block and attaches it to a Platform. | |
| radar::Transmitter * | parseTransmitter (const XmlElement &transmitter, radar::Platform *platform, ParserContext &ctx, const ReferenceLookup &refs) |
Parses a <transmitter> block, resolves its dependencies, and adds it to the World. | |
| radar::Receiver * | parseReceiver (const XmlElement &receiver, radar::Platform *platform, ParserContext &ctx, const ReferenceLookup &refs) |
Parses a <receiver> block, resolves its dependencies, and adds it to the World. | |
| void | parseMonostatic (const XmlElement &monostatic, radar::Platform *platform, ParserContext &ctx, const ReferenceLookup &refs) |
Parses a <monostatic> block, creating a linked transmitter and receiver pair. | |
| void | parseTarget (const XmlElement &target, radar::Platform *platform, ParserContext &ctx) |
Parses a <target> block and adds it to the World. | |
| void | parsePlatformElements (const XmlElement &platform, ParserContext &ctx, radar::Platform *plat, const std::function< void(const XmlElement &, std::string_view)> ®ister_name, const ReferenceLookup &refs) |
| Iterates and parses all children elements (radars, targets) of a platform. | |
| void | parsePlatform (const XmlElement &platform, ParserContext &ctx, const std::function< void(const XmlElement &, std::string_view)> ®ister_name, const ReferenceLookup &refs) |
Parses a complete <platform> block, including its motion paths and sub-elements. | |
| void | collectIncludeElements (const XmlDocument &doc, const fs::path ¤tDir, std::vector< fs::path > &includePaths) |
| bool | addIncludeFilesToMainDocument (const XmlDocument &mainDoc, const fs::path ¤tDir) |
| void | validateXml (bool didCombine, const XmlDocument &mainDoc) |
| Validates an XML document against the embedded DTD and XSD schemas. | |
| void | processParsedDocument (const XmlDocument &doc, ParserContext &ctx) |
| Coordinates the full parsing of a validated XML document tree. | |
| AssetLoaders | createDefaultAssetLoaders () |
Creates an AssetLoaders struct populated with standard file-I/O implementations. | |
| void | collectIncludeElements (const XmlDocument &doc, const std::filesystem::path ¤tDir, std::vector< std::filesystem::path > &includePaths) |
Recursively finds all <include> tags in a document and resolves their absolute paths. | |
| bool | addIncludeFilesToMainDocument (const XmlDocument &mainDoc, const std::filesystem::path ¤tDir) |
Resolves and merges all <include> files directly into the provided main document. | |
| bool serial::xml_parser_utils::addIncludeFilesToMainDocument | ( | const XmlDocument & | mainDoc, |
| const fs::path & | currentDir | ||
| ) |
Definition at line 969 of file xml_parser_utils.cpp.
References collectIncludeElements(), XmlDocument::loadFile(), mergeXmlDocuments(), and removeIncludeElements().
Referenced by serial::parseSimulation().
Here is the call graph for this function:
Here is the caller graph for this function:| bool serial::xml_parser_utils::addIncludeFilesToMainDocument | ( | const XmlDocument & | mainDoc, |
| const std::filesystem::path & | currentDir | ||
| ) |
Resolves and merges all <include> files directly into the provided main document.
| mainDoc | The primary XML document that will be mutated. |
| currentDir | The base directory used to resolve include paths. |
| SimId serial::xml_parser_utils::assign_id_from_attribute | ( | const std::string & | owner, |
| ObjectType | type | ||
| ) |
Generates a unique SimId based on the requested object type.
| owner | The name/description of the object requesting the ID (used for logging). |
| type | The category/type of the object. |
Definition at line 76 of file xml_parser_utils.cpp.
References SimIdGenerator::generateId(), SimIdGenerator::instance(), LOG, and logging::TRACE.
Referenced by parseAntenna(), parsePlatform(), parseReceiver(), parseTarget(), parseTiming(), parseTransmitter(), and parseWaveform().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::collectIncludeElements | ( | const XmlDocument & | doc, |
| const fs::path & | currentDir, | ||
| std::vector< fs::path > & | includePaths | ||
| ) |
Definition at line 939 of file xml_parser_utils.cpp.
References XmlElement::childElement(), collectIncludeElements(), logging::ERROR, XmlDocument::getRootElement(), XmlElement::getText(), XmlElement::isValid(), XmlDocument::loadFile(), and LOG.
Referenced by addIncludeFilesToMainDocument(), and collectIncludeElements().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::collectIncludeElements | ( | const XmlDocument & | doc, |
| const std::filesystem::path & | currentDir, | ||
| std::vector< std::filesystem::path > & | includePaths | ||
| ) |
Recursively finds all <include> tags in a document and resolves their absolute paths.
| doc | The XML document to search. |
| currentDir | The base directory for resolving relative paths. |
| includePaths | A vector populated with the absolute paths of included files. |
| AssetLoaders serial::xml_parser_utils::createDefaultAssetLoaders | ( | ) |
Creates an AssetLoaders struct populated with standard file-I/O implementations.
Provides the default hooks to load actual HDF5, XML, and binary waveform files from the filesystem into the simulation environment.
AssetLoaders instance with standard file handlers attached. Definition at line 1122 of file xml_parser_utils.cpp.
References radar::createFileTarget(), serial::xml_parser_utils::AssetLoaders::loadWaveform, and serial::loadWaveformFromFile().
Referenced by serial::parseSimulation(), and serial::parseSimulationFromString().
Here is the call graph for this function:
Here is the caller graph for this function:| bool serial::xml_parser_utils::get_attribute_bool | ( | const XmlElement & | element, |
| const std::string & | attributeName, | ||
| bool | defaultVal | ||
| ) |
Extracts a boolean value from a named attribute.
| element | The XML element containing the attribute. |
| attributeName | The name of the attribute. |
| defaultVal | The value to return if the attribute is missing or invalid. |
Definition at line 62 of file xml_parser_utils.cpp.
References XmlElement::getSafeAttribute(), LOG, and logging::WARNING.
Referenced by parseReceiver(), and parseTiming().
Here is the call graph for this function:
Here is the caller graph for this function:| RealType serial::xml_parser_utils::get_child_real_type | ( | const XmlElement & | element, |
| const std::string & | elementName | ||
| ) |
Extracts a floating-point (RealType) value from a named child element.
| element | The parent XML element. |
| elementName | The name of the child element to extract text from. |
| XmlException | if the child element is missing or empty. |
Definition at line 52 of file xml_parser_utils.cpp.
References XmlElement::childElement(), and XmlElement::getText().
Referenced by parseAntenna(), parseFixedRotation(), parseMotionPath(), parseParameters(), parseReceiver(), parseRotationPath(), parseTarget(), parseTiming(), parseTransmitter(), and parseWaveform().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseAntenna | ( | const XmlElement & | antenna, |
| ParserContext & | ctx | ||
| ) |
Parses an <antenna> block and adds it to the World.
| antenna | The <antenna> XML element. |
| ctx | The current parser context. |
Definition at line 429 of file xml_parser_utils.cpp.
References core::World::add(), Antenna, assign_id_from_attribute(), logging::DEBUG, logging::FATAL, get_child_real_type(), XmlElement::getSafeAttribute(), serial::xml_parser_utils::ParserContext::loaders, serial::xml_parser_utils::AssetLoaders::loadH5Antenna, serial::xml_parser_utils::AssetLoaders::loadXmlAntenna, LOG, logging::WARNING, and serial::xml_parser_utils::ParserContext::world.
Referenced by processParsedDocument().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseFixedRotation | ( | const XmlElement & | rotation, |
| radar::Platform * | platform, | ||
| params::RotationAngleUnit | unit | ||
| ) |
Parses a <fixedrotation> block and attaches it to a Platform.
| rotation | The <fixedrotation> XML element. |
| platform | The platform to modify. |
Definition at line 615 of file xml_parser_utils.cpp.
References serial::rotation_warning_utils::Angle, logging::DEBUG, serial::rotation_angle_utils::external_rotation_rate_to_internal(), serial::rotation_angle_utils::external_rotation_to_internal(), logging::FATAL, get_child_real_type(), radar::Platform::getName(), radar::Platform::getRotationPath(), LOG, serial::rotation_warning_utils::maybe_warn_about_rotation_value(), serial::rotation_warning_utils::Rate, and math::RotationPath::setConstantRate().
Referenced by parsePlatform().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseMonostatic | ( | const XmlElement & | monostatic, |
| radar::Platform * | platform, | ||
| ParserContext & | ctx, | ||
| const ReferenceLookup & | refs | ||
| ) |
Parses a <monostatic> block, creating a linked transmitter and receiver pair.
| monostatic | The <monostatic> XML element. |
| platform | The platform this radar belongs to. |
| ctx | The current parser context. |
| refs | Lookup tables for resolving references. |
Definition at line 805 of file xml_parser_utils.cpp.
References parseReceiver(), parseTransmitter(), and radar::Radar::setAttached().
Referenced by parsePlatformElements().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseMotionPath | ( | const XmlElement & | motionPath, |
| radar::Platform * | platform | ||
| ) |
Parses a <motionpath> block and attaches it to a Platform.
| motionPath | The <motionpath> XML element. |
| platform | The platform to modify. |
Definition at line 487 of file xml_parser_utils.cpp.
References math::Path::addCoord(), XmlElement::childElement(), logging::ERROR, math::Path::finalize(), get_child_real_type(), radar::Platform::getMotionPath(), radar::Platform::getName(), XmlElement::getSafeAttribute(), math::Path::INTERP_CUBIC, math::Path::INTERP_LINEAR, math::Path::INTERP_STATIC, XmlElement::isValid(), LOG, math::Coord::pos, math::Path::setInterp(), math::Coord::t, and logging::TRACE.
Referenced by parsePlatform().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseParameters | ( | const XmlElement & | parameters, |
| params::Parameters & | params_out | ||
| ) |
Parses the <parameters> block into the isolated context parameters.
| parameters | The <parameters> XML element. |
| params_out | The Parameters struct to mutate with parsed values. |
Definition at line 128 of file xml_parser_utils.cpp.
References params::Parameters::adc_bits, params::Parameters::c, XmlElement::childElement(), params::Parameters::coordinate_frame, logging::DEBUG, params::Parameters::DEFAULT_C, params::ECEF, params::Parameters::end, params::ENU, get_child_real_type(), XmlElement::getSafeAttribute(), XmlElement::getText(), logging::INFO, XmlElement::isValid(), LOG, params::Parameters::origin_altitude, params::Parameters::origin_latitude, params::Parameters::origin_longitude, params::Parameters::oversample_ratio, params::Parameters::random_seed, params::Parameters::rate, params::Parameters::rotation_angle_unit, params::rotationAngleUnitFromToken(), params::Parameters::sim_sampling_rate, params::Parameters::start, params::UTM, params::Parameters::utm_north_hemisphere, params::Parameters::utm_zone, and logging::WARNING.
Referenced by processParsedDocument().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parsePlatform | ( | const XmlElement & | platform, |
| ParserContext & | ctx, | ||
| const std::function< void(const XmlElement &, std::string_view)> & | register_name, | ||
| const ReferenceLookup & | refs | ||
| ) |
Parses a complete <platform> block, including its motion paths and sub-elements.
| platform | The <platform> XML element. |
| ctx | The current parser context. |
| register_name | Callback used to ensure unique naming. |
| refs | Lookup tables for resolving references. |
Definition at line 902 of file xml_parser_utils.cpp.
References core::World::add(), assign_id_from_attribute(), XmlElement::childElement(), logging::ERROR, radar::Platform::getName(), XmlElement::getSafeAttribute(), XmlElement::isValid(), LOG, serial::xml_parser_utils::ParserContext::parameters, parseFixedRotation(), parseMotionPath(), parsePlatformElements(), parseRotationPath(), Platform, params::Parameters::rotation_angle_unit, and serial::xml_parser_utils::ParserContext::world.
Referenced by processParsedDocument().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parsePlatformElements | ( | const XmlElement & | platform, |
| ParserContext & | ctx, | ||
| radar::Platform * | plat, | ||
| const std::function< void(const XmlElement &, std::string_view)> & | register_name, | ||
| const ReferenceLookup & | refs | ||
| ) |
Iterates and parses all children elements (radars, targets) of a platform.
| platform | The <platform> XML element. |
| ctx | The current parser context. |
| plat | The Platform object to attach parsed elements to. |
| register_name | Callback used to ensure unique naming globally across parsed objects. |
| refs | Lookup tables for resolving references. |
Definition at line 866 of file xml_parser_utils.cpp.
References XmlElement::childElement(), XmlElement::isValid(), parseMonostatic(), parseReceiver(), parseTarget(), and parseTransmitter().
Referenced by parsePlatform().
Here is the call graph for this function:
Here is the caller graph for this function:| radar::Receiver * serial::xml_parser_utils::parseReceiver | ( | const XmlElement & | receiver, |
| radar::Platform * | platform, | ||
| ParserContext & | ctx, | ||
| const ReferenceLookup & | refs | ||
| ) |
Parses a <receiver> block, resolves its dependencies, and adds it to the World.
| receiver | The <receiver> XML element. |
| platform | The platform this receiver belongs to. |
| ctx | The current parser context. |
| refs | Lookup tables for resolving antenna and timing references. |
Definition at line 715 of file xml_parser_utils.cpp.
References core::World::add(), serial::xml_parser_utils::ReferenceLookup::antennas, assign_id_from_attribute(), XmlElement::childElement(), radar::CW_MODE, logging::DEBUG, core::World::findAntenna(), core::World::findTiming(), radar::Receiver::FLAG_NODIRECT, radar::Receiver::FLAG_NOPROPLOSS, get_attribute_bool(), get_child_real_type(), timing::PrototypeTiming::getId(), timing::PrototypeTiming::getName(), core::World::getReceivers(), XmlElement::getSafeAttribute(), logging::INFO, XmlElement::isValid(), LOG, serial::xml_parser_utils::ParserContext::master_seeder, parseSchedule(), radar::PULSED_MODE, Receiver, resolve_reference_id(), serial::xml_parser_utils::ReferenceLookup::timings, and serial::xml_parser_utils::ParserContext::world.
Referenced by parseMonostatic(), and parsePlatformElements().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseRotationPath | ( | const XmlElement & | rotation, |
| radar::Platform * | platform, | ||
| params::RotationAngleUnit | unit | ||
| ) |
Parses a <rotationpath> block and attaches it to a Platform.
| rotation | The <rotationpath> XML element. |
| platform | The platform to modify. |
Definition at line 548 of file xml_parser_utils.cpp.
References math::RotationPath::addCoord(), serial::rotation_warning_utils::Angle, XmlElement::childElement(), logging::ERROR, serial::rotation_angle_utils::external_rotation_to_internal(), math::RotationPath::finalize(), get_child_real_type(), radar::Platform::getName(), radar::Platform::getRotationPath(), XmlElement::getSafeAttribute(), math::RotationPath::INTERP_CUBIC, math::RotationPath::INTERP_LINEAR, math::RotationPath::INTERP_STATIC, XmlElement::isValid(), LOG, serial::rotation_warning_utils::maybe_warn_about_rotation_value(), math::RotationPath::setInterp(), and logging::TRACE.
Referenced by parsePlatform().
Here is the call graph for this function:
Here is the caller graph for this function:| std::vector< radar::SchedulePeriod > serial::xml_parser_utils::parseSchedule | ( | const XmlElement & | parent, |
| const std::string & | parentName, | ||
| bool | isPulsed, | ||
| RealType | pri = 0.0 |
||
| ) |
Parses a schedule (active periods) for a transmitter or receiver.
| parent | The parent XML element that might contain a <schedule> block. |
| parentName | Name of the parent for error logging. |
| isPulsed | True if the owning object operates in pulsed mode (used for PRI validation). |
| pri | The pulse repetition interval, if applicable. |
SchedulePeriod objects. Definition at line 99 of file xml_parser_utils.cpp.
References XmlElement::childElement(), XmlElement::getSafeAttribute(), XmlElement::isValid(), LOG, radar::processRawSchedule(), and logging::WARNING.
Referenced by parseReceiver(), and parseTransmitter().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseTarget | ( | const XmlElement & | target, |
| radar::Platform * | platform, | ||
| ParserContext & | ctx | ||
| ) |
Parses a <target> block and adds it to the World.
| target | The <target> XML element. |
| platform | The platform this target belongs to. |
| ctx | The current parser context. |
Definition at line 814 of file xml_parser_utils.cpp.
References core::World::add(), assign_id_from_attribute(), XmlElement::childElement(), radar::createIsoTarget(), logging::DEBUG, get_child_real_type(), radar::Platform::getName(), XmlElement::getSafeAttribute(), XmlElement::isValid(), serial::xml_parser_utils::ParserContext::loaders, serial::xml_parser_utils::AssetLoaders::loadFileTarget, LOG, serial::xml_parser_utils::ParserContext::master_seeder, Target, and serial::xml_parser_utils::ParserContext::world.
Referenced by parsePlatformElements().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseTiming | ( | const XmlElement & | timing, |
| ParserContext & | ctx | ||
| ) |
Parses a <timing> block and adds the prototype timing to the World.
| timing | The <timing> XML element. |
| ctx | The current parser context. |
Definition at line 363 of file xml_parser_utils.cpp.
References core::World::add(), assign_id_from_attribute(), get_attribute_bool(), get_child_real_type(), XmlElement::getSafeAttribute(), XmlElement::isValid(), LOG, Timing, logging::WARNING, and serial::xml_parser_utils::ParserContext::world.
Referenced by processParsedDocument().
Here is the call graph for this function:
Here is the caller graph for this function:| radar::Transmitter * serial::xml_parser_utils::parseTransmitter | ( | const XmlElement & | transmitter, |
| radar::Platform * | platform, | ||
| ParserContext & | ctx, | ||
| const ReferenceLookup & | refs | ||
| ) |
Parses a <transmitter> block, resolves its dependencies, and adds it to the World.
| transmitter | The <transmitter> XML element. |
| platform | The platform this transmitter belongs to. |
| ctx | The current parser context. |
| refs | Lookup tables for resolving waveform, antenna, and timing references. |
Definition at line 650 of file xml_parser_utils.cpp.
References core::World::add(), serial::xml_parser_utils::ReferenceLookup::antennas, assign_id_from_attribute(), XmlElement::childElement(), radar::CW_MODE, core::World::findAntenna(), core::World::findTiming(), core::World::findWaveform(), get_child_real_type(), timing::PrototypeTiming::getId(), timing::PrototypeTiming::getName(), XmlElement::getSafeAttribute(), core::World::getTransmitters(), XmlElement::isValid(), serial::xml_parser_utils::ParserContext::master_seeder, parseSchedule(), radar::PULSED_MODE, resolve_reference_id(), serial::xml_parser_utils::ReferenceLookup::timings, Transmitter, serial::xml_parser_utils::ReferenceLookup::waveforms, and serial::xml_parser_utils::ParserContext::world.
Referenced by parseMonostatic(), and parsePlatformElements().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::parseWaveform | ( | const XmlElement & | waveform, |
| ParserContext & | ctx | ||
| ) |
Parses a <waveform> block and adds it to the World.
| waveform | The <waveform> XML element. |
| ctx | The current parser context. |
Definition at line 327 of file xml_parser_utils.cpp.
References core::World::add(), assign_id_from_attribute(), serial::xml_parser_utils::ParserContext::base_dir, XmlElement::childElement(), params::Parameters::end, logging::FATAL, get_child_real_type(), XmlElement::getSafeAttribute(), XmlElement::isValid(), serial::xml_parser_utils::ParserContext::loaders, serial::xml_parser_utils::AssetLoaders::loadWaveform, LOG, serial::xml_parser_utils::ParserContext::parameters, params::Parameters::start, Waveform, and serial::xml_parser_utils::ParserContext::world.
Referenced by processParsedDocument().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::processParsedDocument | ( | const XmlDocument & | doc, |
| ParserContext & | ctx | ||
| ) |
Coordinates the full parsing of a validated XML document tree.
This is the root parsing function that iterates over parameters, waveforms, timings, antennas, and platforms. It populates the World in the proper order and triggers initial event scheduling.
| doc | The parsed XML document tree. |
| ctx | The parser context containing the World, isolated parameters, and asset loaders. |
Definition at line 1009 of file xml_parser_utils.cpp.
References XmlElement::childElement(), radar::CW_MODE, logging::DEBUG, core::World::dumpEventQueue(), params::Parameters::end, core::World::getAntennas(), core::World::getReceivers(), XmlDocument::getRootElement(), XmlElement::getSafeAttribute(), core::World::getTimings(), core::World::getWaveforms(), logging::INFO, XmlElement::isValid(), LOG, XmlElement::name(), params::Parameters::oversample_ratio, serial::xml_parser_utils::ParserContext::parameters, params::params, parseAntenna(), parseParameters(), parsePlatform(), parseTiming(), parseWaveform(), params::Parameters::rate, core::World::scheduleInitialEvents(), params::Parameters::simulation_name, params::Parameters::start, logging::WARNING, and serial::xml_parser_utils::ParserContext::world.
Referenced by serial::parseSimulation(), and serial::parseSimulationFromString().
Here is the call graph for this function:
Here is the caller graph for this function:| SimId serial::xml_parser_utils::resolve_reference_id | ( | const XmlElement & | element, |
| const std::string & | attributeName, | ||
| const std::string & | owner, | ||
| const std::unordered_map< std::string, SimId > & | name_map | ||
| ) |
Resolves an XML string reference into an internal SimId.
| element | The XML element containing the string reference attribute. |
| attributeName | The name of the attribute containing the reference string. |
| owner | A description of the object making the reference (used for error messages). |
| name_map | The lookup table mapping string names to SimIds. |
| XmlException | if the reference cannot be resolved or is missing. |
Definition at line 83 of file xml_parser_utils.cpp.
References XmlElement::getSafeAttribute().
Referenced by parseReceiver(), and parseTransmitter().
Here is the call graph for this function:
Here is the caller graph for this function:| void serial::xml_parser_utils::validateXml | ( | bool | didCombine, |
| const XmlDocument & | mainDoc | ||
| ) |
Validates an XML document against the embedded DTD and XSD schemas.
| didCombine | Flag indicating whether the document contains merged includes (used for formatting log messages). |
| mainDoc | The XML document to validate. |
| XmlException | if validation fails. |
Definition at line 991 of file xml_parser_utils.cpp.
References logging::DEBUG, logging::FATAL, LOG, XmlDocument::validateWithDtd(), and XmlDocument::validateWithXsd().
Referenced by serial::parseSimulation(), and serial::parseSimulationFromString().
Here is the call graph for this function:
Here is the caller graph for this function: