softpipe: reformatting, clean-ups, comments
This commit is contained in:
parent
759696defb
commit
afcaa45a94
|
@ -83,7 +83,8 @@ softpipe_unmap_transfers(struct softpipe_context *sp)
|
|||
}
|
||||
|
||||
|
||||
static void softpipe_destroy( struct pipe_context *pipe )
|
||||
static void
|
||||
softpipe_destroy( struct pipe_context *pipe )
|
||||
{
|
||||
struct softpipe_context *softpipe = softpipe_context( pipe );
|
||||
uint i;
|
||||
|
@ -121,6 +122,15 @@ static void softpipe_destroy( struct pipe_context *pipe )
|
|||
FREE( softpipe );
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* if (the texture is being used as a framebuffer surface)
|
||||
* return PIPE_REFERENCED_FOR_WRITE
|
||||
* else if (the texture is a bound texture source)
|
||||
* return PIPE_REFERENCED_FOR_READ XXX not done yet
|
||||
* else
|
||||
* return PIPE_UNREFERENCED
|
||||
*/
|
||||
static unsigned int
|
||||
softpipe_is_texture_referenced( struct pipe_context *pipe,
|
||||
struct pipe_texture *texture,
|
||||
|
@ -129,15 +139,17 @@ softpipe_is_texture_referenced( struct pipe_context *pipe,
|
|||
struct softpipe_context *softpipe = softpipe_context( pipe );
|
||||
unsigned i;
|
||||
|
||||
if(softpipe->dirty_render_cache) {
|
||||
if (softpipe->dirty_render_cache) {
|
||||
for (i = 0; i < softpipe->framebuffer.nr_cbufs; i++) {
|
||||
if(softpipe->framebuffer.cbufs[i] &&
|
||||
softpipe->framebuffer.cbufs[i]->texture == texture)
|
||||
if (softpipe->framebuffer.cbufs[i] &&
|
||||
softpipe->framebuffer.cbufs[i]->texture == texture) {
|
||||
return PIPE_REFERENCED_FOR_WRITE;
|
||||
}
|
||||
}
|
||||
if(softpipe->framebuffer.zsbuf &&
|
||||
softpipe->framebuffer.zsbuf->texture == texture)
|
||||
if (softpipe->framebuffer.zsbuf &&
|
||||
softpipe->framebuffer.zsbuf->texture == texture) {
|
||||
return PIPE_REFERENCED_FOR_WRITE;
|
||||
}
|
||||
}
|
||||
|
||||
/* FIXME: we also need to do the same for the texture cache */
|
||||
|
@ -145,6 +157,7 @@ softpipe_is_texture_referenced( struct pipe_context *pipe,
|
|||
return PIPE_UNREFERENCED;
|
||||
}
|
||||
|
||||
|
||||
static unsigned int
|
||||
softpipe_is_buffer_referenced( struct pipe_context *pipe,
|
||||
struct pipe_buffer *buf)
|
||||
|
@ -152,6 +165,7 @@ softpipe_is_buffer_referenced( struct pipe_context *pipe,
|
|||
return PIPE_UNREFERENCED;
|
||||
}
|
||||
|
||||
|
||||
struct pipe_context *
|
||||
softpipe_create( struct pipe_screen *screen )
|
||||
{
|
||||
|
|
|
@ -49,7 +49,8 @@
|
|||
*/
|
||||
|
||||
|
||||
/* Conventional allocation path for non-display textures:
|
||||
/**
|
||||
* Conventional allocation path for non-display textures:
|
||||
*/
|
||||
static boolean
|
||||
softpipe_texture_layout(struct pipe_screen *screen,
|
||||
|
@ -89,6 +90,10 @@ softpipe_texture_layout(struct pipe_screen *screen,
|
|||
return spt->buffer != NULL;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Texture layout for simple color buffers.
|
||||
*/
|
||||
static boolean
|
||||
softpipe_displaytarget_layout(struct pipe_screen *screen,
|
||||
struct softpipe_texture * spt)
|
||||
|
@ -112,9 +117,6 @@ softpipe_displaytarget_layout(struct pipe_screen *screen,
|
|||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
static struct pipe_texture *
|
||||
softpipe_texture_create(struct pipe_screen *screen,
|
||||
const struct pipe_texture *templat)
|
||||
|
@ -342,14 +344,13 @@ softpipe_transfer_map( struct pipe_screen *screen,
|
|||
/* May want to different things here depending on read/write nature
|
||||
* of the map:
|
||||
*/
|
||||
if (transfer->texture && transfer->usage != PIPE_TRANSFER_READ)
|
||||
{
|
||||
if (transfer->texture && transfer->usage != PIPE_TRANSFER_READ) {
|
||||
/* Do something to notify sharing contexts of a texture change.
|
||||
* In softpipe, that would mean flushing the texture cache.
|
||||
*/
|
||||
softpipe_screen(screen)->timestamp++;
|
||||
}
|
||||
|
||||
|
||||
xfer_map = map + softpipe_transfer(transfer)->offset +
|
||||
transfer->y / transfer->block.height * transfer->stride +
|
||||
transfer->x / transfer->block.width * transfer->block.size;
|
||||
|
@ -360,7 +361,7 @@ softpipe_transfer_map( struct pipe_screen *screen,
|
|||
|
||||
static void
|
||||
softpipe_transfer_unmap(struct pipe_screen *screen,
|
||||
struct pipe_transfer *transfer)
|
||||
struct pipe_transfer *transfer)
|
||||
{
|
||||
struct softpipe_texture *spt;
|
||||
|
||||
|
@ -404,7 +405,7 @@ softpipe_get_texture_buffer( struct pipe_texture *texture,
|
|||
struct pipe_buffer **buf,
|
||||
unsigned *stride )
|
||||
{
|
||||
struct softpipe_texture *tex = (struct softpipe_texture *)texture;
|
||||
struct softpipe_texture *tex = (struct softpipe_texture *) texture;
|
||||
|
||||
if (!tex)
|
||||
return FALSE;
|
||||
|
|
Loading…
Reference in New Issue