File: glInvalidateSubFramebuffer.xml

package info (click to toggle)
khronos-opengl-man4 1.0~svn27841-1
  • links: PTS, VCS
  • area: main
  • in suites: jessie, jessie-kfreebsd
  • size: 24,888 kB
  • ctags: 377
  • sloc: xml: 188,408; makefile: 1,153; python: 736; sh: 49; php: 7; sed: 2
file content (169 lines) | stat: -rw-r--r-- 8,894 bytes parent folder | download
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
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"
              "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">
<refentry id="glInvalidateSubFramebuffer">
    <refentryinfo>
        <copyright>
            <year>2013</year>
            <holder>Khronos Group</holder>
        </copyright>
    </refentryinfo>
    <refmeta>
        <refentrytitle>glInvalidateSubFramebuffer</refentrytitle>
        <manvolnum>3G</manvolnum>
    </refmeta>
    <refnamediv>
        <refname>glInvalidateSubFramebuffer</refname>
        <refpurpose>invalidate the content of a region of some or all of a framebuffer object's attachments</refpurpose>
    </refnamediv>
    <refsynopsisdiv><title>C Specification</title>
        <funcsynopsis>
            <funcprototype>
                <funcdef>void <function>glInvalidateSubFramebuffer</function></funcdef>
                <paramdef>GLenum <parameter>target</parameter></paramdef>
                <paramdef>GLsizei <parameter>numAttachments</parameter></paramdef>
                <paramdef>const GLenum * <parameter>attachments</parameter></paramdef>
                <paramdef>GLint <parameter>x</parameter></paramdef>
                <paramdef>GLint <parameter>y</parameter></paramdef>
                <paramdef>GLint <parameter>width</parameter></paramdef>
                <paramdef>GLint <parameter>height</parameter></paramdef>
            </funcprototype>
        </funcsynopsis>
    </refsynopsisdiv>
    <refsect1 id="parameters"><title>Parameters</title>
        <variablelist>
        <varlistentry>
            <term><parameter>target</parameter></term>
            <listitem>
                <para>
                    The target to which the framebuffer is attached. <parameter>target</parameter> must be
                    <constant>GL_FRAMEBUFFER</constant>, <constant>GL_DRAW_FRAMEBUFFER</constant>, or <constant>GL_READ_FRAMEBUFFER</constant>.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>numAttachments</parameter></term>
            <listitem>
                <para>
                    The number of entries in the <parameter>attachments</parameter> array.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>attachments</parameter></term>
            <listitem>
                <para>
                    The address of an array identifying the attachments to be invalidated.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>x</parameter></term>
            <listitem>
                <para>
                    The X offset of the region to be invalidated.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>y</parameter></term>
            <listitem>
                <para>
                    The Y offset of the region to be invalidated.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>width</parameter></term>
            <listitem>
                <para>
                    The width of the region to be invalidated.
                </para>
            </listitem>
        </varlistentry>
        <varlistentry>
            <term><parameter>height</parameter></term>
            <listitem>
                <para>
                    The height of the region to be invalidated.
                </para>
            </listitem>
        </varlistentry>
        </variablelist>
    </refsect1>
    <refsect1 id="description"><title>Description</title>
        <para>
            <function>glInvalidateSubFramebuffer</function> invalidates the content of a region
            of a specified set of attachments of a framebuffer. The framebuffer
            whose content to invalidate is indicated by setting <parameter>target</parameter>
            to the target to which it is bound. <parameter>target</parameter> may be
            <constant>GL_FRAMEBUFFER</constant>, <constant>GL_READ_FRAMEBUFFER</constant> or
            <constant>GL_DRAW_FRAMEBUFFER</constant>. <constant>GL_FRAMEBUFFER</constant>
            is treated as if it were <constant>GL_DRAW_FRAMEBUFFER</constant>.
        </para>
        <para>
            A region within a subset of the framebuffer's attachments may be invalidated.
            This set of attachments are specified in an array whose address is given
            by <parameter>attachments</parameter> and which contains <parameter>numAttachments</parameter>
            elements. The elements of <parameter>attachments</parameter> must be
            <constant>GL_DEPTH_ATTACHMENT</constant>, <constant>GL_STENCIL_ATTACHMENT</constant>
            <constant>GL_DEPTH_STENCIL_ATTACHMENT</constant>, or <constant>GL_COLOR_ATTACHMENT</constant><emphasis>i</emphasis>,
            where <emphasis>i</emphasis> is between zero and the value of <constant>GL_MAX_FRAMEBUFFER_ATTACHMENTS</constant> minus one.
            Furthermore, if the default framebuffer is bound to <parameter>target</parameter>, then
            <parameter>attachments</parameter> may contain <constant>GL_FRONT_LEFT</constant>,
            <constant>GL_FRONT_RIGHT</constant>, <constant>GL_BACK_LEFT</constant>, <constant>GL_BACK_RIGHT</constant>,
            <constant>GL_AUX</constant><emphasis>i</emphasis>, <constant>GL_ACCUM</constant>,
            <constant>GL_COLOR</constant>, <constant>GL_DEPTH</constant>, or <constant>GL_STENCIL</constant>, identifying that specific buffer.
            <constant>GL_COLOR</constant>, is treated as <constant>GL_BACK_LEFT</constant> for a double-buffered context and
            <constant>GL_FRONT_LEFT</constant> for a single-buffered context.
        </para>
        <para>
            The region of the framebuffer attachments to be invalidated is specified
            by <parameter>x</parameter>, <parameter>y</parameter>, <parameter>width</parameter> and <parameter>height</parameter>
            where <parameter>x</parameter> and <parameter>y</parameter> give the offset from the origin (with
            lower-left corner at (0, 0)) and <parameter>width</parameter> and <parameter>height</parameter>
            give the size. Any pixels lying outside of the window allocated
            to the current GL context, or outside of the attachments of the currently
            bound framebuffer object, are ignored.
            After <function>glInvalidateFramebuffer</function> is executed, the contents
            of the specified region of the specified attachments become undefined.
        </para>
    </refsect1>
    <refsect1 id="errors"><title>Errors</title>
        <para>
            <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not one of the
            accepted framebuffer target tokens.
        </para>
        <para>
            <constant>GL_INVALID_ENUM</constant> is generated if any element of <parameter>attachments</parameter> is
            not one of the accepted framebuffer attachment tokens.
        </para>
        <para>
            <constant>GL_INVALID_OPERATION</constant> is generated if element of <parameter>attachments</parameter> is
            <constant>GL_COLOR_ATTACHMENT</constant><emphasis>i</emphasis> where <emphasis>i</emphasis> is greater than or equal
            to the value of <constant>GL_MAX_COLOR_ATTACHMENTS</constant>.
        </para>
    </refsect1>
    <refsect1 id="associatedgets"><title>Associated Gets</title>
        <para>
            <citerefentry><refentrytitle>glGet</refentrytitle></citerefentry> with argument <constant>GL_MAX_COLOR_ATTACHMENTS</constant>
        </para>
    </refsect1>
    <refsect1 id="seealso"><title>See Also</title>
        <para>
            <citerefentry><refentrytitle>glInvalidateTexSubImage</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>glInvalidateTexImage</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>glInvalidateBufferSubData</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>glInvalidateBufferData</refentrytitle></citerefentry>,
            <citerefentry><refentrytitle>glInvalidateFramebuffer</refentrytitle></citerefentry>.
        </para>
    </refsect1>
    <refsect1 id="Copyright"><title>Copyright</title>
        <para>
            Copyright <trademark class="copyright"></trademark> 2013 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.
            <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.
        </para>
    </refsect1>
</refentry>