aGrUM  0.13.2
gum::BinaryJoinTreeConverter Class Referenceabstract

#include <binaryJoinTreeConverter.h>

Public Member Functions

Constructors / Destructors
 BinaryJoinTreeConverter ()
 default constructor More...
virtual ~BinaryJoinTreeConverter ()
 destructor More...
virtual CliqueGraph convert (const CliqueGraph &JT, const NodeProperty< Size > &domain_sizes, const NodeSet &roots)=0
 returns a binary join tree corresponding to clique graph JT More...
virtual const NodeSetroots () const =0
 returns all the roots considered for all the connected components More...

Detailed Description

Definition at line 34 of file binaryJoinTreeConverter.h.

Constructor & Destructor Documentation

gum::BinaryJoinTreeConverter::BinaryJoinTreeConverter ( )

default constructor

Definition at line 32 of file binaryJoinTreeConverter.cpp.

32  {
33  // for debugging purposes
34  GUM_CONSTRUCTOR(BinaryJoinTreeConverter);
35  }
default constructor
gum::BinaryJoinTreeConverter::~BinaryJoinTreeConverter ( )


Definition at line 38 of file binaryJoinTreeConverter.cpp.

38  {
39  // for debugging purposes
40  GUM_DESTRUCTOR(BinaryJoinTreeConverter);
41  }
default constructor
gum::BinaryJoinTreeConverter::BinaryJoinTreeConverter ( const BinaryJoinTreeConverter )

forbid copy constructor

Member Function Documentation

virtual CliqueGraph gum::BinaryJoinTreeConverter::convert ( const CliqueGraph JT,
const NodeProperty< Size > &  domain_sizes,
const NodeSet roots 
pure virtual

returns a binary join tree corresponding to clique graph JT

This method creates and returns a new binary join tree compatible with that passed in argument (JT) and optimized for inference. As such, this requires knowing the join tree to be converted (of course), but also which roots will be used by the collect/diffusion inference engine and the domain size of the variables contained in the cliques of JT (to optimize the combination of the potentials contained in the cliques.

InvalidNodeexception is thrown if some roots do not belong to JT or if several roots belong to the same connected component.
If you do not pass in argument a root for each connected component, then for those with unspecified roots, an arbitrary root will be computed and used for the binarization.
BinaryJoinTreeConverter& gum::BinaryJoinTreeConverter::operator= ( const BinaryJoinTreeConverter )

forbid copy operator

virtual const NodeSet& gum::BinaryJoinTreeConverter::roots ( ) const
pure virtual

returns all the roots considered for all the connected components

The documentation for this class was generated from the following files: