<param name="texture" type="GLuint" />
</function>
+ <function name="EnableClientStateIndexedEXT" alias="EnableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
+
+ <function name="DisableClientStateIndexedEXT" alias="DisableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
+
<!-- OpenGL 1.3 -->
<function name="MatrixLoadTransposefEXT" offset="assign">
<param name="pname" type="GLenum" />
<param name="params" type="GLint *" />
</function>
+
+ <function name="EnableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
+
+ <function name="DisableClientStateiEXT">
+ <param name="array" type="GLenum" />
+ <param name="index" type="GLuint" />
+ </function>
</category>
</OpenGLAPI>
"NamedFramebufferTexture3DEXT": 1478,
"NamedFramebufferRenderbufferEXT": 1479,
"GetNamedFramebufferAttachmentParameterivEXT": 1480,
+ "EnableClientStateiEXT": 1481,
+ "DisableClientStateiEXT": 1482,
}
}
+/* Helper for GL_EXT_direct_state_access following functions:
+ * - EnableClientStateIndexedEXT
+ * - EnableClientStateiEXT
+ * - DisableClientStateIndexedEXT
+ * - DisableClientStateiEXT
+ */
+static void
+client_state_i(struct gl_context *ctx, GLenum cap, GLuint index, GLboolean state)
+{
+ int saved_active;
+
+ if (cap != GL_TEXTURE_COORD_ARRAY) {
+ _mesa_error(ctx, GL_INVALID_ENUM, "gl%sClientStateiEXT(cap=%s)",
+ state ? "Enable" : "Disable",
+ _mesa_enum_to_string(cap));
+ return;
+ }
+
+ if (index >= ctx->Const.MaxTextureCoordUnits) {
+ _mesa_error(ctx, GL_INVALID_VALUE, "gl%sClientStateiEXT(index=%d)",
+ state ? "Enable" : "Disable",
+ index);
+ return;
+ }
+
+ saved_active = ctx->Array.ActiveTexture;
+ _mesa_ClientActiveTexture(GL_TEXTURE0 + index);
+ client_state(ctx, cap, state);
+ _mesa_ClientActiveTexture(GL_TEXTURE0 + saved_active);
+}
+
+
/**
* Enable GL capability.
* \param cap state to enable/disable.
}
+void GLAPIENTRY
+_mesa_EnableClientStateiEXT( GLenum cap, GLuint index )
+{
+ GET_CURRENT_CONTEXT(ctx);
+ client_state_i(ctx, cap, index, GL_TRUE);
+}
+
+
/**
* Disable GL capability.
* \param cap state to enable/disable.
client_state( ctx, cap, GL_FALSE );
}
+void GLAPIENTRY
+_mesa_DisableClientStateiEXT( GLenum cap, GLuint index )
+{
+ GET_CURRENT_CONTEXT(ctx);
+ client_state_i(ctx, cap, index, GL_FALSE);
+}
#define CHECK_EXTENSION(EXTNAME) \
if (!ctx->Extensions.EXTNAME) { \
extern void GLAPIENTRY
_mesa_EnableClientState( GLenum cap );
+extern void GLAPIENTRY
+_mesa_EnableClientStateiEXT( GLenum cap, GLuint index );
+
extern void GLAPIENTRY
_mesa_DisableClientState( GLenum cap );
+extern void GLAPIENTRY
+_mesa_DisableClientStateiEXT( GLenum cap, GLuint index );
+
extern void
_mesa_set_multisample(struct gl_context *ctx, GLboolean state);
//{ "glMultiTexImage3DEXT", 12, -1 },
//{ "glMultiTexSubImage3DEXT", 12, -1 },
//{ "glCopyMultiTexSubImage3DEXT", 12, -1 },
- //{ "glEnableClientStateIndexedEXT", 12, -1 },
- //{ "glDisableClientStateIndexedEXT", 12, -1 },
+ { "glEnableClientStateIndexedEXT", 12, -1 },
+ { "glDisableClientStateIndexedEXT", 12, -1 },
//{ "glGetPointerIndexedvEXT", 12, -1 },
/* GL_EXT_direct_state_access - ARB_vertex_program */
//{ "glNamedProgramStringEXT", 10, -1 },