[]Struct amethyst_rendy::rendy::hal::CommandPool

pub struct CommandPool<B, C> where
    B: Backend
{ /* fields omitted */ }

Strong-typed command pool.

This a safer wrapper around RawCommandPool which ensures that only one command buffer is recorded at the same time from the current queue. Command buffers are stored internally and can only be obtained via a strong-typed CommandBuffer wrapper for encoding.

Implementations

impl<B, C> CommandPool<B, C> where
    B: Backend

pub unsafe fn new(raw: <B as Backend>::CommandPool) -> CommandPool<B, C>

Create typed command pool from raw.

Safety

<C as Capability>::supported_by(queue_type) must return true for queue_type being the type of queues from family this raw pool is associated with.

pub unsafe fn reset(&mut self, release_resources: bool)

pub fn acquire_command_buffer<S>(
    &mut self
) -> CommandBuffer<B, C, S, Primary, <B as Backend>::CommandBuffer> where
    S: Shot

Allocates a new primary command buffer from the pool.

pub fn acquire_secondary_command_buffer<S>(
    &mut self
) -> CommandBuffer<B, C, S, Secondary, <B as Backend>::CommandBuffer> where
    S: Shot

Allocates a new secondary command buffer from the pool.

pub unsafe fn free<I>(&mut self, cmd_buffers: I) where
    I: IntoIterator,
    <I as IntoIterator>::Item: IntoRawCommandBuffer<B, C>, 

Free the given iterator of command buffers from the pool.

pub fn into_raw(self) -> <B as Backend>::CommandPool

Downgrade a typed command pool to untyped one.

impl<B, C> CommandPool<B, C> where
    B: Backend,
    C: Supports<Graphics>, 

pub fn acquire_subpass_command_buffer<S>(
    &mut self
) -> SubpassCommandBuffer<B, S, <B as Backend>::CommandBuffer> where
    S: Shot

Allocates a new subpass command buffer from the pool.

Trait Implementations

impl<B, C> Debug for CommandPool<B, C> where
    B: Backend + Debug,
    C: Debug,
    <B as Backend>::CommandPool: Debug

Auto Trait Implementations

impl<B, C> RefUnwindSafe for CommandPool<B, C> where
    C: RefUnwindSafe,
    <B as Backend>::CommandPool: RefUnwindSafe

impl<B, C> Send for CommandPool<B, C> where
    C: Send,
    <B as Backend>::CommandPool: Send

impl<B, C> Sync for CommandPool<B, C> where
    C: Sync,
    <B as Backend>::CommandPool: Sync

impl<B, C> Unpin for CommandPool<B, C> where
    C: Unpin,
    <B as Backend>::CommandPool: Unpin

impl<B, C> UnwindSafe for CommandPool<B, C> where
    C: UnwindSafe,
    <B as Backend>::CommandPool: UnwindSafe

Blanket Implementations

impl<S, D, Swp, Dwp, T> AdaptInto<D, Swp, Dwp, T> for S where
    D: AdaptFrom<S, Swp, Dwp, T>,
    Dwp: WhitePoint,
    Swp: WhitePoint,
    T: Component + Float
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Any for T where
    T: Any

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Event for T where
    T: Send + Sync + 'static, 

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Resource for T where
    T: Any + Send + Sync

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T> SetParameter for T

impl<SS, SP> SupersetOf<SS> for SP where
    SS: SubsetOf<SP>, 

impl<T> Supports<T> for T

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,