Struct bevy_retrograde::core::luminance::pipeline::Pipeline [−]
pub struct Pipeline<'a, B> where
B: PipelineBase + ?Sized, { /* fields omitted */ }
Expand description
A GPU pipeline handle.
A Pipeline
is a special object that is provided as soon as one enters a PipelineGate
.
It is used to dynamically modify the behavior of the running graphics pipeline. That includes,
for instance, obtaining bound resources, like buffers and textures, for subsequent uses in
shader stages.
Parametricity
B
is the backend type. It must implementPipelineBase
.
Implementations
impl<'a, B> Pipeline<'a, B> where
B: PipelineBase,
impl<'a, B> Pipeline<'a, B> where
B: PipelineBase,
pub fn bind_buffer<T>(
&'a self,
buffer: &'a mut Buffer<B, T>
) -> Result<BoundBuffer<'a, B, T>, PipelineError> where
T: Copy,
B: PipelineBuffer<T>,
pub fn bind_buffer<T>(
&'a self,
buffer: &'a mut Buffer<B, T>
) -> Result<BoundBuffer<'a, B, T>, PipelineError> where
T: Copy,
B: PipelineBuffer<T>,
Bind a buffer.
Once the buffer is bound, the BoundBuffer
object has to be dropped / die in order to
bind the buffer again.
pub fn bind_texture<D, P>(
&'a self,
texture: &'a mut Texture<B, D, P>
) -> Result<BoundTexture<'a, B, D, P>, PipelineError> where
D: Dimensionable,
P: Pixel,
B: PipelineTexture<D, P>,
pub fn bind_texture<D, P>(
&'a self,
texture: &'a mut Texture<B, D, P>
) -> Result<BoundTexture<'a, B, D, P>, PipelineError> where
D: Dimensionable,
P: Pixel,
B: PipelineTexture<D, P>,
Bind a texture.
Once the texture is bound, the BoundTexture
object has to be dropped / die in order to
bind the texture again.
Auto Trait Implementations
impl<'a, B: ?Sized> RefUnwindSafe for Pipeline<'a, B> where
<B as PipelineBase>::PipelineRepr: RefUnwindSafe,
impl<'a, B: ?Sized> Send for Pipeline<'a, B> where
<B as PipelineBase>::PipelineRepr: Send,
impl<'a, B: ?Sized> Sync for Pipeline<'a, B> where
<B as PipelineBase>::PipelineRepr: Sync,
impl<'a, B: ?Sized> Unpin for Pipeline<'a, B> where
<B as PipelineBase>::PipelineRepr: Unpin,
impl<'a, B> !UnwindSafe for Pipeline<'a, B>
Blanket Implementations
Mutably borrows from an owned value. Read more
impl<T> Downcast for T where
T: Any,
impl<T> Downcast for T where
T: Any,
Convert Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read more
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
pub fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read more
Convert &Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read more
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
pub fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert &mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read more
Instruments this type with the provided Span
, returning an
Instrumented
wrapper. Read more
pub fn vzip(self) -> V