Add documentation for GraphicsPipelineAbstract (#1083)

This commit is contained in:
Lucas Kent 2018-10-26 23:53:11 +11:00 committed by GitHub
parent 23709fb011
commit 869c486053
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -322,42 +322,44 @@ impl Drop for Inner {
/// Trait implemented on objects that reference a graphics pipeline. Can be made into a trait /// Trait implemented on objects that reference a graphics pipeline. Can be made into a trait
/// object. /// object.
/// When using this trait `AutoCommandBufferBuilder::draw*` calls will need the buffers to be
/// wrapped in a `vec!()`.
pub unsafe trait GraphicsPipelineAbstract: PipelineLayoutAbstract + RenderPassAbstract + VertexSource<Vec<Arc<BufferAccess + Send + Sync>>> { pub unsafe trait GraphicsPipelineAbstract: PipelineLayoutAbstract + RenderPassAbstract + VertexSource<Vec<Arc<BufferAccess + Send + Sync>>> {
/// Returns an opaque object that represents the inside of the graphics pipeline. /// Returns an opaque object that represents the inside of the graphics pipeline.
fn inner(&self) -> GraphicsPipelineSys; fn inner(&self) -> GraphicsPipelineSys;
/// Returns the index of the subpass this graphics pipeline is rendering to. /// Returns the index of the subpass this graphics pipeline is rendering to.
fn subpass_index(&self) -> u32; fn subpass_index(&self) -> u32;
/// Returns the subpass this graphics pipeline is rendering to. /// Returns the subpass this graphics pipeline is rendering to.
#[inline] #[inline]
fn subpass(self) -> Subpass<Self> where Self: Sized { fn subpass(self) -> Subpass<Self> where Self: Sized {
let index = self.subpass_index(); let index = self.subpass_index();
Subpass::from(self, index).expect("Wrong subpass index in GraphicsPipelineAbstract::subpass") Subpass::from(self, index).expect("Wrong subpass index in GraphicsPipelineAbstract::subpass")
} }
/// Returns true if the line width used by this pipeline is dynamic. /// Returns true if the line width used by this pipeline is dynamic.
fn has_dynamic_line_width(&self) -> bool; fn has_dynamic_line_width(&self) -> bool;
/// Returns the number of viewports and scissors of this pipeline. /// Returns the number of viewports and scissors of this pipeline.
fn num_viewports(&self) -> u32; fn num_viewports(&self) -> u32;
/// Returns true if the viewports used by this pipeline are dynamic. /// Returns true if the viewports used by this pipeline are dynamic.
fn has_dynamic_viewports(&self) -> bool; fn has_dynamic_viewports(&self) -> bool;
/// Returns true if the scissors used by this pipeline are dynamic. /// Returns true if the scissors used by this pipeline are dynamic.
fn has_dynamic_scissors(&self) -> bool; fn has_dynamic_scissors(&self) -> bool;
/// Returns true if the depth bounds used by this pipeline are dynamic. /// Returns true if the depth bounds used by this pipeline are dynamic.
fn has_dynamic_depth_bounds(&self) -> bool; fn has_dynamic_depth_bounds(&self) -> bool;
/// Returns true if the stencil compare masks used by this pipeline are dynamic. /// Returns true if the stencil compare masks used by this pipeline are dynamic.
fn has_dynamic_stencil_compare_mask(&self) -> bool; fn has_dynamic_stencil_compare_mask(&self) -> bool;
/// Returns true if the stencil write masks used by this pipeline are dynamic. /// Returns true if the stencil write masks used by this pipeline are dynamic.
fn has_dynamic_stencil_write_mask(&self) -> bool; fn has_dynamic_stencil_write_mask(&self) -> bool;
/// Returns true if the stencil references used by this pipeline are dynamic. /// Returns true if the stencil references used by this pipeline are dynamic.
fn has_dynamic_stencil_reference(&self) -> bool; fn has_dynamic_stencil_reference(&self) -> bool;
} }