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
00112 edm::RefVector<reco::CaloJetCollection> problematicJets(void) const;
00113
00114
00115 edm::RefVector<CaloTowerCollection> looseNoiseTowers(void) const;
00116 edm::RefVector<CaloTowerCollection> tightNoiseTowers(void) const;
00117 edm::RefVector<CaloTowerCollection> highLevelNoiseTowers(void) const;
00118
00119 private:
00120
00121
00122 int filterstatus_, noisetype_;
00123 float emenergy_, hadenergy_, trackenergy_;
00124 float min10_, max10_, rms10_;
00125 float min25_, max25_, rms25_;
00126 int cnthit10_, cnthit25_;
00127 float mine2ts_, mine10ts_;
00128 float maxe2ts_, maxe10ts_;
00129 int maxzeros_;
00130 int maxhpdhits_, maxhpdhitsnoother_, maxrbxhits_;
00131 float minhpdemf_, minrbxemf_;
00132 int nproblemRBXs_;
00133 int nisolnoise_;
00134 float isolnoisee_, isolnoiseet_;
00135
00136 edm::RefVector<reco::CaloJetCollection> problemjets_;
00137
00138 edm::RefVector<CaloTowerCollection> loosenoisetwrs_;
00139 edm::RefVector<CaloTowerCollection> tightnoisetwrs_;
00140 edm::RefVector<CaloTowerCollection> hlnoisetwrs_;
00141
00142 };
00143
00144 #endif