source: trunk/MagicSoft/Mars/mpointing/MPointingDevCalc.h@ 7600

Last change on this file since 7600 was 7594, checked in by tbretz, 19 years ago
*** empty log message ***
File size: 2.3 KB
Line 
1#ifndef MARS_MPointingPositionCalc
2#define MARS_MPointingPositionCalc
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8#ifndef ROOT_TArrayI
9#include <TArrayI.h>
10#endif
11
12class MPointingDev;
13class MReportStarguider;
14
15class MPointingDevCalc : public MTask
16{
17private:
18 MReportStarguider *fReport; //! MReportStarguider to get mispointing
19 MPointingDev *fDeviation; //! Output container to store pointing deviation
20
21 UShort_t fRunType; //! Run Type to decide where to get pointing position from
22
23 Double_t fNsbSum; //! Sum of Nsb from Starguider
24 Double_t fNsbSq; //! Sum of Sq of Nsb from Starguider
25 Int_t fNsbCount; //! Counter of Nsb entries from Starguider
26
27 TArrayI fSkip; //! Counter for execution statistics
28
29 UInt_t fNumMinStars; // Minimum number of identified stars
30 Float_t fNsbLevel; // Minimum deviation from mean in sigma
31 Float_t fNsbMin; // Minimum NSB to calc mean and rms
32 Float_t fNsbMax; // Maximum NSB to calc mean and rms
33 Float_t fMaxAbsDev; // [arcmin] Maximum considered absolute deviation
34
35 Float_t fDx; // Starguider calibration dx
36 Float_t fDy; // Starguider calibration dy
37
38 // MPointingDevCalc
39 Int_t ProcessStarguiderReport();
40
41 // MParContainer
42 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print);
43
44 // MTask
45 Bool_t ReInit(MParList *plist);
46 Int_t PreProcess(MParList *plist);
47 Int_t Process();
48 Int_t PostProcess();
49
50public:
51 MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5), fNumMinStars(8),
52 fNsbLevel(3), fNsbMin(30), fNsbMax(60), fMaxAbsDev(15), fDx(-7), fDy(16)
53 {
54 fName = "MPointingDevCalc";
55 fTitle = "Task calculating the pointing deviation";
56
57 AddToBranchList("MReportStarguider.*");
58 }
59
60 void SetNumMinStars(UInt_t n) { fNumMinStars=8; }
61 void SetNsbLevel(Float_t lvl) { fNsbLevel=lvl; }
62 void SetNsbMin(Float_t nsb) { fNsbMin=nsb; }
63 void SetNsbMax(Float_t nsb) { fNsbMax=nsb; }
64 void SetMaxAbsDev(Float_t max) { fMaxAbsDev=max; }
65 void SetDx(Float_t dx) { fDx=dx; }
66 void SetDy(Float_t dy) { fDy=dy; }
67
68 ClassDef(MPointingDevCalc, 0) //Task calculating the pointing deviation
69};
70
71#endif
Note: See TracBrowser for help on using the repository browser.