Lugdunum  0.1.0
Namespaces | Macros
Loader.cpp File Reference
#include <lug/Graphics/Vulkan/API/Loader.hpp>
#include <lug/Graphics/Vulkan/API/Device.hpp>
#include <lug/Graphics/Vulkan/API/Instance.hpp>
Include dependency graph for Loader.cpp:

Go to the source code of this file.

Namespaces

 lug
 
 lug::Graphics
 
 lug::Graphics::Vulkan
 
 lug::Graphics::Vulkan::API
 

Macros

#define LUG_LOAD_VULKAN_FUNCTIONS(name)
 
#define LUG_LOAD_VULKAN_FUNCTIONS(name)
 
#define LUG_LOAD_VULKAN_FUNCTIONS(name)
 
#define LUG_LOAD_VULKAN_FUNCTIONS(name)
 
#define LUG_UNLOAD_VULKAN_FUNCTIONS(name)   name = nullptr;
 

Macro Definition Documentation

◆ LUG_LOAD_VULKAN_FUNCTIONS [1/4]

#define LUG_LOAD_VULKAN_FUNCTIONS (   name)
Value:
{ \
name = System::Library::sym<PFN_##name>(_handle, #name); \
if (!name) { \
return false; \
} \
}

◆ LUG_LOAD_VULKAN_FUNCTIONS [2/4]

#define LUG_LOAD_VULKAN_FUNCTIONS (   name)
Value:
{ \
name = reinterpret_cast<PFN_##name>(vkGetInstanceProcAddr(nullptr, #name)); \
if (!name) { \
LUG_LOG.error("Vulkan: Can't load symbol {}", #name); \
return false; \
} \
}

◆ LUG_LOAD_VULKAN_FUNCTIONS [3/4]

#define LUG_LOAD_VULKAN_FUNCTIONS (   name)
Value:
{ \
name = instance.getProcAddr<PFN_##name>(#name); \
if (!name) { \
LUG_LOG.error("Vulkan: Can't load symbol {}", #name); \
return false; \
} \
}

◆ LUG_LOAD_VULKAN_FUNCTIONS [4/4]

#define LUG_LOAD_VULKAN_FUNCTIONS (   name)
Value:
{ \
name = device.getProcAddr<PFN_##name>(#name); \
if (!name) { \
LUG_LOG.error("Vulkan: Can't load symbol {}", #name); \
return false; \
} \
}

◆ LUG_UNLOAD_VULKAN_FUNCTIONS

#define LUG_UNLOAD_VULKAN_FUNCTIONS (   name)    name = nullptr;