00001 /* 00002 * MassEstimator.hpp 00003 * 00004 * Created on: Oct 28, 2011 00005 * Author: mriedel 00006 */ 00007 00008 #ifndef MASSESTIMATOR_HPP_ 00009 #define MASSESTIMATOR_HPP_ 00010 00011 #include <telekyb_defines/telekyb_defines.hpp> 00012 #include <telekyb_msgs/TKState.h> 00013 00014 #include <tk_param_estimator/MassEstimDefines.hpp> 00015 00016 #include <string> 00017 00018 namespace TELEKYB_NAMESPACE 00019 { 00020 00021 // Interface definition for StateEstimators 00022 00023 class MassEstimator 00024 { 00025 protected: 00026 // MassEstimator(); 00027 00028 00029 public: 00030 virtual void initialize() = 0; 00031 00032 virtual void destroy() = 0; 00033 00034 virtual std::string getName() const = 0; 00035 00036 // actual method 00037 virtual void run(const MassEstimInput& input,MassEstimOutput& output) = 0; 00038 00039 // ask for current Mass // also for initial; 00040 virtual double getInitialMass() const = 0; 00041 00042 // Destructor 00043 virtual ~MassEstimator() {}; 00044 }; 00045 00046 00047 } // namepsace 00048 00049 00050 #endif /* MASSESTIMATOR_HPP_ */