summaryrefslogtreecommitdiffstats
path: root/libvo/gl_common.h
diff options
context:
space:
mode:
authorreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-12-08 23:32:51 +0000
committerreimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2>2009-12-08 23:32:51 +0000
commite64d47925a7100a8a986251265180b1f1a1a8c9c (patch)
tree4cd633e6c4b830c0847d582f981634e5f871c533 /libvo/gl_common.h
parent2661039adac72207ee510fc98927a7cdac018254 (diff)
downloadmpv-e64d47925a7100a8a986251265180b1f1a1a8c9c.tar.bz2
mpv-e64d47925a7100a8a986251265180b1f1a1a8c9c.tar.xz
Pass all OpenGL functions through a function pointer indirection.
This still needs more work, but should allow supporting e.g. GLX-OpenGL and Win32-OpenGL with a single binary. git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@29981 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo/gl_common.h')
-rw-r--r--libvo/gl_common.h41
1 files changed, 41 insertions, 0 deletions
diff --git a/libvo/gl_common.h b/libvo/gl_common.h
index 53805f1299..e6a0ba1208 100644
--- a/libvo/gl_common.h
+++ b/libvo/gl_common.h
@@ -387,6 +387,47 @@ typedef struct MPGLContext {
int init_mpglcontext(MPGLContext *ctx, enum MPGLType type);
void uninit_mpglcontext(MPGLContext *ctx);
+extern void (APIENTRY *Begin)(GLenum);
+extern void (APIENTRY *End)(void);
+extern void (APIENTRY *Viewport)(GLint, GLint, GLsizei, GLsizei);
+extern void (APIENTRY *MatrixMode)(GLenum);
+extern void (APIENTRY *LoadIdentity)(void);
+extern void (APIENTRY *Scaled)(double, double, double);
+extern void (APIENTRY *Ortho)(double, double, double, double, double, double);
+extern void (APIENTRY *PushMatrix)(void);
+extern void (APIENTRY *PopMatrix)(void);
+extern void (APIENTRY *Clear)(GLbitfield);
+extern GLuint (APIENTRY *GenLists)(GLsizei);
+extern void (APIENTRY *DeleteLists)(GLuint, GLsizei);
+extern void (APIENTRY *NewList)(GLuint, GLenum);
+extern void (APIENTRY *EndList)(void);
+extern void (APIENTRY *CallList)(GLuint);
+extern void (APIENTRY *CallLists)(GLsizei, GLenum, const GLvoid *);
+extern void (APIENTRY *GenTextures)(GLsizei, GLuint *);
+extern void (APIENTRY *DeleteTextures)(GLsizei, const GLuint *);
+extern void (APIENTRY *TexEnvi)(GLenum, GLenum, GLint);
+extern void (APIENTRY *Color4ub)(GLubyte, GLubyte, GLubyte, GLubyte);
+extern void (APIENTRY *Color3f)(GLfloat, GLfloat, GLfloat);
+extern void (APIENTRY *ClearColor)(GLclampf, GLclampf, GLclampf, GLclampf);
+extern void (APIENTRY *Enable)(GLenum);
+extern void (APIENTRY *Disable)(GLenum);
+extern const GLubyte *(APIENTRY *GetString)(GLenum);
+extern void (APIENTRY *DrawBuffer)(GLenum);
+extern void (APIENTRY *DepthMask)(GLboolean);
+extern void (APIENTRY *BlendFunc)(GLenum, GLenum);
+extern void (APIENTRY *Flush)(void);
+extern void (APIENTRY *Finish)(void);
+extern void (APIENTRY *PixelStorei)(GLenum, GLint);
+extern void (APIENTRY *TexImage1D)(GLenum, GLint, GLint, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
+extern void (APIENTRY *TexImage2D)(GLenum, GLint, GLint, GLsizei, GLsizei, GLint, GLenum, GLenum, const GLvoid *);
+extern void (APIENTRY *TexSubImage2D)(GLenum, GLint, GLint, GLint, GLsizei, GLsizei, GLenum, GLenum, const GLvoid *);
+extern void (APIENTRY *TexParameteri)(GLenum, GLenum, GLint);
+extern void (APIENTRY *TexParameterf)(GLenum, GLenum, GLfloat);
+extern void (APIENTRY *TexParameterfv)(GLenum, GLenum, const GLfloat *);
+extern void (APIENTRY *TexCoord2f)(GLfloat, GLfloat);
+extern void (APIENTRY *Vertex2f)(GLfloat, GLfloat);
+extern void (APIENTRY *GetIntegerv)(GLenum, GLint *);
+
extern void (APIENTRY *GenBuffers)(GLsizei, GLuint *);
extern void (APIENTRY *DeleteBuffers)(GLsizei, const GLuint *);
extern void (APIENTRY *BindBuffer)(GLenum, GLuint);