mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 18:18:06 +02:00
make the api consistent (all set functions return pipe_error status)
This commit is contained in:
parent
0879237725
commit
ed187d39a6
2 changed files with 35 additions and 30 deletions
|
|
@ -303,9 +303,9 @@ void cso_restore_samplers(struct cso_context *ctx)
|
|||
}
|
||||
|
||||
|
||||
void cso_set_sampler_textures( struct cso_context *ctx,
|
||||
uint count,
|
||||
struct pipe_texture **textures )
|
||||
enum pipe_error cso_set_sampler_textures( struct cso_context *ctx,
|
||||
uint count,
|
||||
struct pipe_texture **textures )
|
||||
{
|
||||
uint i;
|
||||
|
||||
|
|
@ -317,6 +317,8 @@ void cso_set_sampler_textures( struct cso_context *ctx,
|
|||
pipe_texture_reference(&ctx->textures[i], NULL);
|
||||
|
||||
ctx->pipe->set_sampler_textures(ctx->pipe, count, textures);
|
||||
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
||||
void cso_save_sampler_textures( struct cso_context *ctx )
|
||||
|
|
@ -462,13 +464,14 @@ void cso_restore_rasterizer(struct cso_context *ctx)
|
|||
ctx->rasterizer_saved = NULL;
|
||||
}
|
||||
|
||||
void cso_set_fragment_shader_handle(struct cso_context *ctx,
|
||||
void *handle )
|
||||
enum pipe_error cso_set_fragment_shader_handle(struct cso_context *ctx,
|
||||
void *handle )
|
||||
{
|
||||
if (ctx->fragment_shader != handle) {
|
||||
ctx->fragment_shader = handle;
|
||||
ctx->pipe->bind_fs_state(ctx->pipe, handle);
|
||||
}
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -513,8 +516,7 @@ enum pipe_error cso_set_fragment_shader(struct cso_context *ctx,
|
|||
handle = ((struct cso_fragment_shader *)cso_hash_iter_data(iter))->data;
|
||||
}
|
||||
|
||||
cso_set_fragment_shader_handle( ctx, handle );
|
||||
return PIPE_OK;
|
||||
return cso_set_fragment_shader_handle( ctx, handle );
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
@ -535,13 +537,14 @@ void cso_restore_fragment_shader(struct cso_context *ctx)
|
|||
}
|
||||
|
||||
|
||||
void cso_set_vertex_shader_handle(struct cso_context *ctx,
|
||||
void *handle )
|
||||
enum pipe_error cso_set_vertex_shader_handle(struct cso_context *ctx,
|
||||
void *handle )
|
||||
{
|
||||
if (ctx->vertex_shader != handle) {
|
||||
ctx->vertex_shader = handle;
|
||||
ctx->pipe->bind_vs_state(ctx->pipe, handle);
|
||||
}
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
||||
|
||||
|
|
@ -581,8 +584,7 @@ enum pipe_error cso_set_vertex_shader(struct cso_context *ctx,
|
|||
handle = ((struct cso_vertex_shader *)cso_hash_iter_data(iter))->data;
|
||||
}
|
||||
|
||||
cso_set_vertex_shader_handle( ctx, handle );
|
||||
return PIPE_OK;
|
||||
return cso_set_vertex_shader_handle( ctx, handle );
|
||||
}
|
||||
#endif
|
||||
|
||||
|
|
@ -606,14 +608,15 @@ void cso_restore_vertex_shader(struct cso_context *ctx)
|
|||
|
||||
|
||||
|
||||
void cso_set_framebuffer(struct cso_context *ctx,
|
||||
const struct pipe_framebuffer_state *fb)
|
||||
enum pipe_error cso_set_framebuffer(struct cso_context *ctx,
|
||||
const struct pipe_framebuffer_state *fb)
|
||||
{
|
||||
/* XXX this memcmp() fails to detect buffer size changes */
|
||||
if (1/*memcmp(&ctx->fb, fb, sizeof(*fb))*/) {
|
||||
ctx->fb = *fb;
|
||||
ctx->pipe->set_framebuffer_state(ctx->pipe, fb);
|
||||
}
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
||||
void cso_save_framebuffer(struct cso_context *ctx)
|
||||
|
|
@ -630,13 +633,14 @@ void cso_restore_framebuffer(struct cso_context *ctx)
|
|||
}
|
||||
|
||||
|
||||
void cso_set_viewport(struct cso_context *ctx,
|
||||
const struct pipe_viewport_state *vp)
|
||||
enum pipe_error cso_set_viewport(struct cso_context *ctx,
|
||||
const struct pipe_viewport_state *vp)
|
||||
{
|
||||
if (memcmp(&ctx->vp, vp, sizeof(*vp))) {
|
||||
ctx->vp = *vp;
|
||||
ctx->pipe->set_viewport_state(ctx->pipe, vp);
|
||||
}
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
||||
void cso_save_viewport(struct cso_context *ctx)
|
||||
|
|
@ -656,11 +660,12 @@ void cso_restore_viewport(struct cso_context *ctx)
|
|||
|
||||
|
||||
|
||||
void cso_set_blend_color(struct cso_context *ctx,
|
||||
const struct pipe_blend_color *bc)
|
||||
enum pipe_error cso_set_blend_color(struct cso_context *ctx,
|
||||
const struct pipe_blend_color *bc)
|
||||
{
|
||||
if (memcmp(&ctx->blend_color, bc, sizeof(ctx->blend_color))) {
|
||||
ctx->blend_color = *bc;
|
||||
ctx->pipe->set_blend_color(ctx->pipe, bc);
|
||||
}
|
||||
return PIPE_OK;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -84,9 +84,9 @@ void cso_single_sampler_done( struct cso_context *cso );
|
|||
|
||||
|
||||
|
||||
void cso_set_sampler_textures( struct cso_context *cso,
|
||||
uint count,
|
||||
struct pipe_texture **textures );
|
||||
enum pipe_error cso_set_sampler_textures( struct cso_context *cso,
|
||||
uint count,
|
||||
struct pipe_texture **textures );
|
||||
void cso_save_sampler_textures( struct cso_context *cso );
|
||||
void cso_restore_sampler_textures( struct cso_context *cso );
|
||||
|
||||
|
|
@ -97,16 +97,16 @@ void cso_restore_sampler_textures( struct cso_context *cso );
|
|||
* (eg mesa's internall-generated texenv programs), it will be up to
|
||||
* the state tracker to implement their own specialized caching.
|
||||
*/
|
||||
void cso_set_fragment_shader_handle(struct cso_context *ctx,
|
||||
void *handle );
|
||||
enum pipe_error cso_set_fragment_shader_handle(struct cso_context *ctx,
|
||||
void *handle );
|
||||
enum pipe_error cso_set_fragment_shader( struct cso_context *cso,
|
||||
const struct pipe_shader_state *shader );
|
||||
void cso_save_fragment_shader(struct cso_context *cso);
|
||||
void cso_restore_fragment_shader(struct cso_context *cso);
|
||||
|
||||
|
||||
void cso_set_vertex_shader_handle(struct cso_context *ctx,
|
||||
void *handle );
|
||||
enum pipe_error cso_set_vertex_shader_handle(struct cso_context *ctx,
|
||||
void *handle );
|
||||
enum pipe_error cso_set_vertex_shader( struct cso_context *cso,
|
||||
const struct pipe_shader_state *shader );
|
||||
void cso_save_vertex_shader(struct cso_context *cso);
|
||||
|
|
@ -114,20 +114,20 @@ void cso_restore_vertex_shader(struct cso_context *cso);
|
|||
|
||||
|
||||
|
||||
void cso_set_framebuffer(struct cso_context *cso,
|
||||
const struct pipe_framebuffer_state *fb);
|
||||
enum pipe_error cso_set_framebuffer(struct cso_context *cso,
|
||||
const struct pipe_framebuffer_state *fb);
|
||||
void cso_save_framebuffer(struct cso_context *cso);
|
||||
void cso_restore_framebuffer(struct cso_context *cso);
|
||||
|
||||
|
||||
void cso_set_viewport(struct cso_context *cso,
|
||||
const struct pipe_viewport_state *vp);
|
||||
enum pipe_error cso_set_viewport(struct cso_context *cso,
|
||||
const struct pipe_viewport_state *vp);
|
||||
void cso_save_viewport(struct cso_context *cso);
|
||||
void cso_restore_viewport(struct cso_context *cso);
|
||||
|
||||
|
||||
void cso_set_blend_color(struct cso_context *cso,
|
||||
const struct pipe_blend_color *bc);
|
||||
enum pipe_error cso_set_blend_color(struct cso_context *cso,
|
||||
const struct pipe_blend_color *bc);
|
||||
|
||||
|
||||
#ifdef __cplusplus
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue