summaryrefslogtreecommitdiffstats
path: root/src/mesa/vbo
diff options
context:
space:
mode:
authorBrian Paul <[email protected]>2013-05-01 19:15:33 -0600
committerBrian Paul <[email protected]>2013-05-02 09:03:16 -0600
commit0f365b2d77e35391283998dbf1311a4aae3cc760 (patch)
tree6b19a8b507784b6c6cef3fd3240657fe842ff54e /src/mesa/vbo
parent49993a1a9dc34b78ccd345b91087385917a40138 (diff)
mesa: remove GLvertexformat::Rectf()
As with the glDraw* functions, this doesn't have to be in GLvertexformat. Reviewed-by: Jose Fonseca <[email protected]>
Diffstat (limited to 'src/mesa/vbo')
-rw-r--r--src/mesa/vbo/vbo_exec_api.c23
-rw-r--r--src/mesa/vbo/vbo_exec_array.c21
-rw-r--r--src/mesa/vbo/vbo_noop.c8
-rw-r--r--src/mesa/vbo/vbo_save_api.c19
4 files changed, 22 insertions, 49 deletions
diff --git a/src/mesa/vbo/vbo_exec_api.c b/src/mesa/vbo/vbo_exec_api.c
index 5fac363e4a9..93fa8d7bb19 100644
--- a/src/mesa/vbo/vbo_exec_api.c
+++ b/src/mesa/vbo/vbo_exec_api.c
@@ -760,27 +760,6 @@ vbo_exec_EvalMesh2(GLenum mode, GLint i1, GLint i2, GLint j1, GLint j2)
/**
- * Execute a glRectf() function. This is not suitable for GL_COMPILE
- * modes (as the test for outside begin/end is not compiled),
- * but may be useful for drivers in circumstances which exclude
- * display list interactions.
- *
- * (None of the functions in this file are suitable for GL_COMPILE
- * modes).
- */
-static void GLAPIENTRY
-vbo_exec_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
-{
- CALL_Begin(GET_DISPATCH(), (GL_QUADS));
- CALL_Vertex2f(GET_DISPATCH(), (x1, y1));
- CALL_Vertex2f(GET_DISPATCH(), (x2, y1));
- CALL_Vertex2f(GET_DISPATCH(), (x2, y2));
- CALL_Vertex2f(GET_DISPATCH(), (x1, y2));
- CALL_End(GET_DISPATCH(), ());
-}
-
-
-/**
* Called via glBegin.
*/
static void GLAPIENTRY vbo_exec_Begin( GLenum mode )
@@ -928,8 +907,6 @@ static void vbo_exec_vtxfmt_init( struct vbo_exec_context *exec )
vfmt->EvalMesh1 = vbo_exec_EvalMesh1;
vfmt->EvalMesh2 = vbo_exec_EvalMesh2;
- vfmt->Rectf = vbo_exec_Rectf;
-
/* from attrib_tmp.h:
*/
vfmt->Color3f = vbo_Color3f;
diff --git a/src/mesa/vbo/vbo_exec_array.c b/src/mesa/vbo/vbo_exec_array.c
index 18011ec125e..f1abe0490c4 100644
--- a/src/mesa/vbo/vbo_exec_array.c
+++ b/src/mesa/vbo/vbo_exec_array.c
@@ -632,6 +632,23 @@ vbo_draw_arrays(struct gl_context *ctx, GLenum mode, GLint start,
}
+/**
+ * Execute a glRectf() function.
+ */
+static void GLAPIENTRY
+vbo_exec_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ ASSERT_OUTSIDE_BEGIN_END(ctx);
+
+ CALL_Begin(GET_DISPATCH(), (GL_QUADS));
+ CALL_Vertex2f(GET_DISPATCH(), (x1, y1));
+ CALL_Vertex2f(GET_DISPATCH(), (x2, y1));
+ CALL_Vertex2f(GET_DISPATCH(), (x2, y2));
+ CALL_Vertex2f(GET_DISPATCH(), (x1, y2));
+ CALL_End(GET_DISPATCH(), ());
+}
+
/**
* Called from glDrawArrays when in immediate mode (not display list mode).
@@ -1381,6 +1398,10 @@ vbo_initialize_exec_dispatch(const struct gl_context *ctx,
SET_MultiDrawElementsEXT(exec, vbo_exec_MultiDrawElements);
+ if (ctx->API == API_OPENGL_COMPAT) {
+ SET_Rectf(exec, vbo_exec_Rectf);
+ }
+
if (_mesa_is_desktop_gl(ctx)) {
SET_DrawElementsBaseVertex(exec, vbo_exec_DrawElementsBaseVertex);
SET_DrawRangeElementsBaseVertex(exec, vbo_exec_DrawRangeElementsBaseVertex);
diff --git a/src/mesa/vbo/vbo_noop.c b/src/mesa/vbo/vbo_noop.c
index 41046e54db4..cff26bf14b3 100644
--- a/src/mesa/vbo/vbo_noop.c
+++ b/src/mesa/vbo/vbo_noop.c
@@ -348,12 +348,6 @@ _mesa_noop_PrimitiveRestartNV(void)
static void GLAPIENTRY
-_mesa_noop_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
-{
-}
-
-
-static void GLAPIENTRY
_mesa_noop_EvalMesh1(GLenum mode, GLint i1, GLint i2)
{
}
@@ -444,8 +438,6 @@ _mesa_noop_vtxfmt_init(GLvertexformat * vfmt)
vfmt->VertexAttrib3fvARB = _mesa_noop_VertexAttrib3fvARB;
vfmt->VertexAttrib4fARB = _mesa_noop_VertexAttrib4fARB;
vfmt->VertexAttrib4fvARB = _mesa_noop_VertexAttrib4fvARB;
-
- vfmt->Rectf = _mesa_noop_Rectf;
}
diff --git a/src/mesa/vbo/vbo_save_api.c b/src/mesa/vbo/vbo_save_api.c
index a174ded2d29..4d9a6366a58 100644
--- a/src/mesa/vbo/vbo_save_api.c
+++ b/src/mesa/vbo/vbo_save_api.c
@@ -994,18 +994,6 @@ _save_End(void)
static void GLAPIENTRY
-_save_Rectf(GLfloat x1, GLfloat y1, GLfloat x2, GLfloat y2)
-{
- GET_CURRENT_CONTEXT(ctx);
- (void) x1;
- (void) y1;
- (void) x2;
- (void) y2;
- _mesa_compile_error(ctx, GL_INVALID_OPERATION, "glRectf");
-}
-
-
-static void GLAPIENTRY
_save_EvalMesh1(GLenum mode, GLint i1, GLint i2)
{
GET_CURRENT_CONTEXT(ctx);
@@ -1378,7 +1366,6 @@ _save_vtxfmt_init(struct gl_context *ctx)
* only used when we're inside a glBegin/End pair.
*/
vfmt->Begin = _save_Begin;
- vfmt->Rectf = _save_Rectf;
}
@@ -1395,6 +1382,7 @@ vbo_initialize_save_dispatch(const struct gl_context *ctx,
SET_DrawRangeElements(exec, _save_OBE_DrawRangeElements);
SET_MultiDrawElementsEXT(exec, _save_OBE_MultiDrawElements);
SET_MultiDrawElementsBaseVertex(exec, _save_OBE_MultiDrawElementsBaseVertex);
+ SET_Rectf(exec, _save_OBE_Rectf);
/* Note: other glDraw functins aren't compiled into display lists */
}
@@ -1589,9 +1577,4 @@ vbo_save_api_init(struct vbo_save_context *save)
/* These will actually get set again when binding/drawing */
for (i = 0; i < VBO_ATTRIB_MAX; i++)
save->inputs[i] = &save->arrays[i];
-
- /* Hook our array functions into the outside-begin-end vtxfmt in
- * ctx->ListState.
- */
- ctx->ListState.ListVtxfmt.Rectf = _save_OBE_Rectf;
}