From f5f28a6b2997c221108f4bcdc74793623afdb031 Mon Sep 17 00:00:00 2001 From: Christophe Date: Thu, 14 Sep 2023 12:44:31 +0200 Subject: [PATCH] layer: Implement vlGetUnknownSettings and Vul to Vku --- layer/profiles.h | 33 +-- layer/profiles_settings.cpp | 241 +++++++++++------- layer/profiles_settings.h | 91 ++++++- layer/tests/tests.cpp | 157 ++++++------ layer/tests/tests_combine_intersection.cpp | 10 +- layer/tests/tests_combine_union.cpp | 10 +- layer/tests/tests_mechanism.cpp | 78 +++--- layer/tests/tests_mechanism_api_version.cpp | 68 ++--- layer/tests/tests_mechanism_check_values.cpp | 24 +- layer/tests/tests_mechanism_format.cpp | 16 +- ...ts_mechanism_physical_device_selection.cpp | 6 +- layer/tests/tests_promoted.cpp | 6 +- layer/vk_layer_table.cpp | 30 +-- layer/vk_layer_table.h | 20 +- scripts/gen_profiles_layer.py | 2 +- scripts/gen_profiles_tests.py | 10 +- scripts/known_good.json | 2 +- 17 files changed, 455 insertions(+), 349 deletions(-) diff --git a/layer/profiles.h b/layer/profiles.h index e379e2f1..6e820b71 100644 --- a/layer/profiles.h +++ b/layer/profiles.h @@ -40,36 +40,5 @@ std::string GetSimulateCapabilitiesLog(SimulateCapabilityFlags flags); std::string GetDebugReportsLog(DebugActionFlags flags); #define kLayerName "VK_LAYER_KHRONOS_profiles" -#define kLayerSettingsProfileFile "profile_file" -#define kLayerSettingsProfileName "profile_name" -#define kLayerSettingsProfileValidation "profile_validation" -#define kLayerSettingsEmulatePortability "emulate_portability" -#define kLayerSettings_constantAlphaColorBlendFactors "constantAlphaColorBlendFactors" -#define kLayerSettings_events "events" -#define kLayerSettings_imageViewFormatReinterpretation "imageViewFormatReinterpretation" -#define kLayerSettings_imageViewFormatSwizzle "imageViewFormatSwizzle" -#define kLayerSettings_imageView2DOn3DImage "imageView2DOn3DImage" -#define kLayerSettings_multisampleArrayImage "multisampleArrayImage" -#define kLayerSettings_mutableComparisonSamplers "mutableComparisonSamplers" -#define kLayerSettings_pointPolygons "pointPolygons" -#define kLayerSettings_samplerMipLodBias "samplerMipLodBias" -#define kLayerSettings_separateStencilMaskRef "separateStencilMaskRef" -#define kLayerSettings_shaderSampleRateInterpolationFunctions "shaderSampleRateInterpolationFunctions" -#define kLayerSettings_tessellationIsolines "tessellationIsolines" -#define kLayerSettings_tessellationPointMode "tessellationPointMode" -#define kLayerSettings_triangleFans "triangleFans" -#define kLayerSettings_vertexAttributeAccessBeyondStride "vertexAttributeAccessBeyondStride" -#define kLayerSettings_minVertexInputBindingStrideAlignment "minVertexInputBindingStrideAlignment" -#define kLayerSettingsSimulateCapabilities "simulate_capabilities" -#define kLayerSettingsDebugActions "debug_actions" -#define kLayerSettingsDebugFilename "debug_filename" -#define kLayerSettingsDebugFileClear "debug_file_clear" -#define kLayerSettingsDebugFailOnError "debug_fail_on_error" -#define kLayerSettingsDebugReports "debug_reports" -#define kLayerSettingsExcludeDeviceExtensions "exclude_device_extensions" -#define kLayerSettingsExcludeFormats "exclude_formats" -#define kLayerSettingsDefaultFeatureValues "default_feature_values" -#define kLayerSettingsForceDevice "force_device" -#define kLayerSettingsForceDeviceUUID "force_device_uuid" -#define kLayerSettingsForceDeviceName "force_device_name" + diff --git a/layer/profiles_settings.cpp b/layer/profiles_settings.cpp index 361c1bf6..62b452e5 100644 --- a/layer/profiles_settings.cpp +++ b/layer/profiles_settings.cpp @@ -181,164 +181,214 @@ void InitProfilesLayerSettings(const VkInstanceCreateInfo *pCreateInfo, const Vk ProfileLayerSettings *layer_settings) { assert(layer_settings != nullptr); + const VkLayerSettingsCreateInfoEXT *create_info = vlFindLayerSettingsCreateInfo(pCreateInfo); + VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE; - vlCreateLayerSettingSet(kLayerName, vlFindLayerSettingsCreateInfo(pCreateInfo), pAllocator, nullptr, &layerSettingSet); + vlCreateLayerSettingSet(kLayerName, create_info, pAllocator, nullptr, &layerSettingSet); + + uint32_t unknown_setting_count = 0; + vlGetUnknownSettings(create_info, static_cast(SETTING_COUNT), kSettingNames, &unknown_setting_count, nullptr); + + if (unknown_setting_count > 0) { + std::vector unknown_settings; + unknown_settings.resize(unknown_setting_count); + + vlGetUnknownSettings(create_info, static_cast(SETTING_COUNT), kSettingNames, &unknown_setting_count, + &unknown_settings[0]); + + for (std::size_t i = 0, n = unknown_settings.size(); i < n; ++i) { + LogMessage(layer_settings, DEBUG_REPORT_WARNING_BIT, + "Unknown %s setting listed in VkLayerSettingsCreateInfoEXT, This setting is ignored.\n", unknown_settings[i]); + } + } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsProfileFile)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsProfileFile, layer_settings->simulate.profile_file); + const char *setting_profile_file = GetString(SETTING_PROFILE_FILE); + if (vlHasLayerSetting(layerSettingSet, setting_profile_file)) { + vlGetLayerSettingValue(layerSettingSet, setting_profile_file, layer_settings->simulate.profile_file); - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsProfileName)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsProfileName, layer_settings->simulate.profile_name); + const char *setting_profile_name = GetString(SETTING_PROFILE_NAME); + if (vlHasLayerSetting(layerSettingSet, setting_profile_name)) { + vlGetLayerSettingValue(layerSettingSet, setting_profile_name, layer_settings->simulate.profile_name); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsProfileValidation)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsProfileValidation, layer_settings->simulate.profile_validation); + const char *setting_profile_validation = GetString(SETTING_PROFILE_VALIDATION); + if (vlHasLayerSetting(layerSettingSet, setting_profile_validation)) { + vlGetLayerSettingValue(layerSettingSet, setting_profile_validation, layer_settings->simulate.profile_validation); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsSimulateCapabilities)) { + const char *setting_simulate_caps = GetString(SETTING_SIMULATE_CAPABILITIES); + if (vlHasLayerSetting(layerSettingSet, setting_simulate_caps)) { std::vector values; - vlGetLayerSettingValues(layerSettingSet, kLayerSettingsSimulateCapabilities, values); + vlGetLayerSettingValues(layerSettingSet, setting_simulate_caps, values); for (std::size_t i = 0, n = values.size(); i < n; ++i) { values[i] = ToUpper(values[i]); } layer_settings->simulate.capabilities = GetSimulateCapabilityFlags(values); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDefaultFeatureValues)) { + const char *setting_default_feature_values = GetString(SETTING_DEFAULT_FEATURE_VALUES); + if (vlHasLayerSetting(layerSettingSet, setting_default_feature_values)) { std::string value; - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsDefaultFeatureValues, value); + vlGetLayerSettingValue(layerSettingSet, setting_default_feature_values, value); layer_settings->simulate.default_feature_values = GetDefaultFeatureValues(ToUpper(value)); } } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsExcludeDeviceExtensions)) { - vlGetLayerSettingValues(layerSettingSet, kLayerSettingsExcludeDeviceExtensions, + const char *setting_exclude_device_ext = GetString(SETTING_EXCLUDE_DEVICE_EXTENSIONS); + if (vlHasLayerSetting(layerSettingSet, setting_exclude_device_ext)) { + vlGetLayerSettingValues(layerSettingSet, setting_exclude_device_ext, layer_settings->simulate.exclude_device_extensions); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsExcludeFormats)) { - vlGetLayerSettingValues(layerSettingSet, kLayerSettingsExcludeFormats, layer_settings->simulate.exclude_formats); + const char *setting_exclude_formats = GetString(SETTING_EXCLUDE_FORMATS); + if (vlHasLayerSetting(layerSettingSet, setting_exclude_formats)) { + vlGetLayerSettingValues(layerSettingSet, setting_exclude_formats, layer_settings->simulate.exclude_formats); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsEmulatePortability)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsEmulatePortability, layer_settings->simulate.emulate_portability); + const char *setting_emulate_port = GetString(SETTING_EMULATE_PORTABILITY); + if (vlHasLayerSetting(layerSettingSet, setting_emulate_port)) { + vlGetLayerSettingValue(layerSettingSet, setting_emulate_port, layer_settings->simulate.emulate_portability); - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_constantAlphaColorBlendFactors)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_constantAlphaColorBlendFactors, + const char *setting_contant_factors = GetString(SETTING_CONTANT_ALPHA_COLOR_BLEND_FACTORS); + if (vlHasLayerSetting(layerSettingSet, setting_contant_factors)) { + vlGetLayerSettingValue(layerSettingSet, setting_contant_factors, layer_settings->portability.constantAlphaColorBlendFactors); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_events)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_events, layer_settings->portability.events); + const char *setting_events = GetString(SETTING_EVENTS); + if (vlHasLayerSetting(layerSettingSet, setting_events)) { + vlGetLayerSettingValue(layerSettingSet, setting_events, layer_settings->portability.events); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_imageViewFormatReinterpretation)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_imageViewFormatReinterpretation, + const char *setting_image_view_reinterp = GetString(SETTING_IMAGE_VIEW_FORMAT_REINTERPRETATION); + if (vlHasLayerSetting(layerSettingSet, setting_image_view_reinterp)) { + vlGetLayerSettingValue(layerSettingSet, setting_image_view_reinterp, layer_settings->portability.imageViewFormatReinterpretation); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_imageViewFormatSwizzle)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_imageViewFormatSwizzle, + const char *setting_image_view_swizzle = GetString(SETTING_IMAGE_VIEW_FORMAT_SWIZZLE); + if (vlHasLayerSetting(layerSettingSet, setting_image_view_swizzle)) { + vlGetLayerSettingValue(layerSettingSet, setting_image_view_swizzle, layer_settings->portability.imageViewFormatSwizzle); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_imageView2DOn3DImage)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_imageView2DOn3DImage, + const char *setting_image_view_2d_on_3d = GetString(SETTING_IMAGE_VIEW_2D_ON_3D_IMAGE); + if (vlHasLayerSetting(layerSettingSet, setting_image_view_2d_on_3d)) { + vlGetLayerSettingValue(layerSettingSet, setting_image_view_2d_on_3d, layer_settings->portability.imageView2DOn3DImage); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_multisampleArrayImage)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_multisampleArrayImage, + const char *setting_multisample_array = GetString(SETTING_MULTISAMPLE_ARRAY_IMAGE); + if (vlHasLayerSetting(layerSettingSet, setting_multisample_array)) { + vlGetLayerSettingValue(layerSettingSet, setting_multisample_array, layer_settings->portability.multisampleArrayImage); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_mutableComparisonSamplers)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_mutableComparisonSamplers, + const char *setting_mutable_comparison_samplers = GetString(SETTING_MUTABLE_COMPARISON_SAMPLERS); + if (vlHasLayerSetting(layerSettingSet, setting_mutable_comparison_samplers)) { + vlGetLayerSettingValue(layerSettingSet, setting_mutable_comparison_samplers, layer_settings->portability.mutableComparisonSamplers); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_pointPolygons)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_pointPolygons, layer_settings->portability.pointPolygons); + const char *setting_point_poly = GetString(SETTING_POINT_POLYGONS); + if (vlHasLayerSetting(layerSettingSet, setting_point_poly)) { + vlGetLayerSettingValue(layerSettingSet, setting_point_poly, layer_settings->portability.pointPolygons); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_samplerMipLodBias)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_samplerMipLodBias, + const char *setting_sampler_mip_lod_bias = GetString(SETTING_SAMPLER_MIP_LOD_BIAS); + if (vlHasLayerSetting(layerSettingSet, setting_sampler_mip_lod_bias)) { + vlGetLayerSettingValue(layerSettingSet, setting_sampler_mip_lod_bias, layer_settings->portability.samplerMipLodBias); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_separateStencilMaskRef)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_separateStencilMaskRef, + const char *setting_separate_stencil_mask_ref = GetString(SETTING_SEPARATE_STENCIL_MASK_REF); + if (vlHasLayerSetting(layerSettingSet, setting_separate_stencil_mask_ref)) { + vlGetLayerSettingValue(layerSettingSet, setting_separate_stencil_mask_ref, layer_settings->portability.separateStencilMaskRef); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_shaderSampleRateInterpolationFunctions)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_shaderSampleRateInterpolationFunctions, + const char *setting_separate_sample_rate = GetString(SETTING_SEPARATE_SAMPLE_RATE_INTERPOLATION_FUNCTIONS); + if (vlHasLayerSetting(layerSettingSet, setting_separate_sample_rate)) { + vlGetLayerSettingValue(layerSettingSet, setting_separate_sample_rate, layer_settings->portability.shaderSampleRateInterpolationFunctions); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_tessellationIsolines)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_tessellationIsolines, + const char *setting_tessellation_isolines = GetString(SETTING_TESSELLATION_ISOLINES); + if (vlHasLayerSetting(layerSettingSet, setting_tessellation_isolines)) { + vlGetLayerSettingValue(layerSettingSet, setting_tessellation_isolines, layer_settings->portability.tessellationIsolines); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_tessellationPointMode)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_tessellationPointMode, + const char *setting_tessellation_point_mode = GetString(SETTING_TESSELLATION_POINT_MODE); + if (vlHasLayerSetting(layerSettingSet, setting_tessellation_point_mode)) { + vlGetLayerSettingValue(layerSettingSet, setting_tessellation_point_mode, layer_settings->portability.tessellationPointMode); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_triangleFans)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_triangleFans, layer_settings->portability.triangleFans); + const char *setting_triangle_fans = GetString(SETTING_TRIANGLE_FANS); + if (vlHasLayerSetting(layerSettingSet, setting_triangle_fans)) { + vlGetLayerSettingValue(layerSettingSet, setting_triangle_fans, layer_settings->portability.triangleFans); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_vertexAttributeAccessBeyondStride)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_vertexAttributeAccessBeyondStride, + const char *setting_vertex_attrib_stride = GetString(SETTING_VERTEX_ATTRIBUTE_ACCESS_BEYOND_STRIDE); + if (vlHasLayerSetting(layerSettingSet, setting_vertex_attrib_stride)) { + vlGetLayerSettingValue(layerSettingSet, setting_vertex_attrib_stride, layer_settings->portability.vertexAttributeAccessBeyondStride); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettings_minVertexInputBindingStrideAlignment)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettings_minVertexInputBindingStrideAlignment, + const char *setting_min_vertex_attrib_stride = GetString(SETTING_MIN_VERTEX_INPUT_BINDING_STRIDE_ALIGMENT); + if (vlHasLayerSetting(layerSettingSet, setting_min_vertex_attrib_stride)) { + vlGetLayerSettingValue(layerSettingSet, setting_min_vertex_attrib_stride, layer_settings->portability.minVertexInputBindingStrideAlignment); } } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsForceDevice)) { + const char *setting_force_device = GetString(SETTING_FORCE_DEVICE); + if (vlHasLayerSetting(layerSettingSet, setting_force_device)) { std::string value; - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsForceDevice, value); + vlGetLayerSettingValue(layerSettingSet, setting_force_device, value); layer_settings->device.force_device = GetForceDevice(ToUpper(value)); - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsForceDeviceUUID)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsForceDeviceUUID, layer_settings->device.force_device_uuid); + const char *setting_force_device_uuid = GetString(SETTING_FORCE_DEVICE_UUID); + if (vlHasLayerSetting(layerSettingSet, setting_force_device_uuid)) { + vlGetLayerSettingValue(layerSettingSet, setting_force_device_uuid, layer_settings->device.force_device_uuid); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsForceDeviceName)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsForceDeviceName, layer_settings->device.force_device_name); + const char *setting_force_device_name = GetString(SETTING_FORCE_DEVICE_NAME); + if (vlHasLayerSetting(layerSettingSet, setting_force_device_name)) { + vlGetLayerSettingValue(layerSettingSet, setting_force_device_name, layer_settings->device.force_device_name); } } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDebugFailOnError)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsDebugFailOnError, layer_settings->log.debug_fail_on_error); + const char *setting_debug_fail = GetString(SETTING_DEBUG_FAIL_ON_ERROR); + if (vlHasLayerSetting(layerSettingSet, setting_debug_fail)) { + vlGetLayerSettingValue(layerSettingSet, setting_debug_fail, layer_settings->log.debug_fail_on_error); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDebugActions)) { + const char *setting_debug_actions = GetString(SETTING_DEBUG_ACTIONS); + if (vlHasLayerSetting(layerSettingSet, setting_debug_actions)) { std::vector values; - vlGetLayerSettingValues(layerSettingSet, kLayerSettingsDebugActions, values); + vlGetLayerSettingValues(layerSettingSet, setting_debug_actions, values); for (std::size_t i = 0, n = values.size(); i < n; ++i) { values[i] = ToUpper(values[i]); } layer_settings->log.debug_actions = GetDebugActionFlags(values); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDebugFilename)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsDebugFilename, layer_settings->log.debug_filename); + const char *setting_debug_filename = GetString(SETTING_DEBUG_FILENAME); + if (vlHasLayerSetting(layerSettingSet, setting_debug_filename)) { + vlGetLayerSettingValue(layerSettingSet, setting_debug_filename, layer_settings->log.debug_filename); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDebugFileClear)) { - vlGetLayerSettingValue(layerSettingSet, kLayerSettingsDebugFileClear, layer_settings->log.debug_file_discard); + const char *setting_debug_file_clear = GetString(SETTING_DEBUG_FILE_CLEAR); + if (vlHasLayerSetting(layerSettingSet, setting_debug_file_clear)) { + vlGetLayerSettingValue(layerSettingSet, setting_debug_file_clear, layer_settings->log.debug_file_discard); } - if (vlHasLayerSetting(layerSettingSet, kLayerSettingsDebugReports)) { + const char *setting_debug_reports = GetString(SETTING_DEBUG_REPORTS); + if (vlHasLayerSetting(layerSettingSet, setting_debug_reports)) { std::vector values; - vlGetLayerSettingValues(layerSettingSet, kLayerSettingsDebugReports, values); + vlGetLayerSettingValues(layerSettingSet, setting_debug_reports, values); for (std::size_t i = 0, n = values.size(); i < n; ++i) { values[i] = ToUpper(values[i]); } @@ -368,55 +418,58 @@ void InitProfilesLayerSettings(const VkInstanceCreateInfo *pCreateInfo, const Vk const std::string debug_reports_log = GetDebugReportsLog(layer_settings->log.debug_reports); std::string settings_log; - settings_log += format("\t%s: %s\n", kLayerSettingsProfileFile, layer_settings->simulate.profile_file.c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsProfileName, layer_settings->simulate.profile_name.c_str()); + settings_log += format("\t%s: %s\n", GetString(SETTING_PROFILE_FILE), layer_settings->simulate.profile_file.c_str()); + settings_log += format("\t%s: %s\n", GetString(SETTING_PROFILE_NAME), layer_settings->simulate.profile_name.c_str()); settings_log += - format("\t%s: %s\n", kLayerSettingsProfileValidation, layer_settings->simulate.profile_validation ? "true" : "false"); - settings_log += format("\t%s: %s\n", kLayerSettingsSimulateCapabilities, simulation_capabilities_log.c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsDefaultFeatureValues, default_feature_values.c_str()); + format("\t%s: %s\n", GetString(SETTING_PROFILE_VALIDATION), layer_settings->simulate.profile_validation ? "true" : "false"); + settings_log += format("\t%s: %s\n", GetString(SETTING_SIMULATE_CAPABILITIES), simulation_capabilities_log.c_str()); + settings_log += format("\t%s: %s\n", GetString(SETTING_DEFAULT_FEATURE_VALUES), default_feature_values.c_str()); - settings_log += - format("\t%s: %s\n", kLayerSettingsEmulatePortability, layer_settings->simulate.emulate_portability ? "true" : "false"); + settings_log += format("\t%s: %s\n", GetString(SETTING_EMULATE_PORTABILITY), + layer_settings->simulate.emulate_portability ? "true" : "false"); if (layer_settings->simulate.emulate_portability) { - settings_log += format("\t\t%s: %s\n", kLayerSettings_constantAlphaColorBlendFactors, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_CONTANT_ALPHA_COLOR_BLEND_FACTORS), layer_settings->portability.constantAlphaColorBlendFactors ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_events, layer_settings->portability.events ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_imageViewFormatReinterpretation, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_EVENTS), + layer_settings->portability.events ? "true" : "false"); + settings_log += format("\t\t%s: %s\n", GetString(SETTING_IMAGE_VIEW_FORMAT_REINTERPRETATION), layer_settings->portability.imageViewFormatReinterpretation ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_imageViewFormatSwizzle, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_IMAGE_VIEW_FORMAT_SWIZZLE), layer_settings->portability.imageViewFormatSwizzle ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_imageView2DOn3DImage, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_IMAGE_VIEW_2D_ON_3D_IMAGE), layer_settings->portability.imageView2DOn3DImage ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_multisampleArrayImage, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_MULTISAMPLE_ARRAY_IMAGE), layer_settings->portability.multisampleArrayImage ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_mutableComparisonSamplers, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_MUTABLE_COMPARISON_SAMPLERS), layer_settings->portability.mutableComparisonSamplers ? "true" : "false"); settings_log += - format("\t\t%s: %s\n", kLayerSettings_pointPolygons, layer_settings->portability.pointPolygons ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_samplerMipLodBias, + format("\t\t%s: %s\n", GetString(SETTING_POINT_POLYGONS), layer_settings->portability.pointPolygons ? "true" : "false"); + settings_log += format("\t\t%s: %s\n", GetString(SETTING_SAMPLER_MIP_LOD_BIAS), layer_settings->portability.samplerMipLodBias ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_separateStencilMaskRef, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_SEPARATE_STENCIL_MASK_REF), layer_settings->portability.separateStencilMaskRef ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_shaderSampleRateInterpolationFunctions, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_SEPARATE_SAMPLE_RATE_INTERPOLATION_FUNCTIONS), layer_settings->portability.shaderSampleRateInterpolationFunctions ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_tessellationIsolines, + settings_log += format("\t\t%s: %s\n", GetString(SETTING_TESSELLATION_ISOLINES), layer_settings->portability.tessellationIsolines ? "true" : "false"); settings_log += - format("\t\t%s: %s\n", kLayerSettings_triangleFans, layer_settings->portability.triangleFans ? "true" : "false"); - settings_log += format("\t\t%s: %s\n", kLayerSettings_vertexAttributeAccessBeyondStride, + format("\t\t%s: %s\n", GetString(SETTING_TRIANGLE_FANS), layer_settings->portability.triangleFans ? "true" : "false"); + settings_log += format("\t\t%s: %s\n", GetString(SETTING_VERTEX_ATTRIBUTE_ACCESS_BEYOND_STRIDE), layer_settings->portability.vertexAttributeAccessBeyondStride ? "true" : "false"); - settings_log += format("\t\t%s: %d\n", kLayerSettings_minVertexInputBindingStrideAlignment, + settings_log += format("\t\t%s: %d\n", GetString(SETTING_MIN_VERTEX_INPUT_BINDING_STRIDE_ALIGMENT), static_cast(layer_settings->portability.minVertexInputBindingStrideAlignment)); } - settings_log += format("\t%s: %s\n", kLayerSettingsDebugActions, debug_actions_log.c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsDebugFilename, layer_settings->log.debug_filename.c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsDebugFileClear, layer_settings->log.debug_file_discard ? "true" : "false"); + settings_log += format("\t%s: %s\n", GetString(SETTING_DEBUG_ACTIONS), debug_actions_log.c_str()); + settings_log += format("\t%s: %s\n", GetString(SETTING_DEBUG_FILENAME), layer_settings->log.debug_filename.c_str()); settings_log += - format("\t%s: %s\n", kLayerSettingsDebugFailOnError, layer_settings->log.debug_fail_on_error ? "true" : "false"); - settings_log += format("\t%s: %s\n", kLayerSettingsDebugReports, debug_reports_log.c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsExcludeDeviceExtensions, + format("\t%s: %s\n", GetString(SETTING_DEBUG_FILE_CLEAR), layer_settings->log.debug_file_discard ? "true" : "false"); + settings_log += + format("\t%s: %s\n", GetString(SETTING_DEBUG_FAIL_ON_ERROR), layer_settings->log.debug_fail_on_error ? "true" : "false"); + settings_log += format("\t%s: %s\n", GetString(SETTING_DEBUG_REPORTS), debug_reports_log.c_str()); + settings_log += format("\t%s: %s\n", GetString(SETTING_EXCLUDE_DEVICE_EXTENSIONS), GetString(layer_settings->simulate.exclude_device_extensions).c_str()); - settings_log += format("\t%s: %s\n", kLayerSettingsExcludeFormats, GetString(layer_settings->simulate.exclude_formats).c_str()); + settings_log += + format("\t%s: %s\n", GetString(SETTING_EXCLUDE_FORMATS), GetString(layer_settings->simulate.exclude_formats).c_str()); LogMessage(layer_settings, DEBUG_REPORT_NOTIFICATION_BIT, "Profile Layers Settings: {\n%s}\n", settings_log.c_str()); diff --git a/layer/profiles_settings.h b/layer/profiles_settings.h index 04462967..69263318 100644 --- a/layer/profiles_settings.h +++ b/layer/profiles_settings.h @@ -24,6 +24,82 @@ #include #include +enum SettingId { + SETTING_PROFILE_FILE = 0, + SETTING_PROFILE_NAME, + SETTING_PROFILE_VALIDATION, + SETTING_EMULATE_PORTABILITY, + SETTING_CONTANT_ALPHA_COLOR_BLEND_FACTORS, + SETTING_EVENTS, + SETTING_IMAGE_VIEW_FORMAT_REINTERPRETATION, + SETTING_IMAGE_VIEW_FORMAT_SWIZZLE, + SETTING_IMAGE_VIEW_2D_ON_3D_IMAGE, + SETTING_MULTISAMPLE_ARRAY_IMAGE, + SETTING_MUTABLE_COMPARISON_SAMPLERS, + SETTING_POINT_POLYGONS, + SETTING_SAMPLER_MIP_LOD_BIAS, + SETTING_SEPARATE_STENCIL_MASK_REF, + SETTING_SEPARATE_SAMPLE_RATE_INTERPOLATION_FUNCTIONS, + SETTING_TESSELLATION_ISOLINES, + SETTING_TESSELLATION_POINT_MODE, + SETTING_TRIANGLE_FANS, + SETTING_VERTEX_ATTRIBUTE_ACCESS_BEYOND_STRIDE, + SETTING_MIN_VERTEX_INPUT_BINDING_STRIDE_ALIGMENT, + SETTING_SIMULATE_CAPABILITIES, + SETTING_DEBUG_ACTIONS, + SETTING_DEBUG_FILENAME, + SETTING_DEBUG_FILE_CLEAR, + SETTING_DEBUG_FAIL_ON_ERROR, + SETTING_DEBUG_REPORTS, + SETTING_EXCLUDE_DEVICE_EXTENSIONS, + SETTING_EXCLUDE_FORMATS, + SETTING_DEFAULT_FEATURE_VALUES, + SETTING_FORCE_DEVICE, + SETTING_FORCE_DEVICE_UUID, + SETTING_FORCE_DEVICE_NAME, + + SETTING_FIRST = SETTING_PROFILE_FILE, + SETTING_LAST = SETTING_FORCE_DEVICE_NAME +}; + +enum { SETTING_COUNT = SETTING_LAST - SETTING_FIRST + 1 }; + +static const char *kSettingNames[] = {"profile_file", + "profile_name", + "profile_validation", + "emulate_portability", + "constantAlphaColorBlendFactors", + "events", + "imageViewFormatReinterpretation", + "imageViewFormatSwizzle", + "imageView2DOn3DImage", + "multisampleArrayImage", + "mutableComparisonSamplers", + "pointPolygons", + "samplerMipLodBias", + "separateStencilMaskRef", + "shaderSampleRateInterpolationFunctions", + "tessellationIsolines", + "tessellationPointMode", + "triangleFans", + "vertexAttributeAccessBeyondStride", + "minVertexInputBindingStrideAlignment", + "simulate_capabilities", + "debug_actions", + "debug_filename", + "debug_file_clear", + "debug_fail_on_error", + "debug_reports", + "exclude_device_extensions", + "exclude_formats", + "default_feature_values", + "force_device", + "force_device_uuid", + "force_device_name"}; +static_assert(std::size(kSettingNames) == SETTING_COUNT); + +inline const char *GetString(SettingId setting_id) { return kSettingNames[setting_id]; } + enum SimulateCapabilityBits { SIMULATE_API_VERSION_BIT = 1 << 0, SIMULATE_FEATURES_BIT = 1 << 1, @@ -44,7 +120,7 @@ enum DebugActionBits { }; typedef int DebugActionFlags; -static DebugActionFlags GetDebugActionFlags(const std::vector &values) { +inline DebugActionFlags GetDebugActionFlags(const std::vector &values) { DebugActionFlags result = 0; for (std::size_t i = 0, n = values.size(); i < n; ++i) { @@ -64,9 +140,9 @@ static DebugActionFlags GetDebugActionFlags(const std::vector &valu return result; } -static std::vector GetDebugActionStrings(DebugActionFlags flags) { - static const char *table[] = { - "DEBUG_ACTION_FILE_BIT", "DEBUG_ACTION_STDOUT_BIT", "DEBUG_ACTION_OUTPUT_BIT", "DEBUG_ACTION_BREAKPOINT_BIT"}; +inline std::vector GetDebugActionStrings(DebugActionFlags flags) { + static const char *table[] = {"DEBUG_ACTION_FILE_BIT", "DEBUG_ACTION_STDOUT_BIT", "DEBUG_ACTION_OUTPUT_BIT", + "DEBUG_ACTION_BREAKPOINT_BIT"}; std::vector result; @@ -78,6 +154,7 @@ static std::vector GetDebugActionStrings(DebugActionFlags flags) { return result; } + std::string GetDebugActionsLog(DebugActionFlags flags); enum DebugReportBits { @@ -89,7 +166,7 @@ enum DebugReportBits { }; typedef int DebugReportFlags; -static DebugReportFlags GetDebugReportFlags(const std::vector &values) { +inline DebugReportFlags GetDebugReportFlags(const std::vector &values) { DebugReportFlags result = 0; for (std::size_t i = 0, n = values.size(); i < n; ++i) { @@ -114,7 +191,7 @@ enum DefaultFeatureValues { DEFAULT_FEATURE_VALUES_DEVICE }; -static DefaultFeatureValues GetDefaultFeatureValues(const std::string &value) { +inline DefaultFeatureValues GetDefaultFeatureValues(const std::string &value) { if (value == "DEFAULT_FEATURE_VALUES_FALSE") { return DEFAULT_FEATURE_VALUES_FALSE; } else if (value == "DEFAULT_FEATURE_VALUES_DEVICE") { @@ -124,7 +201,7 @@ static DefaultFeatureValues GetDefaultFeatureValues(const std::string &value) { return DEFAULT_FEATURE_VALUES_DEVICE; } -static std::string GetDefaultFeatureValuesString(DefaultFeatureValues value) { +inline std::string GetDefaultFeatureValuesString(DefaultFeatureValues value) { if (value == DEFAULT_FEATURE_VALUES_FALSE) { return "DEFAULT_FEATURE_VALUES_FALSE"; } else if (value == DEFAULT_FEATURE_VALUES_DEVICE) { diff --git a/layer/tests/tests.cpp b/layer/tests/tests.cpp index db912f5a..0b4e808f 100644 --- a/layer/tests/tests.cpp +++ b/layer/tests/tests.cpp @@ -47,10 +47,10 @@ TEST_F(LayerTests, TestDesktop2023) { VkBool32 debug_fail_on_error = VK_FALSE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; profiles_test::VulkanInstanceBuilder inst_builder; VkResult err = inst_builder.init(settings); @@ -100,10 +100,10 @@ TEST_F(LayerTests, TestSetCombinationMode) { const char* simulate_capabilities = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&simulate_capabilities}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&simulate_capabilities}} }; err = inst_builder.init(settings); @@ -146,10 +146,10 @@ TEST_F(LayerTests, TestSetCombinationMode) { const std::vector simulate_capabilities = {"SIMULATE_EXTENSIONS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -184,10 +184,10 @@ TEST_F(LayerTests, TestSetCombinationMode) { const std::vector simulate_capabilities = {"SIMULATE_EXTENSIONS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} }; err = inst_builder.init(settings); @@ -228,11 +228,11 @@ TEST_F(LayerTests, TestExtensionNotSupported) { VkBool32 debug_fail_on_error = VK_TRUE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; profiles_test::VulkanInstanceBuilder inst_builder; VkResult err = inst_builder.init(settings); @@ -278,11 +278,12 @@ TEST_F(LayerTests, TestExcludingDeviceExtensions) { }; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsExcludeDeviceExtensions, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(exclude_device_extensions.size()), &exclude_device_extensions[0]}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_EXCLUDE_DEVICE_EXTENSIONS), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(exclude_device_extensions.size()), &exclude_device_extensions[0]}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; profiles_test::VulkanInstanceBuilder inst_builder; err = inst_builder.init(settings); @@ -337,10 +338,11 @@ TEST_F(LayerTests, TestExcludingFormats) { const std::vector exclude_formats = {"VK_FORMAT_R8G8B8A8_UNORM"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsExcludeFormats, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(exclude_formats.size()), &exclude_formats[0]}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_EXCLUDE_FORMATS), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(exclude_formats.size()), &exclude_formats[0]}}; profiles_test::VulkanInstanceBuilder inst_builder; VkResult err = inst_builder.init(settings); @@ -370,11 +372,11 @@ TEST_F(LayerTests, TestProfileLayerSettingsEXT_EnumerateExtensions) { const std::vector simulate_capabilities = {"SIMULATE_MAX_ENUM"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; profiles_test::VulkanInstanceBuilder inst_builder; VkResult err = inst_builder.init(VK_API_VERSION_1_0, settings); @@ -449,12 +451,12 @@ TEST_F(LayerTests, TestExcludedExtensions) { const char* debug_reports = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports} }; err = inst_builder.init(VK_API_VERSION_1_3, settings); @@ -480,13 +482,14 @@ TEST_F(LayerTests, TestExcludedExtensions) { const char* debug_reports = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsExcludeDeviceExtensions, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(exclude_device_extensions.size()), &exclude_device_extensions[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EXCLUDE_DEVICE_EXTENSIONS), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(exclude_device_extensions.size()), &exclude_device_extensions[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} }; err = inst_builder.init(VK_API_VERSION_1_3, settings); @@ -528,12 +531,12 @@ TEST_F(LayerTests, TestQueueFamilyProperties) { const char* debug_reports = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} }; profiles_test::VulkanInstanceBuilder inst_builder; @@ -575,12 +578,12 @@ TEST_F(LayerTests, TestQueueFamilyPropertiesGlobalPriorityProperties) { const char* debug_reports= ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports} }; profiles_test::VulkanInstanceBuilder inst_builder; @@ -619,12 +622,12 @@ TEST_F(LayerTests, TestQueueFamilyCheckpointProperties) { const char* debug_reports = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), {&simulate_capabilities[0]}}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&debug_reports}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), {&simulate_capabilities[0]}}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&debug_reports}} }; profiles_test::VulkanInstanceBuilder inst_builder; @@ -659,12 +662,12 @@ TEST_F(LayerTests, TestQueueFamilyCheckpointProperties2) { const char* debug_reports = ""; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), {&simulate_capabilities[0]}}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_name_data}}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), {&simulate_capabilities[0]}}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 0, {&debug_reports}} }; profiles_test::VulkanInstanceBuilder inst_builder; @@ -723,11 +726,11 @@ TEST_F(LayerTests, TestQueueFamilyPropertiesPartial) { VkBool32 debug_fail_on_error = VK_TRUE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error} }; err = inst_builder.init(settings); diff --git a/layer/tests/tests_combine_intersection.cpp b/layer/tests/tests_combine_intersection.cpp index e2342054..e1246207 100644 --- a/layer/tests/tests_combine_intersection.cpp +++ b/layer/tests/tests_combine_intersection.cpp @@ -43,11 +43,11 @@ class TestsIntersection : public VkTestFramework { "DEBUG_REPORT_ERROR_BIT", "DEBUG_REPORT_WARNING_BIT", "DEBUG_REPORT_NOTIFICATION_BIT", "DEBUG_REPORT_DEBUG_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} }; err = inst_builder.init(VK_API_VERSION_1_3, settings); diff --git a/layer/tests/tests_combine_union.cpp b/layer/tests/tests_combine_union.cpp index 692cfc30..5b01706d 100644 --- a/layer/tests/tests_combine_union.cpp +++ b/layer/tests/tests_combine_union.cpp @@ -43,11 +43,11 @@ class TestsUnion : public VkTestFramework { "DEBUG_REPORT_ERROR_BIT", "DEBUG_REPORT_WARNING_BIT", "DEBUG_REPORT_NOTIFICATION_BIT", "DEBUG_REPORT_DEBUG_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} }; err = inst_builder.init(settings); diff --git a/layer/tests/tests_mechanism.cpp b/layer/tests/tests_mechanism.cpp index a2af0e84..110daf4b 100644 --- a/layer/tests/tests_mechanism.cpp +++ b/layer/tests/tests_mechanism.cpp @@ -52,11 +52,11 @@ TEST_F(TestsMechanism, selecting_profile) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -95,11 +95,11 @@ TEST_F(TestsMechanism, selecting_profile) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -136,10 +136,10 @@ TEST_F(TestsMechanism, selecting_profile) { const std::vector simulate_capabilities = {"SIMULATE_PROPERTIES_BIT", "SIMULATE_EXTENSIONS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} }; err = inst_builder.init(settings); @@ -168,10 +168,10 @@ TEST_F(TestsMechanism, selecting_profile) { const std::vector simulate_capabilities = {"SIMULATE_PROPERTIES_BIT", "SIMULATE_EXTENSIONS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -207,12 +207,12 @@ TEST_F(TestsMechanism, profile_variants_all) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -278,12 +278,12 @@ TEST_F(TestsMechanism, default_feature_values) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDefaultFeatureValues, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &default_feature_values_data}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEFAULT_FEATURE_VALUES), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &default_feature_values_data}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -328,11 +328,11 @@ TEST_F(TestsMechanism, reading_duplicated_members) { VkBool32 debug_fail_on_error = VK_TRUE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error} }; err = inst_builder.init(settings); @@ -353,11 +353,11 @@ TEST_F(TestsMechanism, capabilities_or) { VkBool32 debug_fail_on_error = VK_TRUE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugFailOnError, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_FAIL_ON_ERROR), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &debug_fail_on_error}}; profiles_test::VulkanInstanceBuilder inst_builder; VkResult err = inst_builder.init(settings); diff --git a/layer/tests/tests_mechanism_api_version.cpp b/layer/tests/tests_mechanism_api_version.cpp index 93148735..4c9fb645 100644 --- a/layer/tests/tests_mechanism_api_version.cpp +++ b/layer/tests/tests_mechanism_api_version.cpp @@ -61,7 +61,7 @@ TEST_F(TestsMechanismApiVersion, api_version_properties) { const char* profile_file_data = JSON_TEST_FILES_PATH "VP_LUNARG_test_api_version.json"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}} }; err = inst_builder.init(settings); @@ -100,7 +100,7 @@ TEST_F(TestsMechanismApiVersion, api_version_profile) { const char* profile_file_data = JSON_TEST_FILES_PATH "VP_LUNARG_test_api_version_profile.json"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, {&profile_file_data}}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -143,11 +143,12 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -180,11 +181,12 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -223,11 +225,12 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -298,11 +301,12 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, + static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -374,11 +378,11 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); @@ -473,11 +477,11 @@ TEST_F(TestsMechanismApiVersion, api_versions) { const char* debug_reports_data = "DEBUG_REPORT_MAX_ENUM"; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &debug_reports_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); diff --git a/layer/tests/tests_mechanism_check_values.cpp b/layer/tests/tests_mechanism_check_values.cpp index a2533c32..6dcbf1b2 100644 --- a/layer/tests/tests_mechanism_check_values.cpp +++ b/layer/tests/tests_mechanism_check_values.cpp @@ -50,10 +50,10 @@ TEST_F(TestsMechanismCheckValues, reading_flags) { const std::vector simulate_capabilities = {"SIMULATE_MAX_ENUM"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} }; err = inst_builder.init(settings); @@ -122,10 +122,10 @@ TEST_F(TestsMechanismCheckValues, reading_sparseProperties) { VkBool32 emulate_portability_data = VK_TRUE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data} }; err = inst_builder.init(settings); @@ -162,10 +162,10 @@ TEST_F(TestsMechanismCheckValues, reading_mutable_descriptor_type) { VkBool32 emulate_portability_data = VK_FALSE; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}}; + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}}; err = inst_builder.init(settings); ASSERT_EQ(err, VK_SUCCESS); diff --git a/layer/tests/tests_mechanism_format.cpp b/layer/tests/tests_mechanism_format.cpp index 1dbdad67..50536202 100644 --- a/layer/tests/tests_mechanism_format.cpp +++ b/layer/tests/tests_mechanism_format.cpp @@ -49,10 +49,10 @@ TEST_F(TestsMechanismFormat, TestFullySupportedFormat) { const std::vector simulate_capabilities = {"SIMULATE_FORMATS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; err = inst_builder.init(settings); @@ -120,10 +120,10 @@ TEST_F(TestsMechanismFormat, TestParsingAllFormatProperties) { const std::vector simulate_capabilities = {"SIMULATE_MAX_ENUM"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}}; err = inst_builder.init(settings); diff --git a/layer/tests/tests_mechanism_physical_device_selection.cpp b/layer/tests/tests_mechanism_physical_device_selection.cpp index beedbc91..ee31c839 100644 --- a/layer/tests/tests_mechanism_physical_device_selection.cpp +++ b/layer/tests/tests_mechanism_physical_device_selection.cpp @@ -47,9 +47,9 @@ TEST_F(TestsMechanismPhysicalSelection, force_physical_device) { const char* force_device_uuid = "BC4A01B15641805847A8151A395A80C7"; std::vector settings = { - {kLayerName, kLayerSettingsForceDevice, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device}, - {kLayerName, kLayerSettingsForceDeviceName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device_name}, - {kLayerName, kLayerSettingsForceDeviceUUID, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device_uuid} + {kLayerName, GetString(SETTING_FORCE_DEVICE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device}, + {kLayerName, GetString(SETTING_FORCE_DEVICE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device_name}, + {kLayerName, GetString(SETTING_FORCE_DEVICE_UUID), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &force_device_uuid} }; err = inst_builder.init(settings); diff --git a/layer/tests/tests_promoted.cpp b/layer/tests/tests_promoted.cpp index 51bc78a2..50c8552a 100644 --- a/layer/tests/tests_promoted.cpp +++ b/layer/tests/tests_promoted.cpp @@ -52,9 +52,9 @@ class TestsPromoted : public VkTestFramework { const std::vector simulate_capabilities = {"SIMULATE_FEATURES_BIT", "SIMULATE_PROPERTIES_BIT", "SIMULATE_EXTENSIONS_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]} }; err = inst_builder.init(settings); diff --git a/layer/vk_layer_table.cpp b/layer/vk_layer_table.cpp index 717631ee..8c5239ab 100644 --- a/layer/vk_layer_table.cpp +++ b/layer/vk_layer_table.cpp @@ -28,17 +28,17 @@ static device_table_map tableMap; static instance_table_map tableInstanceMap; -dispatch_key get_dispatch_key(const void *object) { return (dispatch_key) * (VulDeviceDispatchTable **)object; } +dispatch_key get_dispatch_key(const void *object) { return (dispatch_key) * (VkuDeviceDispatchTable **)object; } // Map lookup must be thread safe -VulDeviceDispatchTable *device_dispatch_table(void *object) { +VkuDeviceDispatchTable *device_dispatch_table(void *object) { dispatch_key key = get_dispatch_key(object); device_table_map::const_iterator it = tableMap.find((void *)key); assert(it != tableMap.end() && "Not able to find device dispatch entry"); return it->second.get(); } -VulInstanceDispatchTable *instance_dispatch_table(void *object) { +VkuInstanceDispatchTable *instance_dispatch_table(void *object) { dispatch_key key = get_dispatch_key(object); instance_table_map::const_iterator it = tableInstanceMap.find((void *)key); assert(it != tableInstanceMap.end() && "Not able to find instance dispatch entry"); @@ -63,14 +63,14 @@ void destroy_device_dispatch_table(dispatch_key key) { destroy_dispatch_table(ta void destroy_instance_dispatch_table(dispatch_key key) { destroy_dispatch_table(tableInstanceMap, key); } -VulDeviceDispatchTable *get_dispatch_table(device_table_map &map, void *object) { +VkuDeviceDispatchTable *get_dispatch_table(device_table_map &map, void *object) { dispatch_key key = get_dispatch_key(object); device_table_map::const_iterator it = map.find((void *)key); assert(it != map.end() && "Not able to find device dispatch entry"); return it->second.get(); } -VulInstanceDispatchTable *get_dispatch_table(instance_table_map &map, void *object) { +VkuInstanceDispatchTable *get_dispatch_table(instance_table_map &map, void *object) { dispatch_key key = get_dispatch_key(object); instance_table_map::const_iterator it = map.find((void *)key); assert(it != map.end() && "Not able to find instance dispatch entry"); @@ -102,20 +102,20 @@ VkLayerDeviceCreateInfo *get_chain_info(const VkDeviceCreateInfo *pCreateInfo, V * Device -> CommandBuffer or Queue * If use the object themselves as key to map then implies Create entrypoints have to be intercepted * and a new key inserted into map */ -VulInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa, instance_table_map &map) { - VulInstanceDispatchTable *pTable; +VkuInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa, instance_table_map &map) { + VkuInstanceDispatchTable *pTable; dispatch_key key = get_dispatch_key(instance); instance_table_map::const_iterator it = map.find((void *)key); if (it == map.end()) { - auto table = std::make_unique(); + auto table = std::make_unique(); pTable = table.get(); map[(void *)key] = std::move(table); } else { return it->second.get(); } - vulInitInstanceDispatchTable(instance, pTable, gpa); + vkuInitInstanceDispatchTable(instance, pTable, gpa); // Setup func pointers that are required but not externally exposed. These won't be added to the instance dispatch table by // default. @@ -124,29 +124,29 @@ VulInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGet return pTable; } -VulInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa) { +VkuInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa) { return initInstanceTable(instance, gpa, tableInstanceMap); } -VulDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa, device_table_map &map) { - VulDeviceDispatchTable *pTable; +VkuDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa, device_table_map &map) { + VkuDeviceDispatchTable *pTable; dispatch_key key = get_dispatch_key(device); device_table_map::const_iterator it = map.find((void *)key); if (it == map.end()) { - auto table = std::make_unique(); + auto table = std::make_unique(); pTable = table.get(); map[(void *)key] = std::move(table); } else { return it->second.get(); } - vulInitDeviceDispatchTable(device, pTable, gpa); + vkuInitDeviceDispatchTable(device, pTable, gpa); return pTable; } -VulDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa) { +VkuDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa) { return initDeviceTable(device, gpa, tableMap); } diff --git a/layer/vk_layer_table.h b/layer/vk_layer_table.h index edbb0266..9a3f0c04 100644 --- a/layer/vk_layer_table.h +++ b/layer/vk_layer_table.h @@ -26,23 +26,23 @@ #include #include -typedef std::unordered_map> device_table_map; -typedef std::unordered_map> instance_table_map; -VulDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa, device_table_map &map); -VulDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa); -VulInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa, instance_table_map &map); -VulInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa); +typedef std::unordered_map> device_table_map; +typedef std::unordered_map> instance_table_map; +VkuDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa, device_table_map &map); +VkuDeviceDispatchTable *initDeviceTable(VkDevice device, const PFN_vkGetDeviceProcAddr gpa); +VkuInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa, instance_table_map &map); +VkuInstanceDispatchTable *initInstanceTable(VkInstance instance, const PFN_vkGetInstanceProcAddr gpa); typedef void *dispatch_key; dispatch_key get_dispatch_key(const void *object); -VulDeviceDispatchTable *device_dispatch_table(void *object); +VkuDeviceDispatchTable *device_dispatch_table(void *object); -VulInstanceDispatchTable *instance_dispatch_table(void *object); +VkuInstanceDispatchTable *instance_dispatch_table(void *object); -VulDeviceDispatchTable *get_dispatch_table(device_table_map &map, void *object); +VkuDeviceDispatchTable *get_dispatch_table(device_table_map &map, void *object); -VulInstanceDispatchTable *get_dispatch_table(instance_table_map &map, void *object); +VkuInstanceDispatchTable *get_dispatch_table(instance_table_map &map, void *object); VkLayerInstanceCreateInfo *get_chain_info(const VkInstanceCreateInfo *pCreateInfo, VkLayerFunction func); VkLayerDeviceCreateInfo *get_chain_info(const VkDeviceCreateInfo *pCreateInfo, VkLayerFunction func); diff --git a/scripts/gen_profiles_layer.py b/scripts/gen_profiles_layer.py index 4288fbfc..d66abaaa 100644 --- a/scripts/gen_profiles_layer.py +++ b/scripts/gen_profiles_layer.py @@ -2286,7 +2286,7 @@ class JsonLoader { (*pToolCount)--; } - VulInstanceDispatchTable *pInstanceTable = instance_dispatch_table(physicalDevice); + VkuInstanceDispatchTable *pInstanceTable = instance_dispatch_table(physicalDevice); VkResult result = pInstanceTable->GetPhysicalDeviceToolPropertiesEXT(physicalDevice, pToolCount, pToolProperties); if (original_pToolProperties != nullptr) { diff --git a/scripts/gen_profiles_tests.py b/scripts/gen_profiles_tests.py index cc9df711..e9113377 100644 --- a/scripts/gen_profiles_tests.py +++ b/scripts/gen_profiles_tests.py @@ -108,11 +108,11 @@ class TestsCapabilitiesGenerated : public VkTestFramework { "DEBUG_REPORT_ERROR_BIT"}; std::vector settings = { - {kLayerName, kLayerSettingsProfileFile, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, - {kLayerName, kLayerSettingsProfileName, VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, - {kLayerName, kLayerSettingsEmulatePortability, VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, - {kLayerName, kLayerSettingsSimulateCapabilities, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, - {kLayerName, kLayerSettingsDebugReports, VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} + {kLayerName, GetString(SETTING_PROFILE_FILE), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_file_data}, + {kLayerName, GetString(SETTING_PROFILE_NAME), VK_LAYER_SETTING_TYPE_STRING_EXT, 1, &profile_name_data}, + {kLayerName, GetString(SETTING_EMULATE_PORTABILITY), VK_LAYER_SETTING_TYPE_BOOL32_EXT, 1, &emulate_portability_data}, + {kLayerName, GetString(SETTING_SIMULATE_CAPABILITIES), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(simulate_capabilities.size()), &simulate_capabilities[0]}, + {kLayerName, GetString(SETTING_DEBUG_REPORTS), VK_LAYER_SETTING_TYPE_STRING_EXT, static_cast(debug_reports.size()), &debug_reports[0]} }; err = inst_builder.init(settings); diff --git a/scripts/known_good.json b/scripts/known_good.json index bda4500f..e79a22b8 100644 --- a/scripts/known_good.json +++ b/scripts/known_good.json @@ -14,7 +14,7 @@ "sub_dir": "Vulkan-Utility-Libraries", "build_dir": "Vulkan-Utility-Libraries/build", "install_dir": "Vulkan-Utility-Libraries/build/install", - "commit": "ba0d57a51424de68a86326e393a65b26373e1c1f", + "commit": "1c6d92cccfff83d14ed1b5d13ef79514ae379df0", "deps": [ { "var_name": "VULKAN_HEADERS_INSTALL_DIR",