.pRequestedQueues = &queue,
.extensionCount = 1,
.ppEnabledExtensionNames = ext_names,
- .maxValidationLevel = VK_VALIDATION_LEVEL_END_RANGE,
.flags = VK_DEVICE_CREATE_VALIDATION_BIT,
};
VkResult err;
.pRequestedQueues = &queue,
.extensionCount = 1,
.ppEnabledExtensionNames = ext_names,
- .maxValidationLevel = VK_VALIDATION_LEVEL_END_RANGE,
.flags = VK_DEVICE_CREATE_VALIDATION_BIT,
};
VkResult err;
.pRequestedQueues = NULL,
.extensionCount = 0,
.ppEnabledExtensionNames = NULL,
- .maxValidationLevel = VK_VALIDATION_LEVEL_END_RANGE,
.flags = VK_DEVICE_CREATE_VALIDATION_BIT,
};
VkResult err;
{
#endif // __cplusplus
+typedef enum VkValidationLevel_
+{
+ VK_VALIDATION_LEVEL_0 = 0x00000000,
+ VK_VALIDATION_LEVEL_1 = 0x00000001,
+ VK_VALIDATION_LEVEL_2 = 0x00000002,
+ VK_VALIDATION_LEVEL_3 = 0x00000003,
+ VK_VALIDATION_LEVEL_4 = 0x00000004,
+
+ VK_VALIDATION_LEVEL_BEGIN_RANGE = VK_VALIDATION_LEVEL_0,
+ VK_VALIDATION_LEVEL_END_RANGE = VK_VALIDATION_LEVEL_4,
+ VK_NUM_VALIDATION_LEVEL = (VK_VALIDATION_LEVEL_END_RANGE - VK_VALIDATION_LEVEL_BEGIN_RANGE + 1),
+
+ VK_MAX_ENUM(VkValidationLevel)
+} VkValidationLevel;
+
typedef enum _VK_DBG_MSG_TYPE
{
VK_DBG_MSG_UNKNOWN = 0x0,
VK_MAX_ENUM(VkObjectInfoType)
} VkObjectInfoType;
-typedef enum VkValidationLevel_
-{
- VK_VALIDATION_LEVEL_0 = 0x00000000,
- VK_VALIDATION_LEVEL_1 = 0x00000001,
- VK_VALIDATION_LEVEL_2 = 0x00000002,
- VK_VALIDATION_LEVEL_3 = 0x00000003,
- VK_VALIDATION_LEVEL_4 = 0x00000004,
-
- VK_VALIDATION_LEVEL_BEGIN_RANGE = VK_VALIDATION_LEVEL_0,
- VK_VALIDATION_LEVEL_END_RANGE = VK_VALIDATION_LEVEL_4,
- VK_NUM_VALIDATION_LEVEL = (VK_VALIDATION_LEVEL_END_RANGE - VK_VALIDATION_LEVEL_BEGIN_RANGE + 1),
-
- VK_MAX_ENUM(VkValidationLevel)
-} VkValidationLevel;
// ------------------------------------------------------------------------------------------------
// Error and return codes
const VkDeviceQueueCreateInfo* pRequestedQueues;
uint32_t extensionCount;
const char*const* ppEnabledExtensionNames;
- VkValidationLevel maxValidationLevel;
VkFlags flags; // VkDeviceCreateFlags
} VkDeviceCreateInfo;
}
}
- if(!validate_VkValidationLevel(pCreateInfo->maxValidationLevel))
- {
- char const str[] = "vkCreateDevice parameter, VkValidationLevel pCreateInfo->maxValidationLevel, is "\
- "unrecognized (precondition).";
- layerCbMsg(VK_DBG_MSG_UNKNOWN, VK_VALIDATION_LEVEL_0, NULL, 0, 1, "PARAMCHECK", str);
- return;
- }
}
void PostCreateDevice(VkResult result, VkDevice* pDevice)
VK_LAYER_EXPORT VkResult VKAPI vkDbgSetValidationLevel(VkDevice device, VkValidationLevel validationLevel)
{
- char str[1024];
- if (!validate_VkValidationLevel(validationLevel)) {
- sprintf(str, "Parameter validationLevel to function DbgSetValidationLevel has invalid value of %i.", (int)validationLevel);
- layerCbMsg(VK_DBG_MSG_ERROR, VK_VALIDATION_LEVEL_0, NULL, 0, 1, "PARAMCHECK", str);
- }
VkResult result = nextTable.DbgSetValidationLevel(device, validationLevel);
return result;
}