ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/BasicCluster.h
Revision: 1.17
Committed: Fri Jun 25 15:10:35 2010 UTC (14 years, 10 months ago) by bendavid
Content type: text/plain
Branch: MAIN
CVS Tags: 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
Changes since 1.16: +65 -3 lines
Log Message:
Fix uninitialized variables

File Contents

# User Rev Content
1 sixie 1.1 //--------------------------------------------------------------------------------------------------
2 bendavid 1.17 // $Id: BasicCluster.h,v 1.16 2010/06/24 13:08:45 peveraer 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.17 BasicCluster() : fEnergy(0), fNHits(0),
24     fE1x3(0),
25     fE3x1(0),
26     fE1x5(0),
27     fE2x2(0),
28     fE3x2(0),
29     fE3x3(0),
30     fE4x4(0),
31     fE5x5(0),
32     fSwissCross(0),
33     fE2x5Right(0),
34     fE2x5Left(0),
35     fE2x5Top(0),
36     fE2x5Bottom(0),
37     fE2x5Max(0),
38     fELeft(0),
39     fERight(0),
40     fETop(0),
41     fEBottom(0),
42     fEMax(0),
43     fE2nd(0),
44     fEtaLat(0),
45     fPhiLat(0),
46     fLat(0),
47     fCovEtaEta(0),
48     fCovEtaPhi(0),
49     fCovPhiPhi(0),
50     fCoviEtaiEta(0),
51     fCoviEtaiPhi(0),
52     fCoviPhiiPhi(0),
53     fZernike20(0),
54     fZernike42(0) {}
55 loizides 1.7 BasicCluster(Double_t e, const ThreeVector &p) :
56 bendavid 1.17 fEnergy(e), fPoint(p), fNHits(0),
57     fE1x3(0),
58     fE3x1(0),
59     fE1x5(0),
60     fE2x2(0),
61     fE3x2(0),
62     fE3x3(0),
63     fE4x4(0),
64     fE5x5(0),
65     fSwissCross(0),
66     fE2x5Right(0),
67     fE2x5Left(0),
68     fE2x5Top(0),
69     fE2x5Bottom(0),
70     fE2x5Max(0),
71     fELeft(0),
72     fERight(0),
73     fETop(0),
74     fEBottom(0),
75     fEMax(0),
76     fE2nd(0),
77     fEtaLat(0),
78     fPhiLat(0),
79     fLat(0),
80     fCovEtaEta(0),
81     fCovEtaPhi(0),
82     fCovPhiPhi(0),
83     fCoviEtaiEta(0),
84     fCoviEtaiPhi(0),
85     fCoviPhiiPhi(0),
86     fZernike20(0),
87     fZernike42(0) {}
88 sixie 1.1
89 sixie 1.14 Double_t Energy() const { return fEnergy; }
90     Double_t Et() const;
91     Double_t Eta() const { return fPoint.Eta(); }
92     EObjType ObjType() const { return kBasicCluster; }
93     Double_t Phi() const { return fPoint.Phi(); }
94     ThreeVectorC Pos() const { return fPoint.V(); }
95     void Print(Option_t *opt="") const;
96     Double_t Rho() const { return fPoint.Rho(); }
97     Double_t NHits() const { return fNHits; }
98     Double_t E1x3() const { return fE1x3; }
99     Double_t E3x1() const { return fE3x1; }
100     Double_t E1x5() const { return fE1x5; }
101     Double_t E2x2() const { return fE2x2; }
102     Double_t E3x2() const { return fE3x2; }
103     Double_t E3x3() const { return fE3x3; }
104     Double_t E4x4() const { return fE4x4; }
105     Double_t E5x5() const { return fE5x5; }
106 peveraer 1.16 Double_t SwissCross() const { return fSwissCross; }
107 sixie 1.14 Double_t E2x5Right() const { return fE2x5Right; }
108     Double_t E2x5Left() const { return fE2x5Left; }
109     Double_t E2x5Top() const { return fE2x5Top; }
110     Double_t E2x5Bottom() const { return fE2x5Bottom; }
111     Double_t E2x5Max() const { return fE2x5Max; }
112     Double_t ELeft() const { return fELeft; }
113     Double_t ERight() const { return fERight; }
114     Double_t ETop() const { return fETop; }
115     Double_t EBottom() const { return fEBottom; }
116     Double_t EMax() const { return fEMax; }
117     Double_t E2nd() const { return fE2nd; }
118     Double_t EtaLat() const { return fEtaLat; }
119     Double_t PhiLat() const { return fPhiLat; }
120     Double_t Lat() const { return fLat; }
121     Double_t CovEtaEta() const { return fCovEtaEta; }
122     Double_t CovEtaPhi() const { return fCovEtaPhi; }
123     Double_t CovPhiPhi() const { return fCovPhiPhi; }
124     Double_t CoviEtaiEta() const { return fCoviEtaiEta; }
125     Double_t CoviEtaiPhi() const { return fCoviEtaiPhi; }
126     Double_t CoviPhiiPhi() const { return fCoviPhiiPhi; }
127     Double_t Zernike20() const { return fZernike20; }
128     Double_t Zernike42() const { return fZernike42; }
129    
130    
131     void SetEnergy(Double_t energy) { fEnergy = energy; }
132     void SetXYZ(Double_t x, Double_t y, Double_t z) { fPoint.SetXYZ(x,y,z); }
133     void SetNHits(Int_t x) { fNHits = x; }
134     void SetE1x3(Double_t x) { fE1x3 = x; }
135     void SetE3x1(Double_t x) { fE3x1 = x; }
136     void SetE1x5(Double_t x) { fE1x5 = x; }
137     void SetE2x2(Double_t x) { fE2x2 = x; }
138     void SetE3x2(Double_t x) { fE3x2 = x; }
139     void SetE3x3(Double_t x) { fE3x3 = x; }
140     void SetE4x4(Double_t x) { fE4x4 = x; }
141     void SetE5x5(Double_t x) { fE5x5 = x; }
142 peveraer 1.16 void SetSwissCross(Double_t x) { fSwissCross = x; }
143 sixie 1.14 void SetE2x5Right(Double_t x) { fE2x5Right = x; }
144     void SetE2x5Left(Double_t x) { fE2x5Left = x; }
145     void SetE2x5Top(Double_t x) { fE2x5Top = x; }
146     void SetE2x5Bottom(Double_t x) { fE2x5Bottom = x; }
147     void SetE2x5Max(Double_t x) { fE2x5Max = x; }
148     void SetELeft(Double_t x) { fELeft = x; }
149     void SetERight(Double_t x) { fERight = x; }
150     void SetETop(Double_t x) { fETop = x; }
151     void SetEBottom(Double_t x) { fEBottom = x; }
152     void SetEMax(Double_t x) { fEMax = x; }
153     void SetE2nd(Double_t x) { fE2nd = x; }
154     void SetEtaLat(Double_t x) { fEtaLat = x; }
155     void SetPhiLat(Double_t x) { fPhiLat = x; }
156     void SetLat(Double_t x) { fLat = x; }
157     void SetCovEtaEta(Double_t x) { fCovEtaEta = x; }
158     void SetCovEtaPhi(Double_t x) { fCovEtaPhi = x; }
159     void SetCovPhiPhi(Double_t x) { fCovPhiPhi = x; }
160     void SetCoviEtaiEta(Double_t x) { fCoviEtaiEta = x; }
161     void SetCoviEtaiPhi(Double_t x) { fCoviEtaiPhi = x; }
162     void SetCoviPhiiPhi(Double_t x) { fCoviPhiiPhi = x; }
163     void SetZernike20(Double_t x) { fZernike20 = x; }
164     void SetZernike42(Double_t x) { fZernike42 = x; }
165    
166 sixie 1.1
167     protected:
168 bendavid 1.8
169 loizides 1.9 Double32_t fEnergy; //[0,0,14]assigned energy
170     Vect3C fPoint; //centroid Position
171 sixie 1.1
172 sixie 1.14
173     Int_t fNHits;
174     Double32_t fE1x3;
175     Double32_t fE3x1;
176     Double32_t fE1x5;
177     Double32_t fE2x2;
178     Double32_t fE3x2;
179     Double32_t fE3x3;
180     Double32_t fE4x4;
181     Double32_t fE5x5;
182 peveraer 1.16 Double32_t fSwissCross;
183 sixie 1.14 Double32_t fE2x5Right;
184     Double32_t fE2x5Left;
185     Double32_t fE2x5Top;
186     Double32_t fE2x5Bottom;
187     Double32_t fE2x5Max;
188     Double32_t fELeft;
189     Double32_t fERight;
190     Double32_t fETop;
191     Double32_t fEBottom;
192     Double32_t fEMax;
193     Double32_t fE2nd;
194     Double32_t fEtaLat;
195     Double32_t fPhiLat;
196     Double32_t fLat;
197     Double32_t fCovEtaEta;
198     Double32_t fCovEtaPhi;
199     Double32_t fCovPhiPhi;
200     Double32_t fCoviEtaiEta;
201     Double32_t fCoviEtaiPhi;
202     Double32_t fCoviPhiiPhi;
203     Double32_t fZernike20;
204     Double32_t fZernike42;
205    
206    
207 peveraer 1.16 ClassDef(BasicCluster, 3) // Basic cluster class
208 sixie 1.1 };
209     }
210 loizides 1.13
211     //--------------------------------------------------------------------------------------------------
212     inline Double_t mithep::BasicCluster::Et() const
213     {
214     // Return transverse energy.
215    
216     return fEnergy*fPoint.Rho()/fPoint.V().R();
217     }
218 sixie 1.1 #endif