1 | #ifndef MARS_MReportStarguider
|
---|
2 | #define MARS_MReportStarguider
|
---|
3 |
|
---|
4 | #ifndef MARS_MReport
|
---|
5 | #include "MReport.h"
|
---|
6 | #endif
|
---|
7 |
|
---|
8 | #ifndef ROOT_TVector2
|
---|
9 | #include <TVector2.h>
|
---|
10 | #endif
|
---|
11 |
|
---|
12 | class MReportStarguider : public MReport
|
---|
13 | {
|
---|
14 | public:
|
---|
15 | #pragma GCC diagnostic push
|
---|
16 | #pragma GCC diagnostic ignored "-Wshadow"
|
---|
17 | enum { kError=0, kStandby=2, kMonitoring=4 };
|
---|
18 | #pragma GCC diagnostic pop
|
---|
19 |
|
---|
20 | private:
|
---|
21 | Double_t fDevAz; // [arcmin] azimuth mispointing
|
---|
22 | Double_t fDevZd; // [arcmin] zenith mispointing
|
---|
23 |
|
---|
24 | Double_t fNominalZd; // [deg] Nominal zenith distance
|
---|
25 | Double_t fNominalAz; // [deg] Nominal azimuth
|
---|
26 |
|
---|
27 | Float_t fCameraCenterX; // [CCD pix] PMT Camera center found
|
---|
28 | Float_t fCameraCenterY; // [CCD pix] PMT Camera center found
|
---|
29 |
|
---|
30 | UInt_t fNumIdentifiedStars; // Number of stars identified by starguider algorithm
|
---|
31 | UInt_t fNumCorrelatedStars; // Number of correlated stars identified by starguider algorithm
|
---|
32 |
|
---|
33 | Double_t fSkyBrightness; // [au] Sky Brightness as calcualted from the CCD image
|
---|
34 | Double_t fMjd; // Modified Julian Date matching the nominal position
|
---|
35 |
|
---|
36 | Int_t InterpreteBody(TString &str, Int_t ver);
|
---|
37 |
|
---|
38 | public:
|
---|
39 | MReportStarguider();
|
---|
40 |
|
---|
41 | void Clear(Option_t *o="");
|
---|
42 |
|
---|
43 | Double_t GetDevAz() const { return fDevAz; }
|
---|
44 | Double_t GetDevZd() const { return fDevZd; }
|
---|
45 | Double_t GetDevAbs() const;
|
---|
46 | TVector2 GetDev() const { return TVector2(fDevZd, fDevAz); }
|
---|
47 |
|
---|
48 | Double_t GetNominalZd() const { return fNominalZd; }
|
---|
49 | Double_t GetNominalAz() const { return fNominalAz; }
|
---|
50 | TVector2 GetNominalPos() const { return TVector2(fNominalZd, fNominalAz); }
|
---|
51 |
|
---|
52 | Float_t GetCameraCenterX() const { return fCameraCenterX; }
|
---|
53 | Float_t GetCameraCenterY() const { return fCameraCenterY; }
|
---|
54 | TVector2 GetCameraCenter() const { return TVector2(fCameraCenterX, fCameraCenterY); }
|
---|
55 |
|
---|
56 | UInt_t GetNumIdentifiedStars() const { return fNumIdentifiedStars; }
|
---|
57 | UInt_t GetNumCorrelatedStars() const { return fNumCorrelatedStars; }
|
---|
58 |
|
---|
59 | Double_t GetSkyBrightness() const { return fSkyBrightness; }
|
---|
60 | Double_t GetMjd() const { return fMjd; }
|
---|
61 |
|
---|
62 | Bool_t IsMonitoring() const { return GetState()==kMonitoring; }
|
---|
63 |
|
---|
64 | void Print(Option_t *o="") const;
|
---|
65 |
|
---|
66 | ClassDef(MReportStarguider, 3) // Class for STARG-REPORT information
|
---|
67 | };
|
---|
68 |
|
---|
69 | #endif
|
---|