48#ifndef GUM_ORDERED_TRIANGULATION_H
49#define GUM_ORDERED_TRIANGULATION_H
83 bool minimality =
false);
105 const std::vector< NodeId >* sequence,
109 bool minimality =
false);
151 virtual void setOrder(
const std::vector< NodeId >* order)
final;
171 const std::vector< NodeId >*
_order_{
nullptr};
An algorithm producing a junction given the elimination tree produced by a triangulation algorithm.
Base Class for all the algorithms producing a junction given a set of cliques/subcliques resulting fr...
An Elimination sequence algorithm that imposes a given complete ordering on the nodes elimination seq...
OrderedTriangulation & operator=(const OrderedTriangulation &)
forbid copy operator
virtual void setOrder(const std::vector< NodeId > *order) final
sets the sequence of elimination (only the reference is stored)
const std::vector< NodeId > * _order_
the elimination sequence to apply
virtual ~OrderedTriangulation()
destructor
virtual void initTriangulation_(UndiGraph &graph) final
the function called to initialize the triangulation process
OrderedTriangulation(const OrderedEliminationSequenceStrategy &elimSeq=OrderedEliminationSequenceStrategy(), const JunctionTreeStrategy &JTStrategy=DefaultJunctionTreeStrategy(), bool minimality=false)
default constructor
virtual OrderedTriangulation * newFactory() const final
returns a fresh triangulation over the same graph and of the same type as the current object (using t...
virtual void setGraph(const UndiGraph *graph, const NodeProperty< Size > *domsizes) final
initialize the triangulation data structures for a new graph
virtual OrderedTriangulation * copyFactory() const final
virtual copy constructor
StaticTriangulation(const EliminationSequenceStrategy &elimSeq, const JunctionTreeStrategy &JTStrategy, bool minimality=false)
default constructor: without any graph
Base class for undirected graphs.
An algorithms producing a junction given the elimination tree produced by the triangulation algorithm...
HashTable< NodeId, VAL > NodeProperty
Property on graph elements.
gum is the global namespace for all aGrUM entities
An Elimination sequence algorithm that imposes a given complete ordering on the nodes elimination seq...
base class for all non-incremental triangulations.