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  // reference to problematic jets
113 
114  // reference to calotowers which fail loose, tight, and high-level noise criteria
118 
119  private:
120 
121  // data members corresponding to the values above
135 
137 
141 
142 };
143 
144 #endif
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 maxE2Over10TS(void) const
edm::RefVector< CaloTowerCollection > loosenoisetwrs_
edm::RefVector< reco::CaloJetCollection > problematicJets(void) const
float min25GeVHitTime(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
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
virtual ~HcalNoiseSummary()
edm::RefVector< reco::CaloJetCollection > problemjets_
int maxZeros(void) const
edm::RefVector< CaloTowerCollection > tightnoisetwrs_
float rms25GeVHitTime(void) const
float isolatedNoiseSumE(void) const
float minE10TS(void) const
edm::RefVector< CaloTowerCollection > looseNoiseTowers(void) const
int maxHPDNoOtherHits(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 max25GeVHitTime(void) const
float max10GeVHitTime(void) const