ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/Photon.h
Revision: 1.2
Committed: Tue Jul 1 09:16:49 2008 UTC (16 years, 10 months ago) by loizides
Content type: text/plain
Branch: MAIN
Changes since 1.1: +29 -16 lines
Log Message:
Photon has get electrons daughters.

File Contents

# User Rev Content
1 loizides 1.1 //--------------------------------------------------------------------------------------------------
2 loizides 1.2 // $Id: Photon.h,v 1.1 2008/06/30 16:51:16 loizides Exp $
3 loizides 1.1 //
4     // Photon
5     //
6     // Details to be worked out...
7     //
8 loizides 1.2 // Authors: J.Bendavid, C.Loizides
9 loizides 1.1 //--------------------------------------------------------------------------------------------------
10    
11     #ifndef DATATREE_PHOTON_H
12     #define DATATREE_PHOTON_H
13    
14     #include "MitAna/DataTree/interface/CompositeParticle.h"
15     #include "MitAna/DataTree/interface/FitVertex.h"
16 loizides 1.2 #include "MitAna/DataTree/interface/Electron.h"
17 loizides 1.1
18     namespace mithep
19     {
20     class Photon : public CompositeParticle
21     {
22     public:
23     Photon() {}
24     Photon(Double_t px, Double_t py, Double_t pz, Double_t e) : fFourVector(px,py,pz,e) {}
25 loizides 1.2 Photon(Double_t px, Double_t py, Double_t pz, Double_t e, Double_t x, Double_t y, Double_t z) :
26     fFourVector(px,py,pz,e), fConvVertex(x,y,z) {}
27 loizides 1.1 ~Photon() {}
28 loizides 1.2
29     const Electron *GetDaughter(UInt_t i) const;
30     const FitVertex &GetVertex() const { return fConvVertex; }
31     FourVector Mom() const { return fFourVector; }
32     void SetMom(Double_t px, Double_t py, Double_t pz, Double_t e);
33 loizides 1.1
34     protected:
35 loizides 1.2 FourVector fFourVector; //four momentum vector
36     FitVertex fConvVertex; //conversion vertex
37 loizides 1.1
38 loizides 1.2 ClassDef(Photon,1) // Photon class
39 loizides 1.1 };
40     }
41 loizides 1.2
42     //--------------------------------------------------------------------------------------------------
43     inline const mithep::Electron *mithep::Photon::GetDaughter(UInt_t i) const
44     {
45     // Return reference to electron daughters.
46    
47     return static_cast<const mithep::Electron*>(fDaughters.At(i));
48     }
49    
50     //--------------------------------------------------------------------------------------------------
51     inline void mithep::Photon::SetMom(Double_t px, Double_t py, Double_t pz, Double_t e)
52     {
53     // Set four vector.
54    
55     fFourVector.SetXYZT(px, py, pz, e);
56     }
57 loizides 1.1 #endif