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 
22  public:
24  ~HLTHcalMETNoiseCleaner() override;
25  static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
26  bool filter(edm::Event&, const edm::EventSetup&) override;
27 
28  private:
31  // parameters
34  double CaloMetCut_;
35  int severity_;
40  double minRBXEnergy_;
41  double minRatio_;
42  double maxRatio_;
46  int minZeros_;
49  double maxRBXEMF_;
50 
51  // imported from the RecoMET/METProducers/python/hcalnoiseinfoproducer_cfi
52  double minRecHitE_, minLowHitE_, minHighHitE_, minR45HitE_;
53 
55  std::vector<std::pair<double, double> > TS4TS5UpperCut_;
56  std::vector<std::pair<double, double> > TS4TS5LowerCut_;
57 
58  reco::CaloMET BuildCaloMet(float sumet,float pt,float phi);
59 
60  // helper function to compare noise data energies
61  struct noisedatacomp {
62  inline bool operator() ( const CommonHcalNoiseRBXData& t1, const CommonHcalNoiseRBXData& t2) const{
63  return t1.energy()>t2.energy();
64  }
65  };
66  typedef std::set<CommonHcalNoiseRBXData, noisedatacomp> noisedataset_t;
67 };
68 
69 #endif //HLTHcalMETNoiseCleaner_h
std::vector< std::pair< double, double > > TS4TS5UpperCut_
edm::EDGetTokenT< reco::CaloMETCollection > m_theCaloMetToken
std::set< CommonHcalNoiseRBXData, noisedatacomp > noisedataset_t
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
edm::InputTag HcalNoiseRBXCollectionTag_
edm::EDGetTokenT< reco::HcalNoiseRBXCollection > m_theHcalNoiseToken
double energy(void) const
Definition: HcalNoiseAlgo.h:20
HLT enums.
std::vector< std::pair< double, double > > TS4TS5LowerCut_