Monado OpenXR Runtime
Loading...
Searching...
No Matches
vk_pretty_print.c File Reference

Pretty printing various Vulkan things. More...

#include "vk/vk_pretty_print.h"
#include <string.h>
Include dependency graph for vk_pretty_print.c:

Macros

#define ENUM_TO_STR(r)    case r: return #r
 
#define DG(str)   (dg.func(dg.ptr, str, strlen(str)))
 
#define PP_OR_HEX(NAME, TYPE, PREFIX)
 
#define PP_FLAG_BITS_OR_HEX(NAME, TYPE, PREFIX)
 

Functions

XRT_CHECK_RESULT const char * vk_str_result_or_null (VkResult code)
 
XRT_CHECK_RESULT const char * vk_str_object_type_or_null (VkObjectType type)
 
XRT_CHECK_RESULT const char * vk_str_physical_device_type_or_null (VkPhysicalDeviceType device_type)
 
XRT_CHECK_RESULT const char * vk_str_format_or_null (VkFormat code)
 
XRT_CHECK_RESULT const char * vk_str_sharing_mode_or_null (VkSharingMode code)
 
XRT_CHECK_RESULT const char * vk_str_present_mode_or_null (VkPresentModeKHR code)
 
XRT_CHECK_RESULT const char * vk_str_color_space_or_null (VkColorSpaceKHR code)
 
XRT_CHECK_RESULT const char * vk_str_display_power_state_or_null (VkDisplayPowerStateEXT code)
 
XRT_CHECK_RESULT const char * vk_str_queue_global_priority_or_null (VkQueueGlobalPriorityEXT priority)
 
XRT_CHECK_RESULT const char * vk_str_format_feature_flag_bits_or_null (VkFormatFeatureFlagBits bits)
 
XRT_CHECK_RESULT const char * vk_str_swapchain_create_flag_bits_or_null (VkSwapchainCreateFlagBitsKHR bits)
 
XRT_CHECK_RESULT const char * vk_str_image_usage_flag_bits_or_null (VkImageUsageFlagBits bits)
 
XRT_CHECK_RESULT const char * vk_str_composite_alpha_flag_bits_or_null (VkCompositeAlphaFlagBitsKHR bits)
 
XRT_CHECK_RESULT const char * vk_str_surface_transform_flag_bits_or_null (VkSurfaceTransformFlagBitsKHR bits)
 
void vk_pp_result (u_pp_delegate_t dg, VkResult ret)
 
void vk_pp_object_type (u_pp_delegate_t dg, VkObjectType value)
 
void vk_pp_physical_device_type (u_pp_delegate_t dg, VkPhysicalDeviceType value)
 
void vk_pp_format (u_pp_delegate_t dg, VkFormat value)
 
void vk_pp_sharing_mode (u_pp_delegate_t dg, VkSharingMode value)
 
void vk_pp_present_mode (u_pp_delegate_t dg, VkPresentModeKHR value)
 
void vk_pp_color_space (u_pp_delegate_t dg, VkColorSpaceKHR value)
 
void vk_pp_display_power_state (u_pp_delegate_t dg, VkDisplayPowerStateEXT value)
 
void vk_pp_queue_global_priority (u_pp_delegate_t dg, VkQueueGlobalPriorityEXT value)
 
void vk_pp_format_feature_flag_bits (u_pp_delegate_t dg, VkFormatFeatureFlagBits bits)
 
void vk_pp_swapchain_create_flag_bits (u_pp_delegate_t dg, VkSwapchainCreateFlagBitsKHR bits)
 
void vk_pp_image_usage_flag_bits (u_pp_delegate_t dg, VkImageUsageFlagBits bits)
 
void vk_pp_composite_alpha_flag_bits (u_pp_delegate_t dg, VkCompositeAlphaFlagBitsKHR bits)
 
void vk_pp_surface_transform_flag_bits (u_pp_delegate_t dg, VkSurfaceTransformFlagBitsKHR bits)
 

Detailed Description

Macro Definition Documentation

◆ PP_FLAG_BITS_OR_HEX

#define PP_FLAG_BITS_OR_HEX (   NAME,
  TYPE,
  PREFIX 
)
Value:
void vk_pp_##NAME(u_pp_delegate_t dg, TYPE bits) \
{ \
const char *might_be_null = vk_str_##NAME##_or_null(bits); \
if (might_be_null != NULL) { \
DG(might_be_null); \
return; \
} \
uint32_t value = (uint32_t)bits; \
if (value == 0) { \
DG(PREFIX ": NO BITS SET"); \
} else if ((value & (value - 1)) != 0) { \
u_pp(dg, PREFIX ": MULTIPLE BITS SET 0x%08x", value); \
} else { \
u_pp(dg, PREFIX ": UNKNOWN BIT 0x%08x", value); \
} \
}
Helper struct to hold a function pointer and data pointer.
Definition u_pretty_print.h:102

◆ PP_OR_HEX

#define PP_OR_HEX (   NAME,
  TYPE,
  PREFIX 
)
Value:
void vk_pp_##NAME(u_pp_delegate_t dg, TYPE value) \
{ \
const char *might_be_null = vk_str_##NAME##_or_null(value); \
if (might_be_null != NULL) { \
DG(might_be_null); \
return; \
} \
u_pp(dg, PREFIX "_0x%08x", (uint32_t)value); \
}