aGrUM  0.17.1
a C++ library for (probabilistic) graphical models
ICPTDisturber.h
Go to the documentation of this file.
1 
29 #ifndef GUM_I_CPT_DISTURBER_H
30 #define GUM_I_CPT_DISTURBER_H
31 
32 #include <agrum/BN/BayesNet.h>
33 #include <agrum/agrum.h>
35 
36 namespace gum {
45  template < typename GUM_SCALAR >
46  class ICPTDisturber {
47  public:
48  // ############################################################################
50  // ############################################################################
52 
55  ICPTDisturber();
56 
60  virtual ~ICPTDisturber();
62 
63  // ############################################################################
65  // ############################################################################
73  virtual void disturbReducCPT(NodeId node,
74  BayesNet< GUM_SCALAR >& bayesNet,
75  Potential< GUM_SCALAR >& src,
76  Potential< GUM_SCALAR >& marg) = 0;
77 
85  virtual void disturbAugmCPT(NodeId node,
86  BayesNet< GUM_SCALAR >& bayesNet,
87  Potential< GUM_SCALAR >& src,
88  GUM_SCALAR variation) = 0;
89  };
90 
91 
92 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
93  extern template class ICPTDisturber< double >;
94 #endif
95 
96 
97 } /* namespace gum */
98 
100 #endif // GUM_I_CPT_DISTURBER_H
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Definition: agrum.h:25
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Size NodeId
Type for node ids.
Definition: graphElements.h:98