CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_6_1_2_SLHC2/src/HLTrigger/JetMET/interface/HLTRHemisphere.h

Go to the documentation of this file.
00001 #ifndef HLTRHemisphere_h
00002 #define HLTRHemisphere_h
00003 
00004 #include "FWCore/Framework/interface/Frameworkfwd.h"
00005 #include "FWCore/Framework/interface/Event.h"
00006 #include "FWCore/Framework/interface/EDFilter.h"
00007 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00008 #include "FWCore/Utilities/interface/InputTag.h"
00009 
00010 namespace edm {
00011    class ConfigurationDescriptions;
00012 }
00013 
00014 //
00015 // class declaration
00016 //
00017 
00018 class HLTRHemisphere : public edm::EDFilter {
00019 
00020    public:
00021 
00022       explicit HLTRHemisphere(const edm::ParameterSet&);
00023       ~HLTRHemisphere();
00024       static void fillDescriptions(edm::ConfigurationDescriptions & descriptions);
00025       virtual bool filter(edm::Event&, const edm::EventSetup&);
00026 
00027    private:
00028       edm::InputTag inputTag_; // input tag identifying product
00029       edm::InputTag muonTag_;  // input tag for the muon objects 
00030       bool doMuonCorrection_;   // do the muon corrections
00031       double muonEta_;         // maximum muon eta
00032       double min_Jet_Pt_;      // minimum jet pT threshold for collection
00033       double max_Eta_;         // maximum eta
00034       int max_NJ_;             // don't calculate R if event has more than NJ jets
00035       bool accNJJets_;         // accept or reject events with high NJ
00036 
00037       void ComputeHemispheres(std::auto_ptr<std::vector<math::XYZTLorentzVector> >& hlist, const std::vector<math::XYZTLorentzVector>& JETS, std::vector<math::XYZTLorentzVector> *extraJets=0);
00038 };
00039 
00040 #endif //HLTRHemisphere_h