pub struct SurfaceSwapchainObject<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> { /* private fields */ }
Expand description
Opaque handle to as swapchain object, backed with specific surface
Implementations§
Source§impl<Device, Surface> SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> SurfaceSwapchainObject<Device, Surface>
Sourcepub fn deconstruct(self) -> (Device, Surface)
Available on crate feature Implements
only.
pub fn deconstruct(self) -> (Device, Surface)
Implements
only.Deconstructs the swapchain and retrieves its parents
Trait Implementations§
Source§impl<Device, Surface> DeviceChild for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> DeviceChild for SurfaceSwapchainObject<Device, Surface>
Source§type ConcreteDevice = Device
type ConcreteDevice = Device
A concrete type of the parent device object.
Source§fn device(&self) -> &Self::ConcreteDevice
fn device(&self) -> &Self::ConcreteDevice
Retrieve a reference to a device object that creates this object
Source§impl<Device, Surface> DeviceChildHandle for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> DeviceChildHandle for SurfaceSwapchainObject<Device, Surface>
Source§fn device_handle(&self) -> VkDevice
fn device_handle(&self) -> VkDevice
Retrieve a reference to a device handle that creates this objecs
Source§impl<Device, Surface> Drop for SurfaceSwapchainObject<Device, Surface>
Available on crate feature Implements
only.
impl<Device, Surface> Drop for SurfaceSwapchainObject<Device, Surface>
Available on crate feature
Implements
only.Source§impl<Device, Surface> Swapchain for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> Swapchain for SurfaceSwapchainObject<Device, Surface>
fn format(&self) -> VkFormat
fn size(&self) -> &VkExtent2D
Source§fn acquire_next(
&mut self,
timeout: Option<u64>,
completion: CompletionHandlerMut<'_>,
) -> Result<u32>
fn acquire_next( &mut self, timeout: Option<u64>, completion: CompletionHandlerMut<'_>, ) -> Result<u32>
Available on crate feature
Implements
only.Retrieve the index of the next available presentation image Read more
Source§fn acquire_full_screen_exclusive_mode(&self) -> Result<()>where
Self::ConcreteDevice: DeviceFullScreenExclusiveExtension,
fn acquire_full_screen_exclusive_mode(&self) -> Result<()>where
Self::ConcreteDevice: DeviceFullScreenExclusiveExtension,
Available on crate features
Implements
and VK_EXT_full_screen_exclusive
only.Acquire full-screen exclusive mode for a swapchain. Read more
Source§fn release_full_screen_exclusive_mode(&self) -> Result<()>where
Self::ConcreteDevice: DeviceFullScreenExclusiveExtension,
fn release_full_screen_exclusive_mode(&self) -> Result<()>where
Self::ConcreteDevice: DeviceFullScreenExclusiveExtension,
Available on crate features
Implements
and VK_EXT_full_screen_exclusive
only.Release full-screen exclusive mode from a swapchain.
Source§fn image_count(&self) -> Result<u32>
fn image_count(&self) -> Result<u32>
Available on crate feature
Implements
only.Obtain a count of the array of presentable images associated with a swapchain Read more
Source§fn images(&self, sink: &mut [VkImage]) -> Result<u32>
fn images(&self, sink: &mut [VkImage]) -> Result<u32>
Available on crate feature
Implements
only.Obtain the array of presentable images associated with a swapchain Read more
Source§fn images_alloc(&self) -> Result<Vec<SwapchainImage<&Self>>>where
Self: Sized,
fn images_alloc(&self) -> Result<Vec<SwapchainImage<&Self>>>where
Self: Sized,
Available on crate features
Implements
and alloc
only.Obtain the array of presentable images associated with a swapchain Read more
Source§impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandle for SurfaceSwapchainObject<Device, Surface>
impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandle for SurfaceSwapchainObject<Device, Surface>
type Handle = VkSwapchainKHR
Source§fn native_ptr(&self) -> Self::Handle
fn native_ptr(&self) -> Self::Handle
Retrieve an underlying handle
fn as_transparent_ref(&self) -> VkHandleRef<'_, Self::Handle>
Source§impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandleMut for SurfaceSwapchainObject<Device, Surface>
impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkHandleMut for SurfaceSwapchainObject<Device, Surface>
Source§fn native_ptr_mut(&mut self) -> Self::Handle
fn native_ptr_mut(&mut self) -> Self::Handle
Retrieve an underlying mutable handle
fn as_transparent_ref_mut(&mut self) -> VkHandleRefMut<'_, Self::Handle>
Source§impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkObject for SurfaceSwapchainObject<Device, Surface>
impl<Device: VkHandle<Handle = VkDevice>, Surface: VkHandle<Handle = VkSurfaceKHR>> VkObject for SurfaceSwapchainObject<Device, Surface>
const TYPE: VkObjectType = 1_000_001_000i32
Source§fn set_name(&self, name: Option<&CStr>) -> Result<()>where
Self: DeviceChild<ConcreteDevice: InstanceChild<ConcreteInstance: InstanceExtensions>>,
Self::Handle: VkRawHandle,
fn set_name(&self, name: Option<&CStr>) -> Result<()>where
Self: DeviceChild<ConcreteDevice: InstanceChild<ConcreteInstance: InstanceExtensions>>,
Self::Handle: VkRawHandle,
Available on crate features
Implements
and VK_EXT_debug_utils
only.Give a user-friendly name to this object. Read more
impl<Device, Surface> Send for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> Sync for SurfaceSwapchainObject<Device, Surface>
Auto Trait Implementations§
impl<Device, Surface> Freeze for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> RefUnwindSafe for SurfaceSwapchainObject<Device, Surface>where
Device: RefUnwindSafe,
Surface: RefUnwindSafe,
impl<Device, Surface> Unpin for SurfaceSwapchainObject<Device, Surface>
impl<Device, Surface> UnwindSafe for SurfaceSwapchainObject<Device, Surface>where
Device: UnwindSafe,
Surface: UnwindSafe,
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