#include "focas1.h" #define MAX 20000 static struct objrec ob; /* SELECT - Select objects by number from stdin */ select (input, output) char *input; char *output; { FILE *fin, *fout; int i, n; char object[MAX][20], obj[20]; fin = getstdin; cfd = catopen (input, 0); cmmnt ("select"); fout = catopen (output, 1); for (n = 0; n < MAX; n++) { scanf ("%s", object[n]); if (feof (fin)) break; } if (n == 0) return; for (;;) { if (rdcatob (cfd, 0L, &ob)) break; if (ffilter (&ob)) { sprintf (obj, "%d.%-d", ob.entnum, ob.subent); for (i = 0; i < n; i++) if (strcmp (obj, object[i]) == 0) { wtcat (&ob, fout); break; } } } fclose (cfd); fclose (fout); }