00001 #ifndef HiggsAnalysis_HiggsToZZ4LeptonsSkim 00002 #define HiggsAnalysis_HiggsToZZ4LeptonsSkim 00003 00004 /* \class HiggsTo4LeptonsSkim 00005 * 00006 * 00007 * Filter to select 4 lepton events based on the 00008 * 1 or 2 electron or 1 or 2 muon HLT trigger, 00009 * and four leptons (no flavour requirement). 00010 * No charge requirements are applied on event. 00011 * 00012 * \author Dominique Fortin - UC Riverside 00013 * 00014 */ 00015 00016 // system include files 00017 #include <memory> 00018 00019 // user include files 00020 #include "FWCore/Framework/interface/Frameworkfwd.h" 00021 #include "FWCore/Framework/interface/EDFilter.h" 00022 00023 #include "FWCore/Framework/interface/Event.h" 00024 #include "FWCore/Framework/interface/MakerMacros.h" 00025 #include "FWCore/ParameterSet/interface/ParameterSet.h" 00026 #include "FWCore/ParameterSet/interface/InputTag.h" 00027 00028 using namespace edm; 00029 using namespace std; 00030 00031 class HiggsToZZ4LeptonsSkim : public edm::EDFilter { 00032 00033 public: 00034 // Constructor 00035 explicit HiggsToZZ4LeptonsSkim(const edm::ParameterSet&); 00036 00037 // Destructor 00038 ~HiggsToZZ4LeptonsSkim(); 00039 00041 virtual bool filter(edm::Event&, const edm::EventSetup& ); 00042 00043 00044 private: 00045 int nEvents, nSelectedEvents; 00046 00047 00048 bool debug; 00049 float stiffMinPt; 00050 float softMinPt; 00051 int nStiffLeptonMin; 00052 int nLeptonMin; 00053 00054 // Reco samples 00055 edm::InputTag recTrackLabel; 00056 edm::InputTag theGLBMuonLabel; 00057 edm::InputTag theGsfELabel; 00058 }; 00059 00060 #endif