Main Page
Namespaces
Classes
Package Documentation
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Properties
Friends
Macros
Pages
HLTriggerOffline
Tau
interface
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
10
#include "
FWCore/Framework/interface/Frameworkfwd.h
"
11
#include "
FWCore/Framework/interface/EDProducer.h
"
12
#include "
FWCore/Framework/interface/Event.h
"
13
#include "
FWCore/ParameterSet/interface/ParameterSet.h
"
14
#include "
FWCore/Utilities/interface/InputTag.h
"
15
#include "
DataFormats/Common/interface/Handle.h
"
16
#include "
FWCore/MessageLogger/interface/MessageLogger.h
"
17
#include "
SimDataFormats/GeneratorProducts/interface/HepMCProduct.h
"
18
#include "
DataFormats/HepMCCandidate/interface/GenParticle.h
"
19
#include "
DataFormats/HepMCCandidate/interface/GenParticleFwd.h
"
20
#include "
DataFormats/Candidate/interface/Candidate.h
"
21
#include "
DataFormats/Math/interface/LorentzVector.h
"
22
#include "HepMC/GenEvent.h"
23
#include <vector>
24
#include <string>
25
#include "TLorentzVector.h"
26
27
typedef
math::XYZTLorentzVectorD
LorentzVector
;
28
typedef
std::vector<LorentzVector>
LorentzVectorCollection
;
29
30
class
HLTTauMCProducer
:
public
edm::EDProducer
{
31
32
public
:
33
explicit
HLTTauMCProducer
(
const
edm::ParameterSet
&);
34
~HLTTauMCProducer
();
35
36
virtual
void
produce
(
edm::Event
&,
const
edm::EventSetup
&);
37
38
private
:
39
40
std::vector<reco::GenParticle*>
getGenStableDecayProducts
(
const
reco::GenParticle
* particle);
41
42
enum
tauDecayModes
{
kElectron
,
kMuon
,
43
kOneProng0pi0
,
kOneProng1pi0
,
kOneProng2pi0
,
44
kThreeProng0pi0
,
kThreeProng1pi0
,
45
kOther
,
kUndefined
};
46
47
edm::EDGetTokenT<reco::GenParticleCollection>
MC_
;
48
double
ptMinMCTau_
;
49
double
ptMinMCElectron_
;
50
double
ptMinMCMuon_
;
51
std::vector<int>
m_PDG_
;
52
double
etaMax
;
53
54
};
55
56
#endif
HLTTauMCProducer::ptMinMCTau_
double ptMinMCTau_
Definition:
HLTTauMCProducer.h:48
MessageLogger.h
HLTTauMCProducer::getGenStableDecayProducts
std::vector< reco::GenParticle * > getGenStableDecayProducts(const reco::GenParticle *particle)
Definition:
HLTTauMCProducer.cc:237
HLTTauMCProducer::kMuon
Definition:
HLTTauMCProducer.h:42
math::XYZTLorentzVectorD
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition:
LorentzVector.h:14
HLTTauMCProducer
Definition:
HLTTauMCProducer.h:30
HLTTauMCProducer::m_PDG_
std::vector< int > m_PDG_
Definition:
HLTTauMCProducer.h:51
HLTTauMCProducer::tauDecayModes
tauDecayModes
Definition:
HLTTauMCProducer.h:42
GenParticle.h
Event.h
HLTTauMCProducer::MC_
edm::EDGetTokenT< reco::GenParticleCollection > MC_
Definition:
HLTTauMCProducer.h:47
Handle.h
edm::EDGetTokenT< reco::GenParticleCollection >
Frameworkfwd.h
edm::EDProducer
Definition:
EDProducer.h:35
ParameterSet.h
HLTTauMCProducer::~HLTTauMCProducer
~HLTTauMCProducer()
Definition:
HLTTauMCProducer.cc:31
Candidate.h
HLTTauMCProducer::HLTTauMCProducer
HLTTauMCProducer(const edm::ParameterSet &)
Definition:
HLTTauMCProducer.cc:7
HLTTauMCProducer::etaMax
double etaMax
Definition:
HLTTauMCProducer.h:52
HLTTauMCProducer::kThreeProng0pi0
Definition:
HLTTauMCProducer.h:44
HLTTauMCProducer::ptMinMCMuon_
double ptMinMCMuon_
Definition:
HLTTauMCProducer.h:50
GenParticleFwd.h
edm::EventSetup
Definition:
EventSetup.h:44
LorentzVector.h
HepMCProduct.h
LorentzVectorCollection
std::vector< LorentzVector > LorentzVectorCollection
Definition:
HLTTauMCProducer.h:28
EDProducer.h
HLTTauMCProducer::kUndefined
Definition:
HLTTauMCProducer.h:45
HLTTauMCProducer::kOneProng2pi0
Definition:
HLTTauMCProducer.h:43
HLTTauMCProducer::kThreeProng1pi0
Definition:
HLTTauMCProducer.h:44
HLTTauMCProducer::kOneProng1pi0
Definition:
HLTTauMCProducer.h:43
HLTTauMCProducer::kOther
Definition:
HLTTauMCProducer.h:45
HLTTauMCProducer::ptMinMCElectron_
double ptMinMCElectron_
Definition:
HLTTauMCProducer.h:49
HLTTauMCProducer::produce
virtual void produce(edm::Event &, const edm::EventSetup &)
Definition:
HLTTauMCProducer.cc:33
HLTTauMCProducer::kOneProng0pi0
Definition:
HLTTauMCProducer.h:43
reco::GenParticle
Definition:
GenParticle.h:20
HLTTauMCProducer::kElectron
Definition:
HLTTauMCProducer.h:42
InputTag.h
edm::ParameterSet
Definition:
ParameterSet.h:35
edm::Event
Definition:
Event.h:59
reco::JetExtendedAssociation::LorentzVector
math::PtEtaPhiELorentzVectorF LorentzVector
Definition:
JetExtendedAssociation.h:25
Generated for CMSSW Reference Manual by
1.8.5