ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/Conversion.h
Revision: 1.3
Committed: Mon Jul 7 15:32:52 2008 UTC (16 years, 10 months ago) by bendavid
Content type: text/plain
Branch: MAIN
Changes since 1.2: +19 -1 lines
Log Message:
added more conversion details

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2 bendavid 1.3 // $Id: Conversion.h,v 1.2 2008/07/03 08:22:17 loizides Exp $
3 bendavid 1.1 //
4 loizides 1.2 // Conversion
5 bendavid 1.1 //
6     // Details to be worked out...
7     //
8 loizides 1.2 // Authors: J.Bendavid
9 bendavid 1.1 //--------------------------------------------------------------------------------------------------
10    
11     #ifndef DATATREE_CONVERSION_H
12     #define DATATREE_CONVERSION_H
13    
14     #include "MitAna/DataTree/interface/CompositeParticle.h"
15     #include "MitAna/DataTree/interface/FitVertex.h"
16     #include "MitAna/DataTree/interface/Electron.h"
17    
18     namespace mithep
19     {
20     class Conversion : public CompositeParticle
21     {
22     public:
23     Conversion() : fVertex(0,0,0) {}
24     Conversion(Double_t x, Double_t y, Double_t z) : fVertex(x,y,z) {}
25 loizides 1.2 Conversion(Double_t x, Double_t y, Double_t z, Double_t xErr, Double_t yErr, Double_t zErr) :
26     fVertex(x,y,z,xErr,yErr,zErr) {}
27 bendavid 1.1 ~Conversion() {}
28    
29     const Electron *GetDaughter(UInt_t i) const;
30 bendavid 1.3 Double_t GetDCotTheta() const { return fDCotTheta; }
31     Double_t GetEOverP() const { return fEOverP; }
32     Double_t GetPairMass() const { return fPairMass; }
33     const ThreeVector &GetPairMomentum() const { return fPairMomentum; }
34 bendavid 1.1 const FitVertex &GetVertex() const { return fVertex; }
35     FitVertex &GetVertex() { return fVertex; }
36 bendavid 1.3 void SetDCotTheta(Double_t dCotTheta) { fDCotTheta = dCotTheta;}
37     void SetEOverP(Double_t eOverP) { fEOverP = eOverP;}
38     void SetPairMass(Double_t pairMass) { fPairMass = pairMass;}
39     void SetPairMomentum(Double_t px, Double_t py, Double_t pz);
40 bendavid 1.1
41     protected:
42 loizides 1.2 FitVertex fVertex; //reconstructed decay vertex
43 bendavid 1.3 Double_t fDCotTheta; //delta cot theta between the tracks at the conversion point
44     Double_t fEOverP; //E over p of conversion tracks
45     Double_t fPairMass; //mass of electron-positron pair at conversion point
46     ThreeVector fPairMomentum; //momentum of tracks at conversion point
47 bendavid 1.1
48 loizides 1.2 ClassDef(Conversion,1) // Conversion class
49 bendavid 1.1 };
50     }
51    
52     //--------------------------------------------------------------------------------------------------
53     inline const mithep::Electron *mithep::Conversion::GetDaughter(UInt_t i) const
54     {
55     // Return reference to electron daughters.
56    
57     return static_cast<const mithep::Electron*>(fDaughters.At(i));
58     }
59 bendavid 1.3
60     //--------------------------------------------------------------------------------------------------
61     inline void mithep::Conversion::SetPairMomentum(Double_t px, Double_t py, Double_t pz)
62     {
63     fPairMomentum.SetXYZ(px,py,pz);;
64     }
65 bendavid 1.1 #endif