aGrUM  0.16.0
loopySamplingInference.h
Go to the documentation of this file.
1 
32 #ifndef GUM_LOOPY_INFERENCE_H
33 #define GUM_LOOPY_INFERENCE_H
40 
41 namespace gum {
42 
58  template < typename GUM_SCALAR, template < typename > class APPROX >
59  class LoopySamplingInference : public APPROX< GUM_SCALAR > {
60  public:
65 
69  virtual ~LoopySamplingInference();
70 
73  virtual void _makeInference();
74 
75  void setVirtualLBPSize(GUM_SCALAR vlbpsize) {
76  if (vlbpsize > 0) _virtualLBPSize = vlbpsize;
77  };
78 
79  protected:
80  GUM_SCALAR _virtualLBPSize;
81  };
82 
83 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
84 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
85 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
86 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
87 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
88 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
89 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
90 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
92 # endif
93 # endif
94 # endif
95 # endif
96 # endif
97 # endif
98 # endif
99 #endif
100 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
101 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
102 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
103 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
104 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
105 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
106 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
107 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
109 # endif
110 # endif
111 # endif
112 # endif
113 # endif
114 # endif
115 # endif
116 #endif
117 
118 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
119 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
120 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
121 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
122 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
123 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
124 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
125 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
127 # endif
128 # endif
129 # endif
130 # endif
131 # endif
132 # endif
133 # endif
134 #endif
135 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
136 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
137 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
138 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
139 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
140 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
141 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
142 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
144 # endif
145 # endif
146 # endif
147 # endif
148 # endif
149 # endif
150 # endif
151 #endif
152 
153 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
154 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
155 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
156 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
157 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
158 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
159 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
160 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
162 # endif
163 # endif
164 # endif
165 # endif
166 # endif
167 # endif
168 # endif
169 #endif
170 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
171 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
172 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
173 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
174 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
175 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
176 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
177 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
179 # endif
180 # endif
181 # endif
182 # endif
183 # endif
184 # endif
185 # endif
186 #endif
187 
188 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
189 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
190 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
191 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
192 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
193 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
194 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
195 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
197 # endif
198 # endif
199 # endif
200 # endif
201 # endif
202 # endif
203 # endif
204 #endif
205 #ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
206 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
207 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
208 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
209 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
210 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
211 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
212 # ifndef GUM_NO_EXTERN_TEMPLATE_CLASS
214 # endif
215 # endif
216 # endif
217 # endif
218 # endif
219 # endif
220 # endif
221 #endif
222 
223  template < typename GUM_SCALAR >
226  template < typename GUM_SCALAR >
227  using HybridWeightedSampling =
229  template < typename GUM_SCALAR >
232  template < typename GUM_SCALAR >
234 } // namespace gum
235 
237 #endif
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.
Class representing the minimal interface for Bayesian Network.
Definition: IBayesNet.h:62
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.
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
virtual ~LoopySamplingInference()
destructor
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.
virtual void _makeInference()
makes the inference by generating samples w.r.t the mother class&#39; sampling method after initalizing e...
LoopySamplingInference(const IBayesNet< GUM_SCALAR > *bn)
Default constructor.
<agrum/BN/inference/loopySamplingInference.h>
void setVirtualLBPSize(GUM_SCALAR vlbpsize)
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.