File: glGetProgramStage.xml

package info (click to toggle)
khronos-opengl-man4 1.0~svn33624-3
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 6,304 kB
  • sloc: xml: 93,066; makefile: 730; python: 627; javascript: 55; sh: 50; php: 4
file content (145 lines) | stat: -rw-r--r-- 7,231 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
<!DOCTYPE refentry [ <!ENTITY % mathent SYSTEM "math.ent"> %mathent; ]>

<!-- Converted by db4-upgrade version 1.1 -->

<refentry xmlns="http://docbook.org/ns/docbook" version="5.0" xml:id="glGetProgramStage">
    <info>
        <copyright>
            <year>2010-2014</year>
            <holder>Khronos Group.</holder>
        </copyright>
    </info>
    <refmeta>
        <refentrytitle>glGetProgramStage</refentrytitle>
        <manvolnum>3G</manvolnum>
    </refmeta>
    <refnamediv>
        <refname>glGetProgramStage</refname>
        <refpurpose>retrieve properties of a program object corresponding to a specified shader stage</refpurpose>
    </refnamediv>
    <refsynopsisdiv><title>C Specification</title>
        <funcsynopsis>
            <funcprototype>
                <funcdef>void <function>glGetProgramStageiv</function></funcdef>
                <paramdef>GLuint <parameter>program</parameter></paramdef>
                <paramdef>GLenum <parameter>shadertype</parameter></paramdef>
                <paramdef>GLenum <parameter>pname</parameter></paramdef>
                <paramdef>GLint *<parameter>values</parameter></paramdef>
            </funcprototype>
        </funcsynopsis>
    </refsynopsisdiv>
    <refsect1 xml:id="parameters"><title>Parameters</title>
        <variablelist>
        <varlistentry>
            <term><parameter>program</parameter></term>
            <listitem>
                <para>
                    Specifies the name of the program containing shader stage.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>shadertype</parameter></term>
            <listitem>
                <para>
                    Specifies the shader stage from which to query for the subroutine parameter. <parameter>shadertype</parameter>
                    must be one of <constant>GL_VERTEX_SHADER</constant>, <constant>GL_TESS_CONTROL_SHADER</constant>,
                    <constant>GL_TESS_EVALUATION_SHADER</constant>, <constant>GL_GEOMETRY_SHADER</constant> or
                    <constant>GL_FRAGMENT_SHADER</constant>.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>pname</parameter></term>
            <listitem>
                <para>
                    Specifies the parameter of the shader to query. <parameter>pname</parameter>
                    must be <constant>GL_ACTIVE_SUBROUTINE_UNIFORMS</constant>,
                    <constant>GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS</constant>,
                    <constant>GL_ACTIVE_SUBROUTINES</constant>,
                    <constant>GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH</constant>,
                    or <constant>GL_ACTIVE_SUBROUTINE_MAX_LENGTH</constant>.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>values</parameter></term>
            <listitem>
                <para>
                    Specifies the address of a variable into which the queried value or values will be placed.
                </para>
            </listitem>
        </varlistentry>
        </variablelist>
    </refsect1>
    <refsect1 xml:id="description"><title>Description</title>
        <para>
            <function>glGetProgramStage</function> queries a parameter of a shader stage attached to a program object.
            <parameter>program</parameter> contains the name of the program to which the shader is attached. <parameter>shadertype</parameter>
            specifies the stage from which to query the parameter. <parameter>pname</parameter> specifies which parameter
            should be queried. The value or values of the parameter to be queried is returned in the variable whose address
            is given in <parameter>values</parameter>.
        </para>
        <para>
            If <parameter>pname</parameter> is <constant>GL_ACTIVE_SUBROUTINE_UNIFORMS</constant>, the number
            of active subroutine variables in the stage is returned in <parameter>values</parameter>.
        </para>
        <para>
            If <parameter>pname</parameter> is <constant>GL_ACTIVE_SUBROUTINE_UNIFORM_LOCATIONS</constant>,
            the number of active subroutine variable locations in the stage is returned in <parameter>values</parameter>.
        </para>
        <para>
            If <parameter>pname</parameter> is <constant>GL_ACTIVE_SUBROUTINES</constant>,
            the number of active subroutines in the stage is returned in <parameter>values</parameter>.
        </para>
        <para>
            If <parameter>pname</parameter> is <constant>GL_ACTIVE_SUBROUTINE_UNIFORM_MAX_LENGTH</constant>,
            the length of the longest subroutine uniform for the stage is returned in <parameter>values</parameter>.
        </para>
        <para>
            If <parameter>pname</parameter> is <constant>GL_ACTIVE_SUBROUTINE_MAX_LENGTH</constant>,
            the length of the longest subroutine name for the stage is returned in <parameter>values</parameter>. The
            returned name length includes space for the null-terminator.
        </para>
        <para>
            If there is no shader present of type <parameter>shadertype</parameter>, the returned value will be consistent
            with a shader containing no subroutines or subroutine uniforms.
        </para>
    </refsect1>
    <refsect1 xml:id="errors"><title>Errors</title>
        <para>
            <constant>GL_INVALID_ENUM</constant> is generated if <parameter>shadertype</parameter> or <parameter>pname</parameter>
            is not one of the accepted values.
        </para>
        <para>
            <constant>GL_INVALID_VALUE</constant> is generated if <parameter>program</parameter> is not the name of an
            existing program object.
        </para>
    </refsect1>
    <refsect1 xml:id="versions"><title>Version Support</title>
        <informaltable>
            <tgroup cols="13" align="left">
                <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="apifunchead.xml" xpointer="xpointer(/*/*)"/>
                <tbody>
                    <row>
                        <entry><function>glGetProgramStageiv</function></entry>
                        <xi:include xmlns:xi="http://www.w3.org/2001/XInclude" href="apiversion.xml" xpointer="xpointer(/*/*[@role='40']/*)"/>
                    </row>
                </tbody>
            </tgroup>
        </informaltable>
    </refsect1>
    <refsect1 xml:id="seealso"><title>See Also</title>
        <para>
            <citerefentry><refentrytitle>glGetProgram</refentrytitle></citerefentry>
        </para>
    </refsect1>
    <refsect1 xml:id="Copyright"><title>Copyright</title>
        <para>
            Copyright <trademark class="copyright"/> 2010-2014 Khronos Group.
            This material may be distributed subject to the terms and conditions set forth in
            the Open Publication License, v 1.0, 8 June 1999.
            <link xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="http://opencontent.org/openpub/">http://opencontent.org/openpub/</link>.
        </para>
    </refsect1>
</refentry>