mesa: plug in GL_ARB_draw_buffers_blend functions
[mesa.git] / src / mesa / main / APIspec.xml
index 268bd5d3db2f7544e189e682a48fdd9dc7752ca3..50446a9093a21c8f395acd507118178e60f3270f 100644 (file)
                <value name="GL_ALPHA"/>
                <value name="GL_RGB"/>
                <value name="GL_RGBA"/>
+               <value name="GL_BGRA_EXT"/>
                <value name="GL_LUMINANCE"/>
                <value name="GL_LUMINANCE_ALPHA"/>
                <value name="GL_DEPTH_COMPONENT" category="OES_depth_texture"/>
 
        <desc name="format" category="OES_packed_depth_stencil">
                <value name="GL_DEPTH_STENCIL_OES"/>
-
                <desc name="type" error="GL_INVALID_OPERATION">
                        <value name="GL_UNSIGNED_INT_24_8_OES"/>
                </desc>
        </desc>
+
+       <desc name="format" category="EXT_texture_format_BGRA8888">
+               <value name="GL_BGRA_EXT"/>
+
+               <desc name="type" error="GL_INVALID_OPERATION">
+                       <value name="GL_UNSIGNED_BYTE"/>
+               </desc>
+       </desc>
 </template>
 
 <template name="TexEnv">
        <desc name="type">
                <value name="GL_UNSIGNED_BYTE"/>
                <value name="GL_UNSIGNED_SHORT"/>
-               <!-- GL_UNSIGNED_INT is not defined in GLES1.1 headers -->
-               <value name="(0x1405 /* GL_UNSIGNED_INT */)" category="OES_element_index_uint"/>
+               <value name="GL_UNSIGNED_INT" category="OES_element_index_uint"/>
        </desc>
 </template>
 
                        <value name="GL_UNSIGNED_INT_24_8_OES"/>
                </desc>
        </desc>
+
+       <desc name="format" category="EXT_texture_format_BGRA8888">
+               <value name="GL_BGRA_EXT"/>
+
+               <desc name="type" error="GL_INVALID_OPERATION">
+                       <value name="GL_UNSIGNED_BYTE"/>
+               </desc>
+       </desc>
 </template>
 
 <template name="BindTexture">
        <proto>
                <return type="void"/>
                <param name="mode" type="GLenum"/>
-               <param name="first" type="GLint *"/>
-               <param name="count" type="GLsizei *"/>
+               <param name="first" type="const GLint *"/>
+               <param name="count" type="const GLsizei *"/>
                <param name="primcount" type="GLsizei"/>
        </proto>
 
        <desc name="type">
                <value name="GL_UNSIGNED_BYTE"/>
                <value name="GL_UNSIGNED_SHORT"/>
-               <!-- GL_UNSIGNED_INT is not defined in GLES1.1 headers -->
-               <value name="(0x1405 /* GL_UNSIGNED_INT */)" category="OES_element_index_uint"/>
+               <value name="GL_UNSIGNED_INT" category="OES_element_index_uint"/>
        </desc>
 </template>
 
 <api name="mesa" implementation="true">
        <category name="MESA"/>
 
-       <function name="Color4f"  default_prefix="_vbo_" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="Color4f"  default_prefix="_es_" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
        <function name="ClipPlane" template="ClipPlane" gltype="GLdouble"/>
        <function name="CullFace" template="CullFace"/>
 
 
        <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
 
-       <function name="Materialf" default_prefix="_vbo_" template="Material" gltype="GLfloat" expand_vector="true"/>
-       <function name="Materialfv" default_prefix="_vbo_" template="Material" gltype="GLfloat"/>
+       <function name="Materialf" default_prefix="_es_" template="Material" gltype="GLfloat" expand_vector="true"/>
+       <function name="Materialfv" default_prefix="_es_" template="Material" gltype="GLfloat"/>
 
        <function name="PointSize" template="PointSize" gltype="GLfloat"/>
        <function name="PointSizePointer" template="PointSizePointer"/>
        <function name="ClearColor" template="ClearColor" gltype="GLclampf"/>
        <function name="ClearStencil" template="ClearStencil"/>
        <function name="ClearDepth" template="ClearDepth" gltype="GLclampd"/>
+       <function name="ClearDepthf" template="ClearDepth" gltype="GLclampf"/>
 
        <function name="StencilMask" template="StencilMask"/>
        <function name="StencilMaskSeparate" template="StencilMaskSeparate"/>
        <function name="IsEnabled" template="IsEnabled"/>
 
        <function name="DepthRange" template="DepthRange" gltype="GLclampd"/>
+       <function name="DepthRangef" template="DepthRange" gltype="GLclampf"/>
        <function name="Frustum" template="Frustum" gltype="GLdouble"/>
 
        <function name="LoadIdentity" template="LoadIdentity"/>
        <function name="EnableClientState" template="EnableClientState"/>
 
        <function name="GetPointerv" template="GetPointer"/>
-       <function name="Normal3f" default_prefix="_vbo_" template="Normal" gltype="GLfloat" expand_vector="true"/>
+       <function name="Normal3f" default_prefix="_es_" template="Normal" gltype="GLfloat" expand_vector="true"/>
        <function name="NormalPointer" template="NormalPointer"/>
        <function name="TexCoordPointer" template="TexCoordPointer"/>
        <function name="VertexPointer" template="VertexPointer"/>
        <function name="ActiveTextureARB" template="ActiveTexture"/>
        <function name="ClientActiveTextureARB" template="ClientActiveTexture"/>
 
-       <function name="MultiTexCoord4f" default_prefix="_vbo_" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="MultiTexCoord4f" default_prefix="_es_" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
 
        <function name="SampleCoverageARB" template="SampleCoverage" gltype="GLclampf"/>
 
        <function name="PointParameterf" template="PointParameter" gltype="GLfloat" expand_vector="true"/>
        <function name="PointParameterfv" template="PointParameter" gltype="GLfloat"/>
 
-       <function name="VertexAttrib1f" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
-       <function name="VertexAttrib2f" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
-       <function name="VertexAttrib3f" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
-       <function name="VertexAttrib4f" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
-       <function name="VertexAttrib1fv" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
-       <function name="VertexAttrib2fv" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
-       <function name="VertexAttrib3fv" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
-       <function name="VertexAttrib4fv" default_prefix="_vbo_" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
+       <function name="VertexAttrib1f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
+       <function name="VertexAttrib2f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
+       <function name="VertexAttrib3f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
+       <function name="VertexAttrib4f" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="VertexAttrib1fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
+       <function name="VertexAttrib2fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
+       <function name="VertexAttrib3fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
+       <function name="VertexAttrib4fv" default_prefix="_es_" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
 
        <function name="VertexAttribPointerARB" template="VertexAttribPointer"/>
        <function name="EnableVertexAttribArrayARB" template="EnableVertexAttribArray"/>
        <category name="ARB_texture_non_power_of_two"/>
        <!-- disabled due to missing enums
        <category name="EXT_texture_compression_dxt1"/>
+       -->
        <category name="EXT_texture_lod_bias"/>
        <category name="EXT_blend_minmax"/>
-       -->
        <category name="EXT_multi_draw_arrays"/>
        <category name="OES_EGL_image"/>
 
        <category name="OES_matrix_palette"/>
 
-       <function name="Color4f" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="Color4f" external="true" template="Color" gltype="GLfloat" vector_size="4" expand_vector="true"/>
        <function name="Color4ub" template="Color" gltype="GLubyte" vector_size="4" expand_vector="true"/>
        <function name="Color4x" template="Color" gltype="GLfixed" vector_size="4" expand_vector="true"/>
 
        <function name="LineWidth" template="LineWidth" gltype="GLfloat"/>
        <function name="LineWidthx" template="LineWidth" gltype="GLfixed"/>
 
-       <function name="Materialf" template="Material" gltype="GLfloat" expand_vector="true"/>
-       <function name="Materialfv" template="Material" gltype="GLfloat"/>
+       <function name="Materialf" external="true" template="Material" gltype="GLfloat" expand_vector="true"/>
+       <function name="Materialfv" external="true" template="Material" gltype="GLfloat"/>
        <function name="Materialx" template="Material" gltype="GLfixed" expand_vector="true"/>
        <function name="Materialxv" template="Material" gltype="GLfixed"/>
 
        <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
        <function name="ReadPixels" template="ReadPixels"/>
 
-       <function name="GetBooleanv" default_prefix="_es1_" template="GetState" gltype="GLboolean"/>
+       <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
 
        <function name="GetClipPlanef" template="GetClipPlane" gltype="GLfloat"/>
        <function name="GetClipPlanex" template="GetClipPlane" gltype="GLfixed"/>
 
        <function name="GetError" template="GetError"/>
-       <function name="GetFloatv" default_prefix="_es1_" template="GetState" gltype="GLfloat"/>
-       <function name="GetFixedv" default_prefix="_es1_" template="GetState" gltype="GLfixed"/>
-       <function name="GetIntegerv" default_prefix="_es1_" template="GetState" gltype="GLint"/>
+       <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
+       <function name="GetFixedv" template="GetState" gltype="GLfixed"/>
+       <function name="GetIntegerv" template="GetState" gltype="GLint"/>
 
        <function name="GetLightfv" template="GetLight" gltype="GLfloat"/>
        <function name="GetLightxv" template="GetLight" gltype="GLfixed"/>
 
        <function name="GetPointerv" template="GetPointer"/>
 
-       <function name="Normal3f" template="Normal" gltype="GLfloat" expand_vector="true"/>
+       <function name="Normal3f" external="true" template="Normal" gltype="GLfloat" expand_vector="true"/>
        <function name="Normal3x" template="Normal" gltype="GLfixed" expand_vector="true"/>
        <function name="NormalPointer" template="NormalPointer"/>
        <function name="TexCoordPointer" template="TexCoordPointer"/>
        <function name="ActiveTexture" template="ActiveTexture"/>
        <function name="ClientActiveTexture" template="ClientActiveTexture"/>
 
-       <function name="MultiTexCoord4f" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="MultiTexCoord4f" external="true" template="MultiTexCoord" gltype="GLfloat" vector_size="4" expand_vector="true"/>
 
        <function name="SampleCoverage" template="SampleCoverage" gltype="GLclampf"/>
        <function name="SampleCoveragex" template="SampleCoverage" gltype="GLclampx"/>
        <category name="OES_depth_texture"/>
        <category name="OES_packed_depth_stencil"/>
        <category name="OES_standard_derivatives"/>
+       <category name="EXT_texture_format_BGRA8888"/>
 
-       <!-- disabled due to missing enums
        <category name="EXT_texture_compression_dxt1"/>
        <category name="EXT_blend_minmax"/>
-       -->
        <category name="EXT_multi_draw_arrays"/>
        <category name="OES_EGL_image"/>
 
        <function name="PixelStorei" template="PixelStore" gltype="GLint"/>
        <function name="ReadPixels" template="ReadPixels"/>
 
-       <function name="GetBooleanv" default_prefix="_es2_" template="GetState" gltype="GLboolean"/>
+       <function name="GetBooleanv" template="GetState" gltype="GLboolean"/>
        <function name="GetError" template="GetError"/>
-       <function name="GetFloatv" default_prefix="_es2_" template="GetState" gltype="GLfloat"/>
-       <function name="GetIntegerv" default_prefix="_es2_" template="GetState" gltype="GLint"/>
+       <function name="GetFloatv" template="GetState" gltype="GLfloat"/>
+       <function name="GetIntegerv" template="GetState" gltype="GLint"/>
 
        <function name="GetString" template="GetString"/>
 
 
        <function name="BlendFuncSeparate" template="BlendFuncSeparate"/>
 
-       <function name="VertexAttrib1f" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
-       <function name="VertexAttrib2f" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
-       <function name="VertexAttrib3f" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
-       <function name="VertexAttrib4f" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
-       <function name="VertexAttrib1fv" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
-       <function name="VertexAttrib2fv" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
-       <function name="VertexAttrib3fv" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
-       <function name="VertexAttrib4fv" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
+       <function name="VertexAttrib1f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1" expand_vector="true"/>
+       <function name="VertexAttrib2f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2" expand_vector="true"/>
+       <function name="VertexAttrib3f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3" expand_vector="true"/>
+       <function name="VertexAttrib4f" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4" expand_vector="true"/>
+       <function name="VertexAttrib1fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="1"/>
+       <function name="VertexAttrib2fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="2"/>
+       <function name="VertexAttrib3fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="3"/>
+       <function name="VertexAttrib4fv" external="true" template="VertexAttrib" gltype="GLfloat" vector_size="4"/>
 
        <function name="VertexAttribPointer" template="VertexAttribPointer"/>