CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
PhotonMCTruth.h
Go to the documentation of this file.
1 #ifndef PhotonMCTruth_h
2 #define PhotonMCTruth_h
3 
6 #include <CLHEP/Matrix/Vector.h>
7 #include <CLHEP/Vector/LorentzVector.h>
9 #include <vector>
10 
21 public:
22  PhotonMCTruth() : isAConversion_(0), thePhoton_(0., 0., 0.), theConvVertex_(0., 0., 0.){};
23 
24  PhotonMCTruth(CLHEP::HepLorentzVector v) : thePhoton_(v){};
25 
27  CLHEP::HepLorentzVector v,
28  int vertIndex,
29  int trackId,
30  int motherId,
31  CLHEP::HepLorentzVector mothMom,
32  CLHEP::HepLorentzVector mothVtx,
33  CLHEP::HepLorentzVector convVertex,
34  CLHEP::HepLorentzVector pV,
35  std::vector<ElectronMCTruth>& electrons);
36 
37  CLHEP::HepLorentzVector primaryVertex() const { return thePrimaryVertex_; }
38  int isAConversion() const { return isAConversion_; }
39  CLHEP::HepLorentzVector fourMomentum() const { return thePhoton_; }
40  int vertexInd() const { return theVertexIndex_; }
41  CLHEP::HepLorentzVector vertex() const { return theConvVertex_; }
42  std::vector<ElectronMCTruth> electrons() const { return theElectrons_; }
43  int trackId() const { return theTrackId_; }
44  int motherType() const { return theMotherId_; }
45  CLHEP::HepLorentzVector motherMomentum() const { return theMotherMom_; }
46  CLHEP::HepLorentzVector motherVtx() const { return theMotherVtx_; }
47 
48 private:
50  CLHEP::HepLorentzVector thePhoton_;
54  CLHEP::HepLorentzVector theMotherMom_;
55  CLHEP::HepLorentzVector theMotherVtx_;
56  CLHEP::HepLorentzVector theConvVertex_;
57  CLHEP::HepLorentzVector thePrimaryVertex_;
58  std::vector<ElectronMCTruth> theElectrons_;
59 };
60 
61 #endif
CLHEP::HepLorentzVector theMotherMom_
Definition: PhotonMCTruth.h:54
int trackId() const
Definition: PhotonMCTruth.h:43
std::vector< ElectronMCTruth > electrons() const
Definition: PhotonMCTruth.h:42
CLHEP::HepLorentzVector primaryVertex() const
Definition: PhotonMCTruth.h:37
CLHEP::HepLorentzVector theConvVertex_
Definition: PhotonMCTruth.h:56
CLHEP::HepLorentzVector motherVtx() const
Definition: PhotonMCTruth.h:46
CLHEP::HepLorentzVector vertex() const
Definition: PhotonMCTruth.h:41
std::vector< ElectronMCTruth > theElectrons_
Definition: PhotonMCTruth.h:58
int vertexInd() const
Definition: PhotonMCTruth.h:40
int motherType() const
Definition: PhotonMCTruth.h:44
CLHEP::HepLorentzVector thePhoton_
Definition: PhotonMCTruth.h:50
int isAConversion() const
Definition: PhotonMCTruth.h:38
CLHEP::HepLorentzVector motherMomentum() const
Definition: PhotonMCTruth.h:45
CLHEP::HepLorentzVector theMotherVtx_
Definition: PhotonMCTruth.h:55
CLHEP::HepLorentzVector thePrimaryVertex_
Definition: PhotonMCTruth.h:57
PhotonMCTruth(CLHEP::HepLorentzVector v)
Definition: PhotonMCTruth.h:24
CLHEP::HepLorentzVector fourMomentum() const
Definition: PhotonMCTruth.h:39