trws_base::Decomposition< GM > Class Template Reference

#include <trws_decomposition.hxx>

Inheritance diagram for trws_base::Decomposition< GM >:
Inheritance graph
[legend]
Collaboration diagram for trws_base::Decomposition< GM >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef GM::IndexType IndexType
typedef GM::LabelType LabelType
typedef std::vector< IndexTypeIndexList
typedef
opengm::GraphicalModelDecomposition::SubVariable 
SubVariable
typedef
opengm::GraphicalModelDecomposition::SubVariableListType 
SubVariableListType

Public Member Functions

 Decomposition (const GM &gm, IndexType numSubModels=0)
virtual ~Decomposition ()=0
virtual IndexType getNumberOfSubModels () const
virtual const IndexListgetVariableList (IndexType subModelId) const
virtual const IndexListgetFactorList (IndexType subModelId) const
virtual void ComputeVariableDecomposition (std::vector< SubVariableListType > *plist) const

Static Public Member Functions

static void CheckUnaryFactors (const GM &gm)
 checks whether all variables have corresp. unary factor with the same index and vice versa
static void CheckDuplicateUnaryFactors (const GM &gm)
static void CheckForIsolatedNodes (const GM &gm)

Protected Types

typedef std::pair< IndexType,
IndexType
Edge
typedef std::list< EdgeEdgeList
typedef std::vector< EdgeListNodeList

Protected Member Functions

IndexType _addSubModel ()
void _addSubFactor (const IndexType &factorId)
void _addSubVariable (const IndexType &variableId)

Static Protected Member Functions

static void _CreateNodeList (const GM &gm, NodeList *pnodeList)

Protected Attributes

IndexType _numberOfModels
std::vector< IndexList_variableLists
std::vector< IndexList_pwFactorLists
const GM & _gm

Detailed Description

template<class GM>
class trws_base::Decomposition< GM >

Definition at line 23 of file trws_decomposition.hxx.


Member Typedef Documentation

template<class GM>
typedef std::pair<IndexType,IndexType> trws_base::Decomposition< GM >::Edge [protected]

Definition at line 53 of file trws_decomposition.hxx.

template<class GM>
typedef std::list<Edge> trws_base::Decomposition< GM >::EdgeList [protected]

Definition at line 54 of file trws_decomposition.hxx.

template<class GM>
typedef std::vector<IndexType> trws_base::Decomposition< GM >::IndexList
template<class GM>
typedef GM::IndexType trws_base::Decomposition< GM >::IndexType
template<class GM>
typedef GM::LabelType trws_base::Decomposition< GM >::LabelType
template<class GM>
typedef std::vector<EdgeList> trws_base::Decomposition< GM >::NodeList [protected]

Definition at line 55 of file trws_decomposition.hxx.

template<class GM>
typedef opengm::GraphicalModelDecomposition::SubVariable trws_base::Decomposition< GM >::SubVariable
template<class GM>
typedef opengm::GraphicalModelDecomposition::SubVariableListType trws_base::Decomposition< GM >::SubVariableListType

Constructor & Destructor Documentation

template<class GM>
trws_base::Decomposition< GM >::Decomposition ( const GM &  gm,
IndexType  numSubModels = 0 
) [inline]
Parameters:
numSubModels numSubModels - ESTIMATED number of submodels to optimize memory allocation

Definition at line 31 of file trws_decomposition.hxx.

template<class GM >
trws_base::Decomposition< GM >::~Decomposition< GM > (  )  [inline, pure virtual]

Member Function Documentation

template<class GM >
void trws_base::Decomposition< GM >::_addSubFactor ( const IndexType factorId  )  [inline, protected]

Definition at line 306 of file trws_decomposition.hxx.

Here is the caller graph for this function:

template<class GM >
Decomposition< GM >::IndexType trws_base::Decomposition< GM >::_addSubModel (  )  [inline, protected]

Definition at line 297 of file trws_decomposition.hxx.

Here is the caller graph for this function:

template<class GM >
void trws_base::Decomposition< GM >::_addSubVariable ( const IndexType variableId  )  [inline, protected]

Definition at line 312 of file trws_decomposition.hxx.

Here is the caller graph for this function:

template<class GM>
void trws_base::Decomposition< GM >::_CreateNodeList ( const GM &  gm,
NodeList pnodeList 
) [inline, static, protected]

Definition at line 278 of file trws_decomposition.hxx.

Here is the caller graph for this function:

template<class GM>
void trws_base::Decomposition< GM >::CheckDuplicateUnaryFactors ( const GM &  gm  )  [inline, static]

Definition at line 359 of file trws_decomposition.hxx.

Here is the call graph for this function:

Here is the caller graph for this function:

template<class GM>
void trws_base::Decomposition< GM >::CheckForIsolatedNodes ( const GM &  gm  )  [inline, static]

Definition at line 375 of file trws_decomposition.hxx.

Here is the caller graph for this function:

template<class GM>
void trws_base::Decomposition< GM >::CheckUnaryFactors ( const GM &  gm  )  [inline, static]

checks whether all variables have corresp. unary factor with the same index and vice versa

Definition at line 339 of file trws_decomposition.hxx.

template<class GM >
void trws_base::Decomposition< GM >::ComputeVariableDecomposition ( std::vector< SubVariableListType > *  plist  )  const [inline, virtual]

Definition at line 390 of file trws_decomposition.hxx.

template<class GM>
virtual const IndexList& trws_base::Decomposition< GM >::getFactorList ( IndexType  subModelId  )  const [inline, virtual]

Definition at line 41 of file trws_decomposition.hxx.

template<class GM>
virtual IndexType trws_base::Decomposition< GM >::getNumberOfSubModels (  )  const [inline, virtual]

Definition at line 39 of file trws_decomposition.hxx.

template<class GM>
virtual const IndexList& trws_base::Decomposition< GM >::getVariableList ( IndexType  subModelId  )  const [inline, virtual]

Definition at line 40 of file trws_decomposition.hxx.


Member Data Documentation

template<class GM>
const GM& trws_base::Decomposition< GM >::_gm [protected]

Definition at line 60 of file trws_decomposition.hxx.

template<class GM>
IndexType trws_base::Decomposition< GM >::_numberOfModels [protected]

Definition at line 57 of file trws_decomposition.hxx.

template<class GM>
std::vector<IndexList> trws_base::Decomposition< GM >::_pwFactorLists [protected]

Definition at line 59 of file trws_decomposition.hxx.

template<class GM>
std::vector<IndexList> trws_base::Decomposition< GM >::_variableLists [protected]

Definition at line 58 of file trws_decomposition.hxx.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines
Generated on Mon Jun 17 16:31:14 2013 for OpenGM by  doxygen 1.6.3