#ifndef __ELASTRO_H #define __ELASTRO_H #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include "defines.h" #define ELASTROVERSION "1.08" /* variables used by all */ /* inline tmptext only for inside functions */ #ifdef BASESRC char il_tmptext[256] = "\0"; #endif typedef struct RADEC { double ra; double dec; } RADEC; typedef struct AZALT { double az; double alt; } AZALT; typedef struct EDBOBJ { char objname[40]; char objtype[40]; char rastr[20]; char decstr[20]; } EDBOBJ; /* strutil.c */ /*--------------------------------------*/ char * strEatBytes(unsigned char ch,char *str,unsigned int len,int strflag); int strScanStrActive(char *s,int flag); void strCleanStr(char *s,int max); char * strGetStrLastChar(char *s); void strCleanStr0(char *s,int max); char * strRollStrLeft(char *src,int r); char * strRollStrRight(char *src,int r); char * strPrepStrEnd(char *s); char * strPrepStrSpace(char *s); char * strGetPrepString(char *s); int strTestNumeric(char s); int strTestPtrNumeric(char * s); int strTestPtrFloat(char * s); int strTestPtrHex(char * s); /* util.c */ /*--------------------------------------*/ double makeAbsoluteDouble( double val ); double makeAbsoluteModf( double val ); /* _calc.c */ /*--------------------------------------*/ /* This sources are get from Elwood Downeys great program XEphem's source refract.c Have a look to the sourcefile header of _calc.c. */ extern void * cRfValues; static void unrefract ( double pr, double tr, double aa, double * ta); static void unrefractGE15 ( double pr, double tr, double aa, double * ta); static void unrefractLT15 ( double pr, double tr, double aa, double * ta); static void refract ( double pr, double tr, double ta, double * aa); /* calc.c */ /*--------------------------------------*/ double REST( double val, double t ); double cCurrentStarTime( double longitude , double latitude, long seconds, long hsecs, long utcadjust ); void cAzAlt( double latitude, double ra, double dec, double stt, struct AZALT *azalt ); void cRaDec( double latitude, double az, double alt, double stt, struct RADEC *radec); int cRfInitValues( double temperature, double airpressure, int init ); void cRfFreeValues( void ); double cAltRfToScope( double arcsec ); double cAltRfFromScope( double arcsec ); double makeAbsoluteDouble( double val ); /* conv.c */ /*--------------------------------------*/ double StrDegreesToDouble( char * str, int mode ); char * DoubleToStrDegrees( double arc, int hours ); void StrRADecToStrAZAlt( char * ra, char * dec, long utcadjust, double latitude, double longitude, struct AZALT *azalt ); void StrAZAltToStrRADec( char * az, char * alt, long utcadjust, double latitude, double longitude, struct RADEC *radec ); /* sectors.c */ /*--------------------------------------*/ int gcalcSector( double az, double alt, double altnorth ); int gcalcAzDirLeft( int sector ); int gcalcAltDirDown( int sector ); int gcalcFrDirLeft( int sector ); double gcalcR( double az, double alt, double altnorth, int sector ); /* ioaddr.c */ /*--------------------------------------*/ void setJoystickPort( unsigned short portaddr); void setParallelPort( unsigned short portaddr); void setJoystickPort2( unsigned short portaddr); void setParallelPort2( unsigned short portaddr); int testPermissions( void ); void endPermissions( void ); static inline unsigned char read_port( unsigned short port ); static inline void write_port( unsigned char value, unsigned short port ); /* keypad.c */ /*--------------------------------------*/ unsigned char read_keypad( int keypadtype ); /* setbaud.c */ /*---------------------------------------*/ int setBaudRateOpenPort(char *port, char * baudval); int waitWriteFD( char * buffer, int fd, size_t num ); int waitReadFD( char *buffer, int fd, size_t num ); /* key.c */ /*----------------------------------------*/ int ReadKey(); /* vid.c */ /*----------------------------------------*/ void ScrClear(); void ScrMove(int x,int y); void ScrCol(int bk,int fg); /* edb.c */ /*----------------------------------------*/ int setEDBobjFromStr(struct EDBOBJ *mv, char *instr ); #endif