[][src]Trait gfx::CommandBuffer

pub trait CommandBuffer<R>: 'static + Send where
    R: Resources
{ fn reset(&mut self);
fn bind_pipeline_state(&mut self, <R as Resources>::PipelineStateObject);
fn bind_vertex_buffers(&mut self, VertexBufferSet<R>);
fn bind_constant_buffers(&mut self, &[ConstantBufferParam<R>]);
fn bind_global_constant(&mut self, usize, UniformValue);
fn bind_resource_views(&mut self, &[ResourceViewParam<R>]);
fn bind_unordered_views(&mut self, &[UnorderedViewParam<R>]);
fn bind_samplers(&mut self, &[SamplerParam<R>]);
fn bind_pixel_targets(&mut self, PixelTargetSet<R>);
fn bind_index(&mut self, <R as Resources>::Buffer, IndexType);
fn set_scissor(&mut self, Rect);
fn set_ref_values(&mut self, RefValues);
fn copy_buffer(
        &mut self,
        src: <R as Resources>::Buffer,
        dst: <R as Resources>::Buffer,
        src_offset_bytes: usize,
        dst_offset_bytes: usize,
        size_bytes: usize
    );
fn copy_buffer_to_texture(
        &mut self,
        src: <R as Resources>::Buffer,
        src_offset_bytes: usize,
        dst: TextureCopyRegion<<R as Resources>::Texture>
    );
fn copy_texture_to_buffer(
        &mut self,
        src: TextureCopyRegion<<R as Resources>::Texture>,
        dst: <R as Resources>::Buffer,
        dst_offset_bytes: usize
    );
fn copy_texture_to_texture(
        &mut self,
        src: TextureCopyRegion<<R as Resources>::Texture>,
        dst: TextureCopyRegion<<R as Resources>::Texture>
    );
fn update_buffer(
        &mut self,
        <R as Resources>::Buffer,
        data: &[u8],
        offset: usize
    );
fn update_texture(
        &mut self,
        TextureCopyRegion<<R as Resources>::Texture>,
        data: &[u8]
    );
fn generate_mipmap(&mut self, <R as Resources>::ShaderResourceView);
fn clear_color(&mut self, <R as Resources>::RenderTargetView, ClearColor);
fn clear_depth_stencil(
        &mut self,
        <R as Resources>::DepthStencilView,
        Option<f32>,
        Option<u8>
    );
fn call_draw(&mut self, u32, u32, Option<(u32, u32)>);
fn call_draw_indexed(&mut self, u32, u32, u32, Option<(u32, u32)>); }

An interface of the abstract command buffer. It collects commands in an efficient API-specific manner, to be ready for execution on the device.

Required methods

fn reset(&mut self)

Reset the command buffer contents, retain the allocated storage

fn bind_pipeline_state(&mut self, <R as Resources>::PipelineStateObject)

Bind a pipeline state object

fn bind_vertex_buffers(&mut self, VertexBufferSet<R>)

Bind a complete set of vertex buffers

fn bind_constant_buffers(&mut self, &[ConstantBufferParam<R>])

Bind a complete set of constant buffers

fn bind_global_constant(&mut self, usize, UniformValue)

Bind a global constant

fn bind_resource_views(&mut self, &[ResourceViewParam<R>])

Bind a complete set of shader resource views

fn bind_unordered_views(&mut self, &[UnorderedViewParam<R>])

Bind a complete set of unordered access views

fn bind_samplers(&mut self, &[SamplerParam<R>])

Bind a complete set of samplers

fn bind_pixel_targets(&mut self, PixelTargetSet<R>)

Bind a complete set of pixel targets, including multiple colors views and an optional depth/stencil view.

fn bind_index(&mut self, <R as Resources>::Buffer, IndexType)

Bind an index buffer

fn set_scissor(&mut self, Rect)

Set scissor rectangle

fn set_ref_values(&mut self, RefValues)

Set reference values for the blending and stencil front/back

fn copy_buffer(
    &mut self,
    src: <R as Resources>::Buffer,
    dst: <R as Resources>::Buffer,
    src_offset_bytes: usize,
    dst_offset_bytes: usize,
    size_bytes: usize
)

Copy part of a buffer to another

fn copy_buffer_to_texture(
    &mut self,
    src: <R as Resources>::Buffer,
    src_offset_bytes: usize,
    dst: TextureCopyRegion<<R as Resources>::Texture>
)

Copy part of a buffer to a texture

fn copy_texture_to_buffer(
    &mut self,
    src: TextureCopyRegion<<R as Resources>::Texture>,
    dst: <R as Resources>::Buffer,
    dst_offset_bytes: usize
)

Copy part of a texture to a buffer

fn copy_texture_to_texture(
    &mut self,
    src: TextureCopyRegion<<R as Resources>::Texture>,
    dst: TextureCopyRegion<<R as Resources>::Texture>
)

Copy part of one texture into another

fn update_buffer(
    &mut self,
    <R as Resources>::Buffer,
    data: &[u8],
    offset: usize
)

Update a vertex/index/uniform buffer

fn update_texture(
    &mut self,
    TextureCopyRegion<<R as Resources>::Texture>,
    data: &[u8]
)

Update a texture

fn generate_mipmap(&mut self, <R as Resources>::ShaderResourceView)

fn clear_color(&mut self, <R as Resources>::RenderTargetView, ClearColor)

Clear color target

fn clear_depth_stencil(
    &mut self,
    <R as Resources>::DepthStencilView,
    Option<f32>,
    Option<u8>
)

fn call_draw(&mut self, u32, u32, Option<(u32, u32)>)

Draw a primitive

fn call_draw_indexed(&mut self, u32, u32, u32, Option<(u32, u32)>)

Draw a primitive with index buffer

Loading content...

Implementations on Foreign Types

impl Buffer<DummyResources> for DummyCommandBuffer[src]

Loading content...

Implementors

Loading content...