tr_screen.h File Reference

Include dependency graph for tr_screen.h:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  trace_screen

Functions

struct trace_screentrace_screen (struct pipe_screen *screen)
struct pipe_screentrace_screen_create (struct pipe_screen *screen)


Function Documentation

struct trace_screen* trace_screen ( struct pipe_screen screen  )  [read]

Definition at line 464 of file tr_screen.c.

References assert, pipe_screen::destroy, and trace_screen_destroy().

00465 {
00466    assert(screen);
00467    assert(screen->destroy == trace_screen_destroy);
00468    return (struct trace_screen *)screen;
00469 }

struct pipe_screen* trace_screen_create ( struct pipe_screen screen  )  [read]

Definition at line 409 of file tr_screen.c.

References trace_screen::base, CALLOC_STRUCT, pipe_screen::destroy, FREE, pipe_screen::get_name, pipe_screen::get_param, pipe_screen::get_paramf, pipe_screen::get_tex_surface, pipe_screen::get_vendor, pipe_screen::is_format_supported, trace_screen::screen, pipe_screen::surface_map, pipe_screen::surface_unmap, pipe_screen::tex_surface_release, pipe_screen::texture_blanket, pipe_screen::texture_create, pipe_screen::texture_release, trace_dump_arg_begin(), trace_dump_arg_end(), trace_dump_call_begin(), trace_dump_call_end(), trace_dump_ptr(), trace_dump_ret, trace_dump_trace_begin(), trace_dump_trace_end(), trace_screen_destroy(), trace_screen_get_name(), trace_screen_get_param(), trace_screen_get_paramf(), trace_screen_get_tex_surface(), trace_screen_get_vendor(), trace_screen_is_format_supported(), trace_screen_surface_map(), trace_screen_surface_unmap(), trace_screen_tex_surface_release(), trace_screen_texture_blanket(), trace_screen_texture_create(), trace_screen_texture_release(), trace_winsys_create(), and pipe_screen::winsys.

00410 {
00411    struct trace_screen *tr_scr;
00412    struct pipe_winsys *winsys;
00413    
00414    if(!screen)
00415       goto error1;
00416 
00417    if(!trace_dump_trace_begin())
00418       goto error1;
00419 
00420    tr_scr = CALLOC_STRUCT(trace_screen);
00421    if(!tr_scr)
00422       goto error2;
00423 
00424    winsys = trace_winsys_create(screen->winsys);
00425    if(!winsys)
00426       goto error3;
00427    
00428    tr_scr->base.winsys = winsys;
00429    tr_scr->base.destroy = trace_screen_destroy;
00430    tr_scr->base.get_name = trace_screen_get_name;
00431    tr_scr->base.get_vendor = trace_screen_get_vendor;
00432    tr_scr->base.get_param = trace_screen_get_param;
00433    tr_scr->base.get_paramf = trace_screen_get_paramf;
00434    tr_scr->base.is_format_supported = trace_screen_is_format_supported;
00435    tr_scr->base.texture_create = trace_screen_texture_create;
00436    tr_scr->base.texture_blanket = trace_screen_texture_blanket;
00437    tr_scr->base.texture_release = trace_screen_texture_release;
00438    tr_scr->base.get_tex_surface = trace_screen_get_tex_surface;
00439    tr_scr->base.tex_surface_release = trace_screen_tex_surface_release;
00440    tr_scr->base.surface_map = trace_screen_surface_map;
00441    tr_scr->base.surface_unmap = trace_screen_surface_unmap;
00442    
00443    tr_scr->screen = screen;
00444 
00445    trace_dump_call_begin("", "pipe_screen_create");
00446    trace_dump_arg_begin("winsys");
00447    trace_dump_ptr(screen->winsys);
00448    trace_dump_arg_end();
00449    trace_dump_ret(ptr, screen);
00450    trace_dump_call_end();
00451 
00452    return &tr_scr->base;
00453 
00454 error3:
00455    FREE(tr_scr);
00456 error2:
00457    trace_dump_trace_end();
00458 error1:
00459    return screen;
00460 }


Generated on Tue Sep 29 06:25:43 2009 for Gallium3D by  doxygen 1.5.4