Trait gfx::pso::DataLink [] [src]

pub trait DataLink<'a>: Sized {
    type Init: 'a;
    fn new() -> Self;
    fn is_active(&self) -> bool;

    fn link_vertex_buffer(&mut self,
                          _: BufferIndex,
                          _: &Self::Init)
                          -> Option<VertexBufferDesc> { ... } fn link_input(&mut self,
                  _: &AttributeVar,
                  _: &Self::Init)
                  -> Option<Result<AttributeDesc, Format>> { ... } fn link_constant_buffer<'b>(&mut self,
                                _: &'b ConstantBufferVar,
                                _: &Self::Init)
                                -> Option<Result<ConstantBufferDesc, ElementError<&'b str>>> { ... } fn link_global_constant(&mut self,
                            _: &ConstVar,
                            _: &Self::Init)
                            -> Option<Result<(), UniformValue>> { ... } fn link_output(&mut self,
                   _: &OutputVar,
                   _: &Self::Init)
                   -> Option<Result<ColorTargetDesc, Format>> { ... } fn link_depth_stencil(&mut self, _: &Self::Init) -> Option<DepthStencilDesc> { ... } fn link_resource_view(&mut self,
                          _: &TextureVar,
                          _: &Self::Init)
                          -> Option<Result<ResourceViewDesc, Format>> { ... } fn link_unordered_view(&mut self,
                           _: &UnorderedVar,
                           _: &Self::Init)
                           -> Option<Result<UnorderedViewDesc, Format>> { ... } fn link_sampler(&mut self,
                    _: &SamplerVar,
                    _: &Self::Init)
                    -> Option<SamplerDesc> { ... } fn link_scissor(&mut self) -> bool { ... } }

The "link" logic portion of a PSO component. Defines the input data for the component.

Associated Types

The assotiated "init" type - a member of the PSO "init" struct.

Required Methods

Create a new empty data link.

Check if this link is actually used by the shader.

Provided Methods

Attempt to link with a vertex buffer containing multiple attributes.

Attempt to link with a vertex attribute.

Attempt to link with a constant buffer.

Attempt to link with a global constant.

Attempt to link with an output render target (RTV).

Attempt to link with a depth-stencil target (DSV).

Attempt to link with a shader resource (SRV).

Attempt to link with an unordered access (UAV).

Attempt to link with a sampler.

Attempt to enable scissor test.

Implementors