CMS 3D CMS Logo

CalibrationAlgorithm.h

Go to the documentation of this file.
00001 #ifndef DQM_SiStripCommissioningAnalysis_CalibrationAlgorithm_H
00002 #define DQM_SiStripCommissioningAnalysis_CalibrationAlgorithm_H
00003 
00004 #include "DQM/SiStripCommissioningAnalysis/interface/CommissioningAlgorithm.h"
00005 #include <vector>
00006 
00007 class CalibrationAnalysis;
00008 class TH1;
00009 class TF1;
00010 
00017 class CalibrationAlgorithm : public CommissioningAlgorithm {
00018   
00019  public:
00020   
00021   CalibrationAlgorithm( CalibrationAnalysis* const );
00022   
00023   virtual ~CalibrationAlgorithm() {;}
00024   
00025   inline const Histo& histo( int i ) const { return histo_[i]; }
00026   
00027  private:
00028 
00029   CalibrationAlgorithm() {;}
00030   
00031   virtual void extract( const std::vector<TH1*>& );
00032 
00033   void analyse();
00034 
00035   void correctDistribution( TH1* ) const;
00036 
00037   TF1* fitPulse( TH1*, 
00038                  float rangeLow = 0, 
00039                  float rangeHigh = -1 );
00040   
00041   float maximum( TH1* );
00042   
00043   float turnOn( TH1* );
00044   
00045  private:
00046   
00048   Histo histo_[32];
00049 
00051   TF1* deconv_fitter_;
00054   TF1* peak_fitter_;
00055   
00056   CalibrationAnalysis* cal_;
00057   
00058 };
00059 
00060 #endif // DQM_SiStripCommissioningAnalysis_CalibrationAlgorithm_H
00061 

Generated on Tue Jun 9 17:33:26 2009 for CMSSW by  doxygen 1.5.4