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

Last change on this file since 7553 was 7553, checked in by tbretz, 19 years ago
*** empty log message ***
File size: 2.1 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 // MPointingDevCalc
36 Int_t ProcessStarguiderReport();
37
38 // MParContainer
39 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print);
40
41 // MTask
42 Bool_t ReInit(MParList *plist);
43 Int_t PreProcess(MParList *plist);
44 Int_t Process();
45 Int_t PostProcess();
46
47public:
48 MPointingDevCalc() : fReport(0), fDeviation(0), fSkip(5), fNumMinStars(8),
49 fNsbLevel(3), fNsbMin(30), fNsbMax(60), fMaxAbsDev(15)
50 {
51 fName = "MPointingDevCalc";
52 fTitle = "Task calculating the pointing deviation";
53
54 AddToBranchList("MReportStarguider.*");
55 }
56
57 void SetNumMinStars(UInt_t n) { fNumMinStars=8; }
58 void SetNsbLevel(Float_t lvl) { fNsbLevel=lvl; }
59 void SetNsbMin(Float_t nsb) { fNsbMin=nsb; }
60 void SetNsbMax(Float_t nsb) { fNsbMax=nsb; }
61 void SetMaxAbsDev(Float_t max) { fMaxAbsDev=max; }
62
63 ClassDef(MPointingDevCalc, 0) //Task calculating the pointing deviation
64};
65
66#endif
Note: See TracBrowser for help on using the repository browser.