11 |
|
|
12 |
|
#include <ctype.h> |
13 |
|
|
14 |
– |
#include "standard.h" |
14 |
|
#include "platform.h" |
15 |
|
#include "paths.h" |
16 |
+ |
#include "rtprocess.h" /* win_popen() */ |
17 |
+ |
#include "rtio.h" |
18 |
+ |
#include "rtmath.h" |
19 |
|
#include "object.h" |
20 |
|
#include "otypes.h" |
21 |
|
|
47 |
|
|
48 |
|
#define progname (xav[0]) |
49 |
|
|
50 |
+ |
static int doargf(int ac, char **av, int fi); |
51 |
+ |
static int doarray(int ac, char **av, int ai); |
52 |
+ |
static void xform(char *name, FILE *fin); |
53 |
+ |
static void xfcomm(char *fname, FILE *fin); |
54 |
+ |
static void xfobject(char *fname, FILE *fin); |
55 |
+ |
static int addxform(FILE *fin); |
56 |
+ |
static int alias(FILE *fin); |
57 |
+ |
static void initotypes(void); |
58 |
+ |
static void openmain(char *iname); |
59 |
|
|
60 |
< |
main(argc, argv) /* get transform options and transform file */ |
61 |
< |
int argc; |
62 |
< |
char *argv[]; |
60 |
> |
|
61 |
> |
int |
62 |
> |
main( /* get transform options and transform file */ |
63 |
> |
int argc, |
64 |
> |
char *argv[] |
65 |
> |
) |
66 |
|
{ |
67 |
|
int mal_prefix = 0; |
54 |
– |
char *fname; |
68 |
|
int a; |
69 |
|
/* check for argument list file */ |
70 |
|
for (a = 1; a < argc; a++) |
172 |
|
} |
173 |
|
|
174 |
|
|
175 |
< |
doargf(ac, av, fi) /* take argument list from file */ |
176 |
< |
char **av; |
177 |
< |
int ac, fi; |
175 |
> |
int |
176 |
> |
doargf( /* take argument list from file */ |
177 |
> |
int ac, |
178 |
> |
char **av, |
179 |
> |
int fi |
180 |
> |
) |
181 |
|
{ |
182 |
|
int inquote; |
183 |
|
char *newav[256], **avp; |
284 |
|
} |
285 |
|
|
286 |
|
|
287 |
< |
doarray(ac, av, ai) /* make array */ |
288 |
< |
char **av; |
289 |
< |
int ac, ai; |
287 |
> |
int |
288 |
> |
doarray( /* make array */ |
289 |
> |
int ac, |
290 |
> |
char **av, |
291 |
> |
int ai |
292 |
> |
) |
293 |
|
{ |
294 |
|
char *newav[256], **avp; |
295 |
|
char newid[128], repts[32]; |
332 |
|
} |
333 |
|
|
334 |
|
|
335 |
< |
xform(name, fin) /* transform stream by tot.xfm */ |
336 |
< |
char *name; |
337 |
< |
register FILE *fin; |
335 |
> |
void |
336 |
> |
xform( /* transform stream by tot.xfm */ |
337 |
> |
char *name, |
338 |
> |
register FILE *fin |
339 |
> |
) |
340 |
|
{ |
341 |
|
int nobjs = 0; |
342 |
|
register int c; |
367 |
|
} |
368 |
|
|
369 |
|
|
370 |
< |
xfcomm(fname, fin) /* transform a command */ |
371 |
< |
char *fname; |
372 |
< |
FILE *fin; |
370 |
> |
void |
371 |
> |
xfcomm( /* transform a command */ |
372 |
> |
char *fname, |
373 |
> |
FILE *fin |
374 |
> |
) |
375 |
|
{ |
376 |
|
FILE *pin; |
377 |
|
char buf[512]; |
399 |
|
} |
400 |
|
|
401 |
|
|
402 |
< |
xfobject(fname, fin) /* transform an object */ |
403 |
< |
char *fname; |
404 |
< |
FILE *fin; |
402 |
> |
void |
403 |
> |
xfobject( /* transform an object */ |
404 |
> |
char *fname, |
405 |
> |
FILE *fin |
406 |
> |
) |
407 |
|
{ |
408 |
|
char typ[16], nam[MAXSTR]; |
409 |
|
int fn; |
436 |
|
} |
437 |
|
|
438 |
|
|
439 |
< |
o_default(fin) /* pass on arguments unchanged */ |
440 |
< |
FILE *fin; |
439 |
> |
int |
440 |
> |
o_default( /* pass on arguments unchanged */ |
441 |
> |
FILE *fin |
442 |
> |
) |
443 |
|
{ |
444 |
|
register int i; |
445 |
|
FUNARGS fa; |
472 |
|
} |
473 |
|
|
474 |
|
|
475 |
< |
addxform(fin) /* add xf arguments to strings */ |
476 |
< |
FILE *fin; |
475 |
> |
int |
476 |
> |
addxform( /* add xf arguments to strings */ |
477 |
> |
FILE *fin |
478 |
> |
) |
479 |
|
{ |
480 |
|
register int i; |
481 |
|
int resetarr = 0; |
515 |
|
} |
516 |
|
|
517 |
|
|
518 |
< |
alias(fin) /* transfer alias */ |
519 |
< |
FILE *fin; |
518 |
> |
int |
519 |
> |
alias( /* transfer alias */ |
520 |
> |
FILE *fin |
521 |
> |
) |
522 |
|
{ |
523 |
|
char aliasnm[MAXSTR]; |
524 |
|
|
529 |
|
} |
530 |
|
|
531 |
|
|
532 |
< |
m_glow(fin) /* transform arguments for proximity light */ |
533 |
< |
FILE *fin; |
532 |
> |
int |
533 |
> |
m_glow( /* transform arguments for proximity light */ |
534 |
> |
FILE *fin |
535 |
> |
) |
536 |
|
{ |
537 |
|
FUNARGS fa; |
538 |
|
|
549 |
|
} |
550 |
|
|
551 |
|
|
552 |
< |
m_spot(fin) /* transform arguments for spotlight */ |
553 |
< |
FILE *fin; |
552 |
> |
int |
553 |
> |
m_spot( /* transform arguments for spotlight */ |
554 |
> |
FILE *fin |
555 |
> |
) |
556 |
|
{ |
557 |
|
FVECT v; |
558 |
|
FUNARGS fa; |
571 |
|
} |
572 |
|
|
573 |
|
|
574 |
< |
m_mist(fin) /* transform arguments for mist */ |
575 |
< |
FILE *fin; |
574 |
> |
int |
575 |
> |
m_mist( /* transform arguments for mist */ |
576 |
> |
FILE *fin |
577 |
> |
) |
578 |
|
{ |
579 |
|
FUNARGS fa; |
580 |
|
int i; |
615 |
|
} |
616 |
|
|
617 |
|
|
618 |
< |
m_dielectric(fin) /* transform arguments for dielectric */ |
619 |
< |
FILE *fin; |
618 |
> |
int |
619 |
> |
m_dielectric( /* transform arguments for dielectric */ |
620 |
> |
FILE *fin |
621 |
> |
) |
622 |
|
{ |
623 |
|
FUNARGS fa; |
624 |
|
|
637 |
|
} |
638 |
|
|
639 |
|
|
640 |
< |
m_interface(fin) /* transform arguments for interface */ |
641 |
< |
FILE *fin; |
640 |
> |
int |
641 |
> |
m_interface( /* transform arguments for interface */ |
642 |
> |
FILE *fin |
643 |
> |
) |
644 |
|
{ |
645 |
|
FUNARGS fa; |
646 |
|
|
664 |
|
} |
665 |
|
|
666 |
|
|
667 |
< |
text(fin) /* transform text arguments */ |
668 |
< |
FILE *fin; |
667 |
> |
int |
668 |
> |
text( /* transform text arguments */ |
669 |
> |
FILE *fin |
670 |
> |
) |
671 |
|
{ |
672 |
|
int i; |
673 |
|
FVECT v; |
705 |
|
} |
706 |
|
|
707 |
|
|
708 |
< |
o_source(fin) /* transform source arguments */ |
709 |
< |
FILE *fin; |
708 |
> |
int |
709 |
> |
o_source( /* transform source arguments */ |
710 |
> |
FILE *fin |
711 |
> |
) |
712 |
|
{ |
713 |
|
FVECT dv; |
714 |
|
FUNARGS fa; |
728 |
|
} |
729 |
|
|
730 |
|
|
731 |
< |
o_sphere(fin) /* transform sphere arguments */ |
732 |
< |
FILE *fin; |
731 |
> |
int |
732 |
> |
o_sphere( /* transform sphere arguments */ |
733 |
> |
FILE *fin |
734 |
> |
) |
735 |
|
{ |
736 |
|
FVECT cent; |
737 |
|
double rad; |
754 |
|
} |
755 |
|
|
756 |
|
|
757 |
< |
o_face(fin) /* transform face arguments */ |
758 |
< |
FILE *fin; |
757 |
> |
int |
758 |
> |
o_face( /* transform face arguments */ |
759 |
> |
FILE *fin |
760 |
> |
) |
761 |
|
{ |
762 |
|
FVECT p; |
763 |
|
register int i; |
782 |
|
} |
783 |
|
|
784 |
|
|
785 |
< |
o_cone(fin) /* transform cone and cup arguments */ |
786 |
< |
FILE *fin; |
785 |
> |
int |
786 |
> |
o_cone( /* transform cone and cup arguments */ |
787 |
> |
FILE *fin |
788 |
> |
) |
789 |
|
{ |
790 |
|
FVECT p0, p1; |
791 |
|
double r0, r1; |
811 |
|
} |
812 |
|
|
813 |
|
|
814 |
< |
o_cylinder(fin) /* transform cylinder and tube arguments */ |
815 |
< |
FILE *fin; |
814 |
> |
int |
815 |
> |
o_cylinder( /* transform cylinder and tube arguments */ |
816 |
> |
FILE *fin |
817 |
> |
) |
818 |
|
{ |
819 |
|
FVECT p0, p1; |
820 |
|
double rad; |
838 |
|
} |
839 |
|
|
840 |
|
|
841 |
< |
o_ring(fin) /* transform ring arguments */ |
842 |
< |
FILE *fin; |
841 |
> |
int |
842 |
> |
o_ring( /* transform ring arguments */ |
843 |
> |
FILE *fin |
844 |
> |
) |
845 |
|
{ |
846 |
|
FVECT p0, pd; |
847 |
|
double r0, r1; |
871 |
|
} |
872 |
|
|
873 |
|
|
874 |
< |
initotypes() /* initialize ofun[] array */ |
874 |
> |
void |
875 |
> |
initotypes(void) /* initialize ofun[] array */ |
876 |
|
{ |
877 |
|
register int i; |
878 |
|
|
918 |
|
|
919 |
|
|
920 |
|
#ifdef OLDXFORM |
921 |
< |
openmain(fname) |
922 |
< |
char *fname; |
921 |
> |
void |
922 |
> |
openmain( |
923 |
> |
char *fname |
924 |
> |
) |
925 |
|
{ |
926 |
|
if (fname == NULL) { |
927 |
|
strcpy(mainfn, "standard input"); |
943 |
|
strcpy(mainfn, fname); |
944 |
|
} |
945 |
|
#else |
946 |
< |
openmain(iname) /* open input, changing directory for file */ |
947 |
< |
char *iname; |
946 |
> |
void |
947 |
> |
openmain( /* open input, changing directory for file */ |
948 |
> |
char *iname |
949 |
> |
) |
950 |
|
{ |
951 |
|
static char origdir[PATH_MAX]; |
952 |
|
static char curfn[PATH_MAX]; |