CMS 3D CMS Logo

EcalSimPhotonMCTruth.h
Go to the documentation of this file.
1 #ifndef EcalSimPhotonMCTruth_h
2 #define EcalSimPhotonMCTruth_h
3 
6 #include <vector>
7 
17 public:
19  : isAConversion_(0), thePhoton_(0., 0., 0., 0.), theR_(0.), theZ_(0.), theConvVertex_(0., 0., 0., 0.){};
20 
22 
25  float rconv,
26  float zconv,
27  const math::XYZTLorentzVectorD &convVertex,
28  const math::XYZTLorentzVectorD &pV,
29  const std::vector<const SimTrack *> &tracks);
30 
32  int isAConversion() const { return isAConversion_; }
33  float radius() const { return theR_; }
34  float z() const { return theZ_; }
37  std::vector<const SimTrack *> simTracks() const { return tracks_; }
38 
39 private:
42  float theR_;
43  float theZ_;
46  std::vector<const SimTrack *> tracks_;
47 };
48 
49 #endif
std::vector< const SimTrack * > tracks_
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< double > > XYZTLorentzVectorD
Lorentz vector with cylindrical internal representation using pseudorapidity.
Definition: LorentzVector.h:14
math::XYZTLorentzVectorD primaryVertex() const
math::XYZTLorentzVectorD thePhoton_
EcalSimPhotonMCTruth(const math::XYZTLorentzVectorD &v)
math::XYZTLorentzVectorD vertex() const
std::vector< const SimTrack * > simTracks() const
auto const & tracks
cannot be loose
math::XYZTLorentzVectorD fourMomentum() const
math::XYZTLorentzVectorD theConvVertex_
math::XYZTLorentzVectorD thePrimaryVertex_