Struct erupt::CustomEntryLoader
source · 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
sourceimpl<T> CustomEntryLoader<T>
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
sourceimpl<T> CustomEntryLoader<T>
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
sourceimpl 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.
sourceimpl<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
sourceimpl<T> Debug for CustomEntryLoader<T>
impl<T> Debug for CustomEntryLoader<T>
Auto Trait Implementations
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> UnwindSafe for CustomEntryLoader<T>where
T: UnwindSafe,
Blanket Implementations
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more