From b7cc966cb0140c4639b3becda1bacaaf2f24ba13 Mon Sep 17 00:00:00 2001 From: Ryan Pavlik Date: Fri, 12 Feb 2021 09:26:10 -0600 Subject: [PATCH] aux/vk: Add docs to helpers --- src/xrt/auxiliary/vk/vk_helpers.h | 37 +++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/src/xrt/auxiliary/vk/vk_helpers.h b/src/xrt/auxiliary/vk/vk_helpers.h index b2ecc4ec9..280f5bf46 100644 --- a/src/xrt/auxiliary/vk/vk_helpers.h +++ b/src/xrt/auxiliary/vk/vk_helpers.h @@ -263,13 +263,50 @@ vk_color_space_string(VkColorSpaceKHR code); #define VK_WARN(d, ...) U_LOG_IFL_W(d->ll, __VA_ARGS__) #define VK_ERROR(d, ...) U_LOG_IFL_E(d->ll, __VA_ARGS__) +/*! + * @brief Check a Vulkan VkResult, writing an error to the log and returning true if not VK_SUCCESS + * + * @param fun a string literal with the name of the Vulkan function, for logging purposes. + * @param res a VkResult from that function. + * @param file a string literal with the source code filename, such as from __FILE__ + * @param line a source code line number, such as from __LINE__ + * + * @see vk_check_error, vk_check_error_with_free which wrap this for easier usage. + * + * @ingroup aux_vk + */ bool vk_has_error(VkResult res, const char *fun, const char *file, int line); +/*! + * @def + * @brief Perform checking of a Vulkan result, returning in case it is not VK_SUCCESS. + * + * @param fun A string literal with the name of the Vulkan function, for logging purposes. + * @param res a VkResult from that function. + * @param ret value to return, if any, upon error + * + * @see vk_has_error which is wrapped by this macro + * + * @ingroup aux_vk + */ #define vk_check_error(fun, res, ret) \ if (vk_has_error(res, fun, __FILE__, __LINE__)) \ return ret +/*! + * @def + * @brief Perform checking of a Vulkan result, freeing an allocation and returning in case it is not VK_SUCCESS. + * + * @param fun A string literal with the name of the Vulkan function, for logging purposes. + * @param res a VkResult from that function. + * @param ret value to return, if any, upon error + * @param to_free expression to pass to `free()` upon error + * + * @see vk_has_error which is wrapped by this macro + * + * @ingroup aux_vk + */ #define vk_check_error_with_free(fun, res, ret, to_free) \ if (vk_has_error(res, fun, __FILE__, __LINE__)) { \ free(to_free); \