contrib/rpl/rgrl/rgrl_est_translation.h
Go to the documentation of this file.
00001 #ifndef rgrl_est_translation_h_
00002 #define rgrl_est_translation_h_
00003 //:
00004 // \file
00005 // \author Charlene Tsai
00006 // \date   Dec 2003
00007 
00008 #include "rgrl_estimator.h"
00009 
00010 //: Translation transform estimator
00011 //
00012 class rgrl_est_translation
00013   : public rgrl_linear_estimator
00014 {
00015  public:
00016   //: Default constructor
00017   //
00018   // Does nothing. This constructor is adequate for algorithms that
00019   // call \a estimate(.) function only. An example of the algorithm is
00020   // the rgrl_feature_based_registration.
00021   rgrl_est_translation(){}
00022 
00023   // Constructor which takes the dimension of the dataset that the
00024   // estimator will be applied on.
00025   rgrl_est_translation( unsigned int dimension );
00026 
00027   //: Estimates a translation transform.
00028   //
00029   // The return pointer is to a rgrl_trans_translation object.
00030   //
00031   // \sa rgrl_estimator::estimate
00032   //
00033   rgrl_transformation_sptr
00034   estimate( rgrl_set_of<rgrl_match_set_sptr> const& matches,
00035             rgrl_transformation const& cur_transform ) const;
00036 
00037   //: Estimates a translation transform.
00038   //
00039   // The return pointer is to a rgrl_trans_translation object.
00040   //
00041   // \sa rgrl_estimator::estimate
00042   //
00043   rgrl_transformation_sptr
00044   estimate( rgrl_match_set_sptr matches,
00045             rgrl_transformation const& cur_transform ) const;
00046 
00047   //: Type of transformation estimated by this estimator.
00048   const vcl_type_info& transformation_type() const;
00049 
00050   // Defines type-related functions
00051   rgrl_type_macro( rgrl_est_translation, rgrl_linear_estimator );
00052 };
00053 
00054 #endif // rgrl_est_translation_h_