[1456] | 1 | #ifndef XASTROPACK_H
|
---|
| 2 | #define XASTROPACK_H
|
---|
| 3 |
|
---|
[1475] | 4 | #include "machdefs.h"
|
---|
[1456] | 5 | #include <string.h>
|
---|
| 6 | #include <string>
|
---|
| 7 |
|
---|
| 8 | #ifdef __cplusplus
|
---|
| 9 | extern "C" { /* extern "C" */
|
---|
| 10 | #endif
|
---|
| 11 | #include "XAstro/P_.h"
|
---|
| 12 | #include "XAstro/astro.h"
|
---|
| 13 | #ifdef __cplusplus
|
---|
| 14 | } /* extern "C" */
|
---|
| 15 | #endif
|
---|
| 16 |
|
---|
[1515] | 17 | enum TypAstroCoord {
|
---|
| 18 | TypCoordUndef = (unsigned long) (0),
|
---|
| 19 |
|
---|
| 20 | // Pour indiquer que les coordonnees sont en (heure=[0,24[,degre=[-90,90])
|
---|
| 21 | TypCoordHD = (unsigned long) (1 << 20),
|
---|
| 22 | // Pour indiquer que les coordonnees sont en (degre=[0,360[,degre=[-90,90])
|
---|
| 23 | TypCoordDD = (unsigned long) (1 << 21),
|
---|
| 24 | // Pour indiquer que les coordonnees sont en (radian=[0,2Pi[,radian=[-Pi/2,Pi/2])
|
---|
| 25 | TypCoordRR = (unsigned long) (1 << 22),
|
---|
| 26 |
|
---|
| 27 | // Coordonnees Equatoriales alpha,delta
|
---|
| 28 | TypCoordEq = (unsigned long) (1 << 0),
|
---|
| 29 | TypCoordEqStd = (unsigned long) ((1 << 0) | (1 << 20)),
|
---|
| 30 | // Coordonnees Galactiques gLong, gLat
|
---|
| 31 | TypCoordGal = (unsigned long) (1 << 1),
|
---|
| 32 | TypCoordGalStd = (unsigned long) ((1 << 1) | (1 << 21)),
|
---|
| 33 | // Coordonnees Horizontales azimuth,altitude
|
---|
| 34 | TypCoordHor = (unsigned long) (1 << 2),
|
---|
| 35 | TypCoordHorStd = (unsigned long) ((1 << 2) | (1 << 21)),
|
---|
| 36 | // Coordonnees Ecliptiques EclLong,EclLat
|
---|
| 37 | TypCoordEcl = (unsigned long) (1 << 3),
|
---|
| 38 | TypCoordEclStd = (unsigned long) ((1 << 3) | (1 << 21))
|
---|
| 39 | };
|
---|
| 40 |
|
---|
[1465] | 41 | double TrueJDfrMJD(double mjd);
|
---|
| 42 | double MJDfrTrueJD(double jd);
|
---|
[1456] | 43 | double MJDfrDate(double dy,int mn,int yr);
|
---|
| 44 | void DatefrMJD(double mjd,double *dy,int *mn,int *yr);
|
---|
| 45 | double YearfrMJD(double mjd);
|
---|
| 46 | double MJDfrYear(double yr);
|
---|
| 47 | void YDfrMJD(double mjd,double *dy,int *yr);
|
---|
| 48 | double GSTfrUTC(double mjd0,double utc);
|
---|
| 49 | double UTCfrGST(double mjd0,double gst);
|
---|
| 50 | double GST0(double mjd0);
|
---|
| 51 | void Precess(double mjd1,double mjd2,double ra1,double dec1,double *ra2,double *dec2);
|
---|
| 52 | double AirmassfrAlt(double alt);
|
---|
| 53 | double HafrRaTS(double gst,double ra);
|
---|
[1465] | 54 | void HMSfrHdec(double hd,int *h,int *mn,double *s);
|
---|
| 55 | double HdecfrHMS(int h,int mn,double s);
|
---|
[1456] | 56 | string ToStringHMS(int h,int mn,double s);
|
---|
| 57 | string ToStringHdec(double hd);
|
---|
| 58 | void EqtoGal(double mjd,double ra,double dec,double *glng,double *glat);
|
---|
| 59 | void GaltoEq(double mjd,double glng,double glat,double *ra,double *dec);
|
---|
| 60 | void EqtoHor(double geolat,double ha,double dec,double *az,double *alt);
|
---|
| 61 | void HortoEq(double geolat,double az,double alt,double *ha,double *dec);
|
---|
| 62 | void EqtoEcl(double mjd,double ra,double dec,double *eclng,double *eclat);
|
---|
| 63 | void EcltoEq(double mjd,double eclng,double eclat,double *ra,double *dec);
|
---|
| 64 | void SunPos(double mjd,double *lsn,double *bsn);
|
---|
| 65 | void MoonPos(double mjd,double *lmn,double *bmn);
|
---|
| 66 | void PlanetPos(double mjd,int numplan,double *ecl,double *ecb,double *diamang);
|
---|
| 67 | void JupiterPos(double mjd,double *ecl,double *ecb,double *diamang);
|
---|
| 68 | void SaturnPos(double mjd,double *ecl,double *ecb,double *diamang);
|
---|
[1515] | 69 | int CoordConvertToStd(TypAstroCoord typ,double& coord1,double& coord2);
|
---|
[1456] | 70 |
|
---|
| 71 | #endif
|
---|