44XRT_CHECK_RESULT
const char *
45vk_str_result_or_null(VkResult code);
47XRT_CHECK_RESULT
const char *
48vk_str_object_type_or_null(VkObjectType type);
50XRT_CHECK_RESULT
const char *
51vk_str_physical_device_type_or_null(VkPhysicalDeviceType device_type);
53XRT_CHECK_RESULT
const char *
54vk_str_format_or_null(VkFormat code);
56XRT_CHECK_RESULT
const char *
57vk_str_sharing_mode_or_null(VkSharingMode code);
59XRT_CHECK_RESULT
const char *
60vk_str_present_mode_or_null(VkPresentModeKHR code);
62XRT_CHECK_RESULT
const char *
63vk_str_color_space_or_null(VkColorSpaceKHR code);
65XRT_CHECK_RESULT
const char *
66vk_str_display_power_state_or_null(VkDisplayPowerStateEXT code);
68XRT_CHECK_RESULT
const char *
69vk_str_queue_global_priority_or_null(VkQueueGlobalPriorityEXT priority);
75#define VK_STR_NO_NULL(NAME, TYPE, UNKNOWN_STR) \
76 static inline const char *NAME(TYPE enumerate) \
78 const char *str = NAME##_or_null(enumerate); \
79 return str != NULL ? str : UNKNOWN_STR; \
82VK_STR_NO_NULL(vk_str_result, VkResult,
"UNKNOWN RESULT")
83VK_STR_NO_NULL(vk_str_object_type, VkObjectType, "UNKNOWN OBJECT TYPE")
84VK_STR_NO_NULL(vk_str_physical_device_type, VkPhysicalDeviceType, "UNKNOWN PHYSICAL DEVICE TYPE")
85VK_STR_NO_NULL(vk_str_format, VkFormat, "UNKNOWN FORMAT")
86VK_STR_NO_NULL(vk_str_sharing_mode, VkSharingMode, "UNKNOWN SHARING MODE")
87VK_STR_NO_NULL(vk_str_present_mode, VkPresentModeKHR, "UNKNOWN PRESENT MODE")
88VK_STR_NO_NULL(vk_str_color_space, VkColorSpaceKHR, "UNKNOWN COLOR SPACE")
89VK_STR_NO_NULL(vk_str_display_power_state, VkDisplayPowerStateEXT, "UNKNOWN DISPLAY POWER STATE")
90VK_STR_NO_NULL(vk_str_queue_global_priority, VkQueueGlobalPriorityEXT, "UNKNOWN QUEUE GLOBAL PRIORITY")
110XRT_CHECK_RESULT const
char *
111vk_str_format_feature_flag_bits_or_null(VkFormatFeatureFlagBits bits);
113XRT_CHECK_RESULT const
char *
114vk_str_swapchain_create_flag_bits_or_null(VkSwapchainCreateFlagBitsKHR bits);
116XRT_CHECK_RESULT const
char *
117vk_str_image_usage_flag_bits_or_null(VkImageUsageFlagBits bits);
119XRT_CHECK_RESULT const
char *
120vk_str_composite_alpha_flag_bits_or_null(VkCompositeAlphaFlagBitsKHR bits);
122XRT_CHECK_RESULT const
char *
123vk_str_surface_transform_flag_bits_or_null(VkSurfaceTransformFlagBitsKHR bits);
126XRT_CHECK_RESULT
const char *
127vk_str_display_plane_alpha_flag_bits_or_null(VkDisplayPlaneAlphaFlagBitsKHR bits);
134#define VK_STR_FLAG_BITS_NO_NULL(NAME, TYPE, PREFIX) \
135 static inline const char *NAME(TYPE bits) \
137 const char *str = NAME##_or_null(bits); \
138 uint32_t value = (uint32_t)bits; \
141 } else if (value == 0) { \
142 return PREFIX ": NO BITS SET"; \
143 } else if ((value & (value - 1)) != 0) { \
144 return PREFIX ": MULTIPLE BITS SET"; \
146 return PREFIX ": UNKNOWN BIT"; \
150VK_STR_FLAG_BITS_NO_NULL(vk_str_format_feature_flag_bits, VkFormatFeatureFlagBits,
"FORMAT FEATURE")
151VK_STR_FLAG_BITS_NO_NULL(vk_str_swapchain_create_flag_bits, VkSwapchainCreateFlagBitsKHR, "SWAPCHAIN CREATE")
152VK_STR_FLAG_BITS_NO_NULL(vk_str_image_usage_flag_bits, VkImageUsageFlagBits, "IMAGE USAGE")
153VK_STR_FLAG_BITS_NO_NULL(vk_str_composite_alpha_flag_bits, VkCompositeAlphaFlagBitsKHR, "COMPOSITE ALPHA")
154VK_STR_FLAG_BITS_NO_NULL(vk_str_surface_transform_flag_bits, VkSurfaceTransformFlagBitsKHR, "SURFACE TRANSFORM")
156VK_STR_FLAG_BITS_NO_NULL(vk_str_display_plane_alpha_flag_bits, VkDisplayPlaneAlphaFlagBitsKHR,
"DISPLAY PLANE ALPHA")
159#undef VK_STR_FLAG_BITS_NO_NULL
188vk_pp_physical_device_type(
u_pp_delegate_t dg, VkPhysicalDeviceType device_type);
203vk_pp_display_power_state(
u_pp_delegate_t dg, VkDisplayPowerStateEXT state);
206vk_pp_queue_global_priority(
u_pp_delegate_t dg, VkQueueGlobalPriorityEXT priority);
209vk_pp_format_feature_flag_bits(
u_pp_delegate_t dg, VkFormatFeatureFlagBits bits);
212vk_pp_swapchain_create_flag_bits(
u_pp_delegate_t dg, VkSwapchainCreateFlagBitsKHR bits);
215vk_pp_image_usage_flag_bits(
u_pp_delegate_t dg, VkImageUsageFlagBits bits);
218vk_pp_composite_alpha_flag_bits(
u_pp_delegate_t dg, VkCompositeAlphaFlagBitsKHR bits);
221vk_pp_surface_transform_flag_bits(
u_pp_delegate_t dg, VkSurfaceTransformFlagBitsKHR bits);
225vk_pp_display_plane_alpha_flag_bits(
u_pp_delegate_t dg, VkDisplayPlaneAlphaFlagBitsKHR bits);
Helper struct to hold a function pointer and data pointer.
Definition u_pretty_print.h:102
Pretty printing various Monado things.
Header holding common defines.
Include all of the Vulkan headers in one place, and cope with any "messy" includes implied by it.