CMS 3D CMS Logo

SiPixelStatusProducer.h
Go to the documentation of this file.
1 #ifndef CalibTracker_SiPixelQuality_SiPixelStatusProducer_h
2 #define CalibTracker_SiPixelQuality_SiPixelStatusProducer_h
3 
11 // C++ standard
12 #include <string>
13 // CMS
18 
19 class SiPixelStatusProducer : public edm::one::EDProducer<edm::EndLuminosityBlockProducer,
20  edm::one::WatchLuminosityBlocks, edm::Accumulator> {
21  public:
23  ~SiPixelStatusProducer() override;
24 
25  private:
26  void beginLuminosityBlock (edm::LuminosityBlock const& lumiSeg, const edm::EventSetup& iSetup) final;
27  void endLuminosityBlock (edm::LuminosityBlock const& lumiSeg, const edm::EventSetup& iSetup) final;
28  void endLuminosityBlockProduce(edm::LuminosityBlock& lumiSeg, const edm::EventSetup& iSetup) final;
29  void accumulate (edm::Event const&, const edm::EventSetup& iSetup) final;
30 
31  virtual void onlineRocColRow(const DetId &detId, int offlineRow, int offlineCol, int &roc, int &row, int &col) final;
32 
33  virtual int indexROC(int irow, int icol, int nROCcolumns) final;
34 
35  // time granularity control
36  unsigned long int ftotalevents;
38  int countLumi_; //counter
39 
41  int endLumi_;
42  int beginRun_;
43  int endRun_;
44 
45  // condition watchers
46  // CablingMaps
50 
51  // TrackerDIGIGeo
54  // TrackerTopology
56 
57  // SiPixel offline<->online conversion
58  // -- map (for each detid) of the map from offline col/row to the online roc/col/row
60 
61  // ROC size (number of row, number of columns for each det id)
62  std::map<int, std::pair<int,int> > fSensors;
63  // the roc layout on a module
64  std::map<int, std::pair<int,int> > fSensorLayout;
65  // fedId as a function of detId
66  std::unordered_map<uint32_t, unsigned int> fFedIds;
67  // map the index ROC to rocId
68  std::map<int, std::map<int,int> > fRocIds;
69 
70  // Producer inputs / controls
73  std::vector<edm::EDGetTokenT<PixelFEDChannelCollection> > theBadPixelFEDChannelsTokens_;
74 
75  // Channels always have FEDerror25 for the full lumi section
76  std::map<int, std::vector<PixelFEDChannel> > FEDerror25_;
77 
78  // Producer production (output collection)
80 
81 };
82 
83 #endif
edm::ESHandle< TrackerGeometry > fTG
std::map< int, std::map< int, int > > fRocIds
void accumulate(edm::Event const &, const edm::EventSetup &iSetup) final
SiPixelStatusProducer(const edm::ParameterSet &)
std::map< int, std::pair< int, int > > fSensors
std::map< int, std::pair< int, int > > fSensorLayout
edm::ESWatcher< TrackerDigiGeometryRecord > trackerDIGIGeoWatcher_
edm::ESWatcher< TrackerTopologyRcd > trackerTopoWatcher_
edm::ESHandle< SiPixelFedCablingMap > fCablingMap
std::vector< edm::EDGetTokenT< PixelFEDChannelCollection > > theBadPixelFEDChannelsTokens_
virtual void onlineRocColRow(const DetId &detId, int offlineRow, int offlineCol, int &roc, int &row, int &col) final
edm::EDGetTokenT< edmNew::DetSetVector< SiPixelCluster > > fSiPixelClusterToken_
std::unordered_map< uint32_t, unsigned int > fFedIds
SiPixelDetectorStatus fDet
Definition: DetId.h:18
unsigned long int ftotalevents
edm::ESWatcher< SiPixelFedCablingMapRcd > siPixelFedCablingMapWatcher_
void beginLuminosityBlock(edm::LuminosityBlock const &lumiSeg, const edm::EventSetup &iSetup) final
std::map< int, std::vector< PixelFEDChannel > > FEDerror25_
const SiPixelFedCablingMap * fCablingMap_
col
Definition: cuy.py:1008
virtual int indexROC(int irow, int icol, int nROCcolumns) final
void endLuminosityBlockProduce(edm::LuminosityBlock &lumiSeg, const edm::EventSetup &iSetup) final
SiPixelCoordinates coord_
void endLuminosityBlock(edm::LuminosityBlock const &lumiSeg, const edm::EventSetup &iSetup) final