Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:08:28

0001 #ifndef DQM_SiStripCommissioningAnalysis_NoiseAlgorithm_H
0002 #define DQM_SiStripCommissioningAnalysis_NoiseAlgorithm_H
0003 
0004 #include "FWCore/ParameterSet/interface/ParameterSet.h"
0005 #include "DQM/SiStripCommissioningAnalysis/interface/CommissioningAlgorithm.h"
0006 #include <vector>
0007 
0008 class NoiseAnalysis;
0009 class TH1;
0010 
0011 /** 
0012     @class NoiseAlgorithm
0013     @author M. Wingham, R.Bainbridge
0014     @brief Histogram-based analysis for pedestal run.
0015 */
0016 class NoiseAlgorithm : public CommissioningAlgorithm {
0017 public:
0018   NoiseAlgorithm(const edm::ParameterSet& pset, NoiseAnalysis* const);
0019 
0020   ~NoiseAlgorithm() override { ; }
0021 
0022   inline const Histo& hPeds() const;
0023 
0024   inline const Histo& hNoise() const;
0025 
0026 private:
0027   NoiseAlgorithm() { ; }
0028 
0029   /** Extracts and organises histograms. */
0030   void extract(const std::vector<TH1*>&) override;
0031 
0032   /** Performs histogram anaysis. */
0033   void analyse() override;
0034 
0035   // ---------- private member data ----------
0036 
0037 private:
0038   /** Pedestals and raw noise */
0039   Histo hPeds_;
0040 
0041   /** Residuals and noise */
0042   Histo hNoise_;
0043 };
0044 
0045 const NoiseAlgorithm::Histo& NoiseAlgorithm::hPeds() const { return hPeds_; }
0046 
0047 const NoiseAlgorithm::Histo& NoiseAlgorithm::hNoise() const { return hNoise_; }
0048 
0049 #endif  // DQM_SiStripCommissioningAnalysis_NoiseAlgorithm_H