12 #include "FWCore/Framework/interface/Frameworkfwd.h" 13 #include "FWCore/Framework/interface/EDAnalyzer.h" 14 #include "FWCore/Framework/interface/Event.h" 15 #include "FWCore/ParameterSet/interface/ParameterSet.h" 18 #include "DataFormats/PatCandidates/interface/Muon.h" 19 #include "DataFormats/PatCandidates/interface/Electron.h" 20 #include "DataFormats/PatCandidates/interface/Photon.h" 21 #include "DataFormats/PatCandidates/interface/MET.h" 22 #include "DataFormats/PatCandidates/interface/Jet.h" 23 #include "DataFormats/JetReco/interface/GenJet.h" 24 #include "DataFormats/PatCandidates/interface/Conversion.h" 25 #include "DataFormats/BeamSpot/interface/BeamSpot.h" 26 #include "DataFormats/VertexReco/interface/Vertex.h" 27 #include "DataFormats/Common/interface/TriggerResults.h" 28 #include "DataFormats/PatCandidates/interface/PackedTriggerPrescales.h" 29 #include "DataFormats/PatCandidates/interface/TriggerObjectStandAlone.h" 30 #include "DataFormats/PatCandidates/interface/PackedCandidate.h" 31 #include "SimDataFormats/PileupSummaryInfo/interface/PileupSummaryInfo.h" 32 #include "SimDataFormats/GeneratorProducts/interface/LHEEventProduct.h" 72 void writeMET(edm::Handle<pat::METCollection> mets, edm::Handle<pat::METCollection> mets_nohf);
73 void writeJets(edm::Handle<pat::JetCollection> alljets,
74 edm::Handle<edm::View <reco::GenJet> > genjets,
77 std::vector<LVector> &
jets,
78 std::vector<std::vector<LVector> > &sysjets);
81 edm::Handle<pat::PackedCandidateCollection> pfcands,
82 edm::Handle<reco::VertexCollection> vtx,
83 vCands &veto_mus,
vCands &all_mus,
double rhoEventCentral);
85 edm::Handle<pat::PackedCandidateCollection> pfcands,
86 edm::Handle<reco::VertexCollection> vtx,
87 vCands &veto_els,
vCands &all_els,
double rhoEventCentral);
97 vCands writePhotons(edm::Handle<pat::PhotonCollection> allphotons, edm::Handle<std::vector<pat::Electron> > &electrons,
98 edm::Handle<reco::ConversionCollection> &conversions, edm::Handle<reco::BeamSpot> &beamspot,
double rho);
101 edm::Handle<edm::TriggerResults> triggerBits,
102 edm::Handle<pat::PackedTriggerPrescales> triggerPrescales);
104 edm::Handle<pat::TriggerObjectStandAloneCollection> triggerObjects,
107 edm::Handle<edm::TriggerResults> filterBits,
108 edm::Handle<reco::VertexCollection> vtx);
110 edm::Handle<std::vector< PileupSummaryInfo > > pu_info);
111 void writeGenInfo(edm::Handle<LHEEventProduct> lhe_info);
122 void writeWeights(
const vCands &sig_leps, edm::Handle<GenEventInfoProduct> &gen_event_info,
123 edm::Handle<LHEEventProduct> &lhe_info);
180 virtual void analyze(
const edm::Event&,
const edm::EventSetup&)
override;
181 virtual void endJob()
override;
virtual void analyze(const edm::Event &, const edm::EventSetup &) override
void writeFilters(const edm::TriggerNames &fnames, edm::Handle< edm::TriggerResults > filterBits, edm::Handle< reco::VertexCollection > vtx)
double calculateRescalingFactor(unsigned int jetIdx)
vCands writeElectrons(edm::Handle< pat::ElectronCollection > electrons, edm::Handle< pat::PackedCandidateCollection > pfcands, edm::Handle< reco::VertexCollection > vtx, vCands &veto_els, vCands &all_els, double rhoEventCentral)
void writeGenInfo(edm::Handle< LHEEventProduct > lhe_info)
std::vector< float > &(baby_base::* baby_vfloat)()
edm::EDGetTokenT< pat::METCollection > tok_met_
vCands writePhotons(edm::Handle< pat::PhotonCollection > allphotons, edm::Handle< std::vector< pat::Electron > > &electrons, edm::Handle< reco::ConversionCollection > &conversions, edm::Handle< reco::BeamSpot > &beamspot, double rho)
edm::EDGetTokenT< reco::BeamSpot > tok_offBeamSpot_
void writeLeptons(vCands &leptons)
edm::EDGetTokenT< pat::PackedCandidateCollection > tok_packPFCands_
void setDiLepMass(vCands leptons, baby_float ll_m, baby_float ll_pt1, baby_float ll_pt2, baby_float ll_pt, baby_float ll_eta, baby_float ll_phi, baby_vfloat l_pt, baby_vbool l_inz, baby_float ll_w)
void writeHLTObjects(const edm::TriggerNames &names, edm::Handle< pat::TriggerObjectStandAloneCollection > triggerObjects, vCands &all_mus, vCands &all_els, vCands &photons)
void setElMuMass(vCands leptons1, vCands leptons2, baby_float ll_m, baby_float ll_pt1, baby_float ll_pt2, baby_float ll_pt, baby_float ll_eta, baby_float ll_phi, baby_float ll_w)
edm::EDGetTokenT< LHEEventProduct > tok_source_
std::vector< const reco::Candidate * > vCands
edm::EDGetTokenT< bool > tok_HBHEIsoNoiseFilter_
std::string btag_label_BC
edm::EDGetTokenT< pat::MuonCollection > tok_muons_
void writeMET(edm::Handle< pat::METCollection > mets, edm::Handle< pat::METCollection > mets_nohf)
edm::EDGetTokenT< bool > tok_HBHENoiseFilter_
edm::EDGetTokenT< reco::GenParticleCollection > tok_pruneGenPart_
edm::EDGetTokenT< edm::TriggerResults > tok_trigResults_pat_
void writeVertices(edm::Handle< reco::VertexCollection > vtx, edm::Handle< std::vector< PileupSummaryInfo > > pu_info)
edm::EDGetTokenT< pat::JetCollection > tok_jets_
void reportTime(const edm::Event &iEvent)
std::vector< bool > &(baby_base::* baby_vbool)()
void writeDiLep(vCands &sig_mus, vCands &sig_els, vCands &veto_mus, vCands &veto_els)
bmaker_basic(const edm::ParameterSet &)
edm::EDGetTokenT< std::vector< reco::Conversion > > tok_reducedEgamma_conver_
edm::EDGetTokenT< pat::ElectronCollection > tok_electrons_
edm::EDGetTokenT< pat::PackedTriggerPrescales > tok_patTrig_
weight_tools * weightTool
std::vector< TString > trig_name
edm::EDGetTokenT< pat::TriggerObjectStandAloneCollection > tok_selectedPatTrig_
void rebalancedMET(double &MET, double &METPhi)
void writeMC(edm::Handle< reco::GenParticleCollection > genParticles, vCands &all_mus, vCands &all_els, vCands &photons)
void writeWeights(const vCands &sig_leps, edm::Handle< GenEventInfoProduct > &gen_event_info, edm::Handle< LHEEventProduct > &lhe_info)
edm::InputTag met_nohf_label
edm::EDGetTokenT< double > tok_rhoFastJet_all_
unsigned int nevents_sample
edm::EDGetTokenT< LHEEventProduct > tok_extLHEProducer_
edm::EDGetTokenT< edm::TriggerResults > tok_trigResults_hlt_
edm::EDGetTokenT< std::vector< PileupSummaryInfo > > tok_addPileup_
std::string btag_label_UDSG
void writeJets(edm::Handle< pat::JetCollection > alljets, edm::Handle< edm::View< reco::GenJet > > genjets, vCands &sig_leps, vCands &veto_leps, vCands &photons, vCands &tks, std::vector< LVector > &jets, std::vector< std::vector< LVector > > &sysjets)
photon_tools * photonTool
edm::EDGetTokenT< edm::TriggerResults > tok_trigResults_reco_
virtual void endJob() override
vCands writeMuons(edm::Handle< pat::MuonCollection > muons, edm::Handle< pat::PackedCandidateCollection > pfcands, edm::Handle< reco::VertexCollection > vtx, vCands &veto_mus, vCands &all_mus, double rhoEventCentral)
static void fillDescriptions(edm::ConfigurationDescriptions &descriptions)
void writeFatJets(std::vector< LVector > &jets)
edm::EDGetTokenT< GenEventInfoProduct > tok_generator_
bool writeTriggers(const edm::TriggerNames &names, edm::Handle< edm::TriggerResults > triggerBits, edm::Handle< pat::PackedTriggerPrescales > triggerPrescales)
edm::EDGetTokenT< pat::PhotonCollection > tok_photons_
std::vector< std::string > inputfiles
edm::EDGetTokenT< std::vector< PileupSummaryInfo > > tok_slimAddPileup_
edm::EDGetTokenT< edm::View< reco::GenJet > > tok_genJets_
virtual void beginJob() override
edm::EDGetTokenT< reco::VertexCollection > tok_primVertex_
edm::EDGetTokenT< pat::METCollection > tok_met_noHF_
float &(baby_base::* baby_float)()
double calculateRebalancedMET(unsigned int jetIdx, double mu, double &METPhi)
edm::EDGetTokenT< double > tok_rhoFastJet_centralNeutral_