aboutsummaryrefslogtreecommitdiff
path: root/layers/image.cpp
diff options
context:
space:
mode:
authorChia-I Wu <olv@google.com>2016-04-28 11:27:46 +0800
committerTobin Ehlis <tobine@google.com>2016-05-05 06:42:18 -0600
commitadb206822bc3dbaf5c7e61a1e32eb18ed2f62fa0 (patch)
tree495e582916db268c5e2eea27ab9eddd4e3594820 /layers/image.cpp
parentf269798aaad5659673c3b9d12065c7905d2f2553 (diff)
downloadusermoji-adb206822bc3dbaf5c7e61a1e32eb18ed2f62fa0.tar.xz
image: put layer functions into a namespace
Put all layer fucntions/data into image namespace. I had to add some wrappers to make everything work.
Diffstat (limited to 'layers/image.cpp')
-rw-r--r--layers/image.cpp47
1 files changed, 44 insertions, 3 deletions
diff --git a/layers/image.cpp b/layers/image.cpp
index 0a46aa6f..5ccb3a60 100644
--- a/layers/image.cpp
+++ b/layers/image.cpp
@@ -48,6 +48,8 @@
#include "vk_layer_utils.h"
#include "vk_layer_logging.h"
+namespace image {
+
struct layer_data {
debug_report_data *report_data;
vector<VkDebugReportCallbackEXT> logging_callback;
@@ -1338,18 +1340,57 @@ VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(V
return pTable->GetInstanceProcAddr(instance, funcName);
}
+} // namespace image
+
+// vk_layer_logging.h expects these to be defined
+
+VKAPI_ATTR VkResult VKAPI_CALL
+vkCreateDebugReportCallbackEXT(VkInstance instance, const VkDebugReportCallbackCreateInfoEXT *pCreateInfo,
+ const VkAllocationCallbacks *pAllocator, VkDebugReportCallbackEXT *pMsgCallback) {
+ return image::vkCreateDebugReportCallbackEXT(instance, pCreateInfo, pAllocator, pMsgCallback);
+}
+
+VKAPI_ATTR void VKAPI_CALL
+vkDestroyDebugReportCallbackEXT(VkInstance instance,
+ VkDebugReportCallbackEXT msgCallback,
+ const VkAllocationCallbacks *pAllocator) {
+ image::vkDestroyDebugReportCallbackEXT(instance, msgCallback, pAllocator);
+}
+
+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) {
+ image::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(1, instance_extensions, pCount, pProperties);
+ return util_GetExtensionProperties(1, image::instance_extensions, pCount, pProperties);
}
VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
vkEnumerateInstanceLayerProperties(uint32_t *pCount, VkLayerProperties *pProperties) {
- return util_GetLayerProperties(ARRAY_SIZE(pc_global_layers), pc_global_layers, pCount, pProperties);
+ return util_GetLayerProperties(ARRAY_SIZE(image::pc_global_layers), image::pc_global_layers, pCount, pProperties);
}
VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL
vkEnumerateDeviceLayerProperties(VkPhysicalDevice physicalDevice, uint32_t *pCount, VkLayerProperties *pProperties) {
// ParamChecker's physical device layers are the same as global
- return util_GetLayerProperties(ARRAY_SIZE(pc_global_layers), pc_global_layers, pCount, pProperties);
+ return util_GetLayerProperties(ARRAY_SIZE(image::pc_global_layers), image::pc_global_layers, pCount, pProperties);
+}
+
+VK_LAYER_EXPORT VKAPI_ATTR VkResult VKAPI_CALL vkEnumerateDeviceExtensionProperties(VkPhysicalDevice physicalDevice,
+ const char *pLayerName, uint32_t *pCount,
+ VkExtensionProperties *pProperties) {
+ return image::vkEnumerateDeviceExtensionProperties(physicalDevice, pLayerName, pCount, pProperties);
+}
+
+VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetDeviceProcAddr(VkDevice dev, const char *funcName) {
+ return image::vkGetDeviceProcAddr(dev, funcName);
+}
+
+VK_LAYER_EXPORT VKAPI_ATTR PFN_vkVoidFunction VKAPI_CALL vkGetInstanceProcAddr(VkInstance instance, const char *funcName) {
+ return image::vkGetInstanceProcAddr(instance, funcName);
}