Pārlūkot izejas kodu

added glXGetProcAddressARB()

tags/mesa_3_1
Brian Paul pirms 26 gadiem
vecāks
revīzija
7f0b5dd69c
2 mainītis faili ar 42 papildinājumiem un 18 dzēšanām
  1. 39
    14
      src/mesa/drivers/x11/fakeglx.c
  2. 3
    4
      src/mesa/drivers/x11/glxapi.c

+ 39
- 14
src/mesa/drivers/x11/fakeglx.c Parādīt failu

@@ -1,4 +1,4 @@
/* $Id: fakeglx.c,v 1.12.2.2 1999/11/22 22:19:50 brianp Exp $ */
/* $Id: fakeglx.c,v 1.12.2.3 1999/12/10 13:46:10 brianp Exp $ */

/*
* Mesa 3-D graphics library
@@ -1518,37 +1518,62 @@ GLboolean Fake_glXSet3DfxModeMESA( GLint mode )



#if 0
/*GLfunction Fake_glXGetProcAddress( const GLubyte *procName )*/
void (*Fake_glXGetProcAddress( const GLubyte *procName ))()
{
typedef void (*GLfunction)();
typedef void (*gl_function)();
struct proc {
const char *name;
GLfunction address;
gl_function address;
};
static struct proc procTable[] = {
{ "glXGetProcAddressEXT", (GLfunction) glXGetProcAddressEXT },
{ "glXCreateGLXPixmapMESA", (GLfunction) glXCreateGLXPixmapMESA },
{ "glXReleaseBuffersMESA", (GLfunction) glXReleaseBuffersMESA },
{ "glXCopySubBufferMESA", (GLfunction) glXCopySubBufferMESA },
{ "glXSet3DfxModeMESA", (GLfunction) glXSet3DfxModeMESA },
/* NOTE: GLX_SGI_video_sync not implemented in Mesa */
/* GLX 1.0 functions */
{ "glXChooseVisual", (gl_function) glXChooseVisual },
{ "glXCopyContext", (gl_function) glXCopyContext },
{ "glXCreateContext", (gl_function) glXCreateContext },
{ "glXCreateGLXPixmap", (gl_function) glXCreateGLXPixmap },
{ "glXDestroyContext", (gl_function) glXDestroyContext },
{ "glXDestroyGLXPixmap", (gl_function) glXDestroyGLXPixmap },
{ "glXGetConfig", (gl_function) glXGetConfig },
{ "glXGetCurrentContext", (gl_function) glXGetCurrentContext },
{ "glXGetCurrentDrawable", (gl_function) glXGetCurrentDrawable },
{ "glXIsDirect", (gl_function) glXIsDirect },
{ "glXMakeCurrent", (gl_function) glXMakeCurrent },
{ "glXQueryExtension", (gl_function) glXQueryExtension },
{ "glXQueryVersion", (gl_function) glXQueryVersion },
{ "glXSwapBuffers", (gl_function) glXSwapBuffers },
{ "glXUseXFont", (gl_function) glXUseXFont },
{ "glXWaitGL", (gl_function) glXWaitGL },
{ "glXWaitX", (gl_function) glXWaitX },

/* GLX 1.1 functions */
{ "glXGetClientString", (gl_function) glXGetClientString },
{ "glXQueryExtensionsString", (gl_function) glXQueryExtensionsString },
{ "glXQueryServerString", (gl_function) glXQueryServerString },

/* Extensions */
{ "glXGetProcAddressARB", (gl_function) glXGetProcAddressARB },
{ "glXCreateGLXPixmapMESA", (gl_function) glXCreateGLXPixmapMESA },
{ "glXReleaseBuffersMESA", (gl_function) glXReleaseBuffersMESA },
{ "glXCopySubBufferMESA", (gl_function) glXCopySubBufferMESA },
{ "glXSet3DfxModeMESA", (gl_function) glXSet3DfxModeMESA },
{ "glXGetVideoSyncSGI", (gl_function) glXGetVideoSyncSGI },
{ "glXWaitVideoSyncSGI", (gl_function) glXWaitVideoSyncSGI },

{ NULL, NULL } /* end of list token */
};
GLuint i;

/* First, look for core library functions */
GLfunction f = (GLfunction) gl_get_proc_address(procName);
gl_function f = (gl_function) gl_get_proc_address(procName);
if (f)
return f;

/* Second, look for GLX funtion */
for (i = 0; procTable[i].address; i++) {
if (strcmp((const char *) procName, procTable[i].name) == 0)
return (GLfunction) procTable[i].address;
return procTable[i].address;
}

return NULL;
}
#endif

+ 3
- 4
src/mesa/drivers/x11/glxapi.c Parādīt failu

@@ -1,4 +1,4 @@
/* $Id: glxapi.c,v 1.4 1999/10/27 09:50:10 brianp Exp $ */
/* $Id: glxapi.c,v 1.4.2.1 1999/12/10 13:45:39 brianp Exp $ */

/*
* Mesa 3-D graphics library
@@ -419,8 +419,7 @@ GLboolean glXSet3DfxModeMESA( GLint mode )



#if 0 /* spec for this not finalized yet */
void (*glXGetProcAddressEXT( const GLubyte *procName ))()
void (*glXGetProcAddressARB( const GLubyte *procName ))()
{
#ifdef REALGLX
return NULL;
@@ -428,4 +427,4 @@ void (*glXGetProcAddressEXT( const GLubyte *procName ))()
return Fake_glXGetProcAddress( procName );
#endif
}
#endif

Notiek ielāde…
Atcelt
Saglabāt