X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fmain%2Fshaderimage.h;h=6a9e3d67e92459407edab8edf8417fb23b7b7187;hb=9d670fd86cc13df0ddff5c6fcb0835926e9a8088;hp=94ee814a71627c3d092ed433dcdce719198a947f;hpb=7e441bf025cf8c5d088430d546acb4c0ed58d27b;p=mesa.git diff --git a/src/mesa/main/shaderimage.h b/src/mesa/main/shaderimage.h index 94ee814a716..6a9e3d67e92 100644 --- a/src/mesa/main/shaderimage.h +++ b/src/mesa/main/shaderimage.h @@ -42,6 +42,20 @@ struct gl_context; mesa_format _mesa_get_shader_image_format(GLenum format); +/** + * Get the GL image format class for a shader image format GL enum + */ +GLenum +_mesa_get_image_format_class(GLenum format); + +/** + * Return whether an image format should be supported based on the current API + * version of the context. + */ +bool +_mesa_is_shader_image_format_supported(const struct gl_context *ctx, + GLenum format); + /** * Get a single image unit struct with the default state. */ @@ -60,24 +74,27 @@ _mesa_init_image_units(struct gl_context *ctx); * should return zero and stores should have no effect. * * The result depends on context state other than the passed image unit, part - * of the _NEW_TEXTURE set. + * of the _NEW_TEXTURE_OBJECT set. */ GLboolean _mesa_is_image_unit_valid(struct gl_context *ctx, struct gl_image_unit *u); +void GLAPIENTRY +_mesa_BindImageTexture_no_error(GLuint unit, GLuint texture, GLint level, + GLboolean layered, GLint layer, GLenum access, + GLenum format); + void GLAPIENTRY _mesa_BindImageTexture(GLuint unit, GLuint texture, GLint level, GLboolean layered, GLint layer, GLenum access, GLenum format); void GLAPIENTRY -_mesa_BindImageTextures(GLuint first, GLsizei count, const GLuint *textures); - -void GLAPIENTRY -_mesa_MemoryBarrier(GLbitfield barriers); +_mesa_BindImageTextures_no_error(GLuint first, GLsizei count, + const GLuint *textures); void GLAPIENTRY -_mesa_MemoryBarrierByRegion(GLbitfield barriers); +_mesa_BindImageTextures(GLuint first, GLsizei count, const GLuint *textures); #ifdef __cplusplus }