ViewVC Help
View File | Revision Log | Show Annotations | Root Listing
root/cvsroot/UserCode/MitAna/DataTree/interface/BeamSpot.h
Revision: 1.2
Committed: Tue Dec 9 17:46:59 2008 UTC (16 years, 4 months ago) by loizides
Content type: text/plain
Branch: MAIN
CVS Tags: Mit_006b, Mit_006a
Changes since 1.1: +34 -34 lines
Log Message:
Added ObjType to retrieve type of object.

File Contents

# User Rev Content
1 bendavid 1.1 //--------------------------------------------------------------------------------------------------
2 loizides 1.2 // $Id: BeamSpot.h,v 1.1 2008/11/12 18:18:27 bendavid Exp $
3 bendavid 1.1 //
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 loizides 1.2 fSigmaZ(0), fBeamWidth(0), fDxDz(0), fDyDz(0),
23     fSigmaZErr(0), fBeamWidthErr(0), fDxDzErr(0), fDyDzErr(0) {}
24 bendavid 1.1 BeamSpot(Double_t x, Double_t y, Double_t z) :
25 loizides 1.2 BaseVertex(x,y,z), fSigmaZ(0), fBeamWidth(0), fDxDz(0), fDyDz(0),
26     fSigmaZErr(0), fBeamWidthErr(0), fDxDzErr(0), fDyDzErr(0) {}
27 bendavid 1.1 BeamSpot(Double_t x, Double_t y, Double_t z, Double_t xErr, Double_t yErr, Double_t zErr) :
28 loizides 1.2 BaseVertex(x,y,z,xErr,yErr,zErr), fSigmaZ(0), fBeamWidth(0), fDxDz(0), fDyDz(0),
29     fSigmaZErr(0), fBeamWidthErr(0), fDxDzErr(0), fDyDzErr(0) {}
30 bendavid 1.1 BeamSpot(const ThreeVector &pos) :
31 loizides 1.2 BaseVertex(pos), fSigmaZ(0), fBeamWidth(0), fDxDz(0), fDyDz(0),
32     fSigmaZErr(0), fBeamWidthErr(0), fDxDzErr(0), fDyDzErr(0) {}
33 bendavid 1.1 ~BeamSpot() {}
34    
35 loizides 1.2 Double_t BeamWidth() const { return fBeamWidth; }
36 bendavid 1.1 Double_t BeamWidthErr() const { return fBeamWidthErr; }
37 loizides 1.2 Double_t DxDz() const { return fDxDz; }
38     Double_t DyDz() const { return fDyDz; }
39     Double_t DxDzErr() const { return fDxDzErr; }
40     Double_t DyDzErr() const { return fDyDzErr; }
41     EObjType ObjType() const { return kBeamSpot; }
42     Double_t SigmaZ() const { return fSigmaZ; }
43     Double_t SigmaZErr() const { return fSigmaZErr; }
44     void SetBeamWidth(Double_t beamWidth) { fBeamWidth = beamWidth; }
45     void SetBeamWidthErr(Double_t beamWErr) { fBeamWidthErr = beamWErr; }
46     void SetDxDz(Double_t dxDz) { fDxDz = dxDz; }
47     void SetDyDz(Double_t dyDz) { fDyDz = dyDz; }
48     void SetDxDzErr(Double_t dxDzErr) { fDxDzErr = dxDzErr; }
49     void SetDyDzErr(Double_t dyDzErr) { fDyDzErr = dyDzErr; }
50     void SetSigmaZ(Double_t sigmaZ) { fSigmaZ = sigmaZ; }
51     void SetSigmaZErr(Double_t sigmaZErr) { fSigmaZErr = sigmaZErr; }
52 bendavid 1.1
53     protected:
54 loizides 1.2 Double32_t fSigmaZ; //z width of beamspot
55     Double32_t fBeamWidth; //transverse width of beamspot
56     Double32_t fDxDz; //x-z slope of beamline
57     Double32_t fDyDz; //y-z slope of beamline
58     Double32_t fSigmaZErr; //error of z width
59     Double32_t fBeamWidthErr; //error of transverse width
60     Double32_t fDxDzErr; //error of x-z slope
61     Double32_t fDyDzErr; //error of y-z slope
62 bendavid 1.1
63 loizides 1.2 ClassDef(BeamSpot, 1) // Beam spot class
64 bendavid 1.1 };
65     }
66     #endif