move the draw_alloc/free_tmps() functions to draw_prim.c

This commit is contained in:
Brian
2007-08-16 12:55:47 -06:00
parent fd0a6d6b47
commit 717cc0f214
2 changed files with 27 additions and 24 deletions
+27
View File
@@ -517,3 +517,30 @@ draw_trim( unsigned count, unsigned first, unsigned incr )
else
return count - (count - first) % incr;
}
/**
* Allocate space for temporary post-transform vertices, such as for clipping.
*/
void draw_alloc_tmps( struct draw_stage *stage, GLuint nr )
{
stage->nr_tmps = nr;
if (nr) {
GLubyte *store = (GLubyte *) malloc(MAX_VERTEX_SIZE * nr);
GLuint i;
stage->tmp = (struct vertex_header **) malloc(sizeof(struct vertex_header *) * nr);
for (i = 0; i < nr; i++)
stage->tmp[i] = (struct vertex_header *)(store + i * MAX_VERTEX_SIZE);
}
}
void draw_free_tmps( struct draw_stage *stage )
{
if (stage->tmp) {
free(stage->tmp[0]);
free(stage->tmp);
}
}
-24
View File
@@ -371,27 +371,3 @@ void draw_set_vertex_attributes( struct draw_context *draw,
draw->vertex_size = vf_set_vertex_attributes( draw->vf, draw->attrs,
draw->nr_attrs, 0 );
}
void draw_alloc_tmps( struct draw_stage *stage, GLuint nr )
{
stage->nr_tmps = nr;
if (nr) {
GLubyte *store = (GLubyte *) malloc(MAX_VERTEX_SIZE * nr);
GLuint i;
stage->tmp = MALLOC(sizeof(struct vertex_header *) * nr);
for (i = 0; i < nr; i++)
stage->tmp[i] = (struct vertex_header *)(store + i * MAX_VERTEX_SIZE);
}
}
void draw_free_tmps( struct draw_stage *stage )
{
if (stage->tmp) {
free(stage->tmp[0]);
free(stage->tmp);
}
}