199 if((fp = fopen(
filename,
"r"))==NULL)
201 printf(
"Warning !!!\nCannot open configuration file %s.\n\n",
filename);
207 if(in_buffer[0]==
'*')
220 char *s = config_item;
223 while (*b && !isspace(*b) && *b !=
'=')
226 while (isspace(*b) || *b ==
'=')
228 if (!*b || !*config_item) {
229 printf(
"Unrecognized line in %s:\n%s\n\n",
filename, in_buffer);
235 s = item + strlen(item) - 1;
236 while (s >= item && isspace(*s))
258 if(strcmp(item,
"PT")==0)
261 if(strcmp(item,
"VP")==0)
271 if(sscanf(item,
"%f", &fvalue)!=1)
277 if((fvalue<0.0) || (fvalue>2.0))
287 if(sscanf(item,
"%f", &fvalue)!=1)
293 if((fvalue<0.0) || (fvalue>2.0))
303 if(sscanf(item,
"%f", &fvalue)!=1)
309 if((fvalue<0.0) || (fvalue>2.0))
319 if(strcmp(item,
"YES")==0)
322 if(strcmp(item,
"NO")==0)
332 if(sscanf(item,
"%f", &fvalue)!=1)
342 if(sscanf(item,
"%d", &ivalue)!=1)
352 if(sscanf(item,
"%d", &ivalue)!=1)
362 if(sscanf(item,
"%d", &ivalue)!=1)
372 if(sscanf(item,
"%f", &fvalue)!=1)
378 if((fvalue<0.0) || (fvalue>2.0))
388 if(sscanf(item,
"%f", &fvalue)!=1)
398 if(sscanf(item,
"%f", &fvalue)!=1)
408 if(sscanf(item,
"%f", &fvalue)!=1)
418 if(sscanf(item,
"%f", &fvalue)!=1)
428 if(sscanf(item,
"%f", &fvalue)!=1)
434 if((fvalue<0.0) || (fvalue>1.0))
444 if(sscanf(item,
"%f", &fvalue)!=1)
450 if((fvalue<0.0) || (fvalue>2*M_PI))
460 if(strcmp(item,
"YES")==0)
463 if(strcmp(item,
"NO")==0)
474 if(item[strlen(item)-1]!=
'/')
480 if(item[strlen(item)-1]!=
'/')
486 if(item[strlen(item)-1]!=
'/')
587 if(sscanf(item,
"%f", &fvalue)!=1)
597 if(sscanf(item,
"%f", &fvalue)!=1)
607 if(sscanf(item,
"%f", &fvalue)!=1)
616 if(sscanf(item,
"%f", &fvalue)!=1)
625 if(sscanf(item,
"%f", &fvalue)!=1)
634 if(sscanf(item,
"%f", &fvalue)!=1)
643 if(sscanf(item,
"%f", &fvalue)!=1)
652 if(sscanf(item,
"%f", &fvalue)!=1)
661 if(sscanf(item,
"%f", &fvalue)!=1)
671 printf(
"Unknown option in %s:\n%s\n\n",
filename, in_buffer);
char logic_ext[NAME_LENGTH]
char good_ext[NAME_LENGTH]
char hose_ext[NAME_LENGTH]
#define PLS_EXTR_MTHD_CONFIG
char setup_ext[NAME_LENGTH]
char output_dir[NAME_LENGTH]
#define PH_THR_NOM_CONFIG
#define ONE_VOLTAGE_CONFIG
char param_ext[NAME_LENGTH]
#define PH_THR_MAX_CONFIG
char bad_ext[NAME_LENGTH]
static int check_config_item(char *item_type, char **item_list, int item_num)
char signal_ext[NAME_LENGTH]
#define INTEREDGE_INT_CONFIG
static void out_of_range(char *line, char *filename)
PHASE min_pulse_phase_diff
char report_ext[NAME_LENGTH]
#define COLLECT_BY_VOLTAGE
char print_ext[NAME_LENGTH]
static int blank_line(char *line)
#define CHECK_RATIO_CONFIG
TIME min_interval_to_falledge
char init_ext[NAME_LENGTH]
char spice_name[NAME_LENGTH]
char hold_ext[NAME_LENGTH]
TIME min_interval_to_riseedge
char phase_ext[NAME_LENGTH]
char avr_ext[NAME_LENGTH]
char input_dir[NAME_LENGTH]
#define TIME_ACCURACY_CONFIG
char marg_ext[NAME_LENGTH]
int pulse_extraction_method
char step_ext[NAME_LENGTH]
char check_ext[NAME_LENGTH]
char separation_ext[NAME_LENGTH]
char circuit_ext[NAME_LENGTH]
#define MAX_DEL_VAR_CONFIG
char tmp_dir[NAME_LENGTH]
#define PH_THR_MIN_CONFIG
#define RISEEDGE_CHECK_INT_CONFIG
#define MIN_PH_DIFF_CONFIG
char bound_ext[NAME_LENGTH]
static char * config_item_list[]
char region_ext[NAME_LENGTH]
#define SEPARATION_CONFIG
char opt_ext[NAME_LENGTH]
static void unrecognized_value(char *line, char *filename)
#define CLK_CHECKTIME_CONFIG
#define FALLEDGE_CHECK_INT_CONFIG
static char filename[LINE_LENGTH]
char passfail_ext[NAME_LENGTH]
#define MIN_TIME_STEP_CONFIG
char nom_ext[NAME_LENGTH]