Back to home page

Project CMSSW displayed by LXR

 
 

    


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

0001 #ifndef SiStripMonitorSummary_SiStripQualityDQM_h
0002 #define SiStripMonitorSummary_SiStripQualityDQM_h
0003 
0004 #include "DQM/SiStripMonitorSummary/interface/SiStripBaseCondObjDQM.h"
0005 
0006 #include "CalibFormats/SiStripObjects/interface/SiStripQuality.h"
0007 #include "CalibTracker/Records/interface/SiStripQualityRcd.h"
0008 
0009 class SiStripQualityDQM : public SiStripBaseCondObjDQMGet<SiStripQuality, SiStripQualityRcd> {
0010 public:
0011   SiStripQualityDQM(edm::ESGetToken<SiStripQuality, SiStripQualityRcd> token,
0012                     edm::RunNumber_t iRun,
0013                     edm::ParameterSet const &hPSet,
0014                     edm::ParameterSet const &fPSet,
0015                     const TrackerTopology *tTopo,
0016                     const TkDetMap *tkDetMap);
0017 
0018   ~SiStripQualityDQM() override;
0019 
0020   void getActiveDetIds(const edm::EventSetup &eSetup) override;
0021 
0022   void fillModMEs(const std::vector<uint32_t> &selectedDetIds) override;
0023   void fillMEsForDet(const ModMEs &selModME_, uint32_t selDetId_) override;
0024 
0025   void fillSummaryMEs(const std::vector<uint32_t> &selectedDetIds) override;
0026   void fillMEsForLayer(
0027       /*std::map<uint32_t, ModMEs> selModMEsMap_, */ uint32_t selDetId_) override;
0028   void fillGrandSummaryMEs();
0029 
0030 private:
0031   int NTkBadComponent[4];  // k: 0=BadModule, 1=BadFiber, 2=BadApv, 3=BadStrips
0032   int NBadComponent[4][19][4];
0033   std::stringstream ssV[4][19];
0034   void SetBadComponents(int i, int component, SiStripQuality::BadComponent &BC);
0035 
0036   std::vector<uint32_t> alreadyFilledLayers;
0037 };
0038 
0039 #endif