--- ray/src/common/otypes.h 2003/06/27 06:53:21 2.12 +++ ray/src/common/otypes.h 2004/03/28 20:33:12 2.15 @@ -1,4 +1,4 @@ -/* RCSid $Id: otypes.h,v 2.12 2003/06/27 06:53:21 greg Exp $ */ +/* RCSid $Id: otypes.h,v 2.15 2004/03/28 20:33:12 schorsch Exp $ */ /* * otypes.h - defines for object types. */ @@ -11,8 +11,21 @@ extern "C" { typedef struct { char *funame; /* function name */ int flags; /* type flags */ +#ifdef FUN_ARGLIST + int (*funp)(FUN_ARGLIST); /* pointer to function */ +#else int (*funp)(); /* pointer to function */ +#endif } FUN; + +#ifdef FUN_ARGLIST +extern int o_default(FUN_ARGLIST); +#else +extern int o_default(); /* XXX conflict with radogl.h */ +#endif + +/* extern void initotypes(void);*/ /* XXX don't mess with the linker... */ + /* object types in decreasing frequency */ #define OBJ_FACE 0 /* polygon */ #define OBJ_CONE 1 /* cone */ @@ -99,8 +112,6 @@ extern FUN ofun[]; /* our type list */ #define hasfunc(t) (ofun[t].flags & (T_F|T_D|T_I)) #define hastext(t) (ofun[t].flags & T_E) #define isflat(t) ((t)==OBJ_FACE || (t)==OBJ_RING) - -extern int o_default(); #define ALIASKEY "alias" /* alias keyword */ #define ALIASMOD "inherit" /* inherit target modifier */