CMS 3D CMS Logo

SiPixelStatusHarvester.h
Go to the documentation of this file.
1 #ifndef SiPixelStatusHarvester_H
2 #define SiPixelStatusHarvester_H
3 
13 
14 // PixelDQM Framework
16 
18  enum {
25  };
26 
27  public:
28 
29  // Constructor
31 
32  // Destructor
33  ~SiPixelStatusHarvester() override;
34 
35  // Operations
36  void beginJob () override;
37  void endJob () override;
38  void endRunProduce (edm::Run&, const edm::EventSetup&) final;
39  void analyze(const edm::Event& iEvent, const edm::EventSetup& iSetup) final;
40 
41  void beginLuminosityBlock(const edm::LuminosityBlock&, const edm::EventSetup&) final;
42  void endLuminosityBlock (const edm::LuminosityBlock&, const edm::EventSetup&) final;
43 
44  private:
45 
46  // Parameters
47  std::string outputBase_;
49  int nLumi_;
50  std::string moduleName_;
51  std::string label_;
52  // harvest helper classs that setup the IOV structure
54  // debug mode
55  bool debug_;
56  // for DB output naming
57  std::string recordName_;
58 
59  // permanent known bad components
61 
62  // totoal number of lumi blocks with non-zero pixel DIGIs
63  int countLumi_ = 0;
64  // last lumi section of the SiPixeDetectorStatus data
66 
68  const SiPixelFedCabling* cablingMap_ = nullptr;
69  std::map<int, unsigned int> sensorSize_;
70 
71  // pixel online to offline pixel row/column
72  std::map<int, std::map<int, std::pair<int,int> > > pixelO2O_;
73 
74  //Helper functions
75 
76  // "step function" for IOV
78 
79  // boolean function to check whether two SiPixelQualitys (pyloads) are identical
81 
82  // Tag constructor
83  void constructTag(std::map<int,SiPixelQuality*>siPixelQualityTag, edm::Service<cond::service::PoolDBOutputService> &poolDbService, std::string tagName, edm::Run& iRun);
84 
85 
86 };
87 
88 
89 #endif
void endLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) final
bool equal(SiPixelQuality *a, SiPixelQuality *b)
std::map< int, unsigned int > sensorSize_
void constructTag(std::map< int, SiPixelQuality * >siPixelQualityTag, edm::Service< cond::service::PoolDBOutputService > &poolDbService, std::string tagName, edm::Run &iRun)
edm::LuminosityBlockNumber_t endLumiBlock_
edm::LuminosityBlockNumber_t stepIOV(edm::LuminosityBlockNumber_t pin, std::map< edm::LuminosityBlockNumber_t, edm::LuminosityBlockNumber_t > IOV)
unsigned int LuminosityBlockNumber_t
SiPixelStatusManager siPixelStatusManager_
int iEvent
Definition: GenABIO.cc:230
const SiPixelQuality * badPixelInfo_
const SiPixelFedCabling * cablingMap_
const TrackerGeometry * trackerGeometry_
void endRunProduce(edm::Run &, const edm::EventSetup &) final
SiPixelStatusHarvester(const edm::ParameterSet &)
double b
Definition: hdecay.h:120
std::map< int, std::map< int, std::pair< int, int > > > pixelO2O_
void beginLuminosityBlock(const edm::LuminosityBlock &, const edm::EventSetup &) final
Definition: plugin.cc:24
HLT enums.
double a
Definition: hdecay.h:121
void analyze(const edm::Event &iEvent, const edm::EventSetup &iSetup) final
Definition: Run.h:44