aGrUM  0.16.0
defaultTriangulation.cpp
Go to the documentation of this file.
1 
29 #include <agrum/agrum.h>
33 
34 #ifndef DOXYGEN_SHOULD_SKIP_THIS
35 
36 namespace gum {
37 
39  DefaultTriangulation::DefaultTriangulation(const UndiGraph* theGraph,
40  const NodeProperty< Size >* domsizes,
41  bool minimality,
42  double theRatio,
43  double theThreshold) :
44  UnconstrainedTriangulation(theGraph,
45  domsizes,
46  DefaultEliminationSequenceStrategy(),
47  DefaultJunctionTreeStrategy(),
48  minimality),
49  __quasi_ratio(theRatio), __threshold(theThreshold) {
50  // for debugging purposes
51  GUM_CONSTRUCTOR(DefaultTriangulation);
52  }
53 
56  double theRatio,
57  double theThreshold) :
58  UnconstrainedTriangulation(DefaultEliminationSequenceStrategy(),
59  DefaultJunctionTreeStrategy(),
60  minimality),
61  __quasi_ratio(theRatio), __threshold(theThreshold) {
62  // for debugging purposes
63  GUM_CONSTRUCTOR(DefaultTriangulation);
64  }
65 
67  DefaultTriangulation::DefaultTriangulation(const DefaultTriangulation& from) :
68  UnconstrainedTriangulation(from), __quasi_ratio(from.__quasi_ratio),
69  __threshold(from.__threshold) {
70  // for debugging purposes
71  GUM_CONS_CPY(DefaultTriangulation);
72  }
73 
75  DefaultTriangulation::DefaultTriangulation(DefaultTriangulation&& from) :
76  UnconstrainedTriangulation(std::move(from)),
77  __quasi_ratio(from.__quasi_ratio), __threshold(from.__threshold) {
78  // for debugging purposes
79  GUM_CONS_MOV(DefaultTriangulation);
80  }
81 
84  // for debugging purposes
85  GUM_DESTRUCTOR(DefaultTriangulation);
86  }
87 
89  DefaultTriangulation* DefaultTriangulation::newFactory() const {
90  return new DefaultTriangulation(
91  isMinimalityRequired(), __quasi_ratio, __threshold);
92  }
93 
95  DefaultTriangulation* DefaultTriangulation::copyFactory() const {
96  return new DefaultTriangulation(*this);
97  }
98 
99 } /* namespace gum */
100 
101 #endif /* DOXYGEN_SHOULD_SKIP_THIS */
virtual DefaultTriangulation * newFactory() const
virtual clone constructor
STL namespace.
DefaultTriangulation(const UndiGraph *graph, const NodeProperty< Size > *dom_sizes, bool minimality=false, double theRatio=GUM_QUASI_RATIO, double theThreshold=GUM_WEIGHT_THRESHOLD)
basic constructor. initialize the triangulation
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Definition: agrum.h:25
~DefaultTriangulation()
destructor
virtual DefaultTriangulation * copyFactory() const
virtual copy constructor
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.