source: trunk/MagicSoft/Mars/mstarcam/MStarPos.h@ 9492

Last change on this file since 9492 was 4709, checked in by rwagner, 20 years ago
*** empty log message ***
File size: 3.9 KB
Line 
1#ifndef MARS_MStarPos
2#define MARS_MStarPos
3
4#ifndef MARS_MParContainer
5#include "MParContainer.h"
6#endif
7
8class MStarPos : public MParContainer
9{
10private:
11
12 //Expected position on camera
13 Float_t fMagExp;
14 Float_t fXExp; //[mm]
15 Float_t fYExp; //[mm]
16
17 //Ideal position on camera
18 Float_t fMagIdeal;
19 Float_t fXIdeal; //[mm]
20 Float_t fYIdeal; //[mm]
21
22 //Info from calculation
23 Float_t fMagCalc;
24 Float_t fMaxCalc; //[uA]
25 Float_t fMeanXCalc; //[mm]
26 Float_t fMeanYCalc; //[mm]
27 Float_t fSigmaXCalc; //[mm]
28 Float_t fSigmaYCalc; //[mm]
29 Float_t fCorrXYCalc; // correlation coefficient
30 Float_t fXXErrCalc; // error matrix of (fMeanXCalc,fMeanYCalc)
31 Float_t fXYErrCalc;
32 Float_t fYYErrCalc;
33
34 //Info from Gauss fit
35 Float_t fMagFit;
36 Float_t fMaxFit; //[uA]
37 Float_t fMeanXFit; //[mm]
38 Float_t fMeanYFit; //[mm]
39 Float_t fSigmaXFit; //[mm]
40 Float_t fSigmaYFit; //[mm]
41 Float_t fCorrXYFit; // correlation coefficient
42 Float_t fXXErrFit; // error matrix of (fMeanXFit,fMeanYFit)
43 Float_t fXYErrFit;
44 Float_t fYYErrFit;
45
46 Float_t fChiSquareFit;
47 Int_t fNdofFit;
48
49
50public:
51
52 MStarPos(const char *name=NULL, const char *title=NULL);
53 //~MStarPos();
54
55 Float_t GetMagExp() {return fMagExp;}
56 Float_t GetXExp() {return fXExp;}
57 Float_t GetYExp() {return fYExp;}
58
59 Float_t GetMagIdeal() {return fMagIdeal;}
60 Float_t GetXIdeal() {return fXIdeal;}
61 Float_t GetYIdeal() {return fYIdeal;}
62
63 Float_t GetMagCalc() {return fMagCalc;}
64 Float_t GetMaxCalc() {return fMaxCalc;}
65 Float_t GetMeanXCalc() {return fMeanXCalc;}
66 Float_t GetMeanYCalc() {return fMeanYCalc;}
67 Float_t GetSigmaXCalc() {return fSigmaXCalc;}
68 Float_t GetSigmaYCalc() {return fSigmaYCalc;}
69 Float_t GetCorrXYCalc() {return fCorrXYCalc;}
70 Float_t GetXXErrCalc() {return fXXErrCalc;}
71 Float_t GetXYErrCalc() {return fXYErrCalc;}
72 Float_t GetYYErrCalc() {return fYYErrCalc;}
73
74
75 // getters for the Gauss fit
76 Float_t GetMagFit() {return fMagFit;}
77 Float_t GetMaxFit() {return fMaxFit;}
78 Float_t GetMeanXFit() {return fMeanXFit;}
79 Float_t GetMeanYFit() {return fMeanYFit;}
80 Float_t GetSigmaXFit() {return fSigmaXFit;}
81 Float_t GetSigmaYFit() {return fSigmaYFit;}
82 Float_t GetCorrXYFit() {return fCorrXYFit;}
83 Float_t GetXXErrFit() {return fXXErrFit;}
84 Float_t GetXYErrFit() {return fXYErrFit;}
85 Float_t GetYYErrFit() {return fYYErrFit;}
86 Float_t GetChiSquareFit() {return fChiSquareFit;}
87 UInt_t GetNdofFit() {return fNdofFit;}
88 Float_t GetChiSquareNdofFit() {return fChiSquareFit/fNdofFit;}
89
90 // -----
91 Float_t GetMeanX() {return fMeanXFit!=0?fMeanXFit:fMeanXCalc;}
92 Float_t GetMeanY() {return fMeanYFit!=0?fMeanYFit:fMeanYCalc;}
93
94 Float_t GetSigmaX() {return fSigmaXFit!=0?fSigmaXFit:fSigmaXCalc;}
95 Float_t GetSigmaY() {return fSigmaYFit!=0?fSigmaYFit:fSigmaYCalc;}
96
97
98 void Reset();
99
100 void SetExpValues(Float_t mag, Float_t x, Float_t y);
101
102 void SetIdealValues(Float_t mag, Float_t x, Float_t y);
103
104 void SetCalcValues(Float_t mag, Float_t max, Float_t x, Float_t y,
105 Float_t sigmaX, Float_t sigmaY, Float_t correlation,
106 Float_t xx, Float_t xy, Float_t yy);
107
108 void SetFitValues(Float_t mag, Float_t max, Float_t x, Float_t y,
109 Float_t sigmaX, Float_t sigmaY, Float_t correlation,
110 Float_t xx, Float_t xy, Float_t yy,
111 Float_t chi, Int_t ndof);
112
113 void Paint(Option_t *opt=NULL);
114 void Print(Option_t *opt=NULL) const;
115
116 ClassDef(MStarPos, 1) // Container that holds the star information in the PMT camera
117};
118
119#endif
120
121
Note: See TracBrowser for help on using the repository browser.