/* Public domain */ #ifndef _FREESG_CG_PROGRAM_H_ #define _FREESG_CG_PROGRAM_H_ #include #ifdef HAVE_CG #include #include typedef struct sg_cg_program { struct sg_program _inherit; enum { SG_VERTEX_PROGRAM, SG_FRAGMENT_PROGRAM } type; CGprogram *_Nullable objs; /* All compiled programs */ Uint nObjs; CGprogram instObj; /* Installed program */ CGprofile instProf; /* Installed program profile */ } SG_CgProgram; __BEGIN_DECLS extern SG_ProgramClass sgCgProgramClass; extern CGcontext sgCgProgramCtx; SG_CgProgram *_Nonnull SG_CgProgramNew(void *_Nonnull, const char *_Nonnull); __END_DECLS #endif /* HAVE_CG */ #endif /* _FREESG_CG_PROGRAM_H_ */