29 #define TOKENSIZE 80 //max size of tokens read from an input file 30 #define MAXSAMPLESIZE 65535 //max num of dimensions in feature space 49 if ((
tfscanf(File,
"%d", &SampleSize) != 1) ||
74 for (i = 0; i < N; i++) {
75 if (
tfscanf(File,
"%s", Token) != 1)
77 "Illegal circular/linear specification");
83 if (
tfscanf(File,
"%s", Token) != 1)
85 "Illegal essential/non-essential spec");
90 if (
tfscanf(File,
"%f%f", &(ParamDesc[i].Min), &(ParamDesc[i].Max)) != 2)
92 ParamDesc[i].
Range = ParamDesc[i].
Max - ParamDesc[i].
Min;
121 if ((Status =
tfscanf(File,
"%s", Token)) == 1) {
131 if ((
tfscanf(File,
"%d", &SampleCount) != 1) || (SampleCount < 0))
139 switch (Proto->
Style) {
160 for (i = 0; i < N; i++) {
174 for (i = 0; i < N; i++) {
175 if (
tfscanf(File,
"%s", Token) != 1)
177 "Illegal prototype distribution");
190 "Illegal prototype distribution");
201 for (i = 0; i < N; i++) {
225 else if (Status == EOF)
247 if (
tfscanf(File,
"%s", Token) != 1)
291 for (i = 0; i < N; i++) {
292 NumFloatsRead =
tfscanf(File,
"%f", &(Buffer[i]));
293 if (NumFloatsRead != 1) {
294 if ((NumFloatsRead == EOF) && (i == 0)) {
321 for (i = 0; i < N; i++) {
322 if (ParamDesc[i].Circular)
323 fprintf (File,
"circular ");
325 fprintf (File,
"linear ");
327 if (ParamDesc[i].NonEssential)
328 fprintf (File,
"non-essential ");
330 fprintf (File,
"essential ");
332 fprintf (File,
"%10.6f %10.6f\n", ParamDesc[i].Min, ParamDesc[i].Max);
352 fprintf (File,
"significant ");
354 fprintf (File,
"insignificant ");
358 fprintf (File,
"\t");
360 switch (Proto->
Style) {
368 for (i = 0; i < N; i++)
371 fprintf (File,
" %9s",
"normal");
374 fprintf (File,
" %9s",
"uniform");
377 fprintf (File,
" %9s",
"random");
382 fprintf (File,
"\n\t");
400 for (
int i = 0; i < N; i++)
401 fprintf(File,
" %9.6f", Array[i]);
418 switch (ProtoStyle) {
420 fprintf (File,
"spherical");
423 fprintf (File,
"elliptical");
426 fprintf (File,
"mixed");
429 fprintf (File,
"automatic");
440 BOOL8 WriteSigProtos,
441 BOOL8 WriteInsigProtos)
470 fprintf(File,
"%0d\n",N);
PROTOTYPE * ReadPrototype(FILE *File, uinT16 N)
uinT16 ReadSampleSize(FILE *File)
void WriteParamDesc(FILE *File, uinT16 N, PARAM_DESC ParamDesc[])
void WriteProtoList(FILE *File, uinT16 N, PARAM_DESC ParamDesc[], LIST ProtoList, BOOL8 WriteSigProtos, BOOL8 WriteInsigProtos)
#define ILLEGALESSENTIALSPEC
PARAM_DESC * ReadParamDesc(FILE *File, uinT16 N)
FLOAT32 * ReadNFloats(FILE *File, uinT16 N, FLOAT32 Buffer[])
void DoError(int Error, const char *Message)
#define ILLEGALVARIANCESPEC
#define ILLEGALSAMPLESIZE
#define ILLEGALDISTRIBUTION
void WriteNFloats(FILE *File, uinT16 N, FLOAT32 Array[])
PROTOSTYLE ReadProtoStyle(FILE *File)
int tfscanf(FILE *stream, const char *format,...)
void WritePrototype(FILE *File, uinT16 N, PROTOTYPE *Proto)
#define ILLEGALCIRCULARSPEC
#define ILLEGALMINMAXSPEC
#define ILLEGALSAMPLECOUNT
#define ILLEGALSIGNIFICANCESPEC
void WriteProtoStyle(FILE *File, PROTOSTYLE ProtoStyle)