Struct vulkano::command_buffer::cb::ContextCheckLayer [] [src]

pub struct ContextCheckLayer<I> { /* fields omitted */ }

Layer around a command buffer builder that checks whether the commands can be executed in the given context related to render passes.

What is checked exactly:

  • When adding a command that can only be executed within a render pass or outside of a render pass, checks that we are within or outside of a render pass.
  • When leaving the render pass or going to the next subpass, makes sure that the number of subpasses of the current render pass is respected.
  • When binding a graphics pipeline or drawing, makes sure that the pipeline is valid for the current render pass.

Methods

impl<I> ContextCheckLayer<I>
[src]

Builds a new ContextCheckLayer.

If allow_render_pass_ops is true, then entering/leaving a render pass or going to the next subpass is allowed by the layer.

If inside_render_pass is true, then the builder is currently inside a render pass.

Note that this layer will only protect you if you pass correct values in this constructor. It is not unsafe to pass wrong values, but if you do so then the layer will be inefficient as a safety tool.

Destroys the layer and returns the underlying command buffer.

Trait Implementations

impl<I, O, E> CommandBufferBuild for ContextCheckLayer<I> where
    I: CommandBufferBuild<Out = O, Err = E>, 
[src]

The type of the built command buffer.

Error that can be returned when building.

Builds the command buffer.

impl<I> DeviceOwned for ContextCheckLayer<I> where
    I: DeviceOwned
[src]

Returns the device that owns Self.

impl<I> CommandBufferBuilder for ContextCheckLayer<I> where
    I: CommandBufferBuilder
[src]

Returns the queue family of the command buffer builder.

Adds a command that writes the content of a buffer. Read more

Adds a command that writes data to a buffer.

Adds a command that copies from a buffer to another.

Adds a command that copies the content of a buffer to an image. Read more

Same as copy_buffer_to_image but lets you specify a range for the destination image.

Adds a command that starts a render pass. Read more

Adds a command that jumps to the next subpass of the current render pass.

Adds a command that ends the current render pass. Read more

Adds a command that draws. Read more

Adds a command that draws indexed vertices. Read more

Adds an indirect draw command. Read more

Executes a compute shader.

Builds the actual command buffer. Read more

Returns true if the pool of the builder supports graphics operations.

Returns true if the pool of the builder supports compute operations.

impl<'a, I, O, S, Pl> AddCommand<CmdBindDescriptorSets<S, Pl>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBindDescriptorSets<S, Pl>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, B> AddCommand<CmdBindIndexBuffer<B>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBindIndexBuffer<B>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, Pl> AddCommand<CmdBindPipeline<Pl>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBindPipeline<Pl>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, V> AddCommand<CmdBindVertexBuffers<V>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBindVertexBuffers<V>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, Pc, Pl> AddCommand<CmdPushConstants<Pc, Pl>> for ContextCheckLayer<I> where
    I: AddCommand<CmdPushConstants<Pc, Pl>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdSetState> for ContextCheckLayer<I> where
    I: AddCommand<CmdSetState, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdClearAttachments> for ContextCheckLayer<I> where
    I: AddCommand<CmdClearAttachments, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdDrawIndexedRaw> for ContextCheckLayer<I> where
    I: AddCommand<CmdDrawIndexedRaw, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, B> AddCommand<CmdDrawIndirectRaw<B>> for ContextCheckLayer<I> where
    I: AddCommand<CmdDrawIndirectRaw<B>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdDrawRaw> for ContextCheckLayer<I> where
    I: AddCommand<CmdDrawRaw, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, S, D> AddCommand<CmdBlitImage<S, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBlitImage<S, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, S, D> AddCommand<CmdCopyBuffer<S, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdCopyBuffer<S, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, S, D> AddCommand<CmdCopyBufferToImage<S, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdCopyBufferToImage<S, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, S, D> AddCommand<CmdCopyImage<S, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdCopyImage<S, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdDispatchRaw> for ContextCheckLayer<I> where
    I: AddCommand<CmdDispatchRaw, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, B> AddCommand<CmdFillBuffer<B>> for ContextCheckLayer<I> where
    I: AddCommand<CmdFillBuffer<B>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, S, D> AddCommand<CmdResolveImage<S, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdResolveImage<S, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdSetEvent> for ContextCheckLayer<I> where
    I: AddCommand<CmdSetEvent, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, B, D> AddCommand<CmdUpdateBuffer<B, D>> for ContextCheckLayer<I> where
    I: AddCommand<CmdUpdateBuffer<B, D>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O, Rp, F> AddCommand<CmdBeginRenderPass<Rp, F>> for ContextCheckLayer<I> where
    I: AddCommand<CmdBeginRenderPass<Rp, F>, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdNextSubpass> for ContextCheckLayer<I> where
    I: AddCommand<CmdNextSubpass, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more

impl<'a, I, O> AddCommand<CmdEndRenderPass> for ContextCheckLayer<I> where
    I: AddCommand<CmdEndRenderPass, Out = O>, 
[src]

The new command buffer builder type.

Adds the command. This takes ownership of the builder and returns a new builder with the command appended at the end of it. Read more