Drop GLcontext typedef and use struct gl_context instead
[mesa.git] / src / mesa / main / transformfeedback.h
index e89cc4147369d579b4d7cce1bb2ab98a9b6d3c0b..752cd4e201f012e773a21ca37a93d26a42488bc5 100644 (file)
 #ifndef TRANSFORM_FEEDBACK_H
 #define TRANSFORM_FEEDBACK_H
 
-#include "glheader.h"
+#include "main/mtypes.h"
 
 
+extern void
+_mesa_init_transform_feedback(struct gl_context *ctx);
+
+extern void
+_mesa_free_transform_feedback(struct gl_context *ctx);
+
+#if FEATURE_EXT_transform_feedback
+
 extern GLboolean
-_mesa_validate_primitive_mode(GLcontext *ctx, GLenum mode);
+_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode);
 
 extern GLboolean
-_mesa_validate_transform_feedback_buffers(GLcontext *ctx);
+_mesa_validate_transform_feedback_buffers(struct gl_context *ctx);
+
 
 extern void
-_mesa_init_transform_feedback(GLcontext *ctx);
+_mesa_init_transform_feedback_functions(struct dd_function_table *driver);
 
 extern void
-_mesa_free_transform_feedback(GLcontext *ctx);
+_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp);
+
 
+/*** GL_EXT_transform_feedback ***/
 
 extern void GLAPIENTRY
 _mesa_BeginTransformFeedback(GLenum mode);
@@ -68,4 +79,54 @@ _mesa_GetTransformFeedbackVarying(GLuint program, GLuint index,
                                   GLsizei *size, GLenum *type, GLchar *name);
 
 
+
+/*** GL_ARB_transform_feedback2 ***/
+
+extern void GLAPIENTRY
+_mesa_GenTransformFeedbacks(GLsizei n, GLuint *names);
+
+extern GLboolean GLAPIENTRY
+_mesa_IsTransformFeedback(GLuint name);
+
+extern void GLAPIENTRY
+_mesa_BindTransformFeedback(GLenum target, GLuint name);
+
+extern void GLAPIENTRY
+_mesa_DeleteTransformFeedbacks(GLsizei n, const GLuint *names);
+
+extern void GLAPIENTRY
+_mesa_PauseTransformFeedback(void);
+
+extern void GLAPIENTRY
+_mesa_ResumeTransformFeedback(void);
+
+extern void GLAPIENTRY
+_mesa_DrawTransformFeedback(GLenum mode, GLuint name);
+
+#else /* FEATURE_EXT_transform_feedback */
+
+static INLINE GLboolean
+_mesa_validate_primitive_mode(struct gl_context *ctx, GLenum mode)
+{
+   return GL_TRUE;
+}
+
+static INLINE GLboolean
+_mesa_validate_transform_feedback_buffers(struct gl_context *ctx)
+{
+   return GL_TRUE;
+}
+
+static INLINE void
+_mesa_init_transform_feedback_functions(struct dd_function_table *driver)
+{
+}
+
+static INLINE void
+_mesa_init_transform_feedback_dispatch(struct _glapi_table *disp)
+{
+}
+
+#endif /* FEATURE_EXT_transform_feedback */
+
 #endif /* TRANSFORM_FEEDBACK_H */