Go to the documentation of this file.00001 #ifndef rgrl_weighter_h_
00002 #define rgrl_weighter_h_
00003
00004
00005
00006
00007
00008
00009 #include <vcl_cassert.h>
00010 #include "rgrl_scale_sptr.h"
00011 #include "rgrl_match_set_sptr.h"
00012 #include "rgrl_object.h"
00013
00014 class rgrl_transformation;
00015
00016
00017
00018 class rgrl_weighter
00019 : public rgrl_object
00020 {
00021 public:
00022 virtual ~rgrl_weighter();
00023
00024
00025
00026
00027
00028 virtual
00029 void compute_weights( rgrl_scale const& scales,
00030 rgrl_match_set& match_set ) const = 0;
00031
00032
00033 rgrl_type_macro( rgrl_weighter, rgrl_object);
00034
00035
00036 virtual double
00037 aux_sum_weighted_residuals( rgrl_scale const& ,
00038 rgrl_match_set& ,
00039 rgrl_transformation const& ){ assert(!"NYI"); return 0;}
00040 virtual double
00041 aux_sum_rho_values( rgrl_scale const& ,
00042 rgrl_match_set& ,
00043 rgrl_transformation const& ){ assert(!"NYI"); return 0 ;}
00044 virtual double
00045 aux_neg_log_likelihood( rgrl_scale const& ,
00046 rgrl_match_set& ,
00047 rgrl_transformation const& ){ assert(!"NYI"); return 0;}
00048 virtual double
00049 aux_avg_neg_log_likelihood( rgrl_scale const& ,
00050 rgrl_match_set& ,
00051 rgrl_transformation const& ){ assert(!"NYI"); return 0;}
00052 };
00053
00054 #endif