54#ifndef DOXYGEN_SHOULD_SKIP_THIS
63 double theThreshold) :
69 _quasi_ratio_(theRatio), _threshold_(theThreshold) {
70 GUM_CONSTRUCTOR(DefaultTriangulation);
74 DefaultTriangulation::DefaultTriangulation(
bool minimality,
76 double theThreshold) :
77 UnconstrainedTriangulation(DefaultEliminationSequenceStrategy(),
78 DefaultJunctionTreeStrategy(),
80 _quasi_ratio_(theRatio), _threshold_(theThreshold) {
81 GUM_CONSTRUCTOR(DefaultTriangulation);
85 DefaultTriangulation::DefaultTriangulation(
const DefaultTriangulation& from) :
86 UnconstrainedTriangulation(from), _quasi_ratio_(from._quasi_ratio_),
87 _threshold_(from._threshold_) {
88 GUM_CONS_CPY(DefaultTriangulation);
92 DefaultTriangulation::DefaultTriangulation(DefaultTriangulation&& from) :
93 UnconstrainedTriangulation(
std::move(from)), _quasi_ratio_(from._quasi_ratio_),
94 _threshold_(from._threshold_) {
96 GUM_CONS_MOV(DefaultTriangulation);
100 DefaultTriangulation::~DefaultTriangulation() {
102 GUM_DESTRUCTOR(DefaultTriangulation);
106 DefaultTriangulation* DefaultTriangulation::newFactory()
const {
107 return new DefaultTriangulation(isMinimalityRequired(), _quasi_ratio_, _threshold_);
111 DefaultTriangulation* DefaultTriangulation::copyFactory()
const {
112 return new DefaultTriangulation(*
this);
An efficient unconstrained elimination sequence algorithm.
An algorithm producing a junction given the elimination tree produced by a triangulation algorithm.
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
Interface for all triangulation methods without constraints on node elimination orderings.
Base class for undirected graphs.
An efficient unconstrained elimination sequence algorithm.
An algorithms producing a junction given the elimination tree produced by the triangulation algorithm...
Class for computing default triangulations of graphs.
HashTable< NodeId, VAL > NodeProperty
Property on graph elements.
gum is the global namespace for all aGrUM entities