#define SERVER /* Current Version Date */ #define VERSION __DATE__ /* Utility Definitions and Typedefs */ #define TRUE 1 #define FALSE 0 #define NINT(value) (int) ((value < 0) ? value-0.5 : value+0.5) #define ISODD(x) x%2 #define NULL_STR "" #define MAXKEY 48 /* max key pointer index */ #define MAXTOK 44 /* maximum number of command tokens */ #define V1 0 #define V2 1 #define LLEN 81 /* Line Length */ #define NUM_CHAN 16 /* Max Number of Channels */ #define Percent40 .40 #define Percent60 .60 #define Percent80 .80 /* Different types of plotting to perform */ #define AVERAGES 0 #define PEAKS 1 #define GYROFREQUENCY 3 /* Time Spans in seconds */ #define YEAR_DAYS 365 #define LEAP_YEAR_DAYS 366 #define YEAR_SEC 31536000L #define LEAP_YEAR_SEC 31622400L #define WEEK_SEC 604800L #define DAY_SEC 86400L #define HALF_DAY_SEC 43200L #define HOUR_MIN 60 #define HOUR_SEC 3600 #define MIN_SEC 60 /* Global Variables */ #ifdef MAIN void (*pws16_begin)(void); /* initialization routine */ int (*pws16_command)(void); /* command routine */ int (*pws16_data)(void); /* data read routine */ void (*pws16_end)(void); /* deallocation routine */ void (*label)(void) = pws16_label; /* labels for graphics screen */ void (*plot)(void) = pws16_plot; /* plot channel of data */ int *iavg[NUM_CHAN], *ipks[NUM_CHAN]; int Iteration; int LastKey=MAXKEY; struct cmd_struct Cmd; struct dat_struct Dat; float Zmin, Zmax; /* min and max data values for scaling */ int Cmin, Cmax, Cn[16]; char Cmdline[LLEN]; /* input command "card" */ int Defmin[] = { 0, 0, -6000, -6000, -6000, -6000, -16000, -16000 }; int Defmax[] = { 0, 255, -2000, -2000, -2000, -2000, -8000, -8000 }; char Cal_Path[LLEN] = NULL_STR; char Data_Path[2][LLEN]; char BGI_Path[LLEN] = NULL_STR; boolean Shade = FALSE; boolean Pastel = FALSE; boolean Compress = FALSE; char Extension[4], ZExtension[4]; int Acolor=15, Pcolor=15, Gcolor=15, Lcolor=15, Bcolor=0; int ColorsSet=FALSE; FILE *fpOut; char *kp[MAXKEY+1] = /* keyword pointer array */ { " invalid","INPUT", "UNITS", "SPACECRAFT", "YEAR", "DAY", "HOUR", "MINUTE", "SPAN", "MIN", "MAX", "CMIN", "CMAX", "FG", "FGONLY", "PEAKS", "NOPEAKS", "COLOR", "SNAPSHOT", "GRAY", "OUTPUT", "FILTER", "FMIN", "FMAX", "C1", "C2", "C3", "C4", "C5", "C6", "C7", "C8", "C9", "C10", "C11", "C12", "C13", "C14", "C15", "C16", "SURVEY", "WINDOW", "RESET", "HELP", "QUIT", "-", "RUN", "SHELL" }; #else extern void (*pws16_begin)(void); extern int (*pws16_command)(void); extern int (*pws16_data)(void); extern void (*pws16_end) (void); extern void (*label)(void); extern void (*plot)(void); extern int *iavg[NUM_CHAN], *ipks[NUM_CHAN]; extern int Iteration; extern int LastKey; extern struct cmd_struct Cmd; extern struct dat_struct Dat; extern float Zmin, Zmax; extern int Cmin,Cmax,Cn[]; extern char Cmdline[]; extern int Defmin[]; extern int Defmax[]; extern char Cal_Path[]; extern char Data_Path[][LLEN]; extern char BGI_Path[]; extern boolean Shade; extern boolean Pastel; extern boolean Compress; extern char Extension[], ZExtension[]; extern int Acolor, Pcolor, Gcolor, Lcolor, Bcolor; extern int ColorsSet; extern FILE *fpOut; extern char *kp[]; #endif