Mercurial > sdl-ios-xcode
diff src/video/ataricommon/SDL_atarigl_c.h @ 991:12b13601a544
Final touches to OSMesa OpenGL support on Atari, using loadable libraries. Hope SDL 1.2.8 is out soon.
author | Patrice Mandin <patmandin@gmail.com> |
---|---|
date | Fri, 26 Nov 2004 16:16:50 +0000 |
parents | 475166d13b44 |
children | 0324ce32b2d9 |
line wrap: on
line diff
--- a/src/video/ataricommon/SDL_atarigl_c.h Fri Nov 26 16:13:24 2004 +0000 +++ b/src/video/ataricommon/SDL_atarigl_c.h Fri Nov 26 16:16:50 2004 +0000 @@ -33,25 +33,49 @@ #define _THIS SDL_VideoDevice *this struct SDL_PrivateGLData { - /* to stop switching drivers while we have a valid context */ - int gl_active; + + int gl_active; /* to stop switching drivers while we have a valid context */ + + int gl_oldmesa; /* Old OpenGL support ? */ + + int gl_pixelsize; /* for CopyShadow functions */ + + Uint8 *gl_shadow; /* Shadow buffer for old implementations */ /* for unsupported OSMesa buffer formats */ - void (*ConvertSurface)(SDL_Surface *surface); + void (*ConvertSurface)(_THIS, SDL_Surface *surface); + + /* to convert the shadow buffer to the screen format */ + void (*CopyShadow)(_THIS, SDL_Surface *surface); + + OSMesaContext ctx; -#ifdef HAVE_OPENGL - OSMesaContext ctx; -#endif + /* osmesa.ldg */ + OSMesaContext (*OSMesaCreateContextExt)( GLenum format, GLint depthBits, GLint stencilBits, GLint accumBits, OSMesaContext sharelist); + void (*OSMesaDestroyContext)( OSMesaContext ctx ); + GLboolean (*OSMesaMakeCurrent)( OSMesaContext ctx, void *buffer, GLenum type, GLsizei width, GLsizei height ); + void (*OSMesaPixelStore)( GLint pname, GLint value ); + void * (*OSMesaGetProcAddress)( const char *funcName ); + void (*glGetIntegerv)( GLenum pname, GLint *value ); + + /* mesa_gl.ldg, tiny_gl.ldg */ + void *(*OSMesaCreateLDG)( long format, long type, long width, long height ); + void (*OSMesaDestroyLDG)(void); }; -/* Old variable names */ +/* Variable names */ #define gl_active (this->gl_data->gl_active) #define gl_ctx (this->gl_data->ctx) +#define gl_oldmesa (this->gl_data->gl_oldmesa) +#define gl_pixelsize (this->gl_data->gl_pixelsize) +#define gl_shadow (this->gl_data->gl_shadow) #define gl_convert (this->gl_data->ConvertSurface) +#define gl_copyshadow (this->gl_data->CopyShadow) /* OpenGL functions */ extern int SDL_AtariGL_Init(_THIS, SDL_Surface *current); extern void SDL_AtariGL_Quit(_THIS); +extern void SDL_AtariGL_InitPointers(_THIS); extern int SDL_AtariGL_LoadLibrary(_THIS, const char *path); extern void *SDL_AtariGL_GetProcAddress(_THIS, const char *proc);