r300-gallium: Update clear() code.

We have a huge optimization opportunity, but for now we'll just use the util.
This commit is contained in:
Corbin Simpson
2009-04-04 22:30:14 -07:00
parent 7a164411ab
commit a4a853e593
2 changed files with 20 additions and 8 deletions
+8 -5
View File
@@ -22,11 +22,14 @@
#include "r300_clear.h"
/* This gets its own file because Intel's is in its own file.
* I assume there's a good reason. */
/* Clears currently bound buffers. */
void r300_clear(struct pipe_context* pipe,
struct pipe_surface* ps,
unsigned color)
unsigned buffers,
const float* rgba,
double depth,
unsigned stencil)
{
pipe->surface_fill(pipe, ps, 0, 0, ps->width, ps->height, color);
/* XXX we can and should do one clear if both color and zs are set */
util_clear(pipe, &r300_context(pipe)->framebuffer_state,
buffers, rgba, depth, stencil);
}
+12 -3
View File
@@ -20,8 +20,17 @@
* OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE
* USE OR OTHER DEALINGS IN THE SOFTWARE. */
#include "pipe/p_context.h"
#ifndef R300_CLEAR_H
#define R300_CLEAR_H
#include "util/u_clear.h"
#include "r300_context.h"
void r300_clear(struct pipe_context* pipe,
struct pipe_surface* ps,
unsigned color);
unsigned buffers,
const float* rgba,
double depth,
unsigned stencil);
#endif /* R300_CLEAR_H */