X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;ds=sidebyside;f=src%2Fmesa%2Fmain%2Fshaderapi.h;h=0ffebdb075f512c6fce393401dd8875fe63862d9;hb=9d36c96d6ec9f2c05c8e0b9ef18c5462cddee8c1;hp=b55d7ca8b25d793db3fe4b26c227f66016b15bc3;hpb=f9995b30756140724f41daf963fa06167912be7f;p=mesa.git diff --git a/src/mesa/main/shaderapi.h b/src/mesa/main/shaderapi.h index b55d7ca8b25..0ffebdb075f 100644 --- a/src/mesa/main/shaderapi.h +++ b/src/mesa/main/shaderapi.h @@ -28,9 +28,17 @@ #include "glheader.h" -#include "mtypes.h" +#ifdef __cplusplus +extern "C" { +#endif + + +struct _glapi_table; +struct gl_context; +struct gl_shader_program; + extern GLint _mesa_sizeof_glsl_type(GLenum type); @@ -39,13 +47,20 @@ _mesa_copy_string(GLchar *dst, GLsizei maxLength, GLsizei *length, const GLchar *src); extern void -_mesa_use_program(struct gl_context *ctx, GLuint program); +_mesa_use_program(struct gl_context *ctx, struct gl_shader_program *shProg); +extern void +_mesa_active_program(struct gl_context *ctx, struct gl_shader_program *shProg, + const char *caller); extern void _mesa_init_shader_dispatch(struct _glapi_table *exec); +extern unsigned +_mesa_count_active_attribs(struct gl_shader_program *shProg); +extern size_t +_mesa_longest_attribute_name_length(struct gl_shader_program *shProg); extern void GLAPIENTRY _mesa_AttachObjectARB(GLhandleARB, GLhandleARB); @@ -68,6 +83,9 @@ _mesa_DetachObjectARB(GLhandleARB, GLhandleARB); extern void GLAPIENTRY _mesa_GetAttachedObjectsARB(GLhandleARB, GLsizei, GLsizei *, GLhandleARB *); +extern GLint GLAPIENTRY +_mesa_GetFragDataLocation(GLuint program, const GLchar *name); + extern GLhandleARB GLAPIENTRY _mesa_GetHandleARB(GLenum pname); @@ -105,6 +123,10 @@ _mesa_ValidateProgramARB(GLhandleARB); extern void GLAPIENTRY _mesa_BindAttribLocationARB(GLhandleARB, GLuint, const GLcharARB *); +extern void GLAPIENTRY +_mesa_BindFragDataLocation(GLuint program, GLuint colorNumber, + const GLchar *name); + extern void GLAPIENTRY _mesa_GetActiveAttribARB(GLhandleARB, GLuint, GLsizei, GLsizei *, GLint *, GLenum *, GLcharARB *); @@ -165,5 +187,22 @@ _mesa_ShaderBinary(GLint n, const GLuint *shaders, GLenum binaryformat, extern void GLAPIENTRY _mesa_ProgramParameteriARB(GLuint program, GLenum pname, GLint value); +void +_mesa_use_shader_program(struct gl_context *ctx, GLenum type, + struct gl_shader_program *shProg); + +extern void GLAPIENTRY +_mesa_UseShaderProgramEXT(GLenum type, GLuint program); + +extern void GLAPIENTRY +_mesa_ActiveProgramEXT(GLuint program); + +extern GLuint GLAPIENTRY +_mesa_CreateShaderProgramEXT(GLenum type, const GLchar *string); + + +#ifdef __cplusplus +} +#endif #endif /* SHADERAPI_H */