ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/Conversion.h
Revision: 1.15
Committed: Wed Mar 18 15:44:32 2009 UTC (16 years, 1 month ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_025c_branch2, Mit_025c_branch1, Mit_025c_branch0, Mit_025d, Mit_025c, Mit_025b, Mit_025a, Mit_025, Mit_025pre2, Mit_024b, Mit_025pre1, Mit_024a, Mit_024, Mit_023, Mit_022a, Mit_022, Mit_020d, TMit_020d, Mit_020c, Mit_021, Mit_021pre2, Mit_021pre1, Mit_020b, Mit_020a, Mit_020, Mit_020pre1, Mit_018, Mit_017, Mit_017pre3, Mit_017pre2, Mit_017pre1, Mit_016, Mit_015b, Mit_015a, Mit_015, Mit_014e, Mit_014d, Mit_014c, Mit_014b, Mit_014a, Mit_014, Mit_014pre3, Mit_014pre2, Mit_014pre1, Mit_013d, Mit_013c, Mit_013b, Mit_013a, Mit_013, Mit_013pre1, Mit_012i, Mit_012h, Mit_012g, Mit_012f, Mit_012e, Mit_012d, Mit_012c, Mit_012b, Mit_012a, Mit_012, Mit_011a, Mit_011, Mit_010a, Mit_010, Mit_009c, Mit_009b, Mit_009a, Mit_009, Mit_008
Branch point for: Mit_025c_branch
Changes since 1.14: +21 -20 lines
Log Message:
Introduced Double32_t [0,0,14] consistently. Updated class descriptions.

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: Conversion.h,v 1.14 2009/03/18 15:25:48 loizides Exp $
3 //
4 // Conversion
5 //
6 // This class holds information about reconstructed conversions from CMSSW.
7 //
8 // Authors: J.Bendavid
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITANA_DATATREE_CONVERSION_H
12 #define MITANA_DATATREE_CONVERSION_H
13
14 #include "MitCommon/DataFormats/interface/Vect3C.h"
15 #include "MitCommon/DataFormats/interface/Vect4M.h"
16 #include "MitAna/DataTree/interface/CompositeParticle.h"
17 #include "MitAna/DataTree/interface/Vertex.h"
18 #include "MitAna/DataTree/interface/Electron.h"
19
20 namespace mithep
21 {
22 class Conversion : public CompositeParticle
23 {
24 public:
25 Conversion() : fDCotTheta(0), fEOverP(0), fPairMass(0) {}
26 Conversion(Double_t x, Double_t y, Double_t z) :
27 fVertex(x,y,z), fDCotTheta(0), fEOverP(0), fPairMass(0) {}
28 Conversion(Double_t x, Double_t y, Double_t z, Double_t xErr, Double_t yErr, Double_t zErr) :
29 fVertex(x,y,z,xErr,yErr,zErr) ,fDCotTheta(0), fEOverP(0), fPairMass(0) {}
30 Conversion(const Vertex &v) :
31 fVertex(v) ,fDCotTheta(0), fEOverP(0), fPairMass(0) {}
32
33 const Electron *Daughter(UInt_t i) const;
34 Double_t DCotTheta() const { return fDCotTheta; }
35 Double_t EOverP() const { return fEOverP; }
36 Double_t PairMass() const { return fPairMass; }
37 const ThreeVector &PairMomentum() const { return fPairMomentum; }
38 const Vertex &DecayVertex() const { return fVertex; }
39 EObjType ObjType() const { return kConversion; }
40 void SetDCotTheta(Double_t dCotTh) { fDCotTheta = dCotTh; }
41 void SetEOverP(Double_t eOverP) { fEOverP = eOverP; }
42 void SetPairMass(Double_t pairMass) { fPairMass = pairMass; }
43 void SetPairMomentum(Double_t px, Double_t py, Double_t pz);
44
45 protected:
46 Vertex fVertex; //reconstructed decay vertex
47 ThreeVector32 fPairMomentum; //momentum of tracks at conversion point
48 Double32_t fDCotTheta; //[0,0,14]delta cot theta wrt tracks at conversion point
49 Double32_t fEOverP; //[0,0,14]energy over momentum of conversion tracks
50 Double32_t fPairMass; //[0,0,14]mass of electron-positron pair at conversion
51
52 ClassDef(Conversion,1) // Conversion class
53 };
54 }
55
56 //--------------------------------------------------------------------------------------------------
57 inline const mithep::Electron *mithep::Conversion::Daughter(UInt_t i) const
58 {
59 // Return reference to electron daughters.
60
61 return static_cast<const mithep::Electron*>(fDaughters.At(i));
62 }
63
64 //--------------------------------------------------------------------------------------------------
65 inline void mithep::Conversion::SetPairMomentum(Double_t px, Double_t py, Double_t pz)
66 {
67 // Set pair momentum.
68
69 fPairMomentum.SetXYZ(px,py,pz);
70 ClearMom();
71 }
72 #endif