test
CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HGCalRecHitValidation.h
Go to the documentation of this file.
1 #ifndef HGCalRecHitValidation_h
2 #define HGCalRecHitValidation_h
3 // -*- C++ -*-
4 //
5 // Package: HGCalRecHitValidation
6 // Class: HGCalRecHitValidation
7 //
15 //
16 // Original Author: Raman Khurana
17 // Created: Sunday, 17th Augst 2014 11:30:15 GMT
18 // $Id$
19 //
20 //
21 
22 
23 // system include files
24 #include <memory>
25 
26 // user include files
34 
37 
38 #include <iostream>
39 #include <fstream>
40 #include <vector>
41 #include <map>
42 #include <string>
43 
45 
46 public:
47  struct energysum{
49  double e15, e25, e50, e100, e250, e1000;
50  };
51 
52  struct HitsInfo{
54  x=y=z=time=energy=phi=eta=0.0;
55  layer=0;
56  }
57  float x, y, z, time, energy, phi, eta ;
58  float layer;
59  };
60 
61 
64 
65  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
66  void dqmBeginRun(const edm::Run&, const edm::EventSetup&);
67  void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override;
68  void analyze(const edm::Event&, const edm::EventSetup&);
69 
70 private:
71  template<class T1, class T2>
72  void recHitValidation(DetId & detId, int layer, const T1* geom, T2 it);
73  void fillHitsInfo();
74  void fillHitsInfo(HitsInfo& hits);
75  void fillOccupancyMap(std::map<int, int>& OccupancyMap, int layer);
76 
77  // ----------member data ---------------------------
81  unsigned int layers_;
82  std::map<int, int> OccupancyMap_plus;
83  std::map<int, int> OccupancyMap_minus;
84 
85  std::vector<MonitorElement*> EtaPhi_Plus_;
86  std::vector<MonitorElement*> EtaPhi_Minus_;
87  std::vector<MonitorElement*> energy_;
88  std::vector<MonitorElement*> HitOccupancy_Plus_;
89  std::vector<MonitorElement*> HitOccupancy_Minus_;
92 };
93 #endif
HGCalRecHitValidation(const edm::ParameterSet &)
std::vector< MonitorElement * > EtaPhi_Minus_
std::vector< MonitorElement * > EtaPhi_Plus_
std::vector< MonitorElement * > HitOccupancy_Minus_
void dqmBeginRun(const edm::Run &, const edm::EventSetup &)
MonitorElement * MeanHitOccupancy_Plus_
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
std::map< int, int > OccupancyMap_minus
void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * MeanHitOccupancy_Minus_
void bookHistograms(DQMStore::IBooker &, edm::Run const &, edm::EventSetup const &) override
Definition: DetId.h:18
void fillOccupancyMap(std::map< int, int > &OccupancyMap, int layer)
std::map< int, int > OccupancyMap_plus
std::vector< MonitorElement * > HitOccupancy_Plus_
void recHitValidation(DetId &detId, int layer, const T1 *geom, T2 it)
std::vector< MonitorElement * > energy_
Definition: Run.h:43