CMS 3D CMS Logo

HLTTauMCProducer.h
Go to the documentation of this file.
1 /*HLTTauMCProducer
2 Producer that creates LorentzVector Collections
3 from offline reconstructed quantities to be used
4 in Offline Trigger DQM etc
5 */
6 
7 #ifndef HLTTauMCProducer_h
8 #define HLTTauMCProducer_h
9 
23 #include "HepMC/GenEvent.h"
25 
26 #include "TLorentzVector.h"
27 #include <string>
28 #include <vector>
29 
31 typedef std::vector<LorentzVector> LorentzVectorCollection;
32 
34 public:
35  explicit HLTTauMCProducer(const edm::ParameterSet &);
36 
37  void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override;
38 
39 private:
42  int status = 1,
43  int pdgId = 0) const;
44 
55  };
56 
59  const double ptMinMCTau_;
60  const double ptMinMCElectron_;
61  const double ptMinMCMuon_;
62  const std::vector<int> m_PDG_;
63  const double etaMin_, etaMax_, phiMin_, phiMax_;
64 };
65 
66 #endif
HLTTauMCProducer::getGenDecayProducts
void getGenDecayProducts(const reco::GenParticleRef &, reco::GenParticleRefVector &, int status=1, int pdgId=0) const
Definition: HLTTauMCProducer.cc:262
HLTTauMCProducer::ptMinMCMuon_
const double ptMinMCMuon_
Definition: HLTTauMCProducer.h:61
edm::StreamID
Definition: StreamID.h:30
HLTTauMCProducer::etaMax_
const double etaMax_
Definition: HLTTauMCProducer.h:63
Handle.h
HLTTauMCProducer::kOther
Definition: HLTTauMCProducer.h:53
MessageLogger.h
HLTTauMCProducer::kOneProng0pi0
Definition: HLTTauMCProducer.h:48
HLTTauMCProducer::etaMin_
const double etaMin_
Definition: HLTTauMCProducer.h:63
HLTTauMCProducer::kElectron
Definition: HLTTauMCProducer.h:46
HLTTauMCProducer::MC_
const edm::EDGetTokenT< reco::GenParticleCollection > MC_
Definition: HLTTauMCProducer.h:57
GenMETCollection.h
mps_update.status
status
Definition: mps_update.py:68
edm::EDGetTokenT< reco::GenParticleCollection >
math::XYZTLorentzVectorD
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:14
HLTTauMCProducer::kUndefined
Definition: HLTTauMCProducer.h:54
HLTTauMCProducer::kThreeProng1pi0
Definition: HLTTauMCProducer.h:52
edm::RefVector< GenParticleCollection >
HLTTauMCProducer::phiMax_
const double phiMax_
Definition: HLTTauMCProducer.h:63
HLTTauMCProducer::produce
void produce(edm::StreamID, edm::Event &, const edm::EventSetup &) const override
Definition: HLTTauMCProducer.cc:32
edm::Ref< GenParticleCollection >
GenParticle.h
GenParticleFwd.h
edm::global::EDProducer
Definition: EDProducer.h:32
GenMET.h
HLTTauMCProducer::m_PDG_
const std::vector< int > m_PDG_
Definition: HLTTauMCProducer.h:62
HLTTauMCProducer::MCMET_
const edm::EDGetTokenT< reco::GenMETCollection > MCMET_
Definition: HLTTauMCProducer.h:58
edm::ParameterSet
Definition: ParameterSet.h:47
Event.h
HLTTauMCProducer::ptMinMCTau_
const double ptMinMCTau_
Definition: HLTTauMCProducer.h:59
HLTTauMCProducer::kOneProng1pi0
Definition: HLTTauMCProducer.h:49
HLTTauMCProducer::tauDecayModes
tauDecayModes
Definition: HLTTauMCProducer.h:45
LorentzVector.h
LorentzVectorCollection
std::vector< LorentzVector > LorentzVectorCollection
Definition: HLTTauMCProducer.h:31
EgammaValidation_cff.pdgId
pdgId
Definition: EgammaValidation_cff.py:117
edm::EventSetup
Definition: EventSetup.h:58
InputTag.h
HLTTauMCProducer::phiMin_
const double phiMin_
Definition: HLTTauMCProducer.h:63
HLTTauMCProducer::kThreeProng0pi0
Definition: HLTTauMCProducer.h:51
Frameworkfwd.h
HLTTauMCProducer::ptMinMCElectron_
const double ptMinMCElectron_
Definition: HLTTauMCProducer.h:60
HLTTauMCProducer::HLTTauMCProducer
HLTTauMCProducer(const edm::ParameterSet &)
Definition: HLTTauMCProducer.cc:7
Candidate.h
LorentzVector
math::XYZTLorentzVectorD LorentzVector
Definition: HLTTauMCProducer.h:30
ParameterSet.h
HepMCProduct.h
EDProducer.h
edm::Event
Definition: Event.h:73
HLTTauMCProducer
Definition: HLTTauMCProducer.h:33
HLTTauMCProducer::kOneProng2pi0
Definition: HLTTauMCProducer.h:50
HLTTauMCProducer::kMuon
Definition: HLTTauMCProducer.h:47