CMS 3D CMS Logo

SiStripCorrelateBadStripAndNoise.h
Go to the documentation of this file.
1 // -*- C++ -*-
2 //
3 // Package: SiStripCorrelateBadStripAndNoise
4 // Class: SiStripCorrelateBadStripAndNoise
5 //
14 //
15 // Original Author: Domenico GIORDANO
16 // Created: Mon Aug 10 10:42:04 CEST 2009
17 //
18 //
19 
20 // system include files
21 #include <memory>
22 
23 // user include files
30 
33 
35 
39 
40 #include "TFile.h"
41 #include "TH1F.h"
42 #include "TH2F.h"
43 
44 //
45 // class decleration
46 //
47 class TrackerTopology;
49 public:
52 
53 private:
54  void beginRun(const edm::Run &run, const edm::EventSetup &es) override;
55  void analyze(const edm::Event &, const edm::EventSetup &) override{};
56  void endJob() override;
57 
58  void DoAnalysis(const edm::EventSetup &);
59  void getHistos(const uint32_t &detid, const TrackerTopology *tTopo, std::vector<TH2F *> &histos);
60  TH2F *getHisto(const long unsigned int &index);
61 
62  unsigned long long getNoiseCache(const edm::EventSetup &eSetup) {
63  return eSetup.get<SiStripNoisesRcd>().cacheIdentifier();
64  }
65  unsigned long long getQualityCache(const edm::EventSetup &eSetup) {
66  return eSetup.get<SiStripQualityRcd>().cacheIdentifier();
67  }
68 
69  void iterateOnDets(const TrackerTopology *tTopo);
70  void iterateOnBadStrips(const uint32_t &detid, const TrackerTopology *tTopo, SiStripQuality::Range &sqrange);
71  void correlateWithNoise(const uint32_t &detid,
72  const TrackerTopology *tTopo,
73  const uint32_t &firstStrip,
74  const uint32_t &range);
75  float getMeanNoise(const SiStripNoises::Range &noiseRange, const uint32_t &first, const uint32_t &range);
76 
77  // ----------member data ---------------------------
78 
82 
83  TFile *file;
84  std::vector<TH2F *> vTH2;
85 
87 
88  unsigned long long cacheID_quality;
89  unsigned long long cacheID_noise;
90 };
void beginRun(const edm::Run &run, const edm::EventSetup &es) override
TH2F * getHisto(const long unsigned int &index)
void iterateOnBadStrips(const uint32_t &detid, const TrackerTopology *tTopo, SiStripQuality::Range &sqrange)
void getHistos(const uint32_t &detid, const TrackerTopology *tTopo, std::vector< TH2F * > &histos)
unsigned long long getQualityCache(const edm::EventSetup &eSetup)
void iterateOnDets(const TrackerTopology *tTopo)
unsigned long long getNoiseCache(const edm::EventSetup &eSetup)
edm::ESHandle< SiStripQuality > qualityHandle_
SiStripCorrelateBadStripAndNoise(const edm::ParameterSet &)
float getMeanNoise(const SiStripNoises::Range &noiseRange, const uint32_t &first, const uint32_t &range)
void analyze(const edm::Event &, const edm::EventSetup &) override
std::pair< ContainerIterator, ContainerIterator > Range
T get() const
Definition: EventSetup.h:71
std::pair< ContainerIterator, ContainerIterator > Range
Definition: SiStripNoises.h:50
Definition: Run.h:45
void correlateWithNoise(const uint32_t &detid, const TrackerTopology *tTopo, const uint32_t &firstStrip, const uint32_t &range)