From adb4b31bc33fda284319819877312f9e8631b657 Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Mon, 9 Nov 2015 19:02:21 -0800 Subject: [PATCH] mesa: Refator _mesa_BindSampler to make _mesa_bind_sampler Pulls the parts of _mesa_BindSampler that aren't just parameter validation out into a function that can be called from other parts of Mesa (e.g., meta). Signed-off-by: Ian Romanick Reviewed-by: Jason Ekstrand --- src/mesa/main/samplerobj.c | 18 ++++++++++++------ src/mesa/main/samplerobj.h | 4 ++++ 2 files changed, 16 insertions(+), 6 deletions(-) diff --git a/src/mesa/main/samplerobj.c b/src/mesa/main/samplerobj.c index 62078f8ad05..fe15508696e 100644 --- a/src/mesa/main/samplerobj.c +++ b/src/mesa/main/samplerobj.c @@ -270,6 +270,17 @@ _mesa_IsSampler(GLuint sampler) return sampObj != NULL; } +void +_mesa_bind_sampler(struct gl_context *ctx, GLuint unit, + struct gl_sampler_object *sampObj) +{ + if (ctx->Texture.Unit[unit].Sampler != sampObj) { + FLUSH_VERTICES(ctx, _NEW_TEXTURE); + } + + _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[unit].Sampler, + sampObj); +} void GLAPIENTRY _mesa_BindSampler(GLuint unit, GLuint sampler) @@ -297,13 +308,8 @@ _mesa_BindSampler(GLuint unit, GLuint sampler) } } - if (ctx->Texture.Unit[unit].Sampler != sampObj) { - FLUSH_VERTICES(ctx, _NEW_TEXTURE); - } - /* bind new sampler */ - _mesa_reference_sampler_object(ctx, &ctx->Texture.Unit[unit].Sampler, - sampObj); + _mesa_bind_sampler(ctx, unit, sampObj); } diff --git a/src/mesa/main/samplerobj.h b/src/mesa/main/samplerobj.h index 68a924ce931..abc6e019046 100644 --- a/src/mesa/main/samplerobj.h +++ b/src/mesa/main/samplerobj.h @@ -93,6 +93,10 @@ extern void _mesa_set_sampler_srgb_decode(struct gl_context *ctx, struct gl_sampler_object *samp, GLenum param); +extern void +_mesa_bind_sampler(struct gl_context *ctx, GLuint unit, + struct gl_sampler_object *sampObj); + void GLAPIENTRY _mesa_GenSamplers(GLsizei count, GLuint *samplers); void GLAPIENTRY -- 2.30.2