Go to the source code of this file.
Data Structures | |
struct | cell_texture |
Subclass of pipe_texture. More... | |
Functions | |
static struct cell_texture * | cell_texture (struct pipe_texture *pt) |
cast wrapper | |
void | cell_update_texture_mapping (struct cell_context *cell) |
void | cell_init_texture_functions (struct cell_context *cell) |
void | cell_init_screen_texture_funcs (struct pipe_screen *screen) |
void cell_init_screen_texture_funcs | ( | struct pipe_screen * | screen | ) |
Definition at line 377 of file cell_texture.c.
References cell_get_tex_surface(), cell_surface_map(), cell_surface_unmap(), cell_tex_surface_release(), cell_texture_create(), cell_texture_release(), pipe_screen::get_tex_surface, pipe_screen::surface_map, pipe_screen::surface_unmap, pipe_screen::tex_surface_release, pipe_screen::texture_create, and pipe_screen::texture_release.
00378 { 00379 screen->texture_create = cell_texture_create; 00380 screen->texture_release = cell_texture_release; 00381 00382 screen->get_tex_surface = cell_get_tex_surface; 00383 screen->tex_surface_release = cell_tex_surface_release; 00384 00385 screen->surface_map = cell_surface_map; 00386 screen->surface_unmap = cell_surface_unmap; 00387 }
void cell_init_texture_functions | ( | struct cell_context * | cell | ) |
static struct cell_texture* cell_texture | ( | struct pipe_texture * | pt | ) | [static, read] |
cast wrapper
Definition at line 57 of file cell_texture.h.
00058 { 00059 return (struct cell_texture *) pt; 00060 }
void cell_update_texture_mapping | ( | struct cell_context * | cell | ) |
Definition at line 283 of file cell_texture.c.
References cell_texture::base, cell_get_tex_surface(), CELL_MAX_SAMPLERS, cell_tile_texture(), pipe_surface::face, pipe_surface::level, cell_context::pipe, pipe_surface_map(), pipe_surface_unmap(), cell_context::tex_map, cell_context::tex_surf, cell_context::texture, and pipe_surface::zslice.
00284 { 00285 #if 0 00286 uint face = 0, level = 0, zslice = 0; 00287 #endif 00288 uint i; 00289 00290 for (i = 0; i < CELL_MAX_SAMPLERS; i++) { 00291 if (cell->texture[i]) 00292 cell_tile_texture(cell, cell->texture[i]); 00293 } 00294 00295 #if 0 00296 if (cell->tex_surf && cell->tex_map) { 00297 pipe_surface_unmap(cell->tex_surf); 00298 cell->tex_map = NULL; 00299 } 00300 00301 /* XXX free old surface */ 00302 00303 cell->tex_surf = cell_get_tex_surface(&cell->pipe, 00304 &cell->texture[0]->base, 00305 face, level, zslice); 00306 00307 cell->tex_map = pipe_surface_map(cell->tex_surf); 00308 #endif 00309 }