EntryLoader

Type Alias EntryLoader 

Source
pub type EntryLoader = CustomEntryLoader<DefaultEntryLoaderLibrary>;
Expand description

The default EntryLoader, providing EntryLoader::new.

Aliased Type§

pub struct EntryLoader {
    pub loader: Library,
    pub get_instance_proc_addr: unsafe extern "system" fn(Instance, *const i8) -> Option<unsafe extern "system" fn()>,
    pub create_instance: Option<unsafe extern "system" fn(*const InstanceCreateInfo, *const AllocationCallbacks, *mut Instance) -> Result>,
    pub enumerate_instance_version: Option<unsafe extern "system" fn(*mut u32) -> Result>,
    pub enumerate_instance_layer_properties: Option<unsafe extern "system" fn(*mut u32, *mut LayerProperties) -> Result>,
    pub enumerate_instance_extension_properties: Option<unsafe extern "system" fn(*const i8, *mut u32, *mut ExtensionProperties) -> Result>,
    /* private fields */
}

Fields§

§loader: Library§get_instance_proc_addr: unsafe extern "system" fn(Instance, *const i8) -> Option<unsafe extern "system" fn()>§create_instance: Option<unsafe extern "system" fn(*const InstanceCreateInfo, *const AllocationCallbacks, *mut Instance) -> Result>§enumerate_instance_version: Option<unsafe extern "system" fn(*mut u32) -> Result>§enumerate_instance_layer_properties: Option<unsafe extern "system" fn(*mut u32, *mut LayerProperties) -> Result>§enumerate_instance_extension_properties: Option<unsafe extern "system" fn(*const i8, *mut u32, *mut ExtensionProperties) -> Result>

Implementations§

Source§

impl EntryLoader

Source

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.

Source

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.