gfx.bindings.vulkan.loader

Loader module for vkdgen. Loading bindings is done in 3 steps as follow:

import gfx.bindings.vulkan.loader;

// load global commands
auto globVk = loadVulkanGlobalCmds();

// load instance commands
VkInstance inst;
VkInstanceCreateInfo instCreateInfo = // ...
globVk.CreateInstance(&instCreateInfo, null, &inst);
auto instVk = new VkInstanceCmds(inst, globVk);

// load device commands
VkPhysicalDevice phDev = // ...
VkDevice dev;
VkDeviceCreateInfo devCreateInfo = // ...
instVk.CreateDevice(phDev, &devCreateInfo, null, &dev);
auto vk = new VkDeviceCmds(dev, instVk);

// vk.CreateBuffer(dev, ...);

Members

Aliases

SharedLib
alias SharedLib = void*

A handle to a shared library

SharedSym
alias SharedSym = void*

A handle to a shared library symbol

SymbolLoader
alias SymbolLoader = SharedSym delegate(in string name)

Generic Dynamic lib symbol loader. Symbols loaded with such loader must be cast to the appropriate function type.

Functions

closeSharedLib
void closeSharedLib(SharedLib lib)

Close a shared library

closeSharedLib
void closeSharedLib(SharedLib lib)
Undocumented in source. Be warned that the author may not have intended to support it.
closeSharedLib
void closeSharedLib(SharedLib lib)
Undocumented in source. Be warned that the author may not have intended to support it.
loadSharedSym
SharedSym loadSharedSym(SharedLib lib, string name)

Load a symbol from a shared library. Return null in case of failure.

loadSharedSym
SharedSym loadSharedSym(SharedLib lib, string name)
Undocumented in source. Be warned that the author may not have intended to support it.
loadSharedSym
SharedSym loadSharedSym(SharedLib lib, string name)
Undocumented in source. Be warned that the author may not have intended to support it.
loadVulkanGlobalCmds
VkGlobalCmds loadVulkanGlobalCmds()

Load global commands from Vulkan DLL/Shared object.

openSharedLib
SharedLib openSharedLib(string name)

Opens a shared library. Return null in case of failure.

openSharedLib
SharedLib openSharedLib(string name)
Undocumented in source. Be warned that the author may not have intended to support it.
openSharedLib
SharedLib openSharedLib(string name)
Undocumented in source. Be warned that the author may not have intended to support it.

Meta