Struct CommandBufferObject

Source
pub struct CommandBufferObject<Device>(/* private fields */);
Expand description

Opaque handle to a command buffer object

Implementations§

Source§

impl<Device: VkHandle<Handle = VkDevice>> CommandBufferObject<Device>

Source

pub fn alloc( device: Device, info: &CommandBufferAllocateInfo<'_>, ) -> Result<Vec<Self>>

Available on crate features Implements and alloc only.

Allocate command buffers from an existing command pool

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
Source

pub fn alloc_array<const N: usize>( device: Device, info: &CommandBufferFixedCountAllocateInfo<'_, N>, ) -> Result<[Self; N]>

Available on crate feature Implements only.

Allocate a static amount of command buffers from an existing command pool

§Failures

On failure, this command returns

  • VK_ERROR_OUT_OF_HOST_MEMORY
  • VK_ERROR_OUT_OF_DEVICE_MEMORY
Source§

impl<Device: Clone> CommandBufferObject<&Device>

Source

pub const fn clone_parent(&self) -> CommandBufferObject<Device>

clones internally-referenced parent object

Trait Implementations§

Source§

impl<Device> Clone for CommandBufferObject<Device>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<Device> CommandBufferMut for CommandBufferObject<Device>

Source§

unsafe fn begin<'d, ExtFnProvider: 'd + ?Sized>( &'d mut self, info: &CommandBufferBeginInfo<'_>, ext_fn_provider: &'d ExtFnProvider, ) -> Result<CmdRecord<'d, ExtFnProvider>>

Available on crate feature Implements only.
Start recording a command buffer Read more
Source§

unsafe fn reset(&mut self, flags: VkCommandBufferResetFlags) -> Result<()>

Available on crate feature Implements only.
Reset a command buffer to the initial state Read more
Source§

unsafe fn synchronize_with<'p, 'b: 'p>( &'b mut self, pool: &'p mut (impl VkHandleMut<Handle = VkCommandPool> + ?Sized), ) -> SynchronizedCommandBuffer<'p, 'b>

Locking CommandBuffer with CommandPool to satisfy externally synchronization restriction. Read more
Source§

impl<Device> VkHandle for CommandBufferObject<Device>

Source§

type Handle = VkCommandBuffer

Source§

fn native_ptr(&self) -> Self::Handle

Retrieve an underlying handle
Source§

fn as_transparent_ref(&self) -> VkHandleRef<'_, Self::Handle>

Source§

impl<Device> VkHandleMut for CommandBufferObject<Device>

Source§

fn native_ptr_mut(&mut self) -> Self::Handle

Retrieve an underlying mutable handle
Source§

fn as_transparent_ref_mut(&mut self) -> VkHandleRefMut<'_, Self::Handle>

Source§

impl<Device> VkObject for CommandBufferObject<Device>

Source§

impl<Device> CommandBuffer for CommandBufferObject<Device>

Source§

impl<Device> Copy for CommandBufferObject<Device>

Source§

impl<Device: Send> Send for CommandBufferObject<Device>

Source§

impl<Device: Sync> Sync for CommandBufferObject<Device>

Auto Trait Implementations§

§

impl<Device> Freeze for CommandBufferObject<Device>

§

impl<Device> RefUnwindSafe for CommandBufferObject<Device>
where Device: RefUnwindSafe,

§

impl<Device> Unpin for CommandBufferObject<Device>
where Device: Unpin,

§

impl<Device> UnwindSafe for CommandBufferObject<Device>
where Device: UnwindSafe,

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> VkHandleExt for T
where T: VkHandle,

Source§

fn eq_handle(&self, other: &Self) -> bool
where Self::Handle: VkRawHandle,

Checks the equality between vulkan objects by their handle value.