1bf215546Sopenharmony_ci<?xml version="1.0"?> 2bf215546Sopenharmony_ci<!DOCTYPE OpenGLAPI SYSTEM "gl_API.dtd"> 3bf215546Sopenharmony_ci 4bf215546Sopenharmony_ci<!-- Note: no GLX protocol info yet. --> 5bf215546Sopenharmony_ci 6bf215546Sopenharmony_ci<OpenGLAPI> 7bf215546Sopenharmony_ci 8bf215546Sopenharmony_ci<category name="GL_ARB_shader_subroutine" number="90"> 9bf215546Sopenharmony_ci 10bf215546Sopenharmony_ci <function name="GetSubroutineUniformLocation"> 11bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 12bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 13bf215546Sopenharmony_ci <param name="name" type="const GLchar *"/> 14bf215546Sopenharmony_ci <return type="GLint"/> 15bf215546Sopenharmony_ci </function> 16bf215546Sopenharmony_ci 17bf215546Sopenharmony_ci <function name="GetSubroutineIndex"> 18bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 19bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 20bf215546Sopenharmony_ci <param name="name" type="const GLchar *"/> 21bf215546Sopenharmony_ci <return type="GLuint"/> 22bf215546Sopenharmony_ci </function> 23bf215546Sopenharmony_ci 24bf215546Sopenharmony_ci <function name="GetActiveSubroutineUniformiv"> 25bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 26bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 27bf215546Sopenharmony_ci <param name="index" type="GLuint"/> 28bf215546Sopenharmony_ci <param name="pname" type="GLenum"/> 29bf215546Sopenharmony_ci <param name="values" type="GLint *" output="true"/> 30bf215546Sopenharmony_ci </function> 31bf215546Sopenharmony_ci 32bf215546Sopenharmony_ci <function name="GetActiveSubroutineUniformName"> 33bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 34bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 35bf215546Sopenharmony_ci <param name="index" type="GLuint"/> 36bf215546Sopenharmony_ci <param name="bufsize" type="GLsizei"/> 37bf215546Sopenharmony_ci <param name="length" type="GLsizei *" output="true"/> 38bf215546Sopenharmony_ci <param name="name" type="GLchar *" output="true"/> 39bf215546Sopenharmony_ci </function> 40bf215546Sopenharmony_ci 41bf215546Sopenharmony_ci <function name="GetActiveSubroutineName"> 42bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 43bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 44bf215546Sopenharmony_ci <param name="index" type="GLuint"/> 45bf215546Sopenharmony_ci <param name="bufsize" type="GLsizei"/> 46bf215546Sopenharmony_ci <param name="length" type="GLsizei *" output="true"/> 47bf215546Sopenharmony_ci <param name="name" type="GLchar *" output="true"/> 48bf215546Sopenharmony_ci </function> 49bf215546Sopenharmony_ci 50bf215546Sopenharmony_ci <function name="UniformSubroutinesuiv" exec="dlist"> 51bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 52bf215546Sopenharmony_ci <param name="count" type="GLsizei"/> 53bf215546Sopenharmony_ci <param name="indices" type="const GLuint *" count="count"/> 54bf215546Sopenharmony_ci </function> 55bf215546Sopenharmony_ci 56bf215546Sopenharmony_ci <function name="GetUniformSubroutineuiv"> 57bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 58bf215546Sopenharmony_ci <param name="location" type="GLint"/> 59bf215546Sopenharmony_ci <param name="params" type="GLuint *" output="true"/> 60bf215546Sopenharmony_ci </function> 61bf215546Sopenharmony_ci 62bf215546Sopenharmony_ci <function name="GetProgramStageiv"> 63bf215546Sopenharmony_ci <param name="program" type="GLuint"/> 64bf215546Sopenharmony_ci <param name="shadertype" type="GLenum"/> 65bf215546Sopenharmony_ci <param name="pname" type="GLenum"/> 66bf215546Sopenharmony_ci <param name="values" type="GLint *" output="true"/> 67bf215546Sopenharmony_ci </function> 68bf215546Sopenharmony_ci 69bf215546Sopenharmony_ci <enum name="ACTIVE_SUBROUTINES" value="0x8DE5"/> 70bf215546Sopenharmony_ci <enum name="ACTIVE_SUBROUTINE_UNIFORMS" value="0x8DE6"/> 71bf215546Sopenharmony_ci <enum name="ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8E47"/> 72bf215546Sopenharmony_ci <enum name="ACTIVE_SUBROUTINE_MAX_LENGTH" value="0x8E48"/> 73bf215546Sopenharmony_ci <enum name="ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH" value="0x8E49"/> 74bf215546Sopenharmony_ci 75bf215546Sopenharmony_ci <enum name="MAX_SUBROUTINES" value="0x8DE7"/> 76bf215546Sopenharmony_ci <enum name="MAX_SUBROUTINE_UNIFORM_LOCATIONS" value="0x8DE8"/> 77bf215546Sopenharmony_ci 78bf215546Sopenharmony_ci <enum name="NUM_COMPATIBLE_SUBROUTINES" value="0x8E4A"/> 79bf215546Sopenharmony_ci <enum name="COMPATIBLE_SUBROUTINES" value="0x8E4B"/> 80bf215546Sopenharmony_ci 81bf215546Sopenharmony_ci <!-- UNIFORM_SIZE, UNIFORM_NAME_LENGTH already in GL3.1 --> 82bf215546Sopenharmony_ci 83bf215546Sopenharmony_ci</category> 84bf215546Sopenharmony_ci</OpenGLAPI> 85