00001 #ifndef ROOTFITSTRATEGY_H 00002 #define ROOTFITSTRATEGY_H 00003 #include "FitStrategy.h" 00004 00005 using namespace Sct; 00006 namespace SctFitter{ 00013 class RootFitStrategy : public FitStrategy { 00014 public: 00016 RootFitStrategy(string opt=string("")) throw(); 00018 ~RootFitStrategy() throw(); 00020 virtual void fitTH1(const TH1& hist, TF1& fit) const throw(LogicError, MathsError); 00022 virtual void fitTGraph(const TGraph& graph, TF1& fit) const throw(LogicError, MathsError); 00024 virtual void fitTGraphErrors(const TGraphErrors& graph, TF1& fit) const throw(LogicError, MathsError); 00025 00027 virtual const string& getName() const throw(); 00028 private: 00029 RootFitStrategy( const RootFitStrategy& ); 00030 const string name; 00031 static bool inMap; 00032 }; 00033 00034 } // end of namespace SctFitter; 00035 #endif // #ifndef ROOTFITSTRATEGY_H