mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T > Class Template Reference

Contains the data shared by the different policies of hypothesis filter. More...

#include <hypothesis_filter.h>

Inheritance diagram for mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T >:

Inheritance graph
[legend]
Collaboration diagram for mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T >:

Collaboration graph
[legend]
List of all members.

Public Attributes

image< Pixel_T > image
std::vector< Hypothesis_T > hypotheses

Detailed Description

template<typename Hypothesis_T, typename Pixel_T>
class mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T >

Contains the data shared by the different policies of hypothesis filter.

We used this additionnal class as it allows policies to refer shared data during the construction of the hypothesis filter class. These data could not have been put as direct members of hypothesis filter as the variables would have spawn after the whole inheritence process that already need these data. For instance, hypothesis filter inherits of image_loader that needs a reference to the image variable that will contain the current image data.

This can be seen as a generic trick that allows policies to share data. I don't know if this technique is documented in the literature so "si le coeur vous en dit ..."

Said differently: we store in a policy the data that will be shared/used by different policies. This data can then be used by the subsequent inherited policies during the construction of the host class.

Author:
Manuel Boissenin

Definition at line 55 of file hypothesis_filter.h.


Member Data Documentation

template<typename Hypothesis_T, typename Pixel_T>
image<Pixel_T> mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T >::image

Definition at line 57 of file hypothesis_filter.h.

template<typename Hypothesis_T, typename Pixel_T>
std::vector<Hypothesis_T > mimas::hf::hypothesis_filter_data< Hypothesis_T, Pixel_T >::hypotheses

Definition at line 58 of file hypothesis_filter.h.


The documentation for this class was generated from the following file:
[GNU/Linux] [Qt] [Mesa] [STL] [Lapack] [Boost] [Magick++] [Xalan-C and Xerces-C] [doxygen] [graphviz] [FFTW] [popt] [xine] [Gnuplot] [gnu-arch] [gcc] [gstreamer] [autoconf/automake/make] [freshmeat.net] [opensource.org] [sourceforge.net] [MMVL]
mimas 2.1 - Copyright Mon Oct 30 11:31:51 2006, Bala Amavasai, Stuart Meikle, Arul Selvan, Fabio Caparrelli, Jan Wedekind, Manuel Boissenin, ...