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