summaryrefslogtreecommitdiffstats
path: root/src/gallium/docs/build/html/context.html
diff options
context:
space:
mode:
Diffstat (limited to 'src/gallium/docs/build/html/context.html')
-rw-r--r--src/gallium/docs/build/html/context.html69
1 files changed, 52 insertions, 17 deletions
diff --git a/src/gallium/docs/build/html/context.html b/src/gallium/docs/build/html/context.html
index bd8166ac891..21bab454806 100644
--- a/src/gallium/docs/build/html/context.html
+++ b/src/gallium/docs/build/html/context.html
@@ -68,6 +68,18 @@ fragment samplers, and they are bound in groups.
fragment shaders, and <tt class="docutils literal"><span class="pre">*_vs_state</span></tt> is for vertex shaders.</li>
</ul>
</div>
+<div class="section" id="resource-binding-state">
+<h3>Resource Binding State<a class="headerlink" href="#resource-binding-state" title="Permalink to this headline">¶</a></h3>
+<p>This state describes how resources in various flavours (textures,
+buffers, surfaces) are bound to the driver.</p>
+<ul class="simple">
+<li><tt class="docutils literal"><span class="pre">set_constant_buffer</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">set_framebuffer_state</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">set_fragment_sampler_textures</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">set_vertex_sampler_textures</span></tt></li>
+<li><tt class="docutils literal"><span class="pre">set_vertex_buffers</span></tt></li>
+</ul>
+</div>
<div class="section" id="non-cso-state">
<h3>Non-CSO State<a class="headerlink" href="#non-cso-state" title="Permalink to this headline">¶</a></h3>
<p>These pieces of state are too small, variable, and/or trivial to have CSO
@@ -77,42 +89,61 @@ objects. They all follow simple, one-method binding calls, e.g.
<li><tt class="docutils literal"><span class="pre">set_edgeflags</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_blend_color</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_clip_state</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">set_constant_buffer</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">set_framebuffer_state</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_polygon_stipple</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_scissor_state</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_viewport_state</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">set_fragment_sampler_textures</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">set_vertex_sampler_textures</span></tt></li>
-<li><tt class="docutils literal"><span class="pre">set_vertex_buffers</span></tt></li>
<li><tt class="docutils literal"><span class="pre">set_vertex_elements</span></tt></li>
</ul>
</div>
+<div class="section" id="clearing">
+<h3>Clearing<a class="headerlink" href="#clearing" title="Permalink to this headline">¶</a></h3>
+<p><tt class="docutils literal"><span class="pre">clear</span></tt> initializes some or all of the surfaces currently bound to
+the framebuffer to particular RGBA, depth, or stencil values.</p>
+<p>Clear is one of the most difficult concepts to nail down to a single
+interface and it seems likely that we will want to add additional
+clear paths, for instance clearing surfaces not bound to the
+framebuffer, or read-modify-write clears such as depth-only or
+stencil-only clears of packed depth-stencil buffers.</p>
+</div>
+<div class="section" id="drawing">
+<h3>Drawing<a class="headerlink" href="#drawing" title="Permalink to this headline">¶</a></h3>
+<p><tt class="docutils literal"><span class="pre">draw_arrays</span></tt></p>
+<p><tt class="docutils literal"><span class="pre">draw_elements</span></tt></p>
+<p><tt class="docutils literal"><span class="pre">draw_range_elements</span></tt></p>
+</div>
<div class="section" id="queries">
<h3>Queries<a class="headerlink" href="#queries" title="Permalink to this headline">¶</a></h3>
+<p>Queries gather some statistic from the 3D pipeline over one or more
+draws. Queries may be nested, though no state tracker currently
+exercises this.</p>
<p>Queries can be created with <tt class="docutils literal"><span class="pre">create_query</span></tt> and deleted with
<tt class="docutils literal"><span class="pre">destroy_query</span></tt>. To enable a query, use <tt class="docutils literal"><span class="pre">begin_query</span></tt>, and when finished,
use <tt class="docutils literal"><span class="pre">end_query</span></tt> to stop the query. Finally, <tt class="docutils literal"><span class="pre">get_query_result</span></tt> is used
to retrieve the results.</p>
</div>
-<div class="section" id="vbo-drawing">
-<h3>VBO Drawing<a class="headerlink" href="#vbo-drawing" title="Permalink to this headline">¶</a></h3>
-<p><tt class="docutils literal"><span class="pre">draw_arrays</span></tt></p>
-<p><tt class="docutils literal"><span class="pre">draw_elements</span></tt></p>
-<p><tt class="docutils literal"><span class="pre">draw_range_elements</span></tt></p>
+<div class="section" id="flushing">
+<h3>Flushing<a class="headerlink" href="#flushing" title="Permalink to this headline">¶</a></h3>
<p><tt class="docutils literal"><span class="pre">flush</span></tt></p>
</div>
-<div class="section" id="surface-drawing">
-<h3>Surface Drawing<a class="headerlink" href="#surface-drawing" title="Permalink to this headline">¶</a></h3>
+<div class="section" id="resource-busy-queries">
+<h3>Resource Busy Queries<a class="headerlink" href="#resource-busy-queries" title="Permalink to this headline">¶</a></h3>
+<p><tt class="docutils literal"><span class="pre">is_texture_referenced</span></tt></p>
+<p><tt class="docutils literal"><span class="pre">is_buffer_referenced</span></tt></p>
+</div>
+<div class="section" id="blitting">
+<h3>Blitting<a class="headerlink" href="#blitting" title="Permalink to this headline">¶</a></h3>
<p>These methods emulate classic blitter controls. They are not guaranteed to be
available; if they are set to NULL, then they are not present.</p>
+<p>These methods operate directly on <tt class="docutils literal"><span class="pre">pipe_surface</span></tt> objects, and stand
+apart from any 3D state in the context. Blitting functionality may be
+moved to a separate abstraction at some point in the future.</p>
<p><tt class="docutils literal"><span class="pre">surface_fill</span></tt> performs a fill operation on a section of a surface.</p>
<p><tt class="docutils literal"><span class="pre">surface_copy</span></tt> blits a region of a surface to a region of another surface,
provided that both surfaces are the same format. The source and destination
may be the same surface, and overlapping blits are permitted.</p>
-<p><tt class="docutils literal"><span class="pre">clear</span></tt> initializes entire buffers to an RGBA, depth, or stencil value,
-depending on the formats of the buffers. Use <tt class="docutils literal"><span class="pre">set_framebuffer_state</span></tt> to
-specify the buffers to clear.</p>
+<p>The interfaces to these calls are likely to change to make it easier
+for a driver to batch multiple blits with the same source and
+destination.</p>
</div>
</div>
</div>
@@ -128,10 +159,14 @@ specify the buffers to clear.</p>
<li><a class="reference external" href="">Context</a><ul>
<li><a class="reference external" href="#methods">Methods</a><ul>
<li><a class="reference external" href="#cso-state">CSO State</a></li>
+<li><a class="reference external" href="#resource-binding-state">Resource Binding State</a></li>
<li><a class="reference external" href="#non-cso-state">Non-CSO State</a></li>
+<li><a class="reference external" href="#clearing">Clearing</a></li>
+<li><a class="reference external" href="#drawing">Drawing</a></li>
<li><a class="reference external" href="#queries">Queries</a></li>
-<li><a class="reference external" href="#vbo-drawing">VBO Drawing</a></li>
-<li><a class="reference external" href="#surface-drawing">Surface Drawing</a></li>
+<li><a class="reference external" href="#flushing">Flushing</a></li>
+<li><a class="reference external" href="#resource-busy-queries">Resource Busy Queries</a></li>
+<li><a class="reference external" href="#blitting">Blitting</a></li>
</ul>
</li>
</ul>