mirror of
https://github.com/KhronosGroup/Vulkan-Utility-Libraries.git
synced 2025-05-31 08:57:57 +00:00
layer: add layer settings set to handle multiple instances
This commit is contained in:
parent
3f2d178323
commit
c9f8cebf72
7 changed files with 306 additions and 194 deletions
|
@ -24,9 +24,13 @@
|
|||
#include <vector>
|
||||
|
||||
TEST(test_layer_setting_api, vlHasLayerSetting_NotFound) {
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", nullptr, nullptr);
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
|
||||
EXPECT_FALSE(vlHasLayerSetting("setting_key"));
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", nullptr, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
EXPECT_FALSE(vlHasLayerSetting(layerSettingSet, "setting_key"));
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlHasLayerSetting_Found) {
|
||||
|
@ -45,13 +49,12 @@ TEST(test_layer_setting_api, vlHasLayerSetting_Found) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlHasLayerSetting) {
|
||||
|
@ -136,22 +139,21 @@ TEST(test_layer_setting_api, vlHasLayerSetting) {
|
|||
layer_settings_create_info.settingCount = static_cast<uint32_t>(settings.size());
|
||||
layer_settings_create_info.pSettings = &settings[0];
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
|
||||
// The expected layer code side:
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
EXPECT_FALSE(vlHasLayerSetting("setting0"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("bool_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("int32_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("int64_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("uint32_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("uint64_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("float_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("double_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting("frameset_value"));
|
||||
EXPECT_FALSE(vlHasLayerSetting(layerSettingSet, "setting0"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "bool_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "int32_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "int64_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "uint32_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "uint64_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "float_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "double_value"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "frameset_value"));
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Bool) {
|
||||
|
@ -163,34 +165,36 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Bool) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<VkBool32> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(VK_TRUE, values[0]);
|
||||
EXPECT_EQ(VK_FALSE, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_BOOL_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(VK_TRUE, values[0]);
|
||||
EXPECT_EQ(VK_FALSE, values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Int32) {
|
||||
|
@ -202,34 +206,36 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Int32) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 2;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<std::int32_t> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(0, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT32_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(-82, values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Int64) {
|
||||
|
@ -241,34 +247,36 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Int64) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 2;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<std::int64_t> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(0, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_INT64_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(-82, values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Uint32) {
|
||||
|
@ -281,34 +289,36 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Uint32) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<std::uint32_t> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(0, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(82, values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Uint64) {
|
||||
|
@ -321,34 +331,36 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Uint64) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT64_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT64_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<std::uint64_t> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT32_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(0, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_UINT64_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_UINT64_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(76, values[0]);
|
||||
EXPECT_EQ(82, values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Float) {
|
||||
|
@ -361,33 +373,35 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Float) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<float> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_TRUE(std::abs(values[0] - 76.1f) <= 0.0001f);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FLOAT_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_TRUE(std::abs(values[0] - 76.1f) <= 0.0001f);
|
||||
EXPECT_TRUE(std::abs(values[1] - -82.5f) <= 0.0001f);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Double) {
|
||||
|
@ -400,33 +414,35 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Double) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<double> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_TRUE(std::abs(values[0] - 76.1) <= 0.0001);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_DOUBLE_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_TRUE(std::abs(values[0] - 76.1) <= 0.0001);
|
||||
EXPECT_TRUE(std::abs(values[1] - -82.5) <= 0.0001);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_Frameset) {
|
||||
|
@ -441,23 +457,22 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Frameset) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<VkFrameset> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_EQ(76, values[0].first);
|
||||
EXPECT_EQ(100, values[0].count);
|
||||
|
@ -465,7 +480,8 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Frameset) {
|
|||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_FRAMESET_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_EQ(76, values[0].first);
|
||||
EXPECT_EQ(100, values[0].count);
|
||||
|
@ -474,6 +490,8 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_Frameset) {
|
|||
EXPECT_EQ(100, values[1].count);
|
||||
EXPECT_EQ(1, values[1].step);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
||||
TEST(test_layer_setting_api, vlGetLayerSettingValues_String) {
|
||||
|
@ -485,32 +503,34 @@ TEST(test_layer_setting_api, vlGetLayerSettingValues_String) {
|
|||
VkLayerSettingsCreateInfoEXT layer_settings_create_info{
|
||||
VK_STRUCTURE_TYPE_LAYER_SETTINGS_EXT, nullptr, static_cast<uint32_t>(settings.size()), &settings[0]};
|
||||
|
||||
VkInstanceCreateInfo instance_create_info{};
|
||||
instance_create_info.sType = VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO;
|
||||
instance_create_info.pNext = &layer_settings_create_info;
|
||||
VlLayerSettingSet layerSettingSet = VK_NULL_HANDLE;
|
||||
vlCreateLayerSettingSet("VK_LAYER_LUNARG_test", &layer_settings_create_info, nullptr, nullptr, &layerSettingSet);
|
||||
|
||||
vlInitLayerSettings("VK_LAYER_LUNARG_test", &instance_create_info, nullptr);
|
||||
|
||||
EXPECT_TRUE(vlHasLayerSetting("my_setting"));
|
||||
EXPECT_TRUE(vlHasLayerSetting(layerSettingSet, "my_setting"));
|
||||
|
||||
uint32_t value_count = 0;
|
||||
VkResult result_count = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, nullptr);
|
||||
VkResult result_count =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, nullptr);
|
||||
EXPECT_EQ(VK_SUCCESS, result_count);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
std::vector<const char*> values(static_cast<uint32_t>(value_count));
|
||||
|
||||
value_count = 1;
|
||||
VkResult result_incomplete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, &values[0]);
|
||||
VkResult result_incomplete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_INCOMPLETE, result_incomplete);
|
||||
EXPECT_STREQ("VALUE_A", values[0]);
|
||||
EXPECT_STREQ(nullptr, values[1]);
|
||||
EXPECT_EQ(1, value_count);
|
||||
|
||||
value_count = 2;
|
||||
VkResult result_complete = vlGetLayerSettingValues("my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, &values[0]);
|
||||
VkResult result_complete =
|
||||
vlGetLayerSettingValues(layerSettingSet, "my_setting", VK_LAYER_SETTING_TYPE_STRING_EXT, &value_count, &values[0]);
|
||||
EXPECT_EQ(VK_SUCCESS, result_complete);
|
||||
EXPECT_STREQ("VALUE_A", values[0]);
|
||||
EXPECT_STREQ("VALUE_B", values[1]);
|
||||
EXPECT_EQ(2, value_count);
|
||||
|
||||
vlDestroyLayerSettingSet(layerSettingSet, nullptr);
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue