#include <CloseComponentsMerger.h>
Public Types | |
typedef std::pair < SingleStatePtr, typename SingleStateMap::iterator > | MinDistResult |
typedef std::multimap< double, SingleStatePtr > | SingleStateMap |
Public Member Functions | |
virtual CloseComponentsMerger * | clone () const |
CloseComponentsMerger (int n, const DistanceBetweenComponents< N > *distance) | |
virtual MultiState | merge (const MultiState &mgs) const |
Private Types | |
typedef MultiGaussianState< N > | MultiState |
typedef SingleGaussianState< N > | SingleState |
typedef boost::shared_ptr < SingleState > | SingleStatePtr |
Private Member Functions | |
MinDistResult | compWithMinDistToLargestWeight (SingleStateMap &) const |
Private Attributes | |
DeepCopyPointerByClone < DistanceBetweenComponents< N > > | theDistance |
int | theMaxNumberOfComponents |
Merging of a Gaussian mixture by clustering components which are close to one another. The actual calculation of the distance between components is done by a specific (polymorphic) class, given at construction time.
Definition at line 19 of file CloseComponentsMerger.h.
typedef std::pair< SingleStatePtr, typename SingleStateMap::iterator > CloseComponentsMerger< N >::MinDistResult |
Definition at line 44 of file CloseComponentsMerger.h.
typedef MultiGaussianState<N> CloseComponentsMerger< N >::MultiState [private] |
Reimplemented from MultiGaussianStateMerger< N >.
Definition at line 23 of file CloseComponentsMerger.h.
typedef SingleGaussianState<N> CloseComponentsMerger< N >::SingleState [private] |
Reimplemented from MultiGaussianStateMerger< N >.
Definition at line 22 of file CloseComponentsMerger.h.
typedef std::multimap< double, SingleStatePtr > CloseComponentsMerger< N >::SingleStateMap |
Definition at line 43 of file CloseComponentsMerger.h.
typedef boost::shared_ptr<SingleState> CloseComponentsMerger< N >::SingleStatePtr [private] |
Definition at line 24 of file CloseComponentsMerger.h.
CloseComponentsMerger< N >::CloseComponentsMerger | ( | int | n, |
const DistanceBetweenComponents< N > * | distance | ||
) |
Referenced by CloseComponentsMerger< N >::clone().
virtual CloseComponentsMerger* CloseComponentsMerger< N >::clone | ( | void | ) | const [inline, virtual] |
Implements MultiGaussianStateMerger< N >.
Definition at line 31 of file CloseComponentsMerger.h.
References CloseComponentsMerger< N >::CloseComponentsMerger().
{ return new CloseComponentsMerger(*this); }
MinDistResult CloseComponentsMerger< N >::compWithMinDistToLargestWeight | ( | SingleStateMap & | ) | const [private] |
virtual MultiState CloseComponentsMerger< N >::merge | ( | const MultiState & | mgs | ) | const [virtual] |
Method which does the actual merging. Returns a trimmed MultiGaussianState.
Implements MultiGaussianStateMerger< N >.
DeepCopyPointerByClone< DistanceBetweenComponents<N> > CloseComponentsMerger< N >::theDistance [private] |
Definition at line 53 of file CloseComponentsMerger.h.
int CloseComponentsMerger< N >::theMaxNumberOfComponents [private] |
Definition at line 52 of file CloseComponentsMerger.h.