Trait gfx_core::command::Buffer [] [src]

pub trait Buffer<R: Resources>: Send {
    fn reset(&mut self);
fn bind_pipeline_state(&mut self, _: R::PipelineStateObject);
fn bind_vertex_buffers(&mut self, _: VertexBufferSet<R>);
fn bind_constant_buffers(&mut self, _: &[ConstantBufferParam<R>]);
fn bind_global_constant(&mut self, _: Location, _: 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::Buffer, _: IndexType);
fn set_scissor(&mut self, _: Rect);
fn set_ref_values(&mut self, _: RefValues);
fn copy_buffer(
        &mut self,
        src: R::Buffer,
        dst: R::Buffer,
        src_offset_bytes: usize,
        dst_offset_bytes: usize,
        size_bytes: usize
    );
fn copy_buffer_to_texture(
        &mut self,
        src: R::Buffer,
        src_offset_bytes: usize,
        dst: R::Texture,
        _: Kind,
        _: Option<CubeFace>,
        _: RawImageInfo
    );
fn copy_texture_to_buffer(
        &mut self,
        src: R::Texture,
        _: Kind,
        _: Option<CubeFace>,
        _: RawImageInfo,
        dst: R::Buffer,
        dst_offset_bytes: usize
    );
fn update_buffer(&mut self, _: R::Buffer, data: &[u8], offset: usize);
fn update_texture(
        &mut self,
        _: R::Texture,
        _: Kind,
        _: Option<CubeFace>,
        data: &[u8],
        _: RawImageInfo
    );
fn generate_mipmap(&mut self, _: R::ShaderResourceView);
fn clear_color(&mut self, _: R::RenderTargetView, _: ClearColor);
fn clear_depth_stencil(
        &mut self,
        _: R::DepthStencilView,
        _: Option<Depth>,
        _: Option<Stencil>
    );
fn call_draw(
        &mut self,
        _: VertexCount,
        _: VertexCount,
        _: Option<InstanceParams>
    );
fn call_draw_indexed(
        &mut self,
        _: VertexCount,
        _: VertexCount,
        _: VertexCount,
        _: Option<InstanceParams>
    ); }

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

Reset the command buffer contents, retain the allocated storage

Bind a pipeline state object

Bind a complete set of vertex buffers

Bind a complete set of constant buffers

Bind a global constant

Bind a complete set of shader resource views

Bind a complete set of unordered access views

Bind a complete set of samplers

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

Bind an index buffer

Set scissor rectangle

Set reference values for the blending and stencil front/back

Copy part of a buffer to another

Copy part of a buffer to a texture

Copy part of a texture to a buffer

Update a vertex/index/uniform buffer

Update a texture

Clear color target

Draw a primitive

Draw a primitive with index buffer

Implementors