loader: Add structures to support new init method
These structures will be used to extend CreateInstance and CreateDevice to support layers. The loader will create a chain of these structures - one per layer - that tells the layer the Get*ProcAddr for the next lower part.
This commit is contained in:
parent
8bbfe41579
commit
b5c860c835
@ -221,5 +221,30 @@ typedef enum VkLayerDbgAction_
|
|||||||
VK_DBG_LAYER_ACTION_DEBUG_OUTPUT = 0x8,
|
VK_DBG_LAYER_ACTION_DEBUG_OUTPUT = 0x8,
|
||||||
} VkLayerDbgAction;
|
} VkLayerDbgAction;
|
||||||
|
|
||||||
|
// ------------------------------------------------------------------------------------------------
|
||||||
|
// CreateInstance and CreateDevice support structures
|
||||||
|
typedef struct VkLayerInstanceLink_ {
|
||||||
|
struct VkLayerInstanceLink_* pNext;
|
||||||
|
PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr;
|
||||||
|
} VkLayerInstanceLink;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
VkStructureType sType; // VK_STRUCTURE_TYPE_LAYER_INSTANCE_CREATE_INFO
|
||||||
|
const void* pNext;
|
||||||
|
VkLayerInstanceLink* pLayerInfo;
|
||||||
|
} VkLayerInstanceCreateInfo;
|
||||||
|
|
||||||
|
typedef struct VkLayerDeviceLink_ {
|
||||||
|
struct VkLayerDeviceLink_* pNext;
|
||||||
|
PFN_vkGetInstanceProcAddr pfnNextGetInstanceProcAddr;
|
||||||
|
PFN_vkGetDeviceProcAddr pfnNextGetDeviceProcAddr;
|
||||||
|
} VkLayerDeviceLink;
|
||||||
|
|
||||||
|
typedef struct {
|
||||||
|
VkStructureType sType; // VK_STRUCTURE_TYPE_LAYER_DEVICE_CREATE_INFO
|
||||||
|
const void* pNext;
|
||||||
|
VkLayerDeviceLink* pLayerInfo;
|
||||||
|
} VkLayerDeviceCreateInfo;
|
||||||
|
|
||||||
// ------------------------------------------------------------------------------------------------
|
// ------------------------------------------------------------------------------------------------
|
||||||
// API functions
|
// API functions
|
||||||
|
Loading…
x
Reference in New Issue
Block a user