module: clocked_ascii_store
parameters: int x
inputs: double in, double clock
outputs:
classes: List a(); 
static_variables: FILE *fp, double prev_clock, double prev_prev_clock
init:
prev_clock = -100.0;
prev_prev_clock = -100.0;
char filename[100];
sprintf(filename,"sig_%d.dat",x);
if ((fp = fopen(filename,"w")) == NULL)
   {
    printf("error in 'clocked_ascii_store': can't open file '%s'\n",filename);
    exit(1);
   }
code:
if (prev_clock == -100.0)
   {
   prev_prev_clock = clock;
   prev_clock = clock;
   }
if (clock > prev_clock && prev_clock == prev_prev_clock)
   {
   if (fabs(in-floor(in+0.5)) < 1e-6)
      fprintf(fp,"%d\n",(int) in);
   else
      fprintf(fp,"%8.6e\n",in);
   }
prev_prev_clock = prev_clock;
prev_clock = clock;
end:
fclose(fp);
