mesa: minor code simplification in _mesa_GetVertexAttrib*NV()
This commit is contained in:
+19
-10
@@ -354,6 +354,7 @@ _mesa_GetTrackMatrixivNV(GLenum target, GLuint address,
|
||||
void GLAPIENTRY
|
||||
_mesa_GetVertexAttribdvNV(GLuint index, GLenum pname, GLdouble *params)
|
||||
{
|
||||
const struct gl_client_array *array;
|
||||
GET_CURRENT_CONTEXT(ctx);
|
||||
ASSERT_OUTSIDE_BEGIN_END(ctx);
|
||||
|
||||
@@ -362,15 +363,17 @@ _mesa_GetVertexAttribdvNV(GLuint index, GLenum pname, GLdouble *params)
|
||||
return;
|
||||
}
|
||||
|
||||
array = &ctx->Array.ArrayObj->VertexAttrib[index];
|
||||
|
||||
switch (pname) {
|
||||
case GL_ATTRIB_ARRAY_SIZE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Size;
|
||||
params[0] = array->Size;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_STRIDE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Stride;
|
||||
params[0] = array->Stride;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_TYPE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Type;
|
||||
params[0] = array->Type;
|
||||
break;
|
||||
case GL_CURRENT_ATTRIB_NV:
|
||||
if (index == 0) {
|
||||
@@ -395,6 +398,7 @@ _mesa_GetVertexAttribdvNV(GLuint index, GLenum pname, GLdouble *params)
|
||||
void GLAPIENTRY
|
||||
_mesa_GetVertexAttribfvNV(GLuint index, GLenum pname, GLfloat *params)
|
||||
{
|
||||
const struct gl_client_array *array;
|
||||
GET_CURRENT_CONTEXT(ctx);
|
||||
ASSERT_OUTSIDE_BEGIN_END(ctx);
|
||||
|
||||
@@ -403,15 +407,17 @@ _mesa_GetVertexAttribfvNV(GLuint index, GLenum pname, GLfloat *params)
|
||||
return;
|
||||
}
|
||||
|
||||
array = &ctx->Array.ArrayObj->VertexAttrib[index];
|
||||
|
||||
switch (pname) {
|
||||
case GL_ATTRIB_ARRAY_SIZE_NV:
|
||||
params[0] = (GLfloat) ctx->Array.ArrayObj->VertexAttrib[index].Size;
|
||||
params[0] = (GLfloat) array->Size;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_STRIDE_NV:
|
||||
params[0] = (GLfloat) ctx->Array.ArrayObj->VertexAttrib[index].Stride;
|
||||
params[0] = (GLfloat) array->Stride;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_TYPE_NV:
|
||||
params[0] = (GLfloat) ctx->Array.ArrayObj->VertexAttrib[index].Type;
|
||||
params[0] = (GLfloat) array->Type;
|
||||
break;
|
||||
case GL_CURRENT_ATTRIB_NV:
|
||||
if (index == 0) {
|
||||
@@ -436,6 +442,7 @@ _mesa_GetVertexAttribfvNV(GLuint index, GLenum pname, GLfloat *params)
|
||||
void GLAPIENTRY
|
||||
_mesa_GetVertexAttribivNV(GLuint index, GLenum pname, GLint *params)
|
||||
{
|
||||
const struct gl_client_array *array;
|
||||
GET_CURRENT_CONTEXT(ctx);
|
||||
ASSERT_OUTSIDE_BEGIN_END(ctx);
|
||||
|
||||
@@ -444,15 +451,17 @@ _mesa_GetVertexAttribivNV(GLuint index, GLenum pname, GLint *params)
|
||||
return;
|
||||
}
|
||||
|
||||
array = &ctx->Array.ArrayObj->VertexAttrib[index];
|
||||
|
||||
switch (pname) {
|
||||
case GL_ATTRIB_ARRAY_SIZE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Size;
|
||||
params[0] = array->Size;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_STRIDE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Stride;
|
||||
params[0] = array->Stride;
|
||||
break;
|
||||
case GL_ATTRIB_ARRAY_TYPE_NV:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].Type;
|
||||
params[0] = array->Type;
|
||||
break;
|
||||
case GL_CURRENT_ATTRIB_NV:
|
||||
if (index == 0) {
|
||||
@@ -467,7 +476,7 @@ _mesa_GetVertexAttribivNV(GLuint index, GLenum pname, GLint *params)
|
||||
params[3] = (GLint) ctx->Current.Attrib[index][3];
|
||||
break;
|
||||
case GL_VERTEX_ATTRIB_ARRAY_BUFFER_BINDING_ARB:
|
||||
params[0] = ctx->Array.ArrayObj->VertexAttrib[index].BufferObj->Name;
|
||||
params[0] = array->BufferObj->Name;
|
||||
break;
|
||||
default:
|
||||
_mesa_error(ctx, GL_INVALID_ENUM, "glGetVertexAttribdvNV");
|
||||
|
||||
Reference in New Issue
Block a user