aboutsummaryrefslogtreecommitdiff
path: root/layers/parameter_validation_utils.h
AgeCommit message (Collapse)Author
2016-05-17layers: Fix transposed messagesDustin Graves
Fix parameter_validation::get_result_rescription utility function, which had the messages for VK_ERROR_DEVICE_LOST and VK_ERROR_INITIALIZATION_FAILED transposed. Change-Id: I47126389cbfafce663ec474fa04b899e6f2f663c
2016-05-12layers: Additional vkCreateImage param validationDustin Graves
Add more vkCreateImage parameter validation, based on the valid usage section for VkImageCreateInfo. Issues-Addressed: GitHub #354 Change-Id: Ia978a64f6c03c3cf115a07e707099253104e04a1
2016-05-09layers: Add error codes for parameter_validationDustin Graves
Add error codes to the parameter_validation layer: - Add parameter_validation::ErrorCode enum defining common parameter validation errors to parameter_validation_utils.h - Replace the '1' in parameter_validation log_msg calls with the appropriate error code - Add parameter_validation error code documentation to vk_validation_layer_details.md - Remove 'typedef enum' declaration requirement for error code enumerations from vk_layer_documentation_generate.py; It will now recognize error code enmerations declared wihtout the typedef Change-Id: Icf18b9124000159f7436f66e48a95d0c58047a07
2016-05-09layers: Add parameter_validation namespaceDustin Graves
Add parameter_validation namespace for utility functions. Namespace will be extended to include core layer functions in a future update. Change-Id: I0929f5caacbf3e1b4509f051ea020566cce44e3e
2016-05-06layers: Fix param check debug report levelDustin Graves
Change VkFlags and enumeration debug report levels from WARNING to ERROR. Change-Id: I06bf454c77dee2cd46db29cd1ffcb67febfba666
2016-04-28layers: Add 0 check for VkFlags array elementsDustin Graves
- Add parameter validation for the case where the elements in an array of VkFlags values must not be 0 - Replace the template parameter in the VkFlags validation functions with the VkFlags base type. Change-Id: Ie85d4d048b21e73409ff817425a1db64570e1b2f
2016-04-28layers: Add VkFlags parameter validationDustin Graves
Add parameter validation for VkFlags derived types to the parameter_validation layer's code generation scripts. The following validation checks are performed: - If a VkFlags parameter is not marked as optional in the XML, a message is generated when the parameter is 0. - If a VkFlags parameter is not 0, a message is generated if it combines bits that are not defined by its associated flag bits enumeration. - If a VkFlags parameter does not have an associated flag bits enumeration it is treated as a reserved value that must be 0. Change-Id: I6daed360cde46e2a27c84deda1e0798621f92d50
2016-04-28layers: Merge enum array NULL/value checksDustin Graves
- Merge the NULL checks and enumeration value checks performed for arrays of enumeration values into a single function call. This is consistent with the validation for arrays of other types. - Reduce duplicate array checking code. Change-Id: I8c4e05542bb2f52f5623fe6c7ed3629b9b2680e0
2016-04-20layers: Add handle NULL checks to codegenDustin Graves
Add support for validating that required handle parameters are not specified as VK_NULL_HANDLE to the parameter validation layer's code generator. - Add new parameter validation utility functions to validate required handles and arrays of handles. - Add new parameter validation layer entrypoints for functions that previously had no parameters to validate. - Add handle validation logic to the parameter validation code generator. Change-Id: I7a5680954245db4c1b12587f78e30e17c3903d6c
2016-04-19misc: Update licenses to Apache 2.0Jon Ashburn
Change-Id: Id447f4c8c53d33f9192940bdd3ae727b7b738a97
2016-04-06layers: Fix unsafe bool mix warnings (part 2)Dustin Graves
Fixes the MSVS warnings regarding unsafe mix of VkBool32 and bool for the device_limits, image, parameter_validation, and threading layers. Converts all Boolean usage internal to the layers to bool/true/false. The VK_TRUE and VK_FALSE values continue to be used with the Vulkan API components. Change-Id: I612d3f26050fadcd77ffca4d8723a7c734613816
2016-04-02layers: fix spelling mistakesEric Engestrom
2016-04-01layers: Update param_checker VkResult validationDustin Graves
VkResult validation now prints a description of the error code being returned. Change-Id: Ia6dc4e71ef6d1b27365e3c0499b24a3fc1d332ac
2016-04-01layers: Codegen VkBool32/enum parameter validationDustin Graves
Now generating the VkBool32 and enum checks: - Warns if a VkBool32 parameter is neither VK_TRUE nor VK_FALSE - Warns if an enum token value falls outside of the enum's begin/end range and the token was not added by an extension. Only checkes enum's that have a begin/end range. Detection of tokens added by extensions is based on the base_value defined in appendic C.10 of the Vulkan specification. Change-Id: Id49ace52fea8a35972f96d54247b98aba182c09e
2016-03-21layers: Rename param_checker to parameter_validationMark Lobodzinski
Also, param_check.h -> parameter_validation.h and .json files changed. Change-Id: I9db10563bcc2640fe6b90588d3c80c4fe50a8a83