32 #ifndef GUM_BIF_WRITER_H 33 #define GUM_BIF_WRITER_H 40 #include <agrum/BN/io/BNWriter.h> 42 #include <agrum/agrum.h> 58 template <
typename GUM_SCALAR >
59 class BIFWriter:
public BNWriter< GUM_SCALAR > {
85 void write(std::ostream& output,
const IBayesNet< GUM_SCALAR >& bn) final;
95 void write(
const std::string& filePath,
const IBayesNet< GUM_SCALAR >& bn) final;
99 std::string _header_(
const IBayesNet< GUM_SCALAR >& bn);
102 std::string _variableBloc_(
const DiscreteVariable& var);
105 std::string _variableCPT_(
const Potential< GUM_SCALAR >& cpt);
108 std::string _variablesLabels_(
const Sequence<
const DiscreteVariable* >& varsSeq,
109 const Instantiation& inst);
113 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 114 extern template class BIFWriter<
double >;
119 #include <agrum/BN/io/BIF/BIFWriter_tpl.h>