CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_10/src/CondFormats/SiStripObjects/interface/CalibrationAnalysis.h

Go to the documentation of this file.
00001 #ifndef CondFormats_SiStripObjects_CalibrationAnalysis_H
00002 #define CondFormats_SiStripObjects_CalibrationAnalysis_H
00003 
00004 #include "CondFormats/SiStripObjects/interface/CommissioningAnalysis.h"
00005 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h"
00006 #include <boost/cstdint.hpp>
00007 #include <sstream>
00008 #include <vector>
00009 
00016 class CalibrationAnalysis : public CommissioningAnalysis {
00017   
00018  public:
00019   
00020   CalibrationAnalysis( const uint32_t& key, 
00021                        const bool& deconv, 
00022                        int calchan );
00023   
00024   CalibrationAnalysis( const bool& deconv, 
00025                        int calchan );
00026   
00027   virtual ~CalibrationAnalysis() {;}
00028   
00029   friend class CalibrationAlgorithm;
00030 
00031   // values per strip and per APV
00032   inline const VVFloat& amplitude() const { return amplitude_; }
00033   inline const VVFloat& tail() const { return tail_; }
00034   inline const VVFloat& riseTime() const { return riseTime_; }
00035   inline const VVFloat& timeConstant() const { return timeConstant_; }
00036   inline const VVFloat& smearing() const { return smearing_; }
00037   inline const VVFloat& chi2() const { return chi2_; }
00038 
00039   // mean values per APV
00040   inline const VFloat& amplitudeMean() const { return mean_amplitude_; }
00041   inline const VFloat& tailMean() const { return mean_tail_; }
00042   inline const VFloat& riseTimeMean() const { return mean_riseTime_; }
00043   inline const VFloat& timeConstantMean() const { return mean_timeConstant_; }
00044   inline const VFloat& smearingMean() const { return mean_smearing_; }
00045   inline const VFloat& chi2Mean() const { return mean_chi2_; }
00046 
00047   // spread, min and max
00048   inline const VFloat& amplitudeSpread() const { return spread_amplitude_; }
00049   inline const VFloat& amplitudeMin() const { return min_amplitude_; }
00050   inline const VFloat& amplitudeMax() const { return max_amplitude_; }
00051 
00052   inline const VFloat& tailSpread() const { return spread_tail_; }
00053   inline const VFloat& tailMin() const { return min_tail_; }
00054   inline const VFloat& tailMax() const { return max_tail_; }
00055 
00056   inline const VFloat& riseTimeSpread() const { return spread_riseTime_; }
00057   inline const VFloat& riseTimeMin() const { return min_riseTime_; }
00058   inline const VFloat& riseTimeMax() const { return max_riseTime_; }
00059 
00060   inline const VFloat& timeConstantSpread() const { return spread_timeConstant_; }
00061   inline const VFloat& timeConstantMin() const { return min_timeConstant_; }
00062   inline const VFloat& timeConstantMax() const { return max_timeConstant_; }
00063 
00064   inline const VFloat& smearingSpread() const { return spread_smearing_; }
00065   inline const VFloat& smearingMin() const { return min_smearing_; }
00066   inline const VFloat& smearingMax() const { return max_smearing_; }
00067 
00068   inline const VFloat& chi2Spread() const { return spread_chi2_; }
00069   inline const VFloat& chi2Min() const { return min_chi2_; }
00070   inline const VFloat& chi2Max() const { return max_chi2_; }
00071   
00072   inline bool deconvMode() const { return deconv_; }
00073   inline int calchan() const { return calchan_; }
00074 
00075   void print( std::stringstream&, uint32_t not_used = 0 );
00076   
00077   void reset();
00078   
00079  private:
00080   
00082   VVFloat amplitude_, tail_, riseTime_, timeConstant_, smearing_, chi2_;
00083 
00084   VFloat  mean_amplitude_,mean_tail_,mean_riseTime_,mean_timeConstant_,mean_smearing_,mean_chi2_;
00085 
00086   VFloat  min_amplitude_,min_tail_,min_riseTime_,min_timeConstant_,min_smearing_,min_chi2_;
00087 
00088   VFloat  max_amplitude_,max_tail_,max_riseTime_,max_timeConstant_,max_smearing_,max_chi2_;
00089 
00090   VFloat  spread_amplitude_,spread_tail_,spread_riseTime_,spread_timeConstant_,spread_smearing_,spread_chi2_;
00091 
00093   bool deconv_;
00094 
00096   int calchan_;
00097 
00099   bool isScan_;
00100   
00101 
00102 };
00103 
00104 #endif // CondFormats_SiStripObjects_CalibrationAnalysis_H
00105