ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/BasicCluster.h
Revision: 1.14
Committed: Wed Mar 24 15:35:20 2010 UTC (15 years, 1 month ago) by sixie
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_013
Changes since 1.13: +110 -11 lines
Log Message:
Add EM shower shape variables

File Contents

# User Rev Content
1 sixie 1.1 //--------------------------------------------------------------------------------------------------
2 sixie 1.14 // $Id: BasicCluster.h,v 1.13 2009/11/24 15:57:45 loizides Exp $
3 sixie 1.1 //
4 loizides 1.7 // BasicCluster
5 sixie 1.1 //
6 loizides 1.5 // This class holds information of basic reconstructed clusters.
7 sixie 1.1 //
8     // Authors: S.Xie
9     //--------------------------------------------------------------------------------------------------
10    
11 loizides 1.2 #ifndef MITANA_DATATREE_BASICCLUSTER_H
12     #define MITANA_DATATREE_BASICCLUSTER_H
13 sixie 1.1
14     #include <TMath.h>
15 loizides 1.9 #include "MitCommon/DataFormats/interface/Vect3C.h"
16 sixie 1.1 #include "MitAna/DataTree/interface/DataObject.h"
17    
18     namespace mithep
19     {
20     class BasicCluster : public DataObject
21     {
22     public:
23 bendavid 1.8 BasicCluster() : fEnergy(0) {}
24 loizides 1.7 BasicCluster(Double_t e, const ThreeVector &p) :
25 bendavid 1.8 fEnergy(e), fPoint(p) {}
26 sixie 1.1
27 sixie 1.14 Double_t Energy() const { return fEnergy; }
28     Double_t Et() const;
29     Double_t Eta() const { return fPoint.Eta(); }
30     EObjType ObjType() const { return kBasicCluster; }
31     Double_t Phi() const { return fPoint.Phi(); }
32     ThreeVectorC Pos() const { return fPoint.V(); }
33     void Print(Option_t *opt="") const;
34     Double_t Rho() const { return fPoint.Rho(); }
35     Double_t NHits() const { return fNHits; }
36     Double_t E1x3() const { return fE1x3; }
37     Double_t E3x1() const { return fE3x1; }
38     Double_t E1x5() const { return fE1x5; }
39     Double_t E2x2() const { return fE2x2; }
40     Double_t E3x2() const { return fE3x2; }
41     Double_t E3x3() const { return fE3x3; }
42     Double_t E4x4() const { return fE4x4; }
43     Double_t E5x5() const { return fE5x5; }
44     Double_t E2x5Right() const { return fE2x5Right; }
45     Double_t E2x5Left() const { return fE2x5Left; }
46     Double_t E2x5Top() const { return fE2x5Top; }
47     Double_t E2x5Bottom() const { return fE2x5Bottom; }
48     Double_t E2x5Max() const { return fE2x5Max; }
49     Double_t ELeft() const { return fELeft; }
50     Double_t ERight() const { return fERight; }
51     Double_t ETop() const { return fETop; }
52     Double_t EBottom() const { return fEBottom; }
53     Double_t EMax() const { return fEMax; }
54     Double_t E2nd() const { return fE2nd; }
55     Double_t EtaLat() const { return fEtaLat; }
56     Double_t PhiLat() const { return fPhiLat; }
57     Double_t Lat() const { return fLat; }
58     Double_t CovEtaEta() const { return fCovEtaEta; }
59     Double_t CovEtaPhi() const { return fCovEtaPhi; }
60     Double_t CovPhiPhi() const { return fCovPhiPhi; }
61     Double_t CoviEtaiEta() const { return fCoviEtaiEta; }
62     Double_t CoviEtaiPhi() const { return fCoviEtaiPhi; }
63     Double_t CoviPhiiPhi() const { return fCoviPhiiPhi; }
64     Double_t Zernike20() const { return fZernike20; }
65     Double_t Zernike42() const { return fZernike42; }
66    
67    
68     void SetEnergy(Double_t energy) { fEnergy = energy; }
69     void SetXYZ(Double_t x, Double_t y, Double_t z) { fPoint.SetXYZ(x,y,z); }
70     void SetNHits(Int_t x) { fNHits = x; }
71     void SetE1x3(Double_t x) { fE1x3 = x; }
72     void SetE3x1(Double_t x) { fE3x1 = x; }
73     void SetE1x5(Double_t x) { fE1x5 = x; }
74     void SetE2x2(Double_t x) { fE2x2 = x; }
75     void SetE3x2(Double_t x) { fE3x2 = x; }
76     void SetE3x3(Double_t x) { fE3x3 = x; }
77     void SetE4x4(Double_t x) { fE4x4 = x; }
78     void SetE5x5(Double_t x) { fE5x5 = x; }
79     void SetE2x5Right(Double_t x) { fE2x5Right = x; }
80     void SetE2x5Left(Double_t x) { fE2x5Left = x; }
81     void SetE2x5Top(Double_t x) { fE2x5Top = x; }
82     void SetE2x5Bottom(Double_t x) { fE2x5Bottom = x; }
83     void SetE2x5Max(Double_t x) { fE2x5Max = x; }
84     void SetELeft(Double_t x) { fELeft = x; }
85     void SetERight(Double_t x) { fERight = x; }
86     void SetETop(Double_t x) { fETop = x; }
87     void SetEBottom(Double_t x) { fEBottom = x; }
88     void SetEMax(Double_t x) { fEMax = x; }
89     void SetE2nd(Double_t x) { fE2nd = x; }
90     void SetEtaLat(Double_t x) { fEtaLat = x; }
91     void SetPhiLat(Double_t x) { fPhiLat = x; }
92     void SetLat(Double_t x) { fLat = x; }
93     void SetCovEtaEta(Double_t x) { fCovEtaEta = x; }
94     void SetCovEtaPhi(Double_t x) { fCovEtaPhi = x; }
95     void SetCovPhiPhi(Double_t x) { fCovPhiPhi = x; }
96     void SetCoviEtaiEta(Double_t x) { fCoviEtaiEta = x; }
97     void SetCoviEtaiPhi(Double_t x) { fCoviEtaiPhi = x; }
98     void SetCoviPhiiPhi(Double_t x) { fCoviPhiiPhi = x; }
99     void SetZernike20(Double_t x) { fZernike20 = x; }
100     void SetZernike42(Double_t x) { fZernike42 = x; }
101    
102 sixie 1.1
103     protected:
104 bendavid 1.8
105 loizides 1.9 Double32_t fEnergy; //[0,0,14]assigned energy
106     Vect3C fPoint; //centroid Position
107 sixie 1.1
108 sixie 1.14
109     Int_t fNHits;
110     Double32_t fE1x3;
111     Double32_t fE3x1;
112     Double32_t fE1x5;
113     Double32_t fE2x2;
114     Double32_t fE3x2;
115     Double32_t fE3x3;
116     Double32_t fE4x4;
117     Double32_t fE5x5;
118     Double32_t fE2x5Right;
119     Double32_t fE2x5Left;
120     Double32_t fE2x5Top;
121     Double32_t fE2x5Bottom;
122     Double32_t fE2x5Max;
123     Double32_t fELeft;
124     Double32_t fERight;
125     Double32_t fETop;
126     Double32_t fEBottom;
127     Double32_t fEMax;
128     Double32_t fE2nd;
129     Double32_t fEtaLat;
130     Double32_t fPhiLat;
131     Double32_t fLat;
132     Double32_t fCovEtaEta;
133     Double32_t fCovEtaPhi;
134     Double32_t fCovPhiPhi;
135     Double32_t fCoviEtaiEta;
136     Double32_t fCoviEtaiPhi;
137     Double32_t fCoviPhiiPhi;
138     Double32_t fZernike20;
139     Double32_t fZernike42;
140    
141    
142 loizides 1.5 ClassDef(BasicCluster, 1) // Basic cluster class
143 sixie 1.1 };
144     }
145 loizides 1.13
146     //--------------------------------------------------------------------------------------------------
147     inline Double_t mithep::BasicCluster::Et() const
148     {
149     // Return transverse energy.
150    
151     return fEnergy*fPoint.Rho()/fPoint.V().R();
152     }
153 sixie 1.1 #endif