ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/CaloTower.h
Revision: 1.3
Committed: Wed Sep 17 04:21:16 2008 UTC (16 years, 7 months ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_005, Mit_004
Changes since 1.2: +1 -1 lines
Log Message:
Cleanup

File Contents

# User Rev Content
1 sixie 1.1 //--------------------------------------------------------------------------------------------------
2     // $ Id $
3     //
4     // Calo Tower
5     //
6     // Details to be worked out...
7     //
8     // Authors: Si Xie
9     //--------------------------------------------------------------------------------------------------
10    
11     #ifndef DATATREE_CALOTOWER_H
12     #define DATATREE_CALOTOWER_H
13    
14     #include <TMath.h>
15     #include "MitAna/DataTree/interface/DataObject.h"
16    
17     namespace mithep
18     {
19     class CaloTower : public DataObject
20     {
21     public:
22     CaloTower() {}
23 loizides 1.3 ~CaloTower() {}
24 sixie 1.1
25 bendavid 1.2 void SetEmEnergy(Double_t EmEnergy) { fEmEnergy = EmEnergy; }
26     void SetEmPosition(Double_t x, Double_t y, Double_t z)
27     { fEmPosition.SetXYZ(x,y,z); }
28     void SetHadEnergy(Double_t HadEnergy) { fHadEnergy = HadEnergy; }
29     void SetHadPosition(Double_t x, Double_t y, Double_t z)
30     { fHadPosition.SetXYZ(x,y,z); }
31     void SetOuterEnergy(Double_t OuterEnergy) { fOuterEnergy = OuterEnergy; }
32     void SetEmLvl1(Int_t EmLvl1) { fEmLvl1 = EmLvl1; }
33     void SetHadLvl1(Int_t HadLvl1) { fHadLvl1 = HadLvl1; }
34     void SetMomentum(Double_t x, Double_t y, Double_t z, Double_t e)
35     { fMomentum.SetPxPyPzE(x,y,z,e); }
36 sixie 1.1
37 bendavid 1.2 const FourVector &Mom() const { return fMomentum; }
38     Double_t Eta() const { return fMomentum.Eta(); }
39     Double_t Phi() const { return fMomentum.Phi(); }
40     Double_t Theta() const { return fMomentum.Theta(); }
41     Double_t E() const { return fMomentum.E(); }
42     Double_t Et() const { return E()*sin(Theta()); }
43     Double_t EmEnergy() const { return fEmEnergy; }
44     const ThreeVector &EmPosition() const { return fEmPosition; }
45     Double_t HadEnergy() const { return fHadEnergy; }
46     const ThreeVector &HadPosition() const { return fHadPosition; }
47     Double_t OuterEnergy() const { return fOuterEnergy; }
48     Double_t EmEt() const { return fEmEnergy*sin(Theta()); }
49     Double_t HadEt() const { return fHadEnergy*sin(Theta()); }
50     Double_t OuterEt() const { return fOuterEnergy*sin(Theta()); }
51     Double_t EmLvl1() const { return fEmLvl1; }
52     Double_t HadLvl1() const { return fHadLvl1; }
53 sixie 1.1
54     protected:
55 bendavid 1.2 FourVector fMomentum;
56     ThreeVector fEmPosition; //Position of Ecal shower center
57     ThreeVector fHadPosition; //Position of Hcal shower center
58     Double_t fEmEnergy; //tower energy in Ecal
59     Double_t fHadEnergy; //tower energy in Hcal
60     Double_t fOuterEnergy;
61     Int_t fEmLvl1;
62     Int_t fHadLvl1;
63 sixie 1.1
64     ClassDef(CaloTower, 1) // Generic particle class
65     };
66     }
67     #endif