CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
HcalNoiseSummary.h
Go to the documentation of this file.
1 #ifndef _DATAFORMATS_METRECO_HCALNOISESUMMARY_H__
2 #define _DATAFORMATS_METRECO_HCALNOISESUMMARY_H__
3 
4 //
5 // HcalNoiseSummary.h
6 //
7 // description: Container class for HCAL noise summary information
8 //
9 // author: J.P. Chou, Brown
10 //
11 
18 
19 //
20 // forward declaration
21 //
22 
23 namespace reco {
24  class HcalNoiseInfoProducer;
25 }
26 
27 //
28 // class definition
29 //
30 
32 {
33  friend class reco::HcalNoiseInfoProducer; // allows this class to fill the info
34 
35  public:
36  // constructor
38 
39  // destructor
40  virtual ~HcalNoiseSummary();
41 
42  // whether or not the event passed the event filter
43  // note that these methods are deprecated
44  // please see the instructions here: https://twiki.cern.ch/twiki/bin/view/CMS/HcalNoiseInfoLibrary
45  bool passLooseNoiseFilter(void) const;
46  bool passTightNoiseFilter(void) const;
47  bool passHighLevelNoiseFilter(void) const;
48 
49  // the status with which the filter failed: this is a bitset
50  // 0 is no failure
51  int noiseFilterStatus(void) const;
52 
53  // noise type: 1=HPD Ionfeedback, 2=HPD Discharge, 3=RBX Noise
54  // won't work with non-noise event
55  int noiseType(void) const;
56 
57  // quantities to calculate EM fraction and charge fraction
58  // of the event (|eta|<2.0)
59  float eventEMEnergy(void) const;
60  float eventHadEnergy(void) const;
61  float eventTrackEnergy(void) const;
62  float eventEMFraction(void) const;
63  float eventChargeFraction(void) const;
64 
65  // minimum/maximum/RMS rechit time
66  // rechit energy>10 GeV or 25 GeV
67  float min10GeVHitTime(void) const;
68  float max10GeVHitTime(void) const;
69  float rms10GeVHitTime(void) const;
70  float min25GeVHitTime(void) const;
71  float max25GeVHitTime(void) const;
72  float rms25GeVHitTime(void) const;
73 
74  // # of hits with E>10 GeV or 25 GeV
75  int num10GeVHits(void) const;
76  int num25GeVHits(void) const;
77 
78  // E(2TS), E(10TS), and E(2TS)/E(10TS) for the minimum and maximum E(2TS)/E(10TS) found in an RBX in the event
79  // the total energy in the RBX must be > 50 GeV
80  float minE2TS(void) const;
81  float minE10TS(void) const;
82  float minE2Over10TS(void) const;
83  float maxE2TS(void) const;
84  float maxE10TS(void) const;
85  float maxE2Over10TS(void) const;
86 
87  // largest number of zeros found in a single RBX in the event
88  // total energy in the RBX must be > 10 GeV
89  int maxZeros(void) const;
90 
91  // largest number of hits in a single HPD/RBX in the event
92  // each hit is >= 1.5 GeV
93  int maxHPDHits(void) const;
94  int maxRBXHits(void) const;
95 
96  // largest number of hits in a single HPD when no other hits are present in the RBX
97  int maxHPDNoOtherHits(void) const;
98 
99  // smallest EMF found in an HPD/RBX in the event
100  // the total energy in the HPD/RBX must be >50 GeV
101  float minHPDEMF(void) const;
102  float minRBXEMF(void) const;
103 
104  // number of "problematic" RBXs
105  int numProblematicRBXs(void) const;
106 
107  int numIsolatedNoiseChannels(void) const;
108  float isolatedNoiseSumE(void) const;
109  float isolatedNoiseSumEt(void) const;
110 
111  int numFlatNoiseChannels(void) const;
112  float flatNoiseSumE(void) const;
113  float flatNoiseSumEt(void) const;
114 
115  int numSpikeNoiseChannels(void) const;
116  float spikeNoiseSumE(void) const;
117  float spikeNoiseSumEt(void) const;
118 
119  int numTriangleNoiseChannels(void) const;
120  float triangleNoiseSumE(void) const;
121  float triangleNoiseSumEt(void) const;
122 
123  int numTS4TS5NoiseChannels(void) const;
124  float TS4TS5NoiseSumE(void) const;
125  float TS4TS5NoiseSumEt(void) const;
126 
127  int GetRecHitCount(void) const;
128  int GetRecHitCount15(void) const;
129  double GetRecHitEnergy(void) const;
130  double GetRecHitEnergy15(void) const;
131 
132  double GetTotalCalibCharge(void) const;
133 
134  bool HasBadRBXTS4TS5(void) const;
135 
136  // reference to problematic jets
138 
139  // reference to calotowers which fail loose, tight, and high-level noise criteria
143 
144  private:
145 
146  // data members corresponding to the values above
168 
173  double calibCharge_;
174 
176 
178 
182 
183 };
184 
185 #endif
int numSpikeNoiseChannels(void) const
edm::RefVector< CaloTowerCollection > hlnoisetwrs_
bool passTightNoiseFilter(void) const
float eventTrackEnergy(void) const
float eventEMFraction(void) const
float maxE10TS(void) const
int numIsolatedNoiseChannels(void) const
float TS4TS5NoiseSumEt(void) const
float spikeNoiseSumE(void) const
float maxE2Over10TS(void) const
edm::RefVector< CaloTowerCollection > loosenoisetwrs_
edm::RefVector< reco::CaloJetCollection > problematicJets(void) const
double GetRecHitEnergy15(void) const
int GetRecHitCount15(void) const
float min25GeVHitTime(void) const
float spikeNoiseSumEt(void) const
int numProblematicRBXs(void) const
int num25GeVHits(void) const
float eventChargeFraction(void) const
float min10GeVHitTime(void) const
float isolatedNoiseSumEt(void) const
float maxE2TS(void) const
float minE2Over10TS(void) const
int noiseType(void) const
int maxRBXHits(void) const
float flatNoiseSumE(void) const
double GetTotalCalibCharge(void) const
float TS4TS5NoiseSumE(void) const
int numFlatNoiseChannels(void) const
bool HasBadRBXTS4TS5(void) const
edm::RefVector< CaloTowerCollection > tightNoiseTowers(void) const
bool passHighLevelNoiseFilter(void) const
float minE2TS(void) const
bool passLooseNoiseFilter(void) const
float minHPDEMF(void) const
float rms10GeVHitTime(void) const
int noiseFilterStatus(void) const
float eventHadEnergy(void) const
float triangleNoiseSumEt(void) const
virtual ~HcalNoiseSummary()
edm::RefVector< reco::CaloJetCollection > problemjets_
float triangleNoiseSumE(void) const
int maxZeros(void) const
edm::RefVector< CaloTowerCollection > tightnoisetwrs_
float rms25GeVHitTime(void) const
float isolatedNoiseSumE(void) const
double GetRecHitEnergy(void) const
float minE10TS(void) const
edm::RefVector< CaloTowerCollection > looseNoiseTowers(void) const
int maxHPDNoOtherHits(void) const
int numTS4TS5NoiseChannels(void) const
int numTriangleNoiseChannels(void) const
float minRBXEMF(void) const
float eventEMEnergy(void) const
edm::RefVector< CaloTowerCollection > highLevelNoiseTowers(void) const
int maxHPDHits(void) const
int num10GeVHits(void) const
float flatNoiseSumEt(void) const
int GetRecHitCount(void) const
float max25GeVHitTime(void) const
float max10GeVHitTime(void) const