示例#1
0
文件: u_debug.c 项目: mslusarz/mesa
void
debug_dump_surface_bmp(struct pipe_context *pipe,
                       const char *filename,
                       struct pipe_surface *surface)
{
   struct pipe_transfer *transfer;
   struct pipe_resource *texture = surface->texture;

   transfer = pipe_get_transfer(pipe, texture, surface->u.tex.level,
                                surface->u.tex.first_layer, PIPE_TRANSFER_READ,
                                0, 0, surface->width, surface->height);

   debug_dump_transfer_bmp(pipe, filename, transfer);

   pipe->transfer_destroy(pipe, transfer);
}
示例#2
0
void
debug_dump_surface_bmp(const char *filename,
                       struct pipe_surface *surface)
{
#ifndef PIPE_SUBSYSTEM_WINDOWS_MINIPORT
   struct pipe_transfer *transfer;
   struct pipe_texture *texture = surface->texture;
   struct pipe_screen *screen = texture->screen;

   transfer = screen->get_tex_transfer(screen, texture, surface->face,
                                       surface->level, surface->zslice,
                                       PIPE_TRANSFER_READ, 0, 0, surface->width,
                                       surface->height);

   debug_dump_transfer_bmp(filename, transfer);

   screen->tex_transfer_destroy(transfer);
#endif
}