diff options
author | Ian Romanick <[email protected]> | 2015-11-09 19:02:21 -0800 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2016-01-11 15:38:03 -0800 |
commit | adb4b31bc33fda284319819877312f9e8631b657 (patch) | |
tree | 78dd201091bad4e995760d04d665597960d102f1 /src/mesa/main | |
parent | 4cf5c85ec70abb736e9c135e77c221b177d85d12 (diff) |
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 <[email protected]>
Reviewed-by: Jason Ekstrand <[email protected]>
Diffstat (limited to 'src/mesa/main')
-rw-r--r-- | src/mesa/main/samplerobj.c | 18 | ||||
-rw-r--r-- | 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 |