pub struct DeviceGroup { /* private fields */ }
Expand description
Implementations§
Source§impl DeviceGroup
impl DeviceGroup
Sourcepub fn new(instance: &Instance, device: &Device) -> Self
pub fn new(instance: &Instance, device: &Device) -> Self
§Warning
Instance
functions cannot be loaded from a Device
and will always panic when called:
Load this struct using an Instance
instead via Self::new_from_instance()
if the
above Instance
function is called. This will be solved in the next breaking ash
release: https://github.com/ash-rs/ash/issues/727.
Sourcepub fn new_from_instance(
entry: &Entry,
instance: &Instance,
device: Device,
) -> Self
pub fn new_from_instance( entry: &Entry, instance: &Instance, device: Device, ) -> Self
Loads all functions on the Instance
instead of Device
. This incurs an extra
dispatch table for Device
functions but also allows the Instance
function to be
loaded instead of always panicking. See also Self::new()
for more details.
It is okay to pass vk::Device::null()
when this struct is only used to call the
Instance
function.
Sourcepub unsafe fn get_device_group_peer_memory_features(
&self,
heap_index: u32,
local_device_index: u32,
remote_device_index: u32,
) -> PeerMemoryFeatureFlags
pub unsafe fn get_device_group_peer_memory_features( &self, heap_index: u32, local_device_index: u32, remote_device_index: u32, ) -> PeerMemoryFeatureFlags
Sourcepub unsafe fn cmd_set_device_mask(
&self,
command_buffer: CommandBuffer,
device_mask: u32,
)
pub unsafe fn cmd_set_device_mask( &self, command_buffer: CommandBuffer, device_mask: u32, )
Sourcepub unsafe fn cmd_dispatch_base(
&self,
command_buffer: CommandBuffer,
base_group: (u32, u32, u32),
group_count: (u32, u32, u32),
)
pub unsafe fn cmd_dispatch_base( &self, command_buffer: CommandBuffer, base_group: (u32, u32, u32), group_count: (u32, u32, u32), )
Sourcepub unsafe fn get_device_group_present_capabilities(
&self,
device_group_present_capabilities: &mut DeviceGroupPresentCapabilitiesKHR,
) -> VkResult<()>
pub unsafe fn get_device_group_present_capabilities( &self, device_group_present_capabilities: &mut DeviceGroupPresentCapabilitiesKHR, ) -> VkResult<()>
Requires VK_KHR_surface
to be enabled.
Also available as Swapchain::get_device_group_present_capabilities()
since Vulkan 1.1.
Sourcepub unsafe fn get_device_group_surface_present_modes(
&self,
surface: SurfaceKHR,
) -> VkResult<DeviceGroupPresentModeFlagsKHR>
pub unsafe fn get_device_group_surface_present_modes( &self, surface: SurfaceKHR, ) -> VkResult<DeviceGroupPresentModeFlagsKHR>
Requires VK_KHR_surface
to be enabled.
Also available as Swapchain::get_device_group_surface_present_modes()
since Vulkan 1.1.
Sourcepub unsafe fn get_physical_device_present_rectangles(
&self,
physical_device: PhysicalDevice,
surface: SurfaceKHR,
) -> VkResult<Vec<Rect2D>>
pub unsafe fn get_physical_device_present_rectangles( &self, physical_device: PhysicalDevice, surface: SurfaceKHR, ) -> VkResult<Vec<Rect2D>>
Requires VK_KHR_surface
to be enabled.
Also available as Swapchain::get_physical_device_present_rectangles()
since Vulkan 1.1.
§Warning
Function will always panic unless this struct is loaded via Self::new_from_instance()
.
Sourcepub unsafe fn acquire_next_image2(
&self,
acquire_info: &AcquireNextImageInfoKHR,
) -> VkResult<(u32, bool)>
pub unsafe fn acquire_next_image2( &self, acquire_info: &AcquireNextImageInfoKHR, ) -> VkResult<(u32, bool)>
On success, returns the next image’s index and whether the swapchain is suboptimal for the surface.
Requires VK_KHR_swapchain
to be enabled.
Also available as Swapchain::acquire_next_image2()
since Vulkan 1.1.
https://www.khronos.org/registry/vulkan/specs/1.3-extensions/man/html/vkAcquireNextImage2KHR.html
pub const fn name() -> &'static CStr
pub fn fp(&self) -> &KhrDeviceGroupFn
pub fn device(&self) -> Device
Trait Implementations§
Source§impl Clone for DeviceGroup
impl Clone for DeviceGroup
Source§fn clone(&self) -> DeviceGroup
fn clone(&self) -> DeviceGroup
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moreAuto Trait Implementations§
impl Freeze for DeviceGroup
impl RefUnwindSafe for DeviceGroup
impl Send for DeviceGroup
impl Sync for DeviceGroup
impl Unpin for DeviceGroup
impl UnwindSafe for DeviceGroup
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§unsafe fn clone_to_uninit(&self, dst: *mut T)
unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit
)