00001 #ifndef TOPHATFITOBJECT_H 00002 #define TOPHATFITOBJECT_H 00003 00004 #include "FitObject.h" 00005 00006 using std::string; 00007 00008 namespace SctData{ 00009 00018 class TopHatFitObject : public FitObject { 00019 public: 00021 TopHatFitObject(); 00022 00024 TopHatFitObject(const TF1& rootfunc); 00025 00026 virtual shared_ptr<FitObject> clone() const throw(); 00027 00029 virtual ~TopHatFitObject() throw() {;} 00030 00031 virtual string getClassName() const throw() {return "SctData::TopHatFitObject";} 00032 00034 TopHatFitObject& operator=(const TF1& rootfunc) throw(LogicError) ; 00035 00036 protected: 00038 std::auto_ptr<TF1> makeBasicRootTF1() const throw(LogicError) ; 00039 00040 private: 00041 static std::vector<std::string> createParNames(); 00042 static std::vector<std::string> parNames; 00043 }; // end of declaration of class TopHatFitObject 00044 00045 } // end of namespace SctData 00046 00047 #endif // #ifndef TOPHATFITOBJECT_H 00048