From 555c8484bd88b77b080eab3d4d5777b69ec40e30 Mon Sep 17 00:00:00 2001 From: Mark Lobodzinski Date: Fri, 10 Feb 2017 12:09:23 -0700 Subject: layers: Consolidate GetPhysicalDevice* accessors Simplified core_validation->descriptor_sets/buffer_validation. Change-Id: I6921ac458bce5899e8bd60145bfaa0e0f5e8a2ac --- layers/core_validation.cpp | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) (limited to 'layers/core_validation.cpp') diff --git a/layers/core_validation.cpp b/layers/core_validation.cpp index 3080c26d..3c84942c 100644 --- a/layers/core_validation.cpp +++ b/layers/core_validation.cpp @@ -2073,10 +2073,6 @@ static PIPELINE_LAYOUT_NODE const *getPipelineLayout(layer_data const *dev_data, return &it->second; } -VkPhysicalDeviceLimits GetPhysicalDeviceLimits(layer_data const *dev_data) { - return dev_data->phys_dev_properties.properties.limits; -} - // Return true if for a given PSO, the given state enum is dynamic, else return false static bool isDynamic(const PIPELINE_STATE *pPipeline, const VkDynamicState state) { if (pPipeline && pPipeline->graphicsPipelineCI.pDynamicState) { @@ -6010,16 +6006,25 @@ VKAPI_ATTR VkResult VKAPI_CALL CreateBufferView(VkDevice device, const VkBufferV } // Access helper functions for external modules -PFN_vkGetPhysicalDeviceFormatProperties GetFormatPropertiesPointer(core_validation::layer_data *device_data) { - return device_data->instance_data->dispatch_table.GetPhysicalDeviceFormatProperties; +const VkFormatProperties *GetFormatProperties(core_validation::layer_data *device_data, VkFormat format) { + VkFormatProperties *format_properties = new VkFormatProperties; + instance_layer_data *instance_data = + GetLayerDataPtr(get_dispatch_key(device_data->instance_data->instance), instance_layer_data_map); + instance_data->dispatch_table.GetPhysicalDeviceFormatProperties(device_data->physical_device, format, format_properties); + return format_properties; } -PFN_vkGetPhysicalDeviceImageFormatProperties GetImageFormatPropertiesPointer(core_validation::layer_data *device_data) { - return device_data->instance_data->dispatch_table.GetPhysicalDeviceImageFormatProperties; +const VkImageFormatProperties *GetImageFormatProperties(core_validation::layer_data *device_data, VkFormat format, + VkImageType image_type, VkImageTiling tiling, VkImageUsageFlags usage, + VkImageCreateFlags flags) { + VkImageFormatProperties *image_format_properties = new VkImageFormatProperties; + instance_layer_data *instance_data = + GetLayerDataPtr(get_dispatch_key(device_data->instance_data->instance), instance_layer_data_map); + instance_data->dispatch_table.GetPhysicalDeviceImageFormatProperties(device_data->physical_device, format, image_type, tiling, + usage, flags, image_format_properties); + return image_format_properties; } -VkPhysicalDevice GetPhysicalDevice(core_validation::layer_data *device_data) { return device_data->physical_device; } - const debug_report_data *GetReportData(core_validation::layer_data *device_data) { return device_data->report_data; } const VkPhysicalDeviceProperties *GetPhysicalDeviceProperties(core_validation::layer_data *device_data) { @@ -6052,7 +6057,7 @@ std::unordered_map> *GetImageView return &device_data->imageViewMap; } -PHYS_DEV_PROPERTIES_NODE *GetPhysDevProperties(layer_data *device_data) { +const PHYS_DEV_PROPERTIES_NODE *GetPhysDevProperties(const layer_data *device_data) { return &device_data->phys_dev_properties; } -- cgit v1.2.3