/** 
* @file MAPEstimation.h
// refactor-nice.pl: check this substitution
// old: * @brief abstract interface for map estimation
* @brief abstract interface for std::map estimation
* @author Erik Rodner
* @date 10/30/2008

*/
#ifndef MAPESTIMATIONINCLUDE
#define MAPESTIMATIONINCLUDE

#include "core/image/ImageT.h"
#include "core/vector/VectorT.h"
#include "core/vector/MatrixT.h"
 
#include "core/vector/VVector.h"


namespace OBJREC {

/** abstract interface for map estimation */
class MAPEstimation
{

    public:

	virtual ~MAPEstimation () {};
  
	virtual void estimate (	NICE::Vector & mapEstimate,
			 const NICE::VVector & likelihoodDistributionSamples,
			 const NICE::VVector & priorDistributionSamples,
			 double priorInfluence ) = 0;
    
};


} // namespace

#endif
