}
}
+static void
+viewport_array(struct gl_context *ctx, GLuint first, GLsizei count,
+ const struct gl_viewport_inputs *inputs)
+{
+ for (GLsizei i = 0; i < count; i++) {
+ set_viewport_no_notify(ctx, i + first, inputs[i].X, inputs[i].Y,
+ inputs[i].Width, inputs[i].Height);
+ }
+
+ if (ctx->Driver.Viewport)
+ ctx->Driver.Viewport(ctx);
+}
+
+void GLAPIENTRY
+_mesa_ViewportArrayv_no_error(GLuint first, GLsizei count, const GLfloat *v)
+{
+ GET_CURRENT_CONTEXT(ctx);
+
+ const struct gl_viewport_inputs *const p = (struct gl_viewport_inputs *)v;
+ viewport_array(ctx, first, count, p);
+}
+
void GLAPIENTRY
_mesa_ViewportArrayv(GLuint first, GLsizei count, const GLfloat *v)
{
}
}
- for (i = 0; i < count; i++)
- set_viewport_no_notify(ctx, i + first,
- p[i].X, p[i].Y,
- p[i].Width, p[i].Height);
-
- if (ctx->Driver.Viewport)
- ctx->Driver.Viewport(ctx);
+ viewport_array(ctx, first, count, p);
}
static void
-ViewportIndexedf(GLuint index, GLfloat x, GLfloat y,
- GLfloat w, GLfloat h, const char *function)
+viewport_indexed_err(struct gl_context *ctx, GLuint index, GLfloat x, GLfloat y,
+ GLfloat w, GLfloat h, const char *function)
{
- GET_CURRENT_CONTEXT(ctx);
-
if (MESA_VERBOSE & VERBOSE_API)
_mesa_debug(ctx, "%s(%d, %f, %f, %f, %f)\n",
function, index, x, y, w, h);
_mesa_set_viewport(ctx, index, x, y, w, h);
}
+void GLAPIENTRY
+_mesa_ViewportIndexedf_no_error(GLuint index, GLfloat x, GLfloat y,
+ GLfloat w, GLfloat h)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ _mesa_set_viewport(ctx, index, x, y, w, h);
+}
+
void GLAPIENTRY
_mesa_ViewportIndexedf(GLuint index, GLfloat x, GLfloat y,
GLfloat w, GLfloat h)
{
- ViewportIndexedf(index, x, y, w, h, "glViewportIndexedf");
+ GET_CURRENT_CONTEXT(ctx);
+ viewport_indexed_err(ctx, index, x, y, w, h, "glViewportIndexedf");
+}
+
+void GLAPIENTRY
+_mesa_ViewportIndexedfv_no_error(GLuint index, const GLfloat *v)
+{
+ GET_CURRENT_CONTEXT(ctx);
+ _mesa_set_viewport(ctx, index, v[0], v[1], v[2], v[3]);
}
void GLAPIENTRY
_mesa_ViewportIndexedfv(GLuint index, const GLfloat *v)
{
- ViewportIndexedf(index, v[0], v[1], v[2], v[3], "glViewportIndexedfv");
+ GET_CURRENT_CONTEXT(ctx);
+ viewport_indexed_err(ctx, index, v[0], v[1], v[2], v[3],
+ "glViewportIndexedfv");
}
static void