| 1 | #ifndef SLALIB_H
|
|---|
| 2 | #define SLALIB_H
|
|---|
| 3 |
|
|---|
| 4 | #include <TROOT.h>
|
|---|
| 5 |
|
|---|
| 6 | #include "coord.h"
|
|---|
| 7 | #include "timer.h"
|
|---|
| 8 | #include "MObservatory.h"
|
|---|
| 9 |
|
|---|
| 10 | class Slalib : public Timer, public MObservatory
|
|---|
| 11 | {
|
|---|
| 12 | private:
|
|---|
| 13 | double fAlpha;
|
|---|
| 14 |
|
|---|
| 15 | static Double_t Round(Double_t val);
|
|---|
| 16 | static Double_t Trunc(Double_t val);
|
|---|
| 17 |
|
|---|
| 18 | public:
|
|---|
| 19 | Slalib(MObservatory::LocationName_t key);
|
|---|
| 20 | virtual ~Slalib();
|
|---|
| 21 |
|
|---|
| 22 | static Double_t Hms2Sec(Int_t deg, UInt_t min, Double_t sec, char sgn='+');
|
|---|
| 23 | static Double_t Dms2Rad(Int_t deg, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 24 | static Double_t Hms2Rad(Int_t hor, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 25 | static Double_t Dms2Deg(Int_t deg, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 26 | static Double_t Hms2Deg(Int_t hor, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 27 | static Double_t Dms2Hor(Int_t deg, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 28 | static Double_t Hms2Hor(Int_t hor, UInt_t min, Double_t sec, Char_t sgn='+');
|
|---|
| 29 |
|
|---|
| 30 | static void Day2Hms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 31 | static void Rad2Dms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 32 | static void Rad2Hms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 33 | static void Deg2Dms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 34 | static void Deg2Hms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 35 | static void Hor2Dms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 36 | static void Hor2Hms(Double_t rad, Char_t &sgn, UShort_t °, UShort_t &min, UShort_t &sec);
|
|---|
| 37 |
|
|---|
| 38 | static void Day2Hm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 39 | static void Rad2Dm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 40 | static void Rad2Hm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 41 | static void Deg2Dm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 42 | static void Deg2Hm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 43 | static void Hor2Dm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 44 | static void Hor2Hm(Double_t rad, Char_t &sgn, UShort_t °, Double_t &min);
|
|---|
| 45 |
|
|---|
| 46 | virtual void SetMjd(double mjd);
|
|---|
| 47 |
|
|---|
| 48 | double GetAlpha() const { return fAlpha; }
|
|---|
| 49 |
|
|---|
| 50 | ZdAz XYZ2ZdAz(double coord[3]) const;
|
|---|
| 51 |
|
|---|
| 52 | ClassDef(Slalib, 0)
|
|---|
| 53 | };
|
|---|
| 54 |
|
|---|
| 55 | #endif
|
|---|