00001 #ifndef CondFormats_SiStripObjects_SamplingAnalysis_H 00002 #define CondFormats_SiStripObjects_SamplingAnalysis_H 00003 00004 #include "CondFormats/SiStripObjects/interface/CommissioningAnalysis.h" 00005 #include "DataFormats/SiStripCommon/interface/SiStripConstants.h" 00006 #include "DataFormats/SiStripCommon/interface/SiStripEnumsAndStrings.h" 00007 #include <boost/cstdint.hpp> 00008 #include <sstream> 00009 #include <vector> 00010 00017 class SamplingAnalysis : public CommissioningAnalysis { 00018 00019 public: 00020 00021 SamplingAnalysis( const uint32_t& key ); 00022 00023 SamplingAnalysis(); 00024 00025 virtual ~SamplingAnalysis() {;} 00026 00027 friend class SamplingAlgorithm; 00028 00029 inline const float& maximum() const { return max_; } 00030 00031 inline const float& error() const { return error_; } 00032 00033 inline void setSoNcut(const float sOnCut) { sOnCut_ = sOnCut; } 00034 00035 float getSoNcut() const { return sOnCut_; } 00036 00037 void print( std::stringstream&, uint32_t not_used = 0 ); 00038 00039 void reset(); 00040 00041 float limit(float SoNcut) const; 00042 00043 float correctMeasurement(float mean, float SoNcut=3.) const; 00044 00045 sistrip::Granularity granularity() const { return granularity_; } 00046 00047 private: 00048 00050 float sOnCut_; 00051 00053 float max_; 00054 00056 float error_; 00057 00059 sistrip::RunType runType_; 00060 00062 sistrip::Granularity granularity_; 00063 00064 }; 00065 00066 #endif // CondFormats_SiStripObjects_SamplingAnalysis_H 00067