aboutsummaryrefslogtreecommitdiff
path: root/layers/parameter_validation.cpp
diff options
context:
space:
mode:
authorMark Lobodzinski <mark@lunarg.com>2017-03-14 10:12:43 -0600
committerMark Lobodzinski <mark@lunarg.com>2017-03-14 15:13:15 -0600
commit313e72964eeef60871cb50d8cff81e2ab37be3ec (patch)
treee0dbcbebf39910fba4041e8cedb4b5efd8a5f3d5 /layers/parameter_validation.cpp
parenta6449dd2ce7ba5660aed30a675555b84323f03db (diff)
downloadusermoji-313e72964eeef60871cb50d8cff81e2ab37be3ec.tar.xz
header: Update to 1.0.43 header version
- updated include/vulkan/vulkan.h - updated scripts/cgenerator.py - updated scripts/vk.xml - updated layers json files - updated tests json files - updated loader SOVERSION - updated include/vulkan/vulkan.hpp - updated parameter_validation.cpp with new APIs - updated object_tracker.cpp with new APIs Change-Id: I1fd812cb376d5cddee5ab4acf2e4f8fe6d33b761
Diffstat (limited to 'layers/parameter_validation.cpp')
-rw-r--r--layers/parameter_validation.cpp40
1 files changed, 40 insertions, 0 deletions
diff --git a/layers/parameter_validation.cpp b/layers/parameter_validation.cpp
index 16598ed1..0db8be02 100644
--- a/layers/parameter_validation.cpp
+++ b/layers/parameter_validation.cpp
@@ -6921,6 +6921,46 @@ VKAPI_ATTR void VKAPI_CALL GetPhysicalDeviceGeneratedCommandsPropertiesNVX(VkPhy
}
}
+VKAPI_ATTR VkResult VKAPI_CALL GetPastPresentationTimingGOOGLE(VkDevice device, VkSwapchainKHR swapchain,
+ uint32_t *pPresentationTimingCount,
+ VkPastPresentationTimingGOOGLE *pPresentationTimings) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+ skip |= parameter_validation_vkGetPastPresentationTimingGOOGLE(my_data->report_data, swapchain, pPresentationTimingCount,
+ pPresentationTimings);
+ if (!skip) {
+ result = my_data->dispatch_table.GetPastPresentationTimingGOOGLE(device, swapchain, pPresentationTimingCount,
+ pPresentationTimings);
+ }
+ return result;
+}
+
+VKAPI_ATTR VkResult VKAPI_CALL GetRefreshCycleDurationGOOGLE(VkDevice device, VkSwapchainKHR swapchain,
+ VkRefreshCycleDurationGOOGLE *pDisplayTimingProperties) {
+ VkResult result = VK_ERROR_VALIDATION_FAILED_EXT;
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+ skip |= parameter_validation_vkGetRefreshCycleDurationGOOGLE(my_data->report_data, swapchain, pDisplayTimingProperties);
+ if (!skip) {
+ result = my_data->dispatch_table.GetRefreshCycleDurationGOOGLE(device, swapchain, pDisplayTimingProperties);
+ }
+ return result;
+}
+
+VKAPI_ATTR void VKAPI_CALL SetHdrMetadataEXT(VkDevice device, uint32_t swapchainCount, const VkSwapchainKHR *pSwapchains,
+ const VkHdrMetadataEXT *pMetadata) {
+ bool skip = false;
+ auto my_data = GetLayerDataPtr(get_dispatch_key(device), layer_data_map);
+ assert(my_data != NULL);
+ skip |= parameter_validation_vkSetHdrMetadataEXT(my_data->report_data, swapchainCount, pSwapchains, pMetadata);
+ if (!skip) {
+ my_data->dispatch_table.SetHdrMetadataEXT(device, swapchainCount, pSwapchains, pMetadata);
+ }
+}
+
static inline PFN_vkVoidFunction layer_intercept_proc(const char *name) {
for (unsigned int i = 0; i < sizeof(procmap) / sizeof(procmap[0]); i++) {
if (!strcmp(name, procmap[i].name)) return procmap[i].pFunc;