259 int index, old_index=0;
260 float time, old_time;
262 int expected_edge[3];
269 printf(
"Cannot open file: %s.\n",
filename);
283 printf(
"ERROR IN FILE \".io\"\nset inout_num = %s\n",
line);
292 printf(
"ERROR IN FILE \".io\"\nset var_in_num = %s\n",
line);
307 printf(
"ERROR IN FILE \".io\"\nset user_names = %s\n",
line);
327 printf(
"ERROR IN FILE \".io\"\nset phase_names = %s\n",
line);
335 printf(
"ERROR IN FILE \".io\"\nset voltage_names = %s\n",
line);
373 for(i=0; i<=Sdiv3; i++)
376 signals_in_row=Smod3;
381 if(sscanf(
line,
"%d %e", &index, &time)!=2)
385 if(index!=old_index+1)
402 printf(
"Warning !!!\n");
403 printf(
"Numbers of samples in different signal sets do not match.");
404 printf(
"Possible error in input data file.");
415 if((i==1) && (index==1))
423 for(m=0; m<signals_in_row; m++)
425 if(sscanf(&
line[k],
"%le", &sig_val)!=1)
464 if(
add_edge(sp, (i-1)*3+m, sig_val,
time, old_sig_val, old_time,
index, old_index, expected_edge[m]))
471 if(
add_edge(sp, (i-1)*3+m, sig_val,
time, old_sig_val, old_time,
index, old_index, expected_edge[m]))
475 old_sig_val = sig_val;
char(* jspice_phase_names)[NAME_LENGTH]
int skip_arg(char *line, int arg_num)
char(* signal_names)[NAME_LENGTH]
#define COLLECT_BY_VOLTAGE
static int read_line(FILE *fp, char *line, int *line_no)
static PHASE normalized_phase(PHASE p_val)
static void add_signal_by_phase(SIGNALS *sp, int sig_num, double sig_val, TIME sig_time, int sig_index)
static void add_signal_by_voltage(SIGNALS *sp, int sig_num, double sig_val, TIME sig_time, int sig_index)
static char line[LONG_LINE_LENGTH]
static void remove_not_complete_pulses(SIGNALS *sp)
char(* jspice_voltage_names)[NAME_LENGTH]
static int add_edge(SIGNALS *sp, int sig_num, double sig_val, TIME sig_time, double old_sig_val, TIME old_sig_time, int sig_index, int old_sig_index, int direction)
static char filename[LINE_LENGTH]