pub struct CustomEntryLoader<T> {
pub loader: T,
pub get_instance_proc_addr: PFN_vkGetInstanceProcAddr,
pub create_instance: Option<PFN_vkCreateInstance>,
pub enumerate_instance_version: Option<PFN_vkEnumerateInstanceVersion>,
pub enumerate_instance_layer_properties: Option<PFN_vkEnumerateInstanceLayerProperties>,
pub enumerate_instance_extension_properties: Option<PFN_vkEnumerateInstanceExtensionProperties>,
/* private fields */
}Expand description
Loader for entry commands.
To create a new loader, call EntryLoader::new.
Fields§
§loader: T§get_instance_proc_addr: PFN_vkGetInstanceProcAddr§create_instance: Option<PFN_vkCreateInstance>§enumerate_instance_version: Option<PFN_vkEnumerateInstanceVersion>§enumerate_instance_layer_properties: Option<PFN_vkEnumerateInstanceLayerProperties>§enumerate_instance_extension_properties: Option<PFN_vkEnumerateInstanceExtensionProperties>Implementations§
Source§impl<T> CustomEntryLoader<T>
Provided by crate::vk1_0
impl<T> CustomEntryLoader<T>
Provided by crate::vk1_0
Sourcepub unsafe fn create_instance(
&self,
create_info: &InstanceCreateInfo,
allocator: Option<&AllocationCallbacks>,
) -> VulkanResult<Instance>
pub unsafe fn create_instance( &self, create_info: &InstanceCreateInfo, allocator: Option<&AllocationCallbacks>, ) -> VulkanResult<Instance>
Vulkan Manual Page · Function
Sourcepub unsafe fn enumerate_instance_layer_properties(
&self,
property_count: Option<u32>,
) -> VulkanResult<SmallVec<LayerProperties>>
pub unsafe fn enumerate_instance_layer_properties( &self, property_count: Option<u32>, ) -> VulkanResult<SmallVec<LayerProperties>>
Vulkan Manual Page · Function
Sourcepub unsafe fn enumerate_instance_extension_properties(
&self,
layer_name: Option<&CStr>,
property_count: Option<u32>,
) -> VulkanResult<SmallVec<ExtensionProperties>>
pub unsafe fn enumerate_instance_extension_properties( &self, layer_name: Option<&CStr>, property_count: Option<u32>, ) -> VulkanResult<SmallVec<ExtensionProperties>>
Vulkan Manual Page · Function
Source§impl<T> CustomEntryLoader<T>
Provided by crate::vk1_1
impl<T> CustomEntryLoader<T>
Provided by crate::vk1_1
Sourcepub unsafe fn enumerate_instance_version(&self) -> VulkanResult<u32>
pub unsafe fn enumerate_instance_version(&self) -> VulkanResult<u32>
Vulkan Manual Page · Function
Source§impl CustomEntryLoader<Library>
impl CustomEntryLoader<Library>
Sourcepub fn new() -> Result<EntryLoader, EntryLoaderError>
pub fn new() -> Result<EntryLoader, EntryLoaderError>
Load functions using libloading.
Enabled using the loading cargo feature.
For more advanced use cases, take a look at
EntryLoader::with_lib_path and EntryLoader::with_library.
Sourcepub fn with_lib_path<P: AsRef<OsStr>>(
lib_path: P,
) -> Result<EntryLoader, EntryLoaderError>
pub fn with_lib_path<P: AsRef<OsStr>>( lib_path: P, ) -> Result<EntryLoader, EntryLoaderError>
Load functions using libloading
providing a custom library path.
Enabled using the loading cargo feature.
Source§impl<T> CustomEntryLoader<T>
impl<T> CustomEntryLoader<T>
Sourcepub unsafe fn with_library(
library: T,
symbol: impl FnMut(&mut T, *const c_char) -> Option<PFN_vkVoidFunction>,
) -> Result<Self, LoaderError>
pub unsafe fn with_library( library: T, symbol: impl FnMut(&mut T, *const c_char) -> Option<PFN_vkVoidFunction>, ) -> Result<Self, LoaderError>
Creates a entry loader with a custom library used for loading.
Sourcepub fn enabled(&self) -> &EntryEnabled
pub fn enabled(&self) -> &EntryEnabled
Access enabled requirements of this entry loader.
Sourcepub fn instance_version(&self) -> u32
pub fn instance_version(&self) -> u32
This will be the result of vkEnumerateInstanceVersion if available, otherwise 0.1.0.0.
Trait Implementations§
Source§impl<T> Debug for CustomEntryLoader<T>
impl<T> Debug for CustomEntryLoader<T>
Source§impl<T> Drop for CustomEntryLoader<T>
impl<T> Drop for CustomEntryLoader<T>
Auto Trait Implementations§
impl<T> Freeze for CustomEntryLoader<T>where
T: Freeze,
impl<T> RefUnwindSafe for CustomEntryLoader<T>where
T: RefUnwindSafe,
impl<T> Send for CustomEntryLoader<T>where
T: Send,
impl<T> Sync for CustomEntryLoader<T>where
T: Sync,
impl<T> Unpin for CustomEntryLoader<T>where
T: Unpin,
impl<T> UnsafeUnpin for CustomEntryLoader<T>where
T: UnsafeUnpin,
impl<T> UnwindSafe for CustomEntryLoader<T>where
T: 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