| Line | |
|---|
| 1 | #ifndef COSY_MSlewing
|
|---|
| 2 | #define COSY_MSlewing
|
|---|
| 3 |
|
|---|
| 4 | #ifndef ROOT_TROOT
|
|---|
| 5 | #include <TROOT.h>
|
|---|
| 6 | #endif
|
|---|
| 7 |
|
|---|
| 8 | class Dkc;
|
|---|
| 9 | class MCosy;
|
|---|
| 10 |
|
|---|
| 11 | #ifndef MARS_MPointing
|
|---|
| 12 | #include "MPointing.h"
|
|---|
| 13 | #endif
|
|---|
| 14 |
|
|---|
| 15 | class MSlewing
|
|---|
| 16 | {
|
|---|
| 17 | protected:
|
|---|
| 18 | MCosy *fCosy;
|
|---|
| 19 |
|
|---|
| 20 | bool SetAcc(Dkc *mac, Float_t acc);
|
|---|
| 21 | bool Break();
|
|---|
| 22 |
|
|---|
| 23 | private:
|
|---|
| 24 | Float_t fVel;
|
|---|
| 25 | ZdAz fAcc;
|
|---|
| 26 |
|
|---|
| 27 | Float_t fMaxResidual; // [rev] Maximum residual deviation to stop pointin
|
|---|
| 28 |
|
|---|
| 29 | void DoRelPos(const ZdAz &rd, const Bool_t axe1, const Bool_t axe2);
|
|---|
| 30 | void DoAbsPos(const ZdAz &rd, const Bool_t axe1, const Bool_t axe2);
|
|---|
| 31 | void SetPosVelocity(const ZdAz &res, Float_t vel);
|
|---|
| 32 |
|
|---|
| 33 | Double_t GetDiff(const ZdAz &za) const;
|
|---|
| 34 |
|
|---|
| 35 | public:
|
|---|
| 36 | MSlewing(MCosy *cosy) : fCosy(cosy), fVel(0.1), fAcc(0,0), fMaxResidual(1./16384) { }
|
|---|
| 37 | virtual ~MSlewing() { }
|
|---|
| 38 |
|
|---|
| 39 | void SetPointAcc(Float_t zd, Float_t az) { fAcc.Zd(zd); fAcc.Az(az); }
|
|---|
| 40 | void SetPointVelocity(Float_t vel) { fVel = vel; }
|
|---|
| 41 | int SetPosition(const ZdAz &dst, Bool_t track=kFALSE);
|
|---|
| 42 | void SetMaxResidual(Float_t ac) { fMaxResidual = ac; }
|
|---|
| 43 |
|
|---|
| 44 | ClassDef(MSlewing, 0)
|
|---|
| 45 | };
|
|---|
| 46 |
|
|---|
| 47 | #endif
|
|---|
Note:
See
TracBrowser
for help on using the repository browser.