![]() |
aGrUM 3.2.0
a C++ library for (probabilistic) graphical models
|
Opaque facade over the vendored ticpp/tinyxml XML parser. More...
#include <exception>#include <memory>#include <string>#include <vector>#include <agrum/config.h>Go to the source code of this file.
Classes | |
| class | gum::XmlException |
| Thrown by XmlDocument/XmlElement on any ticpp/tinyxml parse or access error. More... | |
| class | gum::XmlElement |
| A non-owning handle to an XML element, opaque over ticpp::Element. More... | |
| class | gum::XmlDocument |
| An XML document, opaque over ticpp::Document. More... | |
Namespaces | |
| namespace | gum |
| gum is the global namespace for all aGrUM entities | |
Opaque facade over the vendored ticpp/tinyxml XML parser.
BIFXMLBNReader and XDSLBNReader are the only consumers of ticpp/tinyxml (base/external/tinyxml). That vendored code must never be edited to add export attributes (same rule as base/external/lrslib): it stays compiled only into agrumBN, and its types (ticpp::Document, ticpp::Element, ...) never appear in any aGrUM-owned header – this facade holds them behind an opaque handle (XmlElement) / a PIMPL (XmlDocument), so no other TU ever needs to see or link against ticpp directly. Under BUILD_SHARED_LIBS=ON, only this facade is GUM_PUBLIC_BN-tagged and exported from agrumBN; core and every other consumer link against it normally, exactly like any other BN-owned symbol.
Definition in file XmlDocument.h.