00001 #ifndef THRESHOLDFITALGORITHM2_H
00002 #define THRESHOLDFITALGORITHM2_H
00003
00004 #include "FitAlgorithm.h"
00005
00006 namespace SctFitter {
00007
00008 class ThresholdFitAlgorithm2 : FitAlgorithm {
00009 public:
00010 static bool putInMap() throw();
00011 static bool isInMap() {return inMap;}
00012
00013 virtual void doFit(const TH1& hist, FitObject& fitObject,
00014 const ModuleElement& element,
00015 DefectList& defects) const throw (LogicError);
00016
00017 virtual auto_ptr<FitObject> getPrototype() const throw();
00018
00019 virtual void guessParameters(const TH1& hist, FitObject& fitOb) const throw (LogicError, MathsError);
00020 virtual void checkForDefects(const TH1& hist, const ModuleElement& element,
00021 DefectList& defects) const throw (LogicError);
00022 virtual void createSummaryHistograms(FitScanResult& fits) const throw();
00023 virtual void checkForDefects(const FitObject& hist, const ModuleElement& element,
00024 DefectList& defects) const;
00025 private:
00026 ThresholdFitAlgorithm2() throw();
00027 static bool inMap;
00028 };
00029
00030 }
00031
00032 #endif //THRESHOLDFITALGORITHM2_H
00033