Module 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, ...);
Functions
Name | Description |
---|---|
closeSharedLib(lib)
|
Close a shared library |
closeSharedLib(lib)
|
|
loadSharedSym(lib, name)
|
Load a symbol from a shared library. Return null in case of failure. |
loadSharedSym(lib, name)
|
|
loadVulkanGlobalCmds()
|
Load global commands from Vulkan DLL/Shared object. |
openSharedLib(name)
|
Opens a shared library. Return null in case of failure. |
openSharedLib(name)
|
Aliases
Name | Type | Description |
---|---|---|
SharedLib
|
void*
|
A handle to a shared library |
SharedSym
|
void*
|
A handle to a shared library symbol |
SymbolLoader
|
void* delegate(in string)
|
Generic Dynamic lib symbol loader. Symbols loaded with such loader must be cast to the appropriate function type. |