static void
trace_screen_flush_frontbuffer(struct pipe_screen *_screen,
- struct pipe_resource *_resource,
+ struct pipe_resource *resource,
unsigned level, unsigned layer,
void *context_private,
struct pipe_box *sub_box)
{
struct trace_screen *tr_scr = trace_screen(_screen);
- struct trace_resource *tr_res = trace_resource(_resource);
struct pipe_screen *screen = tr_scr->screen;
- struct pipe_resource *resource = tr_res->resource;
trace_dump_call_begin("pipe_screen", "flush_frontbuffer");
trace_dump_call_end();
- result = trace_resource_create(tr_scr, result);
-
+ if (result)
+ result->screen = _screen;
return result;
}
result = screen->resource_from_handle(screen, templ, handle, usage);
- result = trace_resource_create(trace_screen(_screen), result);
-
+ if (result)
+ result->screen = _screen;
return result;
}
static boolean
trace_screen_resource_get_handle(struct pipe_screen *_screen,
struct pipe_context *_pipe,
- struct pipe_resource *_resource,
+ struct pipe_resource *resource,
struct winsys_handle *handle,
unsigned usage)
{
struct trace_screen *tr_screen = trace_screen(_screen);
struct trace_context *tr_pipe = _pipe ? trace_context(_pipe) : NULL;
- struct trace_resource *tr_resource = trace_resource(_resource);
struct pipe_screen *screen = tr_screen->screen;
- struct pipe_resource *resource = tr_resource->resource;
/* TODO trace call */
static void
trace_screen_resource_changed(struct pipe_screen *_screen,
- struct pipe_resource *_resource)
+ struct pipe_resource *resource)
{
struct trace_screen *tr_scr = trace_screen(_screen);
- struct trace_resource *tr_res = trace_resource(_resource);
struct pipe_screen *screen = tr_scr->screen;
- struct pipe_resource *resource = tr_res->resource;
-
- assert(resource->screen == screen);
trace_dump_call_begin("pipe_screen", "resource_changed");
static void
trace_screen_resource_destroy(struct pipe_screen *_screen,
- struct pipe_resource *_resource)
+ struct pipe_resource *resource)
{
struct trace_screen *tr_scr = trace_screen(_screen);
- struct trace_resource *tr_res = trace_resource(_resource);
struct pipe_screen *screen = tr_scr->screen;
- struct pipe_resource *resource = tr_res->resource;
-
- assert(resource->screen == screen);
trace_dump_call_begin("pipe_screen", "resource_destroy");
trace_dump_call_end();
- trace_resource_destroy(tr_scr, tr_res);
+ screen->resource_destroy(screen, resource);
}