30 #ifndef GUM_BAYES_NET_INFERENCE_H 31 #define GUM_BAYES_NET_INFERENCE_H 34 #include <agrum/BN/IBayesNet.h> 35 #include <agrum/tools/graphicalModels/inference/graphicalModelInference.h> 36 #include <agrum/agrum.h> 63 template <
typename GUM_SCALAR >
64 class JointTargetedInference;
69 template <
typename GUM_SCALAR >
70 class MarginalTargetedInference;
75 template <
typename GUM_SCALAR >
76 class EvidenceInference;
142 template <
typename GUM_SCALAR >
224 virtual void setBN(
const IBayesNet< GUM_SCALAR >* bn);
237 friend MarginalTargetedInference< GUM_SCALAR >;
238 friend JointTargetedInference< GUM_SCALAR >;
239 friend EvidenceInference< GUM_SCALAR >;
246 #include <agrum/BN/inference/tools/BayesNetInference_tpl.h> BayesNetInference(const IBayesNet< GUM_SCALAR > *bn)
default constructor
virtual ~BayesNetInference()
destructor
BayesNetInference()
default constructor with a null BN (useful for virtual inheritance)
INLINE void emplace(Args &&... args)
<agrum/BN/inference/BayesNetInference.h>
FindBarrenNodesType
type of algorithm to determine barren nodes
void _setBayesNetDuringConstruction_(const IBayesNet< GUM_SCALAR > *bn)
assigns a BN during the inference engine construction
virtual void setBN(const IBayesNet< GUM_SCALAR > *bn)
assigns a new BN to the inference engine
virtual const IBayesNet< GUM_SCALAR > & BN() const final
Returns a constant reference over the IBayesNet referenced by this class.