# ARBShaderSubroutine (LWJGL API)
Date: 2015-07-28

## org.lwjgl.opengl
Class ARBShaderSubroutine

    java.lang.Object
      org.lwjgl.opengl.ARBShaderSubroutine

    public final class ARBShaderSubroutine

extends java.lang.Object

Field Summary
`static int` `GL_ACTIVE_SUBROUTINE_MAX_LENGTH` Accepted by the <pname> parameter of GetProgramStageiv:
`static int` `GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS` Accepted by the <pname> parameter of GetProgramStageiv:
`static int` `GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH` Accepted by the <pname> parameter of GetProgramStageiv:
`static int` `GL_ACTIVE_SUBROUTINE_UNIFORMS` Accepted by the <pname> parameter of GetProgramStageiv:
`static int` `GL_ACTIVE_SUBROUTINES` Accepted by the <pname> parameter of GetProgramStageiv:
`static int` `GL_COMPATIBLE_SUBROUTINES` Accepted by the <pname> parameter of GetActiveSubroutineUniformiv:
`static int` `GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS` Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, GetDoublev, and GetInteger64v:
`static int` `GL_MAX_SUBROUTINES` Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, GetDoublev, and GetInteger64v:
`static int` `GL_NUM_COMPATIBLE_SUBROUTINES` Accepted by the <pname> parameter of GetActiveSubroutineUniformiv:

Method Summary
`static java.lang.String` `glGetActiveSubroutineName(int program, int shadertype, int index, int bufsize)` Overloads glGetActiveSubroutineName.
`static void` `glGetActiveSubroutineName(int program, int shadertype, int index, java.nio.IntBuffer length, java.nio.ByteBuffer name)`
`static void` `glGetActiveSubroutineUniform(int program, int shadertype, int index, int pname, java.nio.IntBuffer values)`
`static int` `glGetActiveSubroutineUniformi(int program, int shadertype, int index, int pname)` Overloads glGetActiveSubroutineUniformiv.
`static java.lang.String` `glGetActiveSubroutineUniformName(int program, int shadertype, int index, int bufsize)` Overloads glGetActiveSubroutineUniformName.
`static void` `glGetActiveSubroutineUniformName(int program, int shadertype, int index, java.nio.IntBuffer length, java.nio.ByteBuffer name)`
`static void` `glGetProgramStage(int program, int shadertype, int pname, java.nio.IntBuffer values)`
`static int` `glGetProgramStagei(int program, int shadertype, int pname)` Overloads glGetProgramStageiv.
`static int` `glGetSubroutineIndex(int program, int shadertype, java.nio.ByteBuffer name)`
`static int` `glGetSubroutineIndex(int program, int shadertype, java.lang.CharSequence name)` Overloads glGetSubroutineIndex.
`static int` `glGetSubroutineUniformLocation(int program, int shadertype, java.nio.ByteBuffer name)`
`static int` `glGetSubroutineUniformLocation(int program, int shadertype, java.lang.CharSequence name)` Overloads glGetSubroutineUniformLocation.
`static void` `glGetUniformSubroutineu(int shadertype, int location, java.nio.IntBuffer params)`
`static int` `glGetUniformSubroutineui(int shadertype, int location)` Overloads glGetUniformSubroutineuiv.
`static void` `glUniformSubroutinesu(int shadertype, java.nio.IntBuffer indices)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Field Detail

### GL_ACTIVE_SUBROUTINES

    public static final int GL_ACTIVE_SUBROUTINES

  Accepted by the <pname> parameter of GetProgramStageiv:

  See Also:
    Constant Field Values

### GL_ACTIVE_SUBROUTINE_UNIFORMS

    public static final int GL_ACTIVE_SUBROUTINE_UNIFORMS

  Accepted by the <pname> parameter of GetProgramStageiv:

  See Also:
    Constant Field Values

### GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS

    public static final int GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS

  Accepted by the <pname> parameter of GetProgramStageiv:

  See Also:
    Constant Field Values

### GL_ACTIVE_SUBROUTINE_MAX_LENGTH

    public static final int GL_ACTIVE_SUBROUTINE_MAX_LENGTH

  Accepted by the <pname> parameter of GetProgramStageiv:

  See Also:
    Constant Field Values

### GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH

    public static final int GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH

  Accepted by the <pname> parameter of GetProgramStageiv:

  See Also:
    Constant Field Values

### GL_MAX_SUBROUTINES

    public static final int GL_MAX_SUBROUTINES

  Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, GetDoublev, and GetInteger64v:

  See Also:
    Constant Field Values

### GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS

    public static final int GL_MAX_SUBROUTINE_UNIFORM_LOCATIONS

  Accepted by the <pname> parameter of GetBooleanv, GetIntegerv, GetFloatv, GetDoublev, and GetInteger64v:

  See Also:
    Constant Field Values

### GL_NUM_COMPATIBLE_SUBROUTINES

    public static final int GL_NUM_COMPATIBLE_SUBROUTINES

  Accepted by the <pname> parameter of GetActiveSubroutineUniformiv:

  See Also:
    Constant Field Values

### GL_COMPATIBLE_SUBROUTINES

    public static final int GL_COMPATIBLE_SUBROUTINES

  Accepted by the <pname> parameter of GetActiveSubroutineUniformiv:

  See Also:
    Constant Field Values

Method Detail

### glGetSubroutineUniformLocation

    public static int glGetSubroutineUniformLocation(int program,
                                                     int shadertype,
                                                     java.nio.ByteBuffer name)

### glGetSubroutineUniformLocation

    public static int glGetSubroutineUniformLocation(int program,
                                                     int shadertype,
                                                     java.lang.CharSequence name)

  Overloads glGetSubroutineUniformLocation.

### glGetSubroutineIndex

    public static int glGetSubroutineIndex(int program,
                                           int shadertype,
                                           java.nio.ByteBuffer name)

### glGetSubroutineIndex

    public static int glGetSubroutineIndex(int program,
                                           int shadertype,
                                           java.lang.CharSequence name)

  Overloads glGetSubroutineIndex.

### glGetActiveSubroutineUniform

    public static void glGetActiveSubroutineUniform(int program,
                                                    int shadertype,
                                                    int index,
                                                    int pname,
                                                    java.nio.IntBuffer values)

### glGetActiveSubroutineUniformi

    public static int glGetActiveSubroutineUniformi(int program,
                                                    int shadertype,
                                                    int index,
                                                    int pname)

  Overloads glGetActiveSubroutineUniformiv.

### glGetActiveSubroutineUniformName

    public static void glGetActiveSubroutineUniformName(int program,
                                                        int shadertype,
                                                        int index,
                                                        java.nio.IntBuffer length,
                                                        java.nio.ByteBuffer name)

### glGetActiveSubroutineUniformName

    public static java.lang.String glGetActiveSubroutineUniformName(int program,
                                                                    int shadertype,
                                                                    int index,
                                                                    int bufsize)

  Overloads glGetActiveSubroutineUniformName.

### glGetActiveSubroutineName

    public static void glGetActiveSubroutineName(int program,
                                                 int shadertype,
                                                 int index,
                                                 java.nio.IntBuffer length,
                                                 java.nio.ByteBuffer name)

### glGetActiveSubroutineName

    public static java.lang.String glGetActiveSubroutineName(int program,
                                                             int shadertype,
                                                             int index,
                                                             int bufsize)

  Overloads glGetActiveSubroutineName.

### glUniformSubroutinesu

    public static void glUniformSubroutinesu(int shadertype,
                                             java.nio.IntBuffer indices)

### glGetUniformSubroutineu

    public static void glGetUniformSubroutineu(int shadertype,
                                               int location,
                                               java.nio.IntBuffer params)

### glGetUniformSubroutineui

    public static int glGetUniformSubroutineui(int shadertype,
                                               int location)

  Overloads glGetUniformSubroutineuiv.

### glGetProgramStage

    public static void glGetProgramStage(int program,
                                         int shadertype,
                                         int pname,
                                         java.nio.IntBuffer values)

### glGetProgramStagei

    public static int glGetProgramStagei(int program,
                                         int shadertype,
                                         int pname)

  Overloads glGetProgramStageiv.

Copyright © 2002-2009 lwjgl.org. All Rights Reserved.