ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/BeamSpot.h
Revision: 1.5
Committed: Mon Nov 30 13:42:40 2009 UTC (15 years, 5 months ago) by bendavid
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_032, Mit_031, Mit_025c_branch2, Mit_025c_branch1, Mit_030, Mit_029c, Mit_029b, Mit_030_pre1, Mit_029a, Mit_029, Mit_029_pre1, Mit_028a, Mit_025c_branch0, Mit_028, Mit_027a, Mit_027, Mit_026, Mit_025e, 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, HEAD
Branch point for: Mit_025c_branch
Changes since 1.4: +35 -29 lines
Log Message:
BeamWidth now stored seperately for x and y axes

File Contents

# Content
1 //--------------------------------------------------------------------------------------------------
2 // $Id: BeamSpot.h,v 1.4 2009/03/18 15:44:31 loizides Exp $
3 //
4 // BeamSpot
5 //
6 // BeamSpot class implemented as holding a 3d vector as a point in space with fit information.
7 //
8 // Authors: J.Bendavid
9 //--------------------------------------------------------------------------------------------------
10
11 #ifndef MITANA_DATATREE_BEAMSPOT_H
12 #define MITANA_DATATREE_BEAMSPOT_H
13
14 #include "MitAna/DataTree/interface/BaseVertex.h"
15
16 namespace mithep
17 {
18 class BeamSpot : public BaseVertex
19 {
20 public:
21 BeamSpot() :
22 fSigmaZ(0), fBeamWidthX(0), fBeamWidthY(0), fDxDz(0), fDyDz(0),
23 fSigmaZErr(0), fBeamWidthXErr(0), fBeamWidthYErr(0), fDxDzErr(0), fDyDzErr(0) {}
24 BeamSpot(Double_t x, Double_t y, Double_t z) :
25 BaseVertex(x,y,z), fSigmaZ(0), fBeamWidthX(0), fBeamWidthY(0), fDxDz(0), fDyDz(0),
26 fSigmaZErr(0), fBeamWidthXErr(0), fBeamWidthYErr(0), fDxDzErr(0), fDyDzErr(0) {}
27 BeamSpot(Double_t x, Double_t y, Double_t z, Double_t xErr, Double_t yErr, Double_t zErr) :
28 BaseVertex(x,y,z,xErr,yErr,zErr), fSigmaZ(0), fBeamWidthX(0), fBeamWidthY(0), fDxDz(0), fDyDz(0),
29 fSigmaZErr(0), fBeamWidthXErr(0), fBeamWidthYErr(0), fDxDzErr(0), fDyDzErr(0) {}
30 BeamSpot(const ThreeVector &pos) :
31 BaseVertex(pos), fSigmaZ(0), fBeamWidthX(0), fBeamWidthY(0), fDxDz(0), fDyDz(0),
32 fSigmaZErr(0), fBeamWidthXErr(0), fBeamWidthYErr(0), fDxDzErr(0), fDyDzErr(0) {}
33
34 Double_t BeamWidthX() const { return fBeamWidthX; }
35 Double_t BeamWidthY() const { return fBeamWidthY; }
36 Double_t BeamWidthXErr() const { return fBeamWidthXErr; }
37 Double_t BeamWidthYErr() const { return fBeamWidthYErr; }
38 Double_t DxDz() const { return fDxDz; }
39 Double_t DyDz() const { return fDyDz; }
40 Double_t DxDzErr() const { return fDxDzErr; }
41 Double_t DyDzErr() const { return fDyDzErr; }
42 EObjType ObjType() const { return kBeamSpot; }
43 Double_t SigmaZ() const { return fSigmaZ; }
44 Double_t SigmaZErr() const { return fSigmaZErr; }
45 void SetBeamWidthX(Double_t beamWidth) { fBeamWidthX = beamWidth; }
46 void SetBeamWidthY(Double_t beamWidth) { fBeamWidthY = beamWidth; }
47 void SetBeamWidthXErr(Double_t beamWErr) { fBeamWidthXErr = beamWErr; }
48 void SetBeamWidthYErr(Double_t beamWErr) { fBeamWidthYErr = beamWErr; }
49 void SetDxDz(Double_t dxDz) { fDxDz = dxDz; }
50 void SetDyDz(Double_t dyDz) { fDyDz = dyDz; }
51 void SetDxDzErr(Double_t dxDzErr) { fDxDzErr = dxDzErr; }
52 void SetDyDzErr(Double_t dyDzErr) { fDyDzErr = dyDzErr; }
53 void SetSigmaZ(Double_t sigmaZ) { fSigmaZ = sigmaZ; }
54 void SetSigmaZErr(Double_t sigmaZErr) { fSigmaZErr = sigmaZErr; }
55
56 protected:
57 Double32_t fSigmaZ; //[0,0,14]z width of beamspot
58 Double32_t fBeamWidthX; //[0,0,14]transverse width of beamspot (x-axis)
59 Double32_t fBeamWidthY; //[0,0,14]transverse width of beamspot (y-axis)
60 Double32_t fDxDz; //[0,0,14]x-z slope of beamline
61 Double32_t fDyDz; //[0,0,14]y-z slope of beamline
62 Double32_t fSigmaZErr; //[0,0,14]error of z width
63 Double32_t fBeamWidthXErr; //[0,0,14]error of transverse width (x-axis)
64 Double32_t fBeamWidthYErr; //[0,0,14]error of transverse width (y-axis)
65 Double32_t fDxDzErr; //[0,0,14]error of x-z slope
66 Double32_t fDyDzErr; //[0,0,14]error of y-z slope
67
68 ClassDef(BeamSpot, 2) // Beam spot class
69 };
70 }
71 #endif