CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
TauValidation.h
Go to the documentation of this file.
1 #ifndef TauValidation_H
2 #define TauValidation_H
3 
4 /*class TauValidation
5  *
6  * Class to fill Event Generator dqm monitor elements; works on HepMCProduct
7  *
8  * $Date: 2010/07/02 13:34:23 $
9  * $Revision: 1.3 $
10  *
11  */
12 
13 // framework & common header files
18 
23 
24 //DQM services
28 
30 
32 #include "TLorentzVector.h"
33 
35 {
36  public:
37  // tau decays
38  enum {undetermined,
41  pi,
42  K,
48  // tau mother particles
49  enum {other,
51  Z,
52  W,
53  HSM,
54  H0,
55  A0,
56  Hpm};
57 
58  public:
59  explicit TauValidation(const edm::ParameterSet&);
60  virtual ~TauValidation();
61  virtual void beginJob();
62  virtual void endJob();
63  virtual void analyze(const edm::Event&, const edm::EventSetup&);
64  virtual void beginRun(const edm::Run&, const edm::EventSetup&);
65  virtual void endRun(const edm::Run&, const edm::EventSetup&);
66 
67  private:
68  int tauMother(const HepMC::GenParticle*);
69  int tauProngs(const HepMC::GenParticle*);
71  void rtau(const HepMC::GenParticle*,int,int);
72  void spinEffects(const HepMC::GenParticle*,int,int);
74  double visibleTauEnergy(const HepMC::GenParticle*);
75  TLorentzVector leadingPionP4(const HepMC::GenParticle*);
76  TLorentzVector motherP4(const HepMC::GenParticle*);
77  void photons(const HepMC::GenParticle*);
78 
80 
81  double tauEtCut;
82 
85 
88 
91 
96  *TauPhotons;
97 };
98 
99 #endif
100 
virtual ~TauValidation()
MonitorElement * TauRtauW
Definition: TauValidation.h:93
TauValidation(const edm::ParameterSet &)
MonitorElement * TauPt
Definition: TauValidation.h:93
MonitorElement * TauMothers
Definition: TauValidation.h:93
virtual void endJob()
int tauMother(const HepMC::GenParticle *)
virtual void analyze(const edm::Event &, const edm::EventSetup &)
MonitorElement * TauSpinEffectsW
Definition: TauValidation.h:93
MonitorElement * TauProngs
Definition: TauValidation.h:93
int tauDecayChannel(const HepMC::GenParticle *)
void spinEffects(const HepMC::GenParticle *, int, int)
void rtau(const HepMC::GenParticle *, int, int)
virtual void beginJob()
double photonFromTauPtSum
Definition: TauValidation.h:83
MonitorElement * TauDecayChannels
Definition: TauValidation.h:93
edm::InputTag hepmcCollection_
Definition: TauValidation.h:79
MonitorElement * TauSpinEffectsHpm
Definition: TauValidation.h:93
double visibleTauEnergy(const HepMC::GenParticle *)
TLorentzVector leadingPionP4(const HepMC::GenParticle *)
void photons(const HepMC::GenParticle *)
MonitorElement * nEvt
Definition: TauValidation.h:92
TLorentzVector motherP4(const HepMC::GenParticle *)
virtual void endRun(const edm::Run &, const edm::EventSetup &)
edm::ESHandle< HepPDT::ParticleDataTable > fPDGTable
PDT table.
Definition: TauValidation.h:87
double leadingPionMomentum(const HepMC::GenParticle *)
MonitorElement * TauEta
Definition: TauValidation.h:93
DQMStore * dbe
ME&#39;s &quot;container&quot;.
Definition: TauValidation.h:90
virtual void beginRun(const edm::Run &, const edm::EventSetup &)
int tauProngs(const HepMC::GenParticle *)
MonitorElement * TauRtauHpm
Definition: TauValidation.h:93
Definition: Run.h:32
MonitorElement * TauPhotons
Definition: TauValidation.h:93