glthread: add support for glClearNamedFramebuffer, glMaterial, glPointParameter

Reviewed-by: Timothy Arceri <tarceri@itsqueeze.com>
Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/3948>
This commit is contained in:
Marek Olšák 2020-02-19 21:57:58 -05:00 committed by Marge Bot
parent b0a20e7531
commit 1668a93903
4 changed files with 51 additions and 9 deletions

View file

@ -222,21 +222,21 @@
<param name="framebuffer" type="GLuint" />
<param name="buffer" type="GLenum" />
<param name="drawbuffer" type="GLint" />
<param name="value" type="const GLint *" />
<param name="value" type="const GLint *" count="_mesa_buffer_enum_to_count(buffer)"/>
</function>
<function name="ClearNamedFramebufferuiv">
<param name="framebuffer" type="GLuint" />
<param name="buffer" type="GLenum" />
<param name="drawbuffer" type="GLint" />
<param name="value" type="const GLuint *" />
<param name="value" type="const GLuint *" count="_mesa_buffer_enum_to_count(buffer)"/>
</function>
<function name="ClearNamedFramebufferfv">
<param name="framebuffer" type="GLuint" />
<param name="buffer" type="GLenum" />
<param name="drawbuffer" type="GLint" />
<param name="value" type="const GLfloat *" />
<param name="value" type="const GLfloat *" count="_mesa_buffer_enum_to_count(buffer)"/>
</function>
<function name="ClearNamedFramebufferfi">

View file

@ -2080,7 +2080,8 @@
<function name="Materialfv" es1="1.0" deprecated="3.1" exec="dynamic">
<param name="face" type="GLenum"/>
<param name="pname" type="GLenum"/>
<param name="params" type="const GLfloat *" variable_param="pname"/>
<param name="params" type="const GLfloat *" variable_param="pname"
marshal_count="_mesa_material_enum_to_count(pname)"/>
<glx rop="97"/>
</function>
@ -2094,7 +2095,8 @@
<function name="Materialiv" deprecated="3.1">
<param name="face" type="GLenum"/>
<param name="pname" type="GLenum"/>
<param name="params" type="const GLint *" variable_param="pname"/>
<param name="params" type="const GLint *" variable_param="pname"
marshal_count="_mesa_material_enum_to_count(pname)"/>
<glx rop="99"/>
</function>
@ -4780,7 +4782,8 @@
<function name="PointParameterfv" es1="1.1">
<param name="pname" type="GLenum"/>
<param name="params" type="const GLfloat *" variable_param="pname"/>
<param name="params" type="const GLfloat *" variable_param="pname"
marshal_count="_mesa_point_param_enum_to_count(pname)"/>
<glx rop="2066"/>
</function>
@ -4792,7 +4795,8 @@
<function name="PointParameteriv">
<param name="pname" type="GLenum"/>
<param name="params" type="const GLint *" variable_param="pname"/>
<param name="params" type="const GLint *" variable_param="pname"
marshal_count="_mesa_point_param_enum_to_count(pname)"/>
<glx rop="4222"/>
</function>

View file

@ -107,7 +107,8 @@
<function name="Materialxv" es1="1.0" desktop="false">
<param name="face" type="GLenum"/>
<param name="pname" type="GLenum"/>
<param name="params" type="const GLfixed *" variable_param="pname"/>
<param name="params" type="const GLfixed *" variable_param="pname"
marshal_count="_mesa_material_enum_to_count(pname)"/>
</function>
<function name="MultMatrixx" es1="1.0" desktop="false">
@ -257,7 +258,8 @@
<function name="PointParameterxv" es1="1.1" desktop="false">
<param name="pname" type="GLenum"/>
<param name="params" type="const GLfixed *"/>
<param name="params" type="const GLfixed *"
count="_mesa_point_param_enum_to_count(pname)"/>
</function>
<function name="TexParameterxv" es1="1.1" desktop="false">

View file

@ -404,4 +404,40 @@ _mesa_texgen_enum_to_count(GLenum pname)
}
}
static inline unsigned
_mesa_material_enum_to_count(GLenum pname)
{
switch (pname) {
case GL_EMISSION:
case GL_AMBIENT:
case GL_DIFFUSE:
case GL_SPECULAR:
case GL_AMBIENT_AND_DIFFUSE:
return 4;
case GL_COLOR_INDEXES:
return 3;
case GL_SHININESS:
return 1;
default:
return 0;
}
}
static inline unsigned
_mesa_point_param_enum_to_count(GLenum pname)
{
switch (pname) {
case GL_DISTANCE_ATTENUATION_EXT:
return 3;
case GL_POINT_SIZE_MIN_EXT:
case GL_POINT_SIZE_MAX_EXT:
case GL_POINT_FADE_THRESHOLD_SIZE_EXT:
case GL_POINT_SPRITE_R_MODE_NV:
case GL_POINT_SPRITE_COORD_ORIGIN:
return 1;
default:
return 0;
}
}
#endif /* MARSHAL_H */