static struct pipe_resource * trace_screen_user_buffer_create(struct pipe_screen *_screen, void *data, unsigned size, unsigned usage) { struct trace_screen *tr_scr = trace_screen(_screen); struct pipe_screen *screen = tr_scr->screen; struct pipe_resource *result; trace_dump_call_begin("pipe_screen", "user_buffer_create"); trace_dump_arg(ptr, screen); trace_dump_arg_begin("data"); trace_dump_bytes(data, size); trace_dump_arg_end(); trace_dump_arg(uint, size); trace_dump_arg(uint, usage); result = screen->user_buffer_create(screen, data, size, usage); trace_dump_ret(ptr, result); trace_dump_call_end(); if(result) { assert(!(result->flags & TRACE_FLAG_USER_BUFFER)); result->flags |= TRACE_FLAG_USER_BUFFER; } return trace_resource_create(tr_scr, result); }
static struct pipe_resource * trace_screen_resource_from_handle(struct pipe_screen *_screen, const struct pipe_resource *templ, struct winsys_handle *handle) { struct trace_screen *tr_screen = trace_screen(_screen); struct pipe_screen *screen = tr_screen->screen; struct pipe_resource *result; /* TODO trace call */ result = screen->resource_from_handle(screen, templ, handle); result = trace_resource_create(trace_screen(_screen), result); return result; }
static struct pipe_resource * trace_screen_resource_create(struct pipe_screen *_screen, const struct pipe_resource *templat) { struct trace_screen *tr_scr = trace_screen(_screen); struct pipe_screen *screen = tr_scr->screen; struct pipe_resource *result; trace_dump_call_begin("pipe_screen", "resource_create"); trace_dump_arg(ptr, screen); trace_dump_arg(resource_template, templat); result = screen->resource_create(screen, templat); trace_dump_ret(ptr, result); trace_dump_call_end(); result = trace_resource_create(tr_scr, result); return result; }