CMS 3D CMS Logo

HLTHcalMETNoiseCleaner.h
Go to the documentation of this file.
1 #ifndef HLTHcalMETNoiseCleaner_h
2 #define HLTHcalMETNoiseCleaner_h
3 
15 
16 namespace edm {
18 }
19 
21 public:
23  ~HLTHcalMETNoiseCleaner() override;
24  static void fillDescriptions(edm::ConfigurationDescriptions& descriptions);
25  bool filter(edm::Event&, const edm::EventSetup&) override;
26 
27 private:
30  // parameters
33  double CaloMetCut_;
34  int severity_;
39  double minRBXEnergy_;
40  double minRatio_;
41  double maxRatio_;
45  int minZeros_;
48  double maxRBXEMF_;
49 
50  // imported from the RecoMET/METProducers/python/hcalnoiseinfoproducer_cfi
52 
54  std::vector<std::pair<double, double> > TS4TS5UpperCut_;
55  std::vector<std::pair<double, double> > TS4TS5LowerCut_;
56 
57  reco::CaloMET BuildCaloMet(float sumet, float pt, float phi);
58 
59  // helper function to compare noise data energies
60  struct noisedatacomp {
61  inline bool operator()(const CommonHcalNoiseRBXData& t1, const CommonHcalNoiseRBXData& t2) const {
62  return t1.energy() > t2.energy();
63  }
64  };
65  typedef std::set<CommonHcalNoiseRBXData, noisedatacomp> noisedataset_t;
66 };
67 
68 #endif //HLTHcalMETNoiseCleaner_h
bool operator()(const CommonHcalNoiseRBXData &t1, const CommonHcalNoiseRBXData &t2) const
~HLTHcalMETNoiseCleaner() override
std::vector< std::pair< double, double > > TS4TS5UpperCut_
edm::EDGetTokenT< reco::CaloMETCollection > m_theCaloMetToken
std::set< CommonHcalNoiseRBXData, noisedatacomp > noisedataset_t
reco::CaloMET BuildCaloMet(float sumet, float pt, float phi)
HLTHcalMETNoiseCleaner(const edm::ParameterSet &)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::InputTag HcalNoiseRBXCollectionTag_
bool filter(edm::Event &, const edm::EventSetup &) override
edm::EDGetTokenT< reco::HcalNoiseRBXCollection > m_theHcalNoiseToken
HLT enums.
std::vector< std::pair< double, double > > TS4TS5LowerCut_