diff options
| author | Chia-I Wu <olv@google.com> | 2016-04-28 11:27:46 +0800 |
|---|---|---|
| committer | Chia-I Wu <olv@google.com> | 2016-05-13 10:35:37 +0800 |
| commit | 7a68190aa484fbd77f06e9af49f0bf6b2e94f5fd (patch) | |
| tree | 3a12ea31674d9cfd7b4b281ef003857c6ffe31eb /layers/swapchain.cpp | |
| parent | c62bc64522cdc98ad15d3454c96cdb15f414c32e (diff) | |
| download | usermoji-7a68190aa484fbd77f06e9af49f0bf6b2e94f5fd.tar.xz | |
swapchain: put layer functions into a namespace
Put all layer fucntions/data into swapchain namespace. I had to add some
wrappers to make everything work.
Diffstat (limited to 'layers/swapchain.cpp')
| -rw-r--r-- | layers/swapchain.cpp | 48 |
1 files changed, 43 insertions, 5 deletions
diff --git a/layers/swapchain.cpp b/layers/swapchain.cpp index 1c05e65a..4e3f3689 100644 --- a/layers/swapchain.cpp +++ b/layers/swapchain.cpp @@ -29,13 +29,13 @@ #include "vk_enum_string_helper.h" #include "vk_layer_utils.h" +namespace swapchain { + static std::mutex global_lock; // The following is for logging error messages: static std::unordered_map<void *, layer_data *> layer_data_map; -template layer_data *get_my_data_ptr<layer_data>(void *data_key, std::unordered_map<void *, layer_data *> &data_map); - static const VkExtensionProperties instance_extensions[] = {{VK_EXT_DEBUG_REPORT_EXTENSION_NAME, VK_EXT_DEBUG_REPORT_SPEC_VERSION}}; static const VkLayerProperties swapchain_layers[] = {{ @@ -2250,17 +2250,55 @@ VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(V return pTable->GetInstanceProcAddr(instance, funcName); } +} // namespace swapchain + +// vk_layer_logging.h expects these to be defined + +VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL +vkCreateDebugReportCallbackEXT(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT *pCreateInfo, + const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT *pMsgCallback) { + return swapchain::vkCreateDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, pMsgCallback); +} + +VK_LAYER_EXPORT VKAPI_ATTR void VKAPI_CALL vkDestroyDebugReportCallbackEXT(VkInstance instance, + VkDebugReportCallbackEXT msgCallback, + const VkAllocationCallbacks *pAllocator) { + swapchain::vkDestroyDebugReportCallbackEXT(instance, msgCallback, pAllocator); +} + +VK_LAYER_EXPORT VKAPI_ATTR void VKAPI_CALL +vkDebugReportMessageEXT(VkInstance instance, VkDebugReportFlagsEXT flags, VkDebugReportObjectTypeEXT objType, uint64_t object, + size_t location, int32_t msgCode, const char *pLayerPrefix, const char *pMsg) { + swapchain::vkDebugReportMessageEXT(instance, flags, objType, object, location, msgCode, pLayerPrefix, pMsg); +} + +// loader-layer interface v0 + VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceExtensionProperties(const char *pLayerName, uint32_t *pCount, VkExtensionProperties *pProperties) { - return util_GetExtensionProperties(ARRAY_SIZE(instance_extensions), instance_extensions, pCount, pProperties); + return util_GetExtensionProperties(ARRAY_SIZE(swapchain::instance_extensions), swapchain::instance_extensions, pCount, pProperties); } VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateInstanceLayerProperties(uint32_t *pCount, VkLayerProperties *pProperties) { - return util_GetLayerProperties(ARRAY_SIZE(swapchain_layers), swapchain_layers, pCount, pProperties); + return util_GetLayerProperties(ARRAY_SIZE(swapchain::swapchain_layers), swapchain::swapchain_layers, pCount, pProperties); } VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice, uint32_t *pCount, VkLayerProperties *pProperties) { - return util_GetLayerProperties(ARRAY_SIZE(swapchain_layers), swapchain_layers, pCount, pProperties); + return util_GetLayerProperties(ARRAY_SIZE(swapchain::swapchain_layers), swapchain::swapchain_layers, pCount, pProperties); +} + +VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice, + const char *pLayerName, uint32_t *pCount, + VkExtensionProperties *pProperties) { + return swapchain::vkEnumerateDeviceExtensionProperties(physicalDevice, pLayerName, pCount, pProperties); +} + +VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(VkDevice dev, const char *funcName) { + return swapchain::vkGetDeviceProcAddr(dev, funcName); +} + +VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance, const char *funcName) { + return swapchain::vkGetInstanceProcAddr(instance, funcName); } |
