29 #ifndef GUM_MAX_INDUCED_WIDTH_MC_BAYES_NET_GENERATOR 30 #define GUM_MAX_INDUCED_WIDTH_MC_BAYES_NET_GENERATOR 32 #include <agrum/agrum.h> 44 # include <agrum/tools/core/mvsc/dirent.h> 47 #include <agrum/BN/BayesNet.h> 48 #include <agrum/BN/generator/MCBayesNetGenerator.h> 49 #include <agrum/BN/generator/simpleCPTDisturber.h> 50 #include <agrum/BN/generator/simpleCPTGenerator.h> 51 #include <agrum/tools/variables/labelizedVariable.h> 72 template <
typename GUM_SCALAR,
73 template <
typename >
class ICPTGenerator = SimpleCPTGenerator,
74 template <
typename >
class ICPTDisturber = SimpleCPTDisturber >
75 class MaxInducedWidthMCBayesNetGenerator:
76 public MCBayesNetGenerator< GUM_SCALAR, ICPTGenerator, ICPTDisturber > {
103 MaxInducedWidthMCBayesNetGenerator(Size nbrNodes,
105 Size maxModality = 2,
106 Size maxInducedWidth = 3,
107 Idx iteration = 5000,
130 explicit MaxInducedWidthMCBayesNetGenerator(BayesNet< GUM_SCALAR > bayesNet,
131 Size maxInducedWidth = 3,
132 Idx iteration = 5000,
139 ~MaxInducedWidthMCBayesNetGenerator() final;
154 Size maxlog10InducedWidth()
const;
161 void setMaxlog10InducedWidth(Size maxlog10InducedWidth);
165 Size maxlog10InducedWidth_;
173 bool _checkConditions_() final;
177 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS 178 extern template class MaxInducedWidthMCBayesNetGenerator<
double >;
183 #include <agrum/BN/generator/maxInducedWidthMCBayesNetGenerator_tpl.h>