CMS 3D CMS Logo

HLTGenValObject.h
Go to the documentation of this file.
1 #ifndef Validation_HLTrigger_HLTGenValObject_h
2 #define Validation_HLTrigger_HLTGenValObject_h
3 
4 //********************************************************************************
5 //
6 // Description:
7 // This class is an object wrapper for the Generator level validation code.
8 // It handles the different type of objects the code needs to run on: GenParticles, GenJets and event-level energy sums
9 //
10 // Author : Finn Labe, UHH, Nov. 2021
11 //
12 //********************************************************************************
13 
16 
18 #include <vector>
19 
21 public:
22  // empty constructor
24 
25  // constructor from GenParticle
27 
28  // constructor from GenJet
30 
31  // constructor from LorentzVector (for energy sums)
33 
34  // object functions, for usage of HLTGenValObjects by other modules
35  double pt() const { return p4Polar_.pt(); }
36  double eta() const { return p4Polar_.eta(); }
37  double phi() const { return p4Polar_.phi(); }
38  double et() const { return (pt() <= 0) ? 0 : p4Cartesian_.Et(); }
39 
40 private:
41  // containing information in two "shapes"
44 };
45 
46 #endif
double pt() const
HLTGenValObject(const reco::Candidate::PolarLorentzVector &p)
HLTGenValObject(const reco::GenParticle &p)
HLTGenValObject(const reco::GenJet &p)
double eta() const
double phi() const
PtEtaPhiMLorentzVectorD PtEtaPhiMLorentzVector
Lorentz vector with cartesian internal representation.
Definition: LorentzVector.h:25
XYZTLorentzVectorD XYZTLorentzVector
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:29
double et() const
Jets made from MC generator particles.
Definition: GenJet.h:23
math::PtEtaPhiMLorentzVector p4Polar_
math::XYZTLorentzVector p4Cartesian_
math::PtEtaPhiMLorentzVector PolarLorentzVector
Lorentz vector.
Definition: Candidate.h:38