OpenGM  2.3.x
Discrete Graphical Model Library
Public Types | Public Member Functions | Public Attributes | List of all members
opengm::Movemaker< GM > Class Template Reference

A fremework for move making algorithms. More...

#include <bruteforce.hxx>

+ Inheritance diagram for opengm::Movemaker< GM >:
+ Collaboration diagram for opengm::Movemaker< GM >:

Public Types

typedef GM GraphicalModelType
 
typedef std::vector< LabelType >::const_iterator LabelIterator
 

Public Member Functions

 Movemaker (const GraphicalModelType &)
 
template<class StateIterator >
 Movemaker (const GraphicalModelType &, StateIterator)
 
ValueType value () const
 
template<class IndexIterator , class StateIterator >
ValueType valueAfterMove (IndexIterator, IndexIterator, StateIterator)
 
const LabelTypestate (const size_t) const
 
LabelIterator stateBegin () const
 
LabelIterator stateEnd () const
 
void reset ()
 
template<class StateIterator >
void initialize (StateIterator)
 
template<class IndexIterator , class StateIterator >
ValueType move (IndexIterator, IndexIterator, StateIterator)
 
template<class ACCUMULATOR , class IndexIterator >
ValueType moveOptimally (IndexIterator, IndexIterator)
 for a subset of variables, move to a labeling that is optimal w.r.t. ACCUMULATOR More...
 
template<class ACCUMULATOR , class IndexIterator >
ValueType moveOptimallyWithAllLabelsChanging (IndexIterator, IndexIterator)
 
template<class INFERENCE_TYPE , class INFERENCE_PARAMETER , class INDEX_ITERATOR , class STATE_ITERATOR >
void proposeMoveAccordingToInference (const INFERENCE_PARAMETER &, INDEX_ITERATOR, INDEX_ITERATOR, std::vector< LabelType > &) const
 

Public Attributes

 OPENGM_GM_TYPE_TYPEDEFS
 

Detailed Description

template<class GM>
class opengm::Movemaker< GM >

A fremework for move making algorithms.

Definition at line 10 of file bruteforce.hxx.

Member Typedef Documentation

template<class GM>
typedef GM opengm::Movemaker< GM >::GraphicalModelType

Definition at line 26 of file movemaker.hxx.

template<class GM>
typedef std::vector<LabelType>::const_iterator opengm::Movemaker< GM >::LabelIterator

Definition at line 28 of file movemaker.hxx.

Constructor & Destructor Documentation

template<class GM >
opengm::Movemaker< GM >::Movemaker ( const GraphicalModelType gm)

Definition at line 211 of file movemaker.hxx.

template<class GM >
template<class StateIterator >
opengm::Movemaker< GM >::Movemaker ( const GraphicalModelType gm,
StateIterator  it 
)

Definition at line 230 of file movemaker.hxx.

Member Function Documentation

template<class GM >
template<class StateIterator >
void opengm::Movemaker< GM >::initialize ( StateIterator  it)

Definition at line 254 of file movemaker.hxx.

+ Here is the caller graph for this function:

template<class GM >
template<class IndexIterator , class StateIterator >
Movemaker< GM >::ValueType opengm::Movemaker< GM >::move ( IndexIterator  begin,
IndexIterator  end,
StateIterator  sit 
)
inline

Definition at line 348 of file movemaker.hxx.

template<class GM >
template<class ACCUMULATOR , class IndexIterator >
Movemaker< GM >::ValueType opengm::Movemaker< GM >::moveOptimally ( IndexIterator  variableIndices,
IndexIterator  variableIndicesEnd 
)
inline

for a subset of variables, move to a labeling that is optimal w.r.t. ACCUMULATOR

Parameters
variableIndicesrandom access iterator to the beginning of a sequence of variable indices
variableIndicesEndrandom access iterator to the end of a sequence of variable indices
Returns
new value

Definition at line 372 of file movemaker.hxx.

template<class GM >
template<class ACCUMULATOR , class IndexIterator >
Movemaker< GM >::ValueType opengm::Movemaker< GM >::moveOptimallyWithAllLabelsChanging ( IndexIterator  variableIndices,
IndexIterator  variableIndicesEnd 
)
inline

Definition at line 465 of file movemaker.hxx.

template<class GM >
template<class INFERENCE_TYPE , class INFERENCE_PARAMETER , class INDEX_ITERATOR , class STATE_ITERATOR >
void opengm::Movemaker< GM >::proposeMoveAccordingToInference ( const INFERENCE_PARAMETER &  inferenceParam,
INDEX_ITERATOR  variablesBegin,
INDEX_ITERATOR  variablesEnd,
std::vector< LabelType > &  states 
) const
inline

Definition at line 103 of file movemaker.hxx.

template<class GM >
void opengm::Movemaker< GM >::reset ( )

Definition at line 266 of file movemaker.hxx.

template<class GM >
const Movemaker< GM >::LabelType & opengm::Movemaker< GM >::state ( const size_t  variableIndex) const
inline

Definition at line 598 of file movemaker.hxx.

template<class GM >
Movemaker< GM >::LabelIterator opengm::Movemaker< GM >::stateBegin ( ) const
inline

Definition at line 607 of file movemaker.hxx.

template<class GM >
Movemaker< GM >::LabelIterator opengm::Movemaker< GM >::stateEnd ( ) const
inline

Definition at line 613 of file movemaker.hxx.

template<class GM >
Movemaker< GM >::ValueType opengm::Movemaker< GM >::value ( ) const
inline

Definition at line 276 of file movemaker.hxx.

+ Here is the caller graph for this function:

template<class GM >
template<class IndexIterator , class StateIterator >
Movemaker< GM >::ValueType opengm::Movemaker< GM >::valueAfterMove ( IndexIterator  begin,
IndexIterator  end,
StateIterator  destinationState 
)

Definition at line 284 of file movemaker.hxx.

Member Data Documentation

template<class GM>
opengm::Movemaker< GM >::OPENGM_GM_TYPE_TYPEDEFS

Definition at line 27 of file movemaker.hxx.