Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:33:41

0001 #ifndef SiPixelDigiValid_h
0002 #define SiPixelDigiValid_h
0003 
0004 #include "DQMServices/Core/interface/DQMEDAnalyzer.h"
0005 #include "FWCore/Framework/interface/ESHandle.h"
0006 #include "FWCore/Framework/interface/Frameworkfwd.h"
0007 #include "Geometry/TrackerGeometryBuilder/interface/TrackerGeometry.h"
0008 #include "RecoTracker/Record/interface/TrackerRecoGeometryRecord.h"
0009 #include "RecoTracker/TkDetLayers/interface/GeometricSearchTracker.h"
0010 #include "DQMServices/Core/interface/DQMStore.h"
0011 
0012 #include <string>
0013 
0014 namespace edm {
0015   template <class T>
0016   class DetSetVector;
0017 }
0018 class PixelDigi;
0019 
0020 class SiPixelDigiValid : public DQMEDAnalyzer {
0021 public:
0022   SiPixelDigiValid(const edm::ParameterSet &ps);
0023   ~SiPixelDigiValid() override;
0024 
0025 protected:
0026   void analyze(const edm::Event &e, const edm::EventSetup &c) override;
0027   void bookHistograms(DQMStore::IBooker &ibooker, const edm::Run &run, const edm::EventSetup &es) override;
0028 
0029 private:
0030   const edm::ESGetToken<GeometricSearchTracker, TrackerRecoGeometryRecord> m_geomToken;
0031   const edm::ESGetToken<TrackerTopology, TrackerTopologyRcd> m_topoToken;
0032 
0033   std::string outputFile_;
0034   bool runStandalone;
0035 
0036   //////Barrel Pixel
0037   /* 1st Layer */
0038   MonitorElement *meAdcLayer1Ring1_;
0039   MonitorElement *meAdcLayer1Ring2_;
0040   MonitorElement *meAdcLayer1Ring3_;
0041   MonitorElement *meAdcLayer1Ring4_;
0042   MonitorElement *meAdcLayer1Ring5_;
0043   MonitorElement *meAdcLayer1Ring6_;
0044   MonitorElement *meAdcLayer1Ring7_;
0045   MonitorElement *meAdcLayer1Ring8_;
0046 
0047   MonitorElement *meRowLayer1Ring1_;
0048   MonitorElement *meRowLayer1Ring2_;
0049   MonitorElement *meRowLayer1Ring3_;
0050   MonitorElement *meRowLayer1Ring4_;
0051   MonitorElement *meRowLayer1Ring5_;
0052   MonitorElement *meRowLayer1Ring6_;
0053   MonitorElement *meRowLayer1Ring7_;
0054   MonitorElement *meRowLayer1Ring8_;
0055 
0056   MonitorElement *meColLayer1Ring1_;
0057   MonitorElement *meColLayer1Ring2_;
0058   MonitorElement *meColLayer1Ring3_;
0059   MonitorElement *meColLayer1Ring4_;
0060   MonitorElement *meColLayer1Ring5_;
0061   MonitorElement *meColLayer1Ring6_;
0062   MonitorElement *meColLayer1Ring7_;
0063   MonitorElement *meColLayer1Ring8_;
0064 
0065   MonitorElement *meDigiMultiLayer1Ring1_;
0066   MonitorElement *meDigiMultiLayer1Ring2_;
0067   MonitorElement *meDigiMultiLayer1Ring3_;
0068   MonitorElement *meDigiMultiLayer1Ring4_;
0069   MonitorElement *meDigiMultiLayer1Ring5_;
0070   MonitorElement *meDigiMultiLayer1Ring6_;
0071   MonitorElement *meDigiMultiLayer1Ring7_;
0072   MonitorElement *meDigiMultiLayer1Ring8_;
0073 
0074   /* 2nd Layer */
0075   MonitorElement *meAdcLayer2Ring1_;
0076   MonitorElement *meAdcLayer2Ring2_;
0077   MonitorElement *meAdcLayer2Ring3_;
0078   MonitorElement *meAdcLayer2Ring4_;
0079   MonitorElement *meAdcLayer2Ring5_;
0080   MonitorElement *meAdcLayer2Ring6_;
0081   MonitorElement *meAdcLayer2Ring7_;
0082   MonitorElement *meAdcLayer2Ring8_;
0083 
0084   MonitorElement *meRowLayer2Ring1_;
0085   MonitorElement *meRowLayer2Ring2_;
0086   MonitorElement *meRowLayer2Ring3_;
0087   MonitorElement *meRowLayer2Ring4_;
0088   MonitorElement *meRowLayer2Ring5_;
0089   MonitorElement *meRowLayer2Ring6_;
0090   MonitorElement *meRowLayer2Ring7_;
0091   MonitorElement *meRowLayer2Ring8_;
0092 
0093   MonitorElement *meColLayer2Ring1_;
0094   MonitorElement *meColLayer2Ring2_;
0095   MonitorElement *meColLayer2Ring3_;
0096   MonitorElement *meColLayer2Ring4_;
0097   MonitorElement *meColLayer2Ring5_;
0098   MonitorElement *meColLayer2Ring6_;
0099   MonitorElement *meColLayer2Ring7_;
0100   MonitorElement *meColLayer2Ring8_;
0101 
0102   MonitorElement *meDigiMultiLayer2Ring1_;
0103   MonitorElement *meDigiMultiLayer2Ring2_;
0104   MonitorElement *meDigiMultiLayer2Ring3_;
0105   MonitorElement *meDigiMultiLayer2Ring4_;
0106   MonitorElement *meDigiMultiLayer2Ring5_;
0107   MonitorElement *meDigiMultiLayer2Ring6_;
0108   MonitorElement *meDigiMultiLayer2Ring7_;
0109   MonitorElement *meDigiMultiLayer2Ring8_;
0110 
0111   /* 3rd Layer */
0112 
0113   MonitorElement *meAdcLayer3Ring1_;
0114   MonitorElement *meAdcLayer3Ring2_;
0115   MonitorElement *meAdcLayer3Ring3_;
0116   MonitorElement *meAdcLayer3Ring4_;
0117   MonitorElement *meAdcLayer3Ring5_;
0118   MonitorElement *meAdcLayer3Ring6_;
0119   MonitorElement *meAdcLayer3Ring7_;
0120   MonitorElement *meAdcLayer3Ring8_;
0121 
0122   MonitorElement *meRowLayer3Ring1_;
0123   MonitorElement *meRowLayer3Ring2_;
0124   MonitorElement *meRowLayer3Ring3_;
0125   MonitorElement *meRowLayer3Ring4_;
0126   MonitorElement *meRowLayer3Ring5_;
0127   MonitorElement *meRowLayer3Ring6_;
0128   MonitorElement *meRowLayer3Ring7_;
0129   MonitorElement *meRowLayer3Ring8_;
0130 
0131   MonitorElement *meColLayer3Ring1_;
0132   MonitorElement *meColLayer3Ring2_;
0133   MonitorElement *meColLayer3Ring3_;
0134   MonitorElement *meColLayer3Ring4_;
0135   MonitorElement *meColLayer3Ring5_;
0136   MonitorElement *meColLayer3Ring6_;
0137   MonitorElement *meColLayer3Ring7_;
0138   MonitorElement *meColLayer3Ring8_;
0139 
0140   MonitorElement *meDigiMultiLayer3Ring1_;
0141   MonitorElement *meDigiMultiLayer3Ring2_;
0142   MonitorElement *meDigiMultiLayer3Ring3_;
0143   MonitorElement *meDigiMultiLayer3Ring4_;
0144   MonitorElement *meDigiMultiLayer3Ring5_;
0145   MonitorElement *meDigiMultiLayer3Ring6_;
0146   MonitorElement *meDigiMultiLayer3Ring7_;
0147   MonitorElement *meDigiMultiLayer3Ring8_;
0148 
0149   /*Number of digi versus ladder number */
0150   MonitorElement *meDigiMultiLayer1Ladders_;
0151   MonitorElement *meDigiMultiLayer2Ladders_;
0152   MonitorElement *meDigiMultiLayer3Ladders_;
0153 
0154   /// Forwar Pixel
0155   /* 1st Disk in ZPlus Side */
0156   MonitorElement *meAdcZpDisk1Panel1Plaq1_;
0157   MonitorElement *meAdcZpDisk1Panel1Plaq2_;
0158   MonitorElement *meAdcZpDisk1Panel1Plaq3_;
0159   MonitorElement *meAdcZpDisk1Panel1Plaq4_;
0160   MonitorElement *meAdcZpDisk1Panel2Plaq1_;
0161   MonitorElement *meAdcZpDisk1Panel2Plaq2_;
0162   MonitorElement *meAdcZpDisk1Panel2Plaq3_;
0163 
0164   MonitorElement *meRowZpDisk1Panel1Plaq1_;
0165   MonitorElement *meRowZpDisk1Panel1Plaq2_;
0166   MonitorElement *meRowZpDisk1Panel1Plaq3_;
0167   MonitorElement *meRowZpDisk1Panel1Plaq4_;
0168   MonitorElement *meRowZpDisk1Panel2Plaq1_;
0169   MonitorElement *meRowZpDisk1Panel2Plaq2_;
0170   MonitorElement *meRowZpDisk1Panel2Plaq3_;
0171 
0172   MonitorElement *meColZpDisk1Panel1Plaq1_;
0173   MonitorElement *meColZpDisk1Panel1Plaq2_;
0174   MonitorElement *meColZpDisk1Panel1Plaq3_;
0175   MonitorElement *meColZpDisk1Panel1Plaq4_;
0176   MonitorElement *meColZpDisk1Panel2Plaq1_;
0177   MonitorElement *meColZpDisk1Panel2Plaq2_;
0178   MonitorElement *meColZpDisk1Panel2Plaq3_;
0179   MonitorElement *meNdigiZpDisk1PerPanel1_;
0180   MonitorElement *meNdigiZpDisk1PerPanel2_;
0181 
0182   /* 2nd Disk in ZPlus Side */
0183   MonitorElement *meAdcZpDisk2Panel1Plaq1_;
0184   MonitorElement *meAdcZpDisk2Panel1Plaq2_;
0185   MonitorElement *meAdcZpDisk2Panel1Plaq3_;
0186   MonitorElement *meAdcZpDisk2Panel1Plaq4_;
0187   MonitorElement *meAdcZpDisk2Panel2Plaq1_;
0188   MonitorElement *meAdcZpDisk2Panel2Plaq2_;
0189   MonitorElement *meAdcZpDisk2Panel2Plaq3_;
0190 
0191   MonitorElement *meRowZpDisk2Panel1Plaq1_;
0192   MonitorElement *meRowZpDisk2Panel1Plaq2_;
0193   MonitorElement *meRowZpDisk2Panel1Plaq3_;
0194   MonitorElement *meRowZpDisk2Panel1Plaq4_;
0195   MonitorElement *meRowZpDisk2Panel2Plaq1_;
0196   MonitorElement *meRowZpDisk2Panel2Plaq2_;
0197   MonitorElement *meRowZpDisk2Panel2Plaq3_;
0198 
0199   MonitorElement *meColZpDisk2Panel1Plaq1_;
0200   MonitorElement *meColZpDisk2Panel1Plaq2_;
0201   MonitorElement *meColZpDisk2Panel1Plaq3_;
0202   MonitorElement *meColZpDisk2Panel1Plaq4_;
0203   MonitorElement *meColZpDisk2Panel2Plaq1_;
0204   MonitorElement *meColZpDisk2Panel2Plaq2_;
0205   MonitorElement *meColZpDisk2Panel2Plaq3_;
0206   MonitorElement *meNdigiZpDisk2PerPanel1_;
0207   MonitorElement *meNdigiZpDisk2PerPanel2_;
0208 
0209   /* 1st Disk in ZMinus Side */
0210   MonitorElement *meAdcZmDisk1Panel1Plaq1_;
0211   MonitorElement *meAdcZmDisk1Panel1Plaq2_;
0212   MonitorElement *meAdcZmDisk1Panel1Plaq3_;
0213   MonitorElement *meAdcZmDisk1Panel1Plaq4_;
0214   MonitorElement *meAdcZmDisk1Panel2Plaq1_;
0215   MonitorElement *meAdcZmDisk1Panel2Plaq2_;
0216   MonitorElement *meAdcZmDisk1Panel2Plaq3_;
0217 
0218   MonitorElement *meRowZmDisk1Panel1Plaq1_;
0219   MonitorElement *meRowZmDisk1Panel1Plaq2_;
0220   MonitorElement *meRowZmDisk1Panel1Plaq3_;
0221   MonitorElement *meRowZmDisk1Panel1Plaq4_;
0222   MonitorElement *meRowZmDisk1Panel2Plaq1_;
0223   MonitorElement *meRowZmDisk1Panel2Plaq2_;
0224   MonitorElement *meRowZmDisk1Panel2Plaq3_;
0225 
0226   MonitorElement *meColZmDisk1Panel1Plaq1_;
0227   MonitorElement *meColZmDisk1Panel1Plaq2_;
0228   MonitorElement *meColZmDisk1Panel1Plaq3_;
0229   MonitorElement *meColZmDisk1Panel1Plaq4_;
0230   MonitorElement *meColZmDisk1Panel2Plaq1_;
0231   MonitorElement *meColZmDisk1Panel2Plaq2_;
0232   MonitorElement *meColZmDisk1Panel2Plaq3_;
0233   MonitorElement *meNdigiZmDisk1PerPanel1_;
0234   MonitorElement *meNdigiZmDisk1PerPanel2_;
0235 
0236   /* 2nd Disk in ZMius Side */
0237   MonitorElement *meAdcZmDisk2Panel1Plaq1_;
0238   MonitorElement *meAdcZmDisk2Panel1Plaq2_;
0239   MonitorElement *meAdcZmDisk2Panel1Plaq3_;
0240   MonitorElement *meAdcZmDisk2Panel1Plaq4_;
0241   MonitorElement *meAdcZmDisk2Panel2Plaq1_;
0242   MonitorElement *meAdcZmDisk2Panel2Plaq2_;
0243   MonitorElement *meAdcZmDisk2Panel2Plaq3_;
0244 
0245   MonitorElement *meRowZmDisk2Panel1Plaq1_;
0246   MonitorElement *meRowZmDisk2Panel1Plaq2_;
0247   MonitorElement *meRowZmDisk2Panel1Plaq3_;
0248   MonitorElement *meRowZmDisk2Panel1Plaq4_;
0249   MonitorElement *meRowZmDisk2Panel2Plaq1_;
0250   MonitorElement *meRowZmDisk2Panel2Plaq2_;
0251   MonitorElement *meRowZmDisk2Panel2Plaq3_;
0252 
0253   MonitorElement *meColZmDisk2Panel1Plaq1_;
0254   MonitorElement *meColZmDisk2Panel1Plaq2_;
0255   MonitorElement *meColZmDisk2Panel1Plaq3_;
0256   MonitorElement *meColZmDisk2Panel1Plaq4_;
0257   MonitorElement *meColZmDisk2Panel2Plaq1_;
0258   MonitorElement *meColZmDisk2Panel2Plaq2_;
0259   MonitorElement *meColZmDisk2Panel2Plaq3_;
0260   MonitorElement *meNdigiZmDisk2PerPanel1_;
0261   MonitorElement *meNdigiZmDisk2PerPanel2_;
0262 
0263   DQMStore *dbe_;
0264   edm::EDGetTokenT<edm::DetSetVector<PixelDigi>> edmDetSetVector_PixelDigi_Token_;
0265   const GeometricSearchTracker *tracker;
0266 };
0267 #endif