gml_Loader_Cg.private.h

00001 #define GML_USE_DYNAMIC_LOADER 1
00002 
00003 #include <stdio.h>
00004 #include <dlfcn.h>
00005 #include <string.h>
00006 #include <limits.h>
00007 
00008 #include <Cg/cg.h>
00009 #include <Cg/cgGL.h>
00010 #ifdef GML_USE_DYNAMIC_LOADER
00011 
00012 static void* handle_Cg = NULL;
00013 
00014 static typeof(cgCompileProgram)* cgCompileProgram_wrapper = NULL;
00015 static typeof(cgCreateContext)* cgCreateContext_wrapper = NULL;
00016 static typeof(cgCreateProgram)* cgCreateProgram_wrapper = NULL;
00017 static typeof(cgCreateProgramFromFile)* cgCreateProgramFromFile_wrapper = NULL;
00018 static typeof(cgCreateProgramFromEffect)* cgCreateProgramFromEffect_wrapper = NULL;
00019 static typeof(cgDestroyParameter)* cgDestroyParameter_wrapper = NULL;
00020 static typeof(cgDestroyProgram)* cgDestroyProgram_wrapper = NULL;
00021 static typeof(cgGLBindProgram)* cgGLBindProgram_wrapper = NULL;
00022 static typeof(cgGLDisableProfile)* cgGLDisableProfile_wrapper = NULL;
00023 static typeof(cgGLDisableTextureParameter)* cgGLDisableTextureParameter_wrapper = NULL;
00024 static typeof(cgGLEnableProfile)* cgGLEnableProfile_wrapper = NULL;
00025 static typeof(cgGLEnableTextureParameter)* cgGLEnableTextureParameter_wrapper = NULL;
00026 static typeof(cgGLIsProgramLoaded)* cgGLIsProgramLoaded_wrapper = NULL;
00027 static typeof(cgGLLoadProgram)* cgGLLoadProgram_wrapper = NULL;
00028 static typeof(cgGLSetParameter1f)* cgGLSetParameter1f_wrapper = NULL;
00029 static typeof(cgGLSetParameter1fv)* cgGLSetParameter1fv_wrapper = NULL;
00030 static typeof(cgGLSetParameter2f)* cgGLSetParameter2f_wrapper = NULL;
00031 static typeof(cgGLSetParameter2fv)* cgGLSetParameter2fv_wrapper = NULL;
00032 static typeof(cgGLSetParameter3f)* cgGLSetParameter3f_wrapper = NULL;
00033 static typeof(cgGLSetParameter3fv)* cgGLSetParameter3fv_wrapper = NULL;
00034 static typeof(cgGLSetParameter4f)* cgGLSetParameter4f_wrapper = NULL;
00035 static typeof(cgGLSetParameter4fv)* cgGLSetParameter4fv_wrapper = NULL;
00036 static typeof(cgGLSetTextureParameter)* cgGLSetTextureParameter_wrapper = NULL;
00037 static typeof(cgGLUnbindProgram)* cgGLUnbindProgram_wrapper = NULL;
00038 static typeof(cgGetError)* cgGetError_wrapper = NULL;
00039 static typeof(cgGetErrorString)* cgGetErrorString_wrapper = NULL;
00040 static typeof(cgGetErrorCallback)* cgGetErrorCallback_wrapper = NULL;
00041 static typeof(cgGetErrorHandler)* cgGetErrorHandler_wrapper = NULL;
00042 static typeof(cgGetLastListing)* cgGetLastListing_wrapper = NULL;
00043 static typeof(cgGetNamedParameter)* cgGetNamedParameter_wrapper = NULL;
00044 static typeof(cgGetNamedParameterAnnotation)* cgGetNamedParameterAnnotation_wrapper = NULL;
00045 static typeof(cgIsProgramCompiled)* cgIsProgramCompiled_wrapper = NULL;
00046 static typeof(cgSetErrorCallback)* cgSetErrorCallback_wrapper = NULL;
00047 
00048 static
00049 int gml_Loader_Load_Cg ()
00050 {
00051   char* directories[] = {
00052     "~/Library/Frameworks",
00053     "/Library/Frameworks",
00054     "/System/Library/Frameworks",
00055     (char*)NULL
00056   };
00057   char** currentdir = directories;
00058   char* filename = "Cg.framework/Cg";
00059   char path[PATH_MAX] = {0, };
00060   
00061   while (*currentdir != NULL) {
00062     snprintf (path, PATH_MAX, "%s/%s", *currentdir, filename);
00063     handle_Cg = dlopen (path, RTLD_NOW);
00064     if (handle_Cg != NULL) break;
00065     fprintf (stderr, "[gml_Loader] %s not loadable\n", path);
00066     ++currentdir;
00067   }
00068   if (handle_Cg == NULL) return 1;
00069   fprintf (stderr, "[gml_Loader] loaded %s\n", path);
00070   
00071   cgCompileProgram_wrapper = (typeof(cgCompileProgram)*) dlsym (handle_Cg, "cgCompileProgram");
00072   if (cgCompileProgram_wrapper == NULL) {
00073     fprintf (stderr, "[gml_Loader] symbol \"cgCompileProgram\" not found\n");
00074     return 1;
00075   }
00076   
00077   cgCreateContext_wrapper = (typeof(cgCreateContext)*) dlsym (handle_Cg, "cgCreateContext");
00078   if (cgCreateContext_wrapper == NULL) {
00079     fprintf (stderr, "[gml_Loader] symbol \"cgCreateContext\" not found\n");
00080     return 1;
00081   }
00082   
00083   cgCreateProgram_wrapper = (typeof(cgCreateProgram)*) dlsym (handle_Cg, "cgCreateProgram");
00084   if (cgCreateProgram_wrapper == NULL) {
00085     fprintf (stderr, "[gml_Loader] symbol \"cgCreateProgram\" not found\n");
00086     return 1;
00087   }
00088   
00089   cgCreateProgramFromFile_wrapper = (typeof(cgCreateProgramFromFile)*) dlsym (handle_Cg, "cgCreateProgramFromFile");
00090   if (cgCreateProgramFromFile_wrapper == NULL) {
00091     fprintf (stderr, "[gml_Loader] symbol \"cgCreateProgramFromFile\" not found\n");
00092     return 1;
00093   }
00094   
00095   cgCreateProgramFromEffect_wrapper = (typeof(cgCreateProgramFromEffect)*) dlsym (handle_Cg, "cgCreateProgramFromEffect");
00096   if (cgCreateProgramFromEffect_wrapper == NULL) {
00097     fprintf (stderr, "[gml_Loader] symbol \"cgCreateProgramFromEffect\" not found\n");
00098     return 1;
00099   }
00100   
00101   cgDestroyParameter_wrapper = (typeof(cgDestroyParameter)*) dlsym (handle_Cg, "cgDestroyParameter");
00102   if (cgDestroyParameter_wrapper == NULL) {
00103     fprintf (stderr, "[gml_Loader] symbol \"cgDestroyParameter\" not found\n");
00104     return 1;
00105   }
00106   
00107   cgDestroyProgram_wrapper = (typeof(cgDestroyProgram)*) dlsym (handle_Cg, "cgDestroyProgram");
00108   if (cgDestroyProgram_wrapper == NULL) {
00109     fprintf (stderr, "[gml_Loader] symbol \"cgDestroyProgram\" not found\n");
00110     return 1;
00111   }
00112   
00113   cgGLBindProgram_wrapper = (typeof(cgGLBindProgram)*) dlsym (handle_Cg, "cgGLBindProgram");
00114   if (cgGLBindProgram_wrapper == NULL) {
00115     fprintf (stderr, "[gml_Loader] symbol \"cgGLBindProgram\" not found\n");
00116     return 1;
00117   }
00118   
00119   cgGLDisableProfile_wrapper = (typeof(cgGLDisableProfile)*) dlsym (handle_Cg, "cgGLDisableProfile");
00120   if (cgGLDisableProfile_wrapper == NULL) {
00121     fprintf (stderr, "[gml_Loader] symbol \"cgGLDisableProfile\" not found\n");
00122     return 1;
00123   }
00124   
00125   cgGLDisableTextureParameter_wrapper = (typeof(cgGLDisableTextureParameter)*) dlsym (handle_Cg, "cgGLDisableTextureParameter");
00126   if (cgGLDisableTextureParameter_wrapper == NULL) {
00127     fprintf (stderr, "[gml_Loader] symbol \"cgGLDisableTextureParameter\" not found\n");
00128     return 1;
00129   }
00130   
00131   cgGLEnableProfile_wrapper = (typeof(cgGLEnableProfile)*) dlsym (handle_Cg, "cgGLEnableProfile");
00132   if (cgGLEnableProfile_wrapper == NULL) {
00133     fprintf (stderr, "[gml_Loader] symbol \"cgGLEnableProfile\" not found\n");
00134     return 1;
00135   }
00136   
00137   cgGLEnableTextureParameter_wrapper = (typeof(cgGLEnableTextureParameter)*) dlsym (handle_Cg, "cgGLEnableTextureParameter");
00138   if (cgGLEnableTextureParameter_wrapper == NULL) {
00139     fprintf (stderr, "[gml_Loader] symbol \"cgGLEnableTextureParameter\" not found\n");
00140     return 1;
00141   }
00142   
00143   cgGLIsProgramLoaded_wrapper = (typeof(cgGLIsProgramLoaded)*) dlsym (handle_Cg, "cgGLIsProgramLoaded");
00144   if (cgGLIsProgramLoaded_wrapper == NULL) {
00145     fprintf (stderr, "[gml_Loader] symbol \"cgGLIsProgramLoaded\" not found\n");
00146     return 1;
00147   }
00148   
00149   cgGLLoadProgram_wrapper = (typeof(cgGLLoadProgram)*) dlsym (handle_Cg, "cgGLLoadProgram");
00150   if (cgGLLoadProgram_wrapper == NULL) {
00151     fprintf (stderr, "[gml_Loader] symbol \"cgGLLoadProgram\" not found\n");
00152     return 1;
00153   }
00154   
00155   cgGLSetParameter1f_wrapper = (typeof(cgGLSetParameter1f)*) dlsym (handle_Cg, "cgGLSetParameter1f");
00156   if (cgGLSetParameter1f_wrapper == NULL) {
00157     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter1f\" not found\n");
00158     return 1;
00159   }
00160   
00161   cgGLSetParameter1fv_wrapper = (typeof(cgGLSetParameter1fv)*) dlsym (handle_Cg, "cgGLSetParameter1fv");
00162   if (cgGLSetParameter1fv_wrapper == NULL) {
00163     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter1fv\" not found\n");
00164     return 1;
00165   }
00166   
00167   cgGLSetParameter2f_wrapper = (typeof(cgGLSetParameter2f)*) dlsym (handle_Cg, "cgGLSetParameter2f");
00168   if (cgGLSetParameter2f_wrapper == NULL) {
00169     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter2f\" not found\n");
00170     return 1;
00171   }
00172   
00173   cgGLSetParameter2fv_wrapper = (typeof(cgGLSetParameter2fv)*) dlsym (handle_Cg, "cgGLSetParameter2fv");
00174   if (cgGLSetParameter2fv_wrapper == NULL) {
00175     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter2fv\" not found\n");
00176     return 1;
00177   }
00178   
00179   cgGLSetParameter3f_wrapper = (typeof(cgGLSetParameter3f)*) dlsym (handle_Cg, "cgGLSetParameter3f");
00180   if (cgGLSetParameter3f_wrapper == NULL) {
00181     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter3f\" not found\n");
00182     return 1;
00183   }
00184   
00185   cgGLSetParameter3fv_wrapper = (typeof(cgGLSetParameter3fv)*) dlsym (handle_Cg, "cgGLSetParameter3fv");
00186   if (cgGLSetParameter3fv_wrapper == NULL) {
00187     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter3fv\" not found\n");
00188     return 1;
00189   }
00190   
00191   cgGLSetParameter4f_wrapper = (typeof(cgGLSetParameter4f)*) dlsym (handle_Cg, "cgGLSetParameter4f");
00192   if (cgGLSetParameter4f_wrapper == NULL) {
00193     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter4f\" not found\n");
00194     return 1;
00195   }
00196   
00197   cgGLSetParameter4fv_wrapper = (typeof(cgGLSetParameter4fv)*) dlsym (handle_Cg, "cgGLSetParameter4fv");
00198   if (cgGLSetParameter4fv_wrapper == NULL) {
00199     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetParameter4fv\" not found\n");
00200     return 1;
00201   }
00202   
00203   cgGLSetTextureParameter_wrapper = (typeof(cgGLSetTextureParameter)*) dlsym (handle_Cg, "cgGLSetTextureParameter");
00204   if (cgGLSetTextureParameter_wrapper == NULL) {
00205     fprintf (stderr, "[gml_Loader] symbol \"cgGLSetTextureParameter\" not found\n");
00206     return 1;
00207   }
00208   
00209   cgGLUnbindProgram_wrapper = (typeof(cgGLUnbindProgram)*) dlsym (handle_Cg, "cgGLUnbindProgram");
00210   if (cgGLUnbindProgram_wrapper == NULL) {
00211     fprintf (stderr, "[gml_Loader] symbol \"cgGLUnbindProgram\" not found\n");
00212     return 1;
00213   }
00214   
00215   cgGetError_wrapper = (typeof(cgGetError)*) dlsym (handle_Cg, "cgGetError");
00216   if (cgGetError_wrapper == NULL) {
00217     fprintf (stderr, "[gml_Loader] symbol \"cgGetError\" not found\n");
00218     return 1;
00219   }
00220   
00221   cgGetErrorString_wrapper = (typeof(cgGetErrorString)*) dlsym (handle_Cg, "cgGetErrorString");
00222   if (cgGetErrorString_wrapper == NULL) {
00223     fprintf (stderr, "[gml_Loader] symbol \"cgGetErrorString\" not found\n");
00224     return 1;
00225   }
00226   
00227   cgGetErrorCallback_wrapper = (typeof(cgGetErrorCallback)*) dlsym (handle_Cg, "cgGetErrorCallback");
00228   if (cgGetErrorCallback_wrapper == NULL) {
00229     fprintf (stderr, "[gml_Loader] symbol \"cgGetErrorCallback\" not found\n");
00230     return 1;
00231   }
00232   
00233   cgGetErrorHandler_wrapper = (typeof(cgGetErrorHandler)*) dlsym (handle_Cg, "cgGetErrorHandler");
00234   if (cgGetErrorHandler_wrapper == NULL) {
00235     fprintf (stderr, "[gml_Loader] symbol \"cgGetErrorHandler\" not found\n");
00236     return 1;
00237   }
00238   
00239   cgGetLastListing_wrapper = (typeof(cgGetLastListing)*) dlsym (handle_Cg, "cgGetLastListing");
00240   if (cgGetLastListing_wrapper == NULL) {
00241     fprintf (stderr, "[gml_Loader] symbol \"cgGetLastListing\" not found\n");
00242     return 1;
00243   }
00244   
00245   cgGetNamedParameter_wrapper = (typeof(cgGetNamedParameter)*) dlsym (handle_Cg, "cgGetNamedParameter");
00246   if (cgGetNamedParameter_wrapper == NULL) {
00247     fprintf (stderr, "[gml_Loader] symbol \"cgGetNamedParameter\" not found\n");
00248     return 1;
00249   }
00250   
00251   cgGetNamedParameterAnnotation_wrapper = (typeof(cgGetNamedParameterAnnotation)*) dlsym (handle_Cg, "cgGetNamedParameterAnnotation");
00252   if (cgGetNamedParameterAnnotation_wrapper == NULL) {
00253     fprintf (stderr, "[gml_Loader] symbol \"cgGetNamedParameterAnnotation\" not found\n");
00254     return 1;
00255   }
00256   
00257   cgIsProgramCompiled_wrapper = (typeof(cgIsProgramCompiled)*) dlsym (handle_Cg, "cgIsProgramCompiled");
00258   if (cgIsProgramCompiled_wrapper == NULL) {
00259     fprintf (stderr, "[gml_Loader] symbol \"cgIsProgramCompiled\" not found\n");
00260     return 1;
00261   }
00262   
00263   cgSetErrorCallback_wrapper = (typeof(cgSetErrorCallback)*) dlsym (handle_Cg, "cgSetErrorCallback");
00264   if (cgSetErrorCallback_wrapper == NULL) {
00265     fprintf (stderr, "[gml_Loader] symbol \"cgSetErrorCallback\" not found\n");
00266     return 1;
00267   }
00268   
00269   
00270   fprintf (stderr, "[gml_Loader] all Cg symbols found\n");
00271   return 0;
00272 }
00273 
00274 #define cgCompileProgram cgCompileProgram_wrapper
00275 #define cgCreateContext cgCreateContext_wrapper
00276 #define cgCreateProgram cgCreateProgram_wrapper
00277 #define cgCreateProgramFromFile cgCreateProgramFromFile_wrapper
00278 #define cgCreateProgramFromEffect cgCreateProgramFromEffect_wrapper
00279 #define cgDestroyParameter cgDestroyParameter_wrapper
00280 #define cgDestroyProgram cgDestroyProgram_wrapper
00281 #define cgGLBindProgram cgGLBindProgram_wrapper
00282 #define cgGLDisableProfile cgGLDisableProfile_wrapper
00283 #define cgGLDisableTextureParameter cgGLDisableTextureParameter_wrapper
00284 #define cgGLEnableProfile cgGLEnableProfile_wrapper
00285 #define cgGLEnableTextureParameter cgGLEnableTextureParameter_wrapper
00286 #define cgGLIsProgramLoaded cgGLIsProgramLoaded_wrapper
00287 #define cgGLLoadProgram cgGLLoadProgram_wrapper
00288 #define cgGLSetParameter1f cgGLSetParameter1f_wrapper
00289 #define cgGLSetParameter1fv cgGLSetParameter1fv_wrapper
00290 #define cgGLSetParameter2f cgGLSetParameter2f_wrapper
00291 #define cgGLSetParameter2fv cgGLSetParameter2fv_wrapper
00292 #define cgGLSetParameter3f cgGLSetParameter3f_wrapper
00293 #define cgGLSetParameter3fv cgGLSetParameter3fv_wrapper
00294 #define cgGLSetParameter4f cgGLSetParameter4f_wrapper
00295 #define cgGLSetParameter4fv cgGLSetParameter4fv_wrapper
00296 #define cgGLSetTextureParameter cgGLSetTextureParameter_wrapper
00297 #define cgGLUnbindProgram cgGLUnbindProgram_wrapper
00298 #define cgGetError cgGetError_wrapper
00299 #define cgGetErrorString cgGetErrorString_wrapper
00300 #define cgGetErrorCallback cgGetErrorCallback_wrapper
00301 #define cgGetErrorHandler cgGetErrorHandler_wrapper
00302 #define cgGetLastListing cgGetLastListing_wrapper
00303 #define cgGetNamedParameter cgGetNamedParameter_wrapper
00304 #define cgGetNamedParameterAnnotation cgGetNamedParameterAnnotation_wrapper
00305 #define cgIsProgramCompiled cgIsProgramCompiled_wrapper
00306 #define cgSetErrorCallback cgSetErrorCallback_wrapper
00307 
00308 
00309 #else /* GML_USE_DYNAMIC_LOADER */
00310 
00311 static
00312 int gml_Loader_Load_Cg ()
00313 {
00314   return 0;
00315 }
00316 
00317 #endif /* GML_USE_DYNAMIC_LOADER */
00318 
Generated on Tue Jun 12 14:03:27 2007 for gml by Doxygen 1.5.2.