Linuxpops  3.01.04
Spectral Anaysis Package for Single Dish Data
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
parse.h
Go to the documentation of this file.
1 
2 #ifndef PARSE_H
3 #define PARSE_H
4 
5 /* Command flags */
6 
7 enum parse_flags {
8  PF_A_FLAG = 0,
34 
60 
69 
74 
78 };
79 
80 #define MAX_PARSE_FLAGS PF_EXP_FLAG+1
81 
82 
83 struct PARSE_FLAGS {
84  char *token;
85  char *name;
86 
87  int index;
88  int set;
89  int order;
90  int pad;
91 };
92 
93 #ifdef INCLUDE_PARSE_FLAGS
94 
95 struct PARSE_FLAGS parse_flags[] = {
96  { "/a", "A Flag", PF_A_FLAG, 0, 0, 0 },
97  { "/b", "B Flag", PF_B_FLAG, 0, 0, 0 },
98  { "/c", "C Flag", PF_C_FLAG, 0, 0, 0 },
99  { "/d", "D Flag", PF_D_FLAG, 0, 0, 0 },
100  { "/e", "E Flag", PF_E_FLAG, 0, 0, 0 },
101  { "/f", "F Flag", PF_F_FLAG, 0, 0, 0 },
102  { "/g", "G Flag", PF_G_FLAG, 0, 0, 0 },
103  { "/h", "H Flag", PF_H_FLAG, 0, 0, 0 },
104  { "/i", "I Flag", PF_I_FLAG, 0, 0, 0 },
105  { "/j", "J Flag", PF_J_FLAG, 0, 0, 0 },
106  { "/k", "K Flag", PF_K_FLAG, 0, 0, 0 },
107  { "/l", "L Flag", PF_L_FLAG, 0, 0, 0 },
108  { "/m", "M Flag", PF_M_FLAG, 0, 0, 0 },
109  { "/n", "N Flag", PF_N_FLAG, 0, 0, 0 },
110  { "/o", "O Flag", PF_O_FLAG, 0, 0, 0 },
111  { "/p", "P Flag", PF_P_FLAG, 0, 0, 0 },
112  { "/q", "Q Flag", PF_Q_FLAG, 0, 0, 0 },
113  { "/r", "R Flag", PF_R_FLAG, 0, 0, 0 },
114  { "/s", "S Flag", PF_S_FLAG, 0, 0, 0 },
115  { "/t", "T Flag", PF_T_FLAG, 0, 0, 0 },
116  { "/u", "U Flag", PF_U_FLAG, 0, 0, 0 },
117  { "/v", "V Flag", PF_V_FLAG, 0, 0, 0 },
118  { "/w", "W Flag", PF_W_FLAG, 0, 0, 0 },
119  { "/x", "X Flag", PF_X_FLAG, 0, 0, 0 },
120  { "/y", "Y Flag", PF_Y_FLAG, 0, 0, 0 },
121  { "/z", "Z Flag", PF_Z_FLAG, 0, 0, 0 },
122 
123  { "/0", "0 Flag", PF_0_FLAG, 0, 0, 0 }, /* This may mess with the math parser ??? */
124  { "/1", "1 Flag", PF_1_FLAG, 0, 0, 0 },
125  { "/2", "2 Flag", PF_2_FLAG, 0, 0, 0 },
126  { "/3", "3 Flag", PF_3_FLAG, 0, 0, 0 },
127  { "/4", "4 Flag", PF_4_FLAG, 0, 0, 0 },
128  { "/5", "5 Flag", PF_5_FLAG, 0, 0, 0 },
129  { "/6", "6 Flag", PF_6_FLAG, 0, 0, 0 },
130  { "/7", "7 Flag", PF_7_FLAG, 0, 0, 0 },
131  { "/8", "8 Flag", PF_8_FLAG, 0, 0, 0 },
132  { "/9", "9 Flag", PF_9_FLAG, 0, 0, 0 },
133  { "/10", "10 Flag", PF_10_FLAG, 0, 0, 0 },
134  { "/11", "11 Flag", PF_11_FLAG, 0, 0, 0 },
135  { "/12", "12 Flag", PF_12_FLAG, 0, 0, 0 },
136  { "/13", "13 Flag", PF_13_FLAG, 0, 0, 0 },
137  { "/14", "14 Flag", PF_14_FLAG, 0, 0, 0 },
138  { "/15", "15 Flag", PF_15_FLAG, 0, 0, 0 },
139  { "/16", "16 Flag", PF_16_FLAG, 0, 0, 0 },
140  { "/17", "17 Flag", PF_17_FLAG, 0, 0, 0 },
141  { "/18", "18 Flag", PF_18_FLAG, 0, 0, 0 },
142  { "/19", "19 Flag", PF_19_FLAG, 0, 0, 0 },
143  { "/20", "20 Flag", PF_20_FLAG, 0, 0, 0 },
144  { "/21", "21 Flag", PF_21_FLAG, 0, 0, 0 },
145  { "/22", "22 Flag", PF_22_FLAG, 0, 0, 0 },
146  { "/23", "23 Flag", PF_23_FLAG, 0, 0, 0 },
147  { "/24", "24 Flag", PF_24_FLAG, 0, 0, 0 },
148 
149  { "/Cbk", "Cbk Flag", PF_Cbk_FLAG, 0, 0, 0 },
150  { "/Crd", "Crd Flag", PF_Crd_FLAG, 0, 0, 0 },
151  { "/Cgr", "Cgr Flag", PF_Cgr_FLAG, 0, 0, 0 },
152  { "/Cyl", "Cyl Flag", PF_Cyl_FLAG, 0, 0, 0 },
153  { "/Cbl", "Cbl Flag", PF_Cbl_FLAG, 0, 0, 0 },
154  { "/Cmg", "Cmg Flag", PF_Cmg_FLAG, 0, 0, 0 },
155  { "/Ccy", "Ccy Flag", PF_Ccy_FLAG, 0, 0, 0 },
156  { "/Cwt", "Cwt Flag", PF_Cwt_FLAG, 0, 0, 0 },
157 
158  { "/add", "Add Flag", PF_ADD_FLAG, 0, 0, 0 },
159  { "/sub", "Sub Flag", PF_SUB_FLAG, 0, 0, 0 },
160  { "/mul", "Mul Flag", PF_MUL_FLAG, 0, 0, 0 },
161  { "/div", "Div Flag", PF_DIV_FLAG, 0, 0, 0 },
162 
163  { "/log", "Log Flag", PF_LOG_FLAG, 0, 0, 0 },
164  { "/hex", "Hex Flag", PF_HEX_FLAG, 0, 0, 0 },
165  { "/exp", "Exp Flag", PF_EXP_FLAG, 0, 0, 0 },
166 };
167 
168 #endif
169 
170 
171 struct PARSE_STACK {
172  int ncmds; /* total number of individual commands */
173  int ntokens; /* Total number of tokens in currently parsed command */
174 
175  char cmd_tok[MAX_TOKENS][MAX_TOKENS]; /* Separate commands that where delineated by a ';' char */
176  char tok[MAX_TOKENS][MAX_TOKENS]; /* Commands + Arguments */
177 
179 
180  char *firstArg;
181  char *secondArg;
182  char *thirdArg;
183  char *fourthArg;
184  char *fifthArg;
185  char *sixthArg;
186  char *seventhArg;
187  char *eighthArg;
188  char *ninethArg;
189  char *tenthArg;
190 
191  char currentCmd[256];
192 };
193 
195 
197 
198 
199 struct QUERY_VAR {
200  char name[256]; /* Var name */
201  int ival; /* Int results */
202  int ntype; /* DOUBLE, INTEGER, CHARSTAR */
203  int stype; /* DVAR, GSVAR, HEADER */
204  int indx; /* Index into dval_list or gsvar_list */
205  double dval; /* Double results */
206  char cval[256]; /* Char results */
207  char buf[256]; /* Ascii representation of the value */
208  struct HEAD_PARAMS phead; /* Pointer to HEADER values */
209 
210 };
211 
212 #endif
struct PARSE_STACK * args
Definition: parse.h:196
#define MAX_PARSE_FLAGS
Definition: parse.h:80
struct PARSE_STACK parse_stack[MAX_PARSE_STACK]
Definition: parse.h:194
struct HEAD_PARAMS phead
Definition: parse.h:208
Definition: parse.h:8
parse_flags
Definition: parse.h:7
char buf[256]
Definition: parse.h:207
char * seventhArg
Definition: parse.h:186
#define MAX_TOKENS
Definition: defines.h:40
int ival
Definition: parse.h:201
char * fifthArg
Definition: parse.h:184
struct PARSE_FLAGS pflags[MAX_PARSE_FLAGS]
Definition: parse.h:178
int index
Definition: parse.h:87
char tok[MAX_TOKENS][MAX_TOKENS]
Definition: parse.h:176
double dval
Definition: parse.h:205
int ncmds
Definition: parse.h:172
char name[256]
Definition: parse.h:200
char * thirdArg
Definition: parse.h:182
#define MAX_PARSE_STACK
Definition: defines.h:150
char cval[256]
Definition: parse.h:206
char * name
Definition: parse.h:85
int indx
Definition: parse.h:204
int stype
Definition: parse.h:203
char * sixthArg
Definition: parse.h:185
char * token
Definition: parse.h:84
Definition: parse.h:9
int set
Definition: parse.h:88
char * eighthArg
Definition: parse.h:187
char * fourthArg
Definition: parse.h:183
char currentCmd[256]
Definition: parse.h:191
int order
Definition: parse.h:89
char * secondArg
Definition: parse.h:181
char cmd_tok[MAX_TOKENS][MAX_TOKENS]
Definition: parse.h:175
int ntokens
Definition: parse.h:173
int pad
Definition: parse.h:90
char * firstArg
Definition: parse.h:180
int ntype
Definition: parse.h:202
char * ninethArg
Definition: parse.h:188
char * tenthArg
Definition: parse.h:189