CMS 3D CMS Logo

ElectronMCTruth.h
Go to the documentation of this file.
1 #ifndef ElectronMCTruth_h
2 #define ElectronMCTruth_h
3 
6 #include <CLHEP/Matrix/Vector.h>
7 #include <CLHEP/Vector/LorentzVector.h>
8 #include <vector>
9 
19 
20  public:
22  ElectronMCTruth( CLHEP::HepLorentzVector& v,
23  int vertIndex,
24  std::vector<CLHEP::Hep3Vector>& bremPos,
25  std::vector<CLHEP::HepLorentzVector>& pBrem,
26  std::vector<float>& xbrem,
27  CLHEP::HepLorentzVector& pV,
28  SimTrack& eTrack );
29 
30 
31  CLHEP::HepLorentzVector fourMomentum() const {return theElectron_;}
32  CLHEP::HepLorentzVector primaryVertex() const {return thePrimaryVertex_;}
33  std::vector<CLHEP::Hep3Vector> bremVertices() const { return theBremPosition_;}
34  std::vector<CLHEP::HepLorentzVector> bremMomentum() const { return theBremMomentum_;}
35  std::vector<float> eloss() const {return theELoss_;}
36  SimTrack simTracks() const {return eTrack_;}
37  int vertexInd() const {return theVertexIndex_;}
38 
39  private:
40  CLHEP::HepLorentzVector theElectron_;
42  std::vector<CLHEP::Hep3Vector> theBremPosition_;
43  std::vector<CLHEP::HepLorentzVector> theBremMomentum_;
44  std::vector<float> theELoss_;
45  CLHEP::HepLorentzVector thePrimaryVertex_;
47 
48 
49 
50 };
51 
52 #endif
std::vector< CLHEP::Hep3Vector > theBremPosition_
std::vector< CLHEP::HepLorentzVector > theBremMomentum_
std::vector< float > eloss() const
std::vector< float > theELoss_
std::vector< CLHEP::HepLorentzVector > bremMomentum() const
int vertexInd() const
CLHEP::HepLorentzVector primaryVertex() const
CLHEP::HepLorentzVector thePrimaryVertex_
CLHEP::HepLorentzVector fourMomentum() const
CLHEP::HepLorentzVector theElectron_
SimTrack simTracks() const
std::vector< CLHEP::Hep3Vector > bremVertices() const