diff options
Diffstat (limited to 'src/mesa/main/dd.h')
-rw-r--r-- | src/mesa/main/dd.h | 135 |
1 files changed, 73 insertions, 62 deletions
diff --git a/src/mesa/main/dd.h b/src/mesa/main/dd.h index e14ae7f1a68..e9826abd6d2 100644 --- a/src/mesa/main/dd.h +++ b/src/mesa/main/dd.h @@ -480,6 +480,17 @@ struct dd_function_table { GLsizei imageSize, const GLvoid *data, struct gl_texture_object *texObj, struct gl_texture_image *texImage); + /** + * Called to validate a certain compressed format. + */ + GLboolean (*IsCompressedFormat)( GLcontext *ctx, GLenum internalFormat ); + /** + * Called to get bytes of storage needed for the given texture size and + * compressed format. + */ + GLuint (*CompressedTextureSize)( GLcontext *ctx, + GLsizei width, GLsizei height, GLsizei depth, + GLenum format ); /*@}*/ /** @@ -905,76 +916,76 @@ typedef struct { * \name Vertex */ /*@{*/ - void (*ArrayElement)( GLint ); /* NOTE */ - void (*Color3f)( GLfloat, GLfloat, GLfloat ); - void (*Color3fv)( const GLfloat * ); - void (*Color4f)( GLfloat, GLfloat, GLfloat, GLfloat ); - void (*Color4fv)( const GLfloat * ); - void (*EdgeFlag)( GLboolean ); - void (*EdgeFlagv)( const GLboolean * ); - void (*EvalCoord1f)( GLfloat ); /* NOTE */ - void (*EvalCoord1fv)( const GLfloat * ); /* NOTE */ - void (*EvalCoord2f)( GLfloat, GLfloat ); /* NOTE */ - void (*EvalCoord2fv)( const GLfloat * ); /* NOTE */ - void (*EvalPoint1)( GLint ); /* NOTE */ - void (*EvalPoint2)( GLint, GLint ); /* NOTE */ - void (*FogCoordfEXT)( GLfloat ); - void (*FogCoordfvEXT)( const GLfloat * ); - void (*Indexf)( GLfloat ); - void (*Indexfv)( const GLfloat * ); - void (*Materialfv)( GLenum face, GLenum pname, const GLfloat * ); /* NOTE */ - void (*MultiTexCoord1fARB)( GLenum, GLfloat ); - void (*MultiTexCoord1fvARB)( GLenum, const GLfloat * ); - void (*MultiTexCoord2fARB)( GLenum, GLfloat, GLfloat ); - void (*MultiTexCoord2fvARB)( GLenum, const GLfloat * ); - void (*MultiTexCoord3fARB)( GLenum, GLfloat, GLfloat, GLfloat ); - void (*MultiTexCoord3fvARB)( GLenum, const GLfloat * ); - void (*MultiTexCoord4fARB)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ); - void (*MultiTexCoord4fvARB)( GLenum, const GLfloat * ); - void (*Normal3f)( GLfloat, GLfloat, GLfloat ); - void (*Normal3fv)( const GLfloat * ); - void (*SecondaryColor3fEXT)( GLfloat, GLfloat, GLfloat ); - void (*SecondaryColor3fvEXT)( const GLfloat * ); - void (*TexCoord1f)( GLfloat ); - void (*TexCoord1fv)( const GLfloat * ); - void (*TexCoord2f)( GLfloat, GLfloat ); - void (*TexCoord2fv)( const GLfloat * ); - void (*TexCoord3f)( GLfloat, GLfloat, GLfloat ); - void (*TexCoord3fv)( const GLfloat * ); - void (*TexCoord4f)( GLfloat, GLfloat, GLfloat, GLfloat ); - void (*TexCoord4fv)( const GLfloat * ); - void (*Vertex2f)( GLfloat, GLfloat ); - void (*Vertex2fv)( const GLfloat * ); - void (*Vertex3f)( GLfloat, GLfloat, GLfloat ); - void (*Vertex3fv)( const GLfloat * ); - void (*Vertex4f)( GLfloat, GLfloat, GLfloat, GLfloat ); - void (*Vertex4fv)( const GLfloat * ); - void (*CallList)( GLuint ); /* NOTE */ - void (*CallLists)( GLsizei, GLenum, const GLvoid * ); /* NOTE */ - void (*Begin)( GLenum ); - void (*End)( void ); - void (*VertexAttrib1fNV)( GLuint index, GLfloat x ); - void (*VertexAttrib1fvNV)( GLuint index, const GLfloat *v ); - void (*VertexAttrib2fNV)( GLuint index, GLfloat x, GLfloat y ); - void (*VertexAttrib2fvNV)( GLuint index, const GLfloat *v ); - void (*VertexAttrib3fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z ); - void (*VertexAttrib3fvNV)( GLuint index, const GLfloat *v ); - void (*VertexAttrib4fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ); - void (*VertexAttrib4fvNV)( GLuint index, const GLfloat *v ); + void (GLAPIENTRYP ArrayElement)( GLint ); /* NOTE */ + void (GLAPIENTRYP Color3f)( GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Color3fv)( const GLfloat * ); + void (GLAPIENTRYP Color4f)( GLfloat, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Color4fv)( const GLfloat * ); + void (GLAPIENTRYP EdgeFlag)( GLboolean ); + void (GLAPIENTRYP EdgeFlagv)( const GLboolean * ); + void (GLAPIENTRYP EvalCoord1f)( GLfloat ); /* NOTE */ + void (GLAPIENTRYP EvalCoord1fv)( const GLfloat * ); /* NOTE */ + void (GLAPIENTRYP EvalCoord2f)( GLfloat, GLfloat ); /* NOTE */ + void (GLAPIENTRYP EvalCoord2fv)( const GLfloat * ); /* NOTE */ + void (GLAPIENTRYP EvalPoint1)( GLint ); /* NOTE */ + void (GLAPIENTRYP EvalPoint2)( GLint, GLint ); /* NOTE */ + void (GLAPIENTRYP FogCoordfEXT)( GLfloat ); + void (GLAPIENTRYP FogCoordfvEXT)( const GLfloat * ); + void (GLAPIENTRYP Indexf)( GLfloat ); + void (GLAPIENTRYP Indexfv)( const GLfloat * ); + void (GLAPIENTRYP Materialfv)( GLenum face, GLenum pname, const GLfloat * ); /* NOTE */ + void (GLAPIENTRYP MultiTexCoord1fARB)( GLenum, GLfloat ); + void (GLAPIENTRYP MultiTexCoord1fvARB)( GLenum, const GLfloat * ); + void (GLAPIENTRYP MultiTexCoord2fARB)( GLenum, GLfloat, GLfloat ); + void (GLAPIENTRYP MultiTexCoord2fvARB)( GLenum, const GLfloat * ); + void (GLAPIENTRYP MultiTexCoord3fARB)( GLenum, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP MultiTexCoord3fvARB)( GLenum, const GLfloat * ); + void (GLAPIENTRYP MultiTexCoord4fARB)( GLenum, GLfloat, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP MultiTexCoord4fvARB)( GLenum, const GLfloat * ); + void (GLAPIENTRYP Normal3f)( GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Normal3fv)( const GLfloat * ); + void (GLAPIENTRYP SecondaryColor3fEXT)( GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP SecondaryColor3fvEXT)( const GLfloat * ); + void (GLAPIENTRYP TexCoord1f)( GLfloat ); + void (GLAPIENTRYP TexCoord1fv)( const GLfloat * ); + void (GLAPIENTRYP TexCoord2f)( GLfloat, GLfloat ); + void (GLAPIENTRYP TexCoord2fv)( const GLfloat * ); + void (GLAPIENTRYP TexCoord3f)( GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP TexCoord3fv)( const GLfloat * ); + void (GLAPIENTRYP TexCoord4f)( GLfloat, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP TexCoord4fv)( const GLfloat * ); + void (GLAPIENTRYP Vertex2f)( GLfloat, GLfloat ); + void (GLAPIENTRYP Vertex2fv)( const GLfloat * ); + void (GLAPIENTRYP Vertex3f)( GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Vertex3fv)( const GLfloat * ); + void (GLAPIENTRYP Vertex4f)( GLfloat, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Vertex4fv)( const GLfloat * ); + void (GLAPIENTRYP CallList)( GLuint ); /* NOTE */ + void (GLAPIENTRYP CallLists)( GLsizei, GLenum, const GLvoid * ); /* NOTE */ + void (GLAPIENTRYP Begin)( GLenum ); + void (GLAPIENTRYP End)( void ); + void (GLAPIENTRYP VertexAttrib1fNV)( GLuint index, GLfloat x ); + void (GLAPIENTRYP VertexAttrib1fvNV)( GLuint index, const GLfloat *v ); + void (GLAPIENTRYP VertexAttrib2fNV)( GLuint index, GLfloat x, GLfloat y ); + void (GLAPIENTRYP VertexAttrib2fvNV)( GLuint index, const GLfloat *v ); + void (GLAPIENTRYP VertexAttrib3fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z ); + void (GLAPIENTRYP VertexAttrib3fvNV)( GLuint index, const GLfloat *v ); + void (GLAPIENTRYP VertexAttrib4fNV)( GLuint index, GLfloat x, GLfloat y, GLfloat z, GLfloat w ); + void (GLAPIENTRYP VertexAttrib4fvNV)( GLuint index, const GLfloat *v ); /*@}*/ /* */ - void (*Rectf)( GLfloat, GLfloat, GLfloat, GLfloat ); + void (GLAPIENTRYP Rectf)( GLfloat, GLfloat, GLfloat, GLfloat ); /** * \name Array */ /*@{*/ - void (*DrawArrays)( GLenum mode, GLint start, GLsizei count ); - void (*DrawElements)( GLenum mode, GLsizei count, GLenum type, + void (GLAPIENTRYP DrawArrays)( GLenum mode, GLint start, GLsizei count ); + void (GLAPIENTRYP DrawElements)( GLenum mode, GLsizei count, GLenum type, const GLvoid *indices ); - void (*DrawRangeElements)( GLenum mode, GLuint start, + void (GLAPIENTRYP DrawRangeElements)( GLenum mode, GLuint start, GLuint end, GLsizei count, GLenum type, const GLvoid *indices ); /*@}*/ @@ -990,8 +1001,8 @@ typedef struct { * accelerated vertex formats, eventually... */ /*@{*/ - void (*EvalMesh1)( GLenum mode, GLint i1, GLint i2 ); - void (*EvalMesh2)( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); + void (GLAPIENTRYP EvalMesh1)( GLenum mode, GLint i1, GLint i2 ); + void (GLAPIENTRYP EvalMesh2)( GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2 ); /*@}*/ } GLvertexformat; |