rename upstream-man-pages to upstream-doc
[clinton/guile-figl.git] / upstream-doc / man3 / glBindBufferRange.xml
CommitLineData
7faf1d71
AW
1<?xml version="1.0" encoding="UTF-8"?>\r
2<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook MathML Module V1.1b1//EN"\r
3 "http://www.oasis-open.org/docbook/xml/mathml/1.1CR1/dbmathml.dtd">\r
4<refentry id="glBindBufferRange">\r
5 <refmeta>\r
6 <refmetainfo>\r
7 <copyright>\r
8 <year>2010</year>\r
9 <holder>Khronos Group</holder>\r
10 </copyright>\r
11 </refmetainfo>\r
12 <refentrytitle>glBindBufferRange</refentrytitle>\r
13 <manvolnum>3G</manvolnum>\r
14 </refmeta>\r
15 <refnamediv>\r
16 <refname>glBindBufferRange</refname>\r
17 <refpurpose>bind a range within a buffer object to an indexed buffer target</refpurpose>\r
18 </refnamediv>\r
19 <refsynopsisdiv><title>C Specification</title>\r
20 <funcsynopsis>\r
21 <funcprototype>\r
22 <funcdef>void <function>glBindBufferRange</function></funcdef>\r
23 <paramdef>GLenum<parameter>target</parameter></paramdef>\r
24 <paramdef>GLuint<parameter>index</parameter></paramdef>\r
25 <paramdef>GLuint<parameter>buffer</parameter></paramdef>\r
26 <paramdef>GLintptr<parameter>offset</parameter></paramdef>\r
27 <paramdef>GLsizeiptr<parameter>size</parameter></paramdef>\r
28 </funcprototype>\r
29 </funcsynopsis>\r
30 </refsynopsisdiv>\r
31 <refsect1 id="parameters"><title>Parameters</title>\r
32 <variablelist>\r
33 <varlistentry>\r
34 <term><parameter>target</parameter></term>\r
35 <listitem>\r
36 <para>\r
37 Specify the target of the bind operation. <parameter>target</parameter> must be\r
38 either <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>.\r
39 </para>\r
40 </listitem>\r
41 </varlistentry>\r
42 <varlistentry>\r
43 <term><parameter>index</parameter></term>\r
44 <listitem>\r
45 <para>\r
46 Specify the index of the binding point within the array specified by <parameter>target</parameter>.\r
47 </para>\r
48 </listitem>\r
49 </varlistentry>\r
50 <varlistentry>\r
51 <term><parameter>buffer</parameter></term>\r
52 <listitem>\r
53 <para>\r
54 The name of a buffer object to bind to the specified binding point.\r
55 </para>\r
56 </listitem>\r
57 </varlistentry>\r
58 <varlistentry>\r
59 <term><parameter>offset</parameter></term>\r
60 <listitem>\r
61 <para>\r
62 The starting offset in basic machine units into the buffer object <parameter>buffer</parameter>.\r
63 </para>\r
64 </listitem>\r
65 </varlistentry>\r
66 <varlistentry>\r
67 <term><parameter>size</parameter></term>\r
68 <listitem>\r
69 <para>\r
70 The amount of data in machine units that can be read from the buffet object while used as an indexed target.\r
71 </para>\r
72 </listitem>\r
73 </varlistentry>\r
74 </variablelist>\r
75 </refsect1>\r
76 <refsect1 id="description"><title>Description</title>\r
77 <para>\r
78 <function>glBindBufferRange</function> binds a range the buffer object <parameter>buffer</parameter>\r
79 represented by <parameter>offset</parameter> and <parameter>size</parameter> to the\r
80 binding point at index <parameter>index</parameter> of the array of targets specified by <parameter>target</parameter>.\r
81 Each <parameter>target</parameter> represents an indexed array of buffer binding points, as well\r
82 as a single general binding point that can be used by other buffer manipulation functions such as\r
83 <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry> or\r
84 <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>. In addition to binding\r
85 a range of <parameter>buffer</parameter> to the indexed buffer binding target, <function>glBindBufferRange</function>\r
86 also binds the range to the generic buffer binding point specified by <parameter>target</parameter>.\r
87 </para>\r
88 <para>\r
89 <parameter>offset</parameter> specifies the offset in basic machine units into the buffer object\r
90 <parameter>buffer</parameter> and <parameter>size</parameter> specifies the amount of data that\r
91 can be read from the buffer object while used as an indexed target.\r
92 </para>\r
93 </refsect1>\r
94 <refsect1 id="errors"><title>Errors</title>\r
95 <para>\r
96 <constant>GL_INVALID_ENUM</constant> is generated if <parameter>target</parameter> is not\r
97 <constant>GL_TRANSFORM_FEEDBACK_BUFFER</constant> or <constant>GL_UNIFORM_BUFFER</constant>.\r
98 </para>\r
99 <para>\r
100 <constant>GL_INVALID_VALUE</constant> is generated if <parameter>index</parameter> is greater\r
101 than or equal to the number of <parameter>target</parameter>-specific indexed binding points.\r
102 </para>\r
103 <para>\r
104 <constant>GL_INVALID_VALUE</constant> is generated if <parameter>size</parameter> is less than\r
105 or equal to zero, or if <parameter>offset</parameter> + <parameter>size</parameter> is greater\r
106 than the value of <constant>GL_BUFFER_SIZE</constant>.\r
107 </para>\r
108 <para>\r
109 Additional errors may be generated if <parameter>offset</parameter> violates any\r
110 <parameter>target</parameter>-specific alignmemt restrictions.\r
111 </para>\r
112 </refsect1>\r
113 <refsect1 id="seealso"><title>See Also</title>\r
114 <para>\r
115 <citerefentry><refentrytitle>glGenBuffers</refentrytitle></citerefentry>,\r
116 <citerefentry><refentrytitle>glDeleteBuffers</refentrytitle></citerefentry>,\r
117 <citerefentry><refentrytitle>glBindBuffer</refentrytitle></citerefentry>,\r
118 <citerefentry><refentrytitle>glBindBufferBase</refentrytitle></citerefentry>,\r
119 <citerefentry><refentrytitle>glMapBuffer</refentrytitle></citerefentry>,\r
120 <citerefentry><refentrytitle>glUnmapBuffer</refentrytitle></citerefentry>,\r
121 </para>\r
122 </refsect1>\r
123 <refsect1 id="Copyright"><title>Copyright</title>\r
124 <para>\r
125 Copyright <trademark class="copyright"></trademark> 2010 Khronos Group. \r
126 This material may be distributed subject to the terms and conditions set forth in \r
127 the Open Publication License, v 1.0, 8 June 1999.\r
128 <ulink url="http://opencontent.org/openpub/">http://opencontent.org/openpub/</ulink>.\r
129 </para>\r
130 </refsect1>\r
131</refentry>\r