71 #ifndef GUM_BIF_XML_BN_READER_H 72 #define GUM_BIF_XML_BN_READER_H 74 #define TIXML_USE_TICPP 80 #include <agrum/BN/io/BNReader.h> 81 #include <agrum/agrum.h> 82 #include <agrum/tools/core/signal/signaler.h> 83 #include <agrum/tools/core/signal/signaler2.h> 84 #include <agrum/tools/external/tinyxml/ticpp/ticpp.h> 85 #include <agrum/tools/variables/labelizedVariable.h> 101 template <
typename GUM_SCALAR >
102 class BIFXMLBNReader: BNReader< GUM_SCALAR > {
109 BIFXMLBNReader(BayesNet< GUM_SCALAR >* bn,
const std::string& filePath);
114 ~BIFXMLBNReader() final;
122 Size proceed() final;
129 typename gum::Signaler2<
int, std::string > onProceed;
135 void _parsingVariables_(ticpp::Element* parentNetwork);
140 void _fillingBN_(ticpp::Element* parentNetwork);
146 BayesNet< GUM_SCALAR >* _bn_;
151 std::string _filePath_;
155 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 156 extern template class BIFXMLBNReader<
double >;
161 #include <agrum/BN/io/BIFXML/BIFXMLBNReader_tpl.h>