Struct wgpu_core::command::bundle::PipelineState
source · struct PipelineState {
id: RenderPipelineId,
layout_id: Valid<PipelineLayoutId>,
steps: Vec<VertexStep>,
push_constant_ranges: ArrayVec<PushConstantRange, { SHADER_STAGE_COUNT }>,
used_bind_groups: usize,
}
Expand description
The bundle’s current pipeline, and some cached information needed for validation.
Fields§
§id: RenderPipelineId
The pipeline’s id.
layout_id: Valid<PipelineLayoutId>
The id of the pipeline’s layout.
steps: Vec<VertexStep>
How this pipeline’s vertex shader traverses each vertex buffer, indexed by vertex buffer slot number.
push_constant_ranges: ArrayVec<PushConstantRange, { SHADER_STAGE_COUNT }>
Ranges of push constants this pipeline uses, copied from the pipeline layout.
used_bind_groups: usize
The number of bind groups this pipeline uses.
Implementations§
source§impl PipelineState
impl PipelineState
fn new<A: HalApi>( pipeline_id: RenderPipelineId, pipeline: &RenderPipeline<A>, layout: &PipelineLayout<A> ) -> Self
sourcefn zero_push_constants(&self) -> Option<impl Iterator<Item = RenderCommand>>
fn zero_push_constants(&self) -> Option<impl Iterator<Item = RenderCommand>>
Return a sequence of commands to zero the push constant ranges this
pipeline uses. If no initialization is necessary, return None
.
Auto Trait Implementations§
impl !RefUnwindSafe for PipelineState
impl Send for PipelineState
impl Sync for PipelineState
impl Unpin for PipelineState
impl !UnwindSafe for PipelineState
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more