Back to index

radiance  4R0+20100331
instance.h
Go to the documentation of this file.
00001 /* RCSid $Id: instance.h,v 2.6 2003/06/27 06:53:21 greg Exp $ */
00002 /*
00003  *  instance.h - header file for routines using octree objects.
00004  *
00005  *  Include after object.h and octree.h
00006  */
00007 #ifndef _RAD_INSTANCE_H_
00008 #define _RAD_INSTANCE_H_
00009 #ifdef __cplusplus
00010 extern "C" {
00011 #endif
00012 
00013 typedef struct scene {
00014        char  *name;                /* octree name */
00015        int  nref;                  /* number of references */
00016        int  ldflags;               /* what was loaded */
00017        CUBE  scube;                /* scene cube */
00018        OBJECT  firstobj, nobjs;    /* first object and count */
00019        struct scene  *next;        /* next in list */
00020 }  SCENE;                   /* loaded octree */
00021 
00022 typedef struct {
00023        FULLXF  x;                  /* forward and backward transforms */
00024        SCENE  *obj;                /* loaded object */
00025 }  INSTANCE;                /* instance of octree */
00026 
00027 
00028 extern SCENE  *getscene(char *sname, int flags);
00029 extern INSTANCE  *getinstance(OBJREC *o, int flags);
00030 extern void  freescene(SCENE *sc);
00031 extern void  freeinstance(OBJREC *o);
00032 
00033 
00034 #ifdef __cplusplus
00035 }
00036 #endif
00037 #endif /* _RAD_INSTANCE_H_ */
00038