Go to the documentation of this file.00001 #ifndef _DATAFORMATS_METRECO_HCALNOISESUMMARY_H__
00002 #define _DATAFORMATS_METRECO_HCALNOISESUMMARY_H__
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012 #include "DataFormats/METReco/interface/HcalNoiseHPD.h"
00013 #include "DataFormats/Common/interface/RefVector.h"
00014 #include "DataFormats/Common/interface/Ref.h"
00015 #include "DataFormats/Common/interface/RefProd.h"
00016 #include "DataFormats/JetReco/interface/CaloJetCollection.h"
00017 #include "DataFormats/CaloTowers/interface/CaloTowerCollection.h"
00018
00019
00020
00021
00022
00023 namespace reco {
00024 class HcalNoiseInfoProducer;
00025 }
00026
00027
00028
00029
00030
00031 class HcalNoiseSummary
00032 {
00033 friend class reco::HcalNoiseInfoProducer;
00034
00035 public:
00036
00037 HcalNoiseSummary();
00038
00039
00040 virtual ~HcalNoiseSummary();
00041
00042
00043
00044
00045 bool passLooseNoiseFilter(void) const;
00046 bool passTightNoiseFilter(void) const;
00047 bool passHighLevelNoiseFilter(void) const;
00048
00049
00050
00051 int noiseFilterStatus(void) const;
00052
00053
00054
00055 int noiseType(void) const;
00056
00057
00058
00059 float eventEMEnergy(void) const;
00060 float eventHadEnergy(void) const;
00061 float eventTrackEnergy(void) const;
00062 float eventEMFraction(void) const;
00063 float eventChargeFraction(void) const;
00064
00065
00066
00067 float min10GeVHitTime(void) const;
00068 float max10GeVHitTime(void) const;
00069 float rms10GeVHitTime(void) const;
00070 float min25GeVHitTime(void) const;
00071 float max25GeVHitTime(void) const;
00072 float rms25GeVHitTime(void) const;
00073
00074
00075 int num10GeVHits(void) const;
00076 int num25GeVHits(void) const;
00077
00078
00079
00080 float minE2TS(void) const;
00081 float minE10TS(void) const;
00082 float minE2Over10TS(void) const;
00083 float maxE2TS(void) const;
00084 float maxE10TS(void) const;
00085 float maxE2Over10TS(void) const;
00086
00087
00088
00089 int maxZeros(void) const;
00090
00091
00092
00093 int maxHPDHits(void) const;
00094 int maxRBXHits(void) const;
00095
00096
00097 int maxHPDNoOtherHits(void) const;
00098
00099
00100
00101 float minHPDEMF(void) const;
00102 float minRBXEMF(void) const;
00103
00104
00105 int numProblematicRBXs(void) const;
00106
00107 int numIsolatedNoiseChannels(void) const;
00108 float isolatedNoiseSumE(void) const;
00109 float isolatedNoiseSumEt(void) const;
00110
00111 int numFlatNoiseChannels(void) const;
00112 float flatNoiseSumE(void) const;
00113 float flatNoiseSumEt(void) const;
00114
00115 int numSpikeNoiseChannels(void) const;
00116 float spikeNoiseSumE(void) const;
00117 float spikeNoiseSumEt(void) const;
00118
00119 int numTriangleNoiseChannels(void) const;
00120 float triangleNoiseSumE(void) const;
00121 float triangleNoiseSumEt(void) const;
00122
00123 int numTS4TS5NoiseChannels(void) const;
00124 float TS4TS5NoiseSumE(void) const;
00125 float TS4TS5NoiseSumEt(void) const;
00126
00127 bool HasBadRBXTS4TS5(void) const;
00128
00129
00130 edm::RefVector<reco::CaloJetCollection> problematicJets(void) const;
00131
00132
00133 edm::RefVector<CaloTowerCollection> looseNoiseTowers(void) const;
00134 edm::RefVector<CaloTowerCollection> tightNoiseTowers(void) const;
00135 edm::RefVector<CaloTowerCollection> highLevelNoiseTowers(void) const;
00136
00137 private:
00138
00139
00140 int filterstatus_, noisetype_;
00141 float emenergy_, hadenergy_, trackenergy_;
00142 float min10_, max10_, rms10_;
00143 float min25_, max25_, rms25_;
00144 int cnthit10_, cnthit25_;
00145 float mine2ts_, mine10ts_;
00146 float maxe2ts_, maxe10ts_;
00147 int maxzeros_;
00148 int maxhpdhits_, maxhpdhitsnoother_, maxrbxhits_;
00149 float minhpdemf_, minrbxemf_;
00150 int nproblemRBXs_;
00151 int nisolnoise_;
00152 float isolnoisee_, isolnoiseet_;
00153 int nflatnoise_;
00154 float flatnoisee_, flatnoiseet_;
00155 int nspikenoise_;
00156 float spikenoisee_, spikenoiseet_;
00157 int ntrianglenoise_;
00158 float trianglenoisee_, trianglenoiseet_;
00159 int nts4ts5noise_;
00160 float ts4ts5noisee_, ts4ts5noiseet_;
00161
00162 bool hasBadRBXTS4TS5_;
00163
00164 edm::RefVector<reco::CaloJetCollection> problemjets_;
00165
00166 edm::RefVector<CaloTowerCollection> loosenoisetwrs_;
00167 edm::RefVector<CaloTowerCollection> tightnoisetwrs_;
00168 edm::RefVector<CaloTowerCollection> hlnoisetwrs_;
00169
00170 };
00171
00172 #endif