fprintf(f, "\n");
}
+static void
+dd_dump_clear_texture(struct dd_draw_state *dstate, FILE *f)
+{
+ fprintf(f, "%s:\n", __func__+8);
+ /* TODO */
+}
+
static void
dd_dump_clear_render_target(struct dd_draw_state *dstate, FILE *f)
{
case CALL_CLEAR_BUFFER:
dd_dump_clear_buffer(state, &call->info.clear_buffer, f);
break;
+ case CALL_CLEAR_TEXTURE:
+ dd_dump_clear_texture(state, f);
+ break;
case CALL_CLEAR_RENDER_TARGET:
dd_dump_clear_render_target(state, f);
break;
case CALL_CLEAR_BUFFER:
pipe_resource_reference(&dst->info.clear_buffer.res, NULL);
break;
+ case CALL_CLEAR_TEXTURE:
+ break;
case CALL_CLEAR_RENDER_TARGET:
break;
case CALL_CLEAR_DEPTH_STENCIL:
src->info.clear_buffer.res);
dst->info.clear_buffer = src->info.clear_buffer;
break;
+ case CALL_CLEAR_TEXTURE:
+ break;
case CALL_CLEAR_RENDER_TARGET:
break;
case CALL_CLEAR_DEPTH_STENCIL:
dd_after_draw(dctx, &call);
}
+static void
+dd_context_clear_texture(struct pipe_context *_pipe,
+ struct pipe_resource *res,
+ unsigned level,
+ const struct pipe_box *box,
+ const void *data)
+{
+ struct dd_context *dctx = dd_context(_pipe);
+ struct pipe_context *pipe = dctx->pipe;
+ struct dd_call call;
+
+ call.type = CALL_CLEAR_TEXTURE;
+
+ dd_before_draw(dctx);
+ pipe->clear_texture(pipe, res, level, box, data);
+ dd_after_draw(dctx, &call);
+}
+
void
dd_init_draw_functions(struct dd_context *dctx)
{
CTX_INIT(clear_render_target);
CTX_INIT(clear_depth_stencil);
CTX_INIT(clear_buffer);
+ CTX_INIT(clear_texture);
CTX_INIT(flush_resource);
CTX_INIT(generate_mipmap);
}