PedestalsAlgorithm

Macros

Line Code
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
#ifndef DQM_SiStripCommissioningAnalysis_PedestalsAlgorithm_H
#define DQM_SiStripCommissioningAnalysis_PedestalsAlgorithm_H

#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "DQM/SiStripCommissioningAnalysis/interface/CommissioningAlgorithm.h"
#include <vector>

class PedestalsAnalysis;
class TH1;

/** 
    @class PedestalsAlgorithm
    @author M. Wingham, R.Bainbridge
    @brief Histogram-based analysis for pedestal run.
*/
class PedestalsAlgorithm : public CommissioningAlgorithm {
public:
  PedestalsAlgorithm(const edm::ParameterSet& pset, PedestalsAnalysis* const);

  ~PedestalsAlgorithm() override { ; }

  inline const Histo& hPeds() const;

  inline const Histo& hNoise() const;

private:
  PedestalsAlgorithm() { ; }

  /** Extracts and organises histograms. */
  void extract(const std::vector<TH1*>&) override;

  /** Performs histogram anaysis. */
  void analyse() override;

private:
  /** Pedestals and raw noise */
  Histo hPeds_;

  /** Residuals and noise */
  Histo hNoise_;

  /** Analysis parameters */
  float deadStripMax_;
  float noisyStripMin_;
};

const PedestalsAlgorithm::Histo& PedestalsAlgorithm::hPeds() const { return hPeds_; }

const PedestalsAlgorithm::Histo& PedestalsAlgorithm::hNoise() const { return hNoise_; }

#endif  // DQM_SiStripCommissioningAnalysis_PedestalsAlgorithm_H