// // This file was auto-generated using the following command: // // jai generate.jai // VULKAN_H_ :: 1; VULKAN_CORE_H_ :: 1; VK_VERSION_1_0 :: 1; VK_USE_64_BIT_PTR_DEFINES :: 1; VK_NULL_HANDLE :: cast(*void) 0; VK_HEADER_VERSION :: 313; VK_ATTACHMENT_UNUSED :: ~0; VK_FALSE :: 0; VK_LOD_CLAMP_NONE :: 1000.0; VK_QUEUE_FAMILY_IGNORED :: ~0; VK_REMAINING_ARRAY_LAYERS :: ~0; VK_REMAINING_MIP_LEVELS :: ~0; VK_SUBPASS_EXTERNAL :: ~0; VK_TRUE :: 1; VK_WHOLE_SIZE :: ~0; VK_MAX_MEMORY_TYPES :: 32; VK_MAX_PHYSICAL_DEVICE_NAME_SIZE :: 256; VK_UUID_SIZE :: 16; VK_MAX_EXTENSION_NAME_SIZE :: 256; VK_MAX_DESCRIPTION_SIZE :: 256; VK_MAX_MEMORY_HEAPS :: 16; VK_VERSION_1_1 :: 1; VK_MAX_DEVICE_GROUP_SIZE :: 32; VK_LUID_SIZE :: 8; VK_QUEUE_FAMILY_EXTERNAL :: ~1; VK_VERSION_1_2 :: 1; VK_MAX_DRIVER_NAME_SIZE :: 256; VK_MAX_DRIVER_INFO_SIZE :: 256; VK_VERSION_1_3 :: 1; VK_VERSION_1_4 :: 1; VK_MAX_GLOBAL_PRIORITY_SIZE :: 16; VK_KHR_surface :: 1; VK_KHR_SURFACE_SPEC_VERSION :: 25; VK_KHR_SURFACE_EXTENSION_NAME :: "VK_KHR_surface"; VK_KHR_swapchain :: 1; VK_KHR_SWAPCHAIN_SPEC_VERSION :: 70; VK_KHR_SWAPCHAIN_EXTENSION_NAME :: "VK_KHR_swapchain"; VK_KHR_display :: 1; VK_KHR_DISPLAY_SPEC_VERSION :: 23; VK_KHR_DISPLAY_EXTENSION_NAME :: "VK_KHR_display"; VK_KHR_display_swapchain :: 1; VK_KHR_DISPLAY_SWAPCHAIN_SPEC_VERSION :: 10; VK_KHR_DISPLAY_SWAPCHAIN_EXTENSION_NAME :: "VK_KHR_display_swapchain"; VK_KHR_sampler_mirror_clamp_to_edge :: 1; VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_SPEC_VERSION :: 3; VK_KHR_SAMPLER_MIRROR_CLAMP_TO_EDGE_EXTENSION_NAME :: "VK_KHR_sampler_mirror_clamp_to_edge"; VK_KHR_video_queue :: 1; VK_KHR_VIDEO_QUEUE_SPEC_VERSION :: 8; VK_KHR_VIDEO_QUEUE_EXTENSION_NAME :: "VK_KHR_video_queue"; VK_KHR_video_decode_queue :: 1; VK_KHR_VIDEO_DECODE_QUEUE_SPEC_VERSION :: 8; VK_KHR_VIDEO_DECODE_QUEUE_EXTENSION_NAME :: "VK_KHR_video_decode_queue"; VK_KHR_video_encode_h264 :: 1; VULKAN_VIDEO_CODEC_H264STD_H_ :: 1; vulkan_video_codec_h264std :: 1; VULKAN_VIDEO_CODECS_COMMON_H_ :: 1; vulkan_video_codecs_common :: 1; STD_VIDEO_H264_CPB_CNT_LIST_SIZE :: 32; STD_VIDEO_H264_SCALING_LIST_4X4_NUM_LISTS :: 6; STD_VIDEO_H264_SCALING_LIST_4X4_NUM_ELEMENTS :: 16; STD_VIDEO_H264_SCALING_LIST_8X8_NUM_LISTS :: 6; STD_VIDEO_H264_SCALING_LIST_8X8_NUM_ELEMENTS :: 64; STD_VIDEO_H264_MAX_NUM_LIST_REF :: 32; STD_VIDEO_H264_MAX_CHROMA_PLANES :: 2; STD_VIDEO_H264_NO_REFERENCE_PICTURE :: 0xFF; VULKAN_VIDEO_CODEC_H264STD_ENCODE_H_ :: 1; vulkan_video_codec_h264std_encode :: 1; VK_STD_VULKAN_VIDEO_CODEC_H264_ENCODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h264_encode"; VK_KHR_VIDEO_ENCODE_H264_SPEC_VERSION :: 14; VK_KHR_VIDEO_ENCODE_H264_EXTENSION_NAME :: "VK_KHR_video_encode_h264"; VK_KHR_video_encode_h265 :: 1; VULKAN_VIDEO_CODEC_H265STD_H_ :: 1; vulkan_video_codec_h265std :: 1; STD_VIDEO_H265_CPB_CNT_LIST_SIZE :: 32; STD_VIDEO_H265_SUBLAYERS_LIST_SIZE :: 7; STD_VIDEO_H265_SCALING_LIST_4X4_NUM_LISTS :: 6; STD_VIDEO_H265_SCALING_LIST_4X4_NUM_ELEMENTS :: 16; STD_VIDEO_H265_SCALING_LIST_8X8_NUM_LISTS :: 6; STD_VIDEO_H265_SCALING_LIST_8X8_NUM_ELEMENTS :: 64; STD_VIDEO_H265_SCALING_LIST_16X16_NUM_LISTS :: 6; STD_VIDEO_H265_SCALING_LIST_16X16_NUM_ELEMENTS :: 64; STD_VIDEO_H265_SCALING_LIST_32X32_NUM_LISTS :: 2; STD_VIDEO_H265_SCALING_LIST_32X32_NUM_ELEMENTS :: 64; STD_VIDEO_H265_CHROMA_QP_OFFSET_LIST_SIZE :: 6; STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_COLS_LIST_SIZE :: 19; STD_VIDEO_H265_CHROMA_QP_OFFSET_TILE_ROWS_LIST_SIZE :: 21; STD_VIDEO_H265_PREDICTOR_PALETTE_COMPONENTS_LIST_SIZE :: 3; STD_VIDEO_H265_PREDICTOR_PALETTE_COMP_ENTRIES_LIST_SIZE :: 128; STD_VIDEO_H265_MAX_NUM_LIST_REF :: 15; STD_VIDEO_H265_MAX_CHROMA_PLANES :: 2; STD_VIDEO_H265_MAX_SHORT_TERM_REF_PIC_SETS :: 64; STD_VIDEO_H265_MAX_DPB_SIZE :: 16; STD_VIDEO_H265_MAX_LONG_TERM_REF_PICS_SPS :: 32; STD_VIDEO_H265_MAX_LONG_TERM_PICS :: 16; STD_VIDEO_H265_MAX_DELTA_POC :: 48; STD_VIDEO_H265_NO_REFERENCE_PICTURE :: 0xFF; VULKAN_VIDEO_CODEC_H265STD_ENCODE_H_ :: 1; vulkan_video_codec_h265std_encode :: 1; VK_STD_VULKAN_VIDEO_CODEC_H265_ENCODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h265_encode"; VK_KHR_VIDEO_ENCODE_H265_SPEC_VERSION :: 14; VK_KHR_VIDEO_ENCODE_H265_EXTENSION_NAME :: "VK_KHR_video_encode_h265"; VK_KHR_video_decode_h264 :: 1; VULKAN_VIDEO_CODEC_H264STD_DECODE_H_ :: 1; vulkan_video_codec_h264std_decode :: 1; VK_STD_VULKAN_VIDEO_CODEC_H264_DECODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h264_decode"; STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_LIST_SIZE :: 2; VK_KHR_VIDEO_DECODE_H264_SPEC_VERSION :: 9; VK_KHR_VIDEO_DECODE_H264_EXTENSION_NAME :: "VK_KHR_video_decode_h264"; VK_KHR_dynamic_rendering :: 1; VK_KHR_DYNAMIC_RENDERING_SPEC_VERSION :: 1; VK_KHR_DYNAMIC_RENDERING_EXTENSION_NAME :: "VK_KHR_dynamic_rendering"; VK_KHR_multiview :: 1; VK_KHR_MULTIVIEW_SPEC_VERSION :: 1; VK_KHR_MULTIVIEW_EXTENSION_NAME :: "VK_KHR_multiview"; VK_KHR_get_physical_device_properties2 :: 1; VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_SPEC_VERSION :: 2; VK_KHR_GET_PHYSICAL_DEVICE_PROPERTIES_2_EXTENSION_NAME :: "VK_KHR_get_physical_device_properties2"; VK_KHR_device_group :: 1; VK_KHR_DEVICE_GROUP_SPEC_VERSION :: 4; VK_KHR_DEVICE_GROUP_EXTENSION_NAME :: "VK_KHR_device_group"; VK_KHR_shader_draw_parameters :: 1; VK_KHR_SHADER_DRAW_PARAMETERS_SPEC_VERSION :: 1; VK_KHR_SHADER_DRAW_PARAMETERS_EXTENSION_NAME :: "VK_KHR_shader_draw_parameters"; VK_KHR_maintenance1 :: 1; VK_KHR_MAINTENANCE_1_SPEC_VERSION :: 2; VK_KHR_MAINTENANCE_1_EXTENSION_NAME :: "VK_KHR_maintenance1"; VK_KHR_MAINTENANCE1_SPEC_VERSION :: VK_KHR_MAINTENANCE_1_SPEC_VERSION; VK_KHR_MAINTENANCE1_EXTENSION_NAME :: VK_KHR_MAINTENANCE_1_EXTENSION_NAME; VK_KHR_device_group_creation :: 1; VK_KHR_DEVICE_GROUP_CREATION_SPEC_VERSION :: 1; VK_KHR_DEVICE_GROUP_CREATION_EXTENSION_NAME :: "VK_KHR_device_group_creation"; VK_MAX_DEVICE_GROUP_SIZE_KHR :: VK_MAX_DEVICE_GROUP_SIZE; VK_KHR_external_memory_capabilities :: 1; VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: "VK_KHR_external_memory_capabilities"; VK_LUID_SIZE_KHR :: VK_LUID_SIZE; VK_KHR_external_memory :: 1; VK_KHR_EXTERNAL_MEMORY_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_MEMORY_EXTENSION_NAME :: "VK_KHR_external_memory"; VK_QUEUE_FAMILY_EXTERNAL_KHR :: VK_QUEUE_FAMILY_EXTERNAL; VK_KHR_external_memory_fd :: 1; VK_KHR_EXTERNAL_MEMORY_FD_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_MEMORY_FD_EXTENSION_NAME :: "VK_KHR_external_memory_fd"; VK_KHR_external_semaphore_capabilities :: 1; VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_SEMAPHORE_CAPABILITIES_EXTENSION_NAME :: "VK_KHR_external_semaphore_capabilities"; VK_KHR_external_semaphore :: 1; VK_KHR_EXTERNAL_SEMAPHORE_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_SEMAPHORE_EXTENSION_NAME :: "VK_KHR_external_semaphore"; VK_KHR_external_semaphore_fd :: 1; VK_KHR_EXTERNAL_SEMAPHORE_FD_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_SEMAPHORE_FD_EXTENSION_NAME :: "VK_KHR_external_semaphore_fd"; VK_KHR_push_descriptor :: 1; VK_KHR_PUSH_DESCRIPTOR_SPEC_VERSION :: 2; VK_KHR_PUSH_DESCRIPTOR_EXTENSION_NAME :: "VK_KHR_push_descriptor"; VK_KHR_shader_float16_int8 :: 1; VK_KHR_SHADER_FLOAT16_INT8_SPEC_VERSION :: 1; VK_KHR_SHADER_FLOAT16_INT8_EXTENSION_NAME :: "VK_KHR_shader_float16_int8"; VK_KHR_16bit_storage :: 1; VK_KHR_16BIT_STORAGE_SPEC_VERSION :: 1; VK_KHR_16BIT_STORAGE_EXTENSION_NAME :: "VK_KHR_16bit_storage"; VK_KHR_incremental_present :: 1; VK_KHR_INCREMENTAL_PRESENT_SPEC_VERSION :: 2; VK_KHR_INCREMENTAL_PRESENT_EXTENSION_NAME :: "VK_KHR_incremental_present"; VK_KHR_descriptor_update_template :: 1; VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_SPEC_VERSION :: 1; VK_KHR_DESCRIPTOR_UPDATE_TEMPLATE_EXTENSION_NAME :: "VK_KHR_descriptor_update_template"; VK_KHR_imageless_framebuffer :: 1; VK_KHR_IMAGELESS_FRAMEBUFFER_SPEC_VERSION :: 1; VK_KHR_IMAGELESS_FRAMEBUFFER_EXTENSION_NAME :: "VK_KHR_imageless_framebuffer"; VK_KHR_create_renderpass2 :: 1; VK_KHR_CREATE_RENDERPASS_2_SPEC_VERSION :: 1; VK_KHR_CREATE_RENDERPASS_2_EXTENSION_NAME :: "VK_KHR_create_renderpass2"; VK_KHR_shared_presentable_image :: 1; VK_KHR_SHARED_PRESENTABLE_IMAGE_SPEC_VERSION :: 1; VK_KHR_SHARED_PRESENTABLE_IMAGE_EXTENSION_NAME :: "VK_KHR_shared_presentable_image"; VK_KHR_external_fence_capabilities :: 1; VK_KHR_EXTERNAL_FENCE_CAPABILITIES_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_FENCE_CAPABILITIES_EXTENSION_NAME :: "VK_KHR_external_fence_capabilities"; VK_KHR_external_fence :: 1; VK_KHR_EXTERNAL_FENCE_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_FENCE_EXTENSION_NAME :: "VK_KHR_external_fence"; VK_KHR_external_fence_fd :: 1; VK_KHR_EXTERNAL_FENCE_FD_SPEC_VERSION :: 1; VK_KHR_EXTERNAL_FENCE_FD_EXTENSION_NAME :: "VK_KHR_external_fence_fd"; VK_KHR_performance_query :: 1; VK_KHR_PERFORMANCE_QUERY_SPEC_VERSION :: 1; VK_KHR_PERFORMANCE_QUERY_EXTENSION_NAME :: "VK_KHR_performance_query"; VK_KHR_maintenance2 :: 1; VK_KHR_MAINTENANCE_2_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_2_EXTENSION_NAME :: "VK_KHR_maintenance2"; VK_KHR_MAINTENANCE2_SPEC_VERSION :: VK_KHR_MAINTENANCE_2_SPEC_VERSION; VK_KHR_MAINTENANCE2_EXTENSION_NAME :: VK_KHR_MAINTENANCE_2_EXTENSION_NAME; VK_KHR_get_surface_capabilities2 :: 1; VK_KHR_GET_SURFACE_CAPABILITIES_2_SPEC_VERSION :: 1; VK_KHR_GET_SURFACE_CAPABILITIES_2_EXTENSION_NAME :: "VK_KHR_get_surface_capabilities2"; VK_KHR_variable_pointers :: 1; VK_KHR_VARIABLE_POINTERS_SPEC_VERSION :: 1; VK_KHR_VARIABLE_POINTERS_EXTENSION_NAME :: "VK_KHR_variable_pointers"; VK_KHR_get_display_properties2 :: 1; VK_KHR_GET_DISPLAY_PROPERTIES_2_SPEC_VERSION :: 1; VK_KHR_GET_DISPLAY_PROPERTIES_2_EXTENSION_NAME :: "VK_KHR_get_display_properties2"; VK_KHR_dedicated_allocation :: 1; VK_KHR_DEDICATED_ALLOCATION_SPEC_VERSION :: 3; VK_KHR_DEDICATED_ALLOCATION_EXTENSION_NAME :: "VK_KHR_dedicated_allocation"; VK_KHR_storage_buffer_storage_class :: 1; VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_SPEC_VERSION :: 1; VK_KHR_STORAGE_BUFFER_STORAGE_CLASS_EXTENSION_NAME :: "VK_KHR_storage_buffer_storage_class"; VK_KHR_shader_bfloat16 :: 1; VK_KHR_SHADER_BFLOAT16_SPEC_VERSION :: 1; VK_KHR_SHADER_BFLOAT16_EXTENSION_NAME :: "VK_KHR_shader_bfloat16"; VK_KHR_relaxed_block_layout :: 1; VK_KHR_RELAXED_BLOCK_LAYOUT_SPEC_VERSION :: 1; VK_KHR_RELAXED_BLOCK_LAYOUT_EXTENSION_NAME :: "VK_KHR_relaxed_block_layout"; VK_KHR_get_memory_requirements2 :: 1; VK_KHR_GET_MEMORY_REQUIREMENTS_2_SPEC_VERSION :: 1; VK_KHR_GET_MEMORY_REQUIREMENTS_2_EXTENSION_NAME :: "VK_KHR_get_memory_requirements2"; VK_KHR_image_format_list :: 1; VK_KHR_IMAGE_FORMAT_LIST_SPEC_VERSION :: 1; VK_KHR_IMAGE_FORMAT_LIST_EXTENSION_NAME :: "VK_KHR_image_format_list"; VK_KHR_sampler_ycbcr_conversion :: 1; VK_KHR_SAMPLER_YCBCR_CONVERSION_SPEC_VERSION :: 14; VK_KHR_SAMPLER_YCBCR_CONVERSION_EXTENSION_NAME :: "VK_KHR_sampler_ycbcr_conversion"; VK_KHR_bind_memory2 :: 1; VK_KHR_BIND_MEMORY_2_SPEC_VERSION :: 1; VK_KHR_BIND_MEMORY_2_EXTENSION_NAME :: "VK_KHR_bind_memory2"; VK_KHR_maintenance3 :: 1; VK_KHR_MAINTENANCE_3_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_3_EXTENSION_NAME :: "VK_KHR_maintenance3"; VK_KHR_MAINTENANCE3_SPEC_VERSION :: VK_KHR_MAINTENANCE_3_SPEC_VERSION; VK_KHR_MAINTENANCE3_EXTENSION_NAME :: VK_KHR_MAINTENANCE_3_EXTENSION_NAME; VK_KHR_draw_indirect_count :: 1; VK_KHR_DRAW_INDIRECT_COUNT_SPEC_VERSION :: 1; VK_KHR_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: "VK_KHR_draw_indirect_count"; VK_KHR_shader_subgroup_extended_types :: 1; VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_SPEC_VERSION :: 1; VK_KHR_SHADER_SUBGROUP_EXTENDED_TYPES_EXTENSION_NAME :: "VK_KHR_shader_subgroup_extended_types"; VK_KHR_8bit_storage :: 1; VK_KHR_8BIT_STORAGE_SPEC_VERSION :: 1; VK_KHR_8BIT_STORAGE_EXTENSION_NAME :: "VK_KHR_8bit_storage"; VK_KHR_shader_atomic_int64 :: 1; VK_KHR_SHADER_ATOMIC_INT64_SPEC_VERSION :: 1; VK_KHR_SHADER_ATOMIC_INT64_EXTENSION_NAME :: "VK_KHR_shader_atomic_int64"; VK_KHR_shader_clock :: 1; VK_KHR_SHADER_CLOCK_SPEC_VERSION :: 1; VK_KHR_SHADER_CLOCK_EXTENSION_NAME :: "VK_KHR_shader_clock"; VK_KHR_video_decode_h265 :: 1; VULKAN_VIDEO_CODEC_H265STD_DECODE_H_ :: 1; vulkan_video_codec_h265std_decode :: 1; VK_STD_VULKAN_VIDEO_CODEC_H265_DECODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_h265_decode"; STD_VIDEO_DECODE_H265_REF_PIC_SET_LIST_SIZE :: 8; VK_KHR_VIDEO_DECODE_H265_SPEC_VERSION :: 8; VK_KHR_VIDEO_DECODE_H265_EXTENSION_NAME :: "VK_KHR_video_decode_h265"; VK_KHR_global_priority :: 1; VK_KHR_GLOBAL_PRIORITY_SPEC_VERSION :: 1; VK_KHR_GLOBAL_PRIORITY_EXTENSION_NAME :: "VK_KHR_global_priority"; VK_MAX_GLOBAL_PRIORITY_SIZE_KHR :: VK_MAX_GLOBAL_PRIORITY_SIZE; VK_KHR_driver_properties :: 1; VK_KHR_DRIVER_PROPERTIES_SPEC_VERSION :: 1; VK_KHR_DRIVER_PROPERTIES_EXTENSION_NAME :: "VK_KHR_driver_properties"; VK_MAX_DRIVER_NAME_SIZE_KHR :: VK_MAX_DRIVER_NAME_SIZE; VK_MAX_DRIVER_INFO_SIZE_KHR :: VK_MAX_DRIVER_INFO_SIZE; VK_KHR_shader_float_controls :: 1; VK_KHR_SHADER_FLOAT_CONTROLS_SPEC_VERSION :: 4; VK_KHR_SHADER_FLOAT_CONTROLS_EXTENSION_NAME :: "VK_KHR_shader_float_controls"; VK_KHR_depth_stencil_resolve :: 1; VK_KHR_DEPTH_STENCIL_RESOLVE_SPEC_VERSION :: 1; VK_KHR_DEPTH_STENCIL_RESOLVE_EXTENSION_NAME :: "VK_KHR_depth_stencil_resolve"; VK_KHR_swapchain_mutable_format :: 1; VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_SPEC_VERSION :: 1; VK_KHR_SWAPCHAIN_MUTABLE_FORMAT_EXTENSION_NAME :: "VK_KHR_swapchain_mutable_format"; VK_KHR_timeline_semaphore :: 1; VK_KHR_TIMELINE_SEMAPHORE_SPEC_VERSION :: 2; VK_KHR_TIMELINE_SEMAPHORE_EXTENSION_NAME :: "VK_KHR_timeline_semaphore"; VK_KHR_vulkan_memory_model :: 1; VK_KHR_VULKAN_MEMORY_MODEL_SPEC_VERSION :: 3; VK_KHR_VULKAN_MEMORY_MODEL_EXTENSION_NAME :: "VK_KHR_vulkan_memory_model"; VK_KHR_shader_terminate_invocation :: 1; VK_KHR_SHADER_TERMINATE_INVOCATION_SPEC_VERSION :: 1; VK_KHR_SHADER_TERMINATE_INVOCATION_EXTENSION_NAME :: "VK_KHR_shader_terminate_invocation"; VK_KHR_fragment_shading_rate :: 1; VK_KHR_FRAGMENT_SHADING_RATE_SPEC_VERSION :: 2; VK_KHR_FRAGMENT_SHADING_RATE_EXTENSION_NAME :: "VK_KHR_fragment_shading_rate"; VK_KHR_dynamic_rendering_local_read :: 1; VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_SPEC_VERSION :: 1; VK_KHR_DYNAMIC_RENDERING_LOCAL_READ_EXTENSION_NAME :: "VK_KHR_dynamic_rendering_local_read"; VK_KHR_shader_quad_control :: 1; VK_KHR_SHADER_QUAD_CONTROL_SPEC_VERSION :: 1; VK_KHR_SHADER_QUAD_CONTROL_EXTENSION_NAME :: "VK_KHR_shader_quad_control"; VK_KHR_spirv_1_4 :: 1; VK_KHR_SPIRV_1_4_SPEC_VERSION :: 1; VK_KHR_SPIRV_1_4_EXTENSION_NAME :: "VK_KHR_spirv_1_4"; VK_KHR_surface_protected_capabilities :: 1; VK_KHR_SURFACE_PROTECTED_CAPABILITIES_SPEC_VERSION :: 1; VK_KHR_SURFACE_PROTECTED_CAPABILITIES_EXTENSION_NAME :: "VK_KHR_surface_protected_capabilities"; VK_KHR_separate_depth_stencil_layouts :: 1; VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_SPEC_VERSION :: 1; VK_KHR_SEPARATE_DEPTH_STENCIL_LAYOUTS_EXTENSION_NAME :: "VK_KHR_separate_depth_stencil_layouts"; VK_KHR_present_wait :: 1; VK_KHR_PRESENT_WAIT_SPEC_VERSION :: 1; VK_KHR_PRESENT_WAIT_EXTENSION_NAME :: "VK_KHR_present_wait"; VK_KHR_uniform_buffer_standard_layout :: 1; VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_SPEC_VERSION :: 1; VK_KHR_UNIFORM_BUFFER_STANDARD_LAYOUT_EXTENSION_NAME :: "VK_KHR_uniform_buffer_standard_layout"; VK_KHR_buffer_device_address :: 1; VK_KHR_BUFFER_DEVICE_ADDRESS_SPEC_VERSION :: 1; VK_KHR_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME :: "VK_KHR_buffer_device_address"; VK_KHR_deferred_host_operations :: 1; VK_KHR_DEFERRED_HOST_OPERATIONS_SPEC_VERSION :: 4; VK_KHR_DEFERRED_HOST_OPERATIONS_EXTENSION_NAME :: "VK_KHR_deferred_host_operations"; VK_KHR_pipeline_executable_properties :: 1; VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_SPEC_VERSION :: 1; VK_KHR_PIPELINE_EXECUTABLE_PROPERTIES_EXTENSION_NAME :: "VK_KHR_pipeline_executable_properties"; VK_KHR_map_memory2 :: 1; VK_KHR_MAP_MEMORY_2_SPEC_VERSION :: 1; VK_KHR_MAP_MEMORY_2_EXTENSION_NAME :: "VK_KHR_map_memory2"; VK_KHR_shader_integer_dot_product :: 1; VK_KHR_SHADER_INTEGER_DOT_PRODUCT_SPEC_VERSION :: 1; VK_KHR_SHADER_INTEGER_DOT_PRODUCT_EXTENSION_NAME :: "VK_KHR_shader_integer_dot_product"; VK_KHR_pipeline_library :: 1; VK_KHR_PIPELINE_LIBRARY_SPEC_VERSION :: 1; VK_KHR_PIPELINE_LIBRARY_EXTENSION_NAME :: "VK_KHR_pipeline_library"; VK_KHR_shader_non_semantic_info :: 1; VK_KHR_SHADER_NON_SEMANTIC_INFO_SPEC_VERSION :: 1; VK_KHR_SHADER_NON_SEMANTIC_INFO_EXTENSION_NAME :: "VK_KHR_shader_non_semantic_info"; VK_KHR_present_id :: 1; VK_KHR_PRESENT_ID_SPEC_VERSION :: 1; VK_KHR_PRESENT_ID_EXTENSION_NAME :: "VK_KHR_present_id"; VK_KHR_video_encode_queue :: 1; VK_KHR_VIDEO_ENCODE_QUEUE_SPEC_VERSION :: 12; VK_KHR_VIDEO_ENCODE_QUEUE_EXTENSION_NAME :: "VK_KHR_video_encode_queue"; VK_KHR_synchronization2 :: 1; VK_KHR_SYNCHRONIZATION_2_SPEC_VERSION :: 1; VK_KHR_SYNCHRONIZATION_2_EXTENSION_NAME :: "VK_KHR_synchronization2"; VK_KHR_fragment_shader_barycentric :: 1; VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION :: 1; VK_KHR_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME :: "VK_KHR_fragment_shader_barycentric"; VK_KHR_shader_subgroup_uniform_control_flow :: 1; VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_SPEC_VERSION :: 1; VK_KHR_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_EXTENSION_NAME :: "VK_KHR_shader_subgroup_uniform_control_flow"; VK_KHR_zero_initialize_workgroup_memory :: 1; VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_SPEC_VERSION :: 1; VK_KHR_ZERO_INITIALIZE_WORKGROUP_MEMORY_EXTENSION_NAME :: "VK_KHR_zero_initialize_workgroup_memory"; VK_KHR_workgroup_memory_explicit_layout :: 1; VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_SPEC_VERSION :: 1; VK_KHR_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_EXTENSION_NAME :: "VK_KHR_workgroup_memory_explicit_layout"; VK_KHR_copy_commands2 :: 1; VK_KHR_COPY_COMMANDS_2_SPEC_VERSION :: 1; VK_KHR_COPY_COMMANDS_2_EXTENSION_NAME :: "VK_KHR_copy_commands2"; VK_KHR_format_feature_flags2 :: 1; VK_KHR_FORMAT_FEATURE_FLAGS_2_SPEC_VERSION :: 2; VK_KHR_FORMAT_FEATURE_FLAGS_2_EXTENSION_NAME :: "VK_KHR_format_feature_flags2"; VK_KHR_ray_tracing_maintenance1 :: 1; VK_KHR_RAY_TRACING_MAINTENANCE_1_SPEC_VERSION :: 1; VK_KHR_RAY_TRACING_MAINTENANCE_1_EXTENSION_NAME :: "VK_KHR_ray_tracing_maintenance1"; VK_KHR_portability_enumeration :: 1; VK_KHR_PORTABILITY_ENUMERATION_SPEC_VERSION :: 1; VK_KHR_PORTABILITY_ENUMERATION_EXTENSION_NAME :: "VK_KHR_portability_enumeration"; VK_KHR_maintenance4 :: 1; VK_KHR_MAINTENANCE_4_SPEC_VERSION :: 2; VK_KHR_MAINTENANCE_4_EXTENSION_NAME :: "VK_KHR_maintenance4"; VK_KHR_shader_subgroup_rotate :: 1; VK_KHR_SHADER_SUBGROUP_ROTATE_SPEC_VERSION :: 2; VK_KHR_SHADER_SUBGROUP_ROTATE_EXTENSION_NAME :: "VK_KHR_shader_subgroup_rotate"; VK_KHR_shader_maximal_reconvergence :: 1; VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_SPEC_VERSION :: 1; VK_KHR_SHADER_MAXIMAL_RECONVERGENCE_EXTENSION_NAME :: "VK_KHR_shader_maximal_reconvergence"; VK_KHR_maintenance5 :: 1; VK_KHR_MAINTENANCE_5_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_5_EXTENSION_NAME :: "VK_KHR_maintenance5"; VK_KHR_ray_tracing_position_fetch :: 1; VK_KHR_RAY_TRACING_POSITION_FETCH_SPEC_VERSION :: 1; VK_KHR_RAY_TRACING_POSITION_FETCH_EXTENSION_NAME :: "VK_KHR_ray_tracing_position_fetch"; VK_KHR_pipeline_binary :: 1; VK_MAX_PIPELINE_BINARY_KEY_SIZE_KHR :: 32; VK_KHR_PIPELINE_BINARY_SPEC_VERSION :: 1; VK_KHR_PIPELINE_BINARY_EXTENSION_NAME :: "VK_KHR_pipeline_binary"; VK_KHR_cooperative_matrix :: 1; VK_KHR_COOPERATIVE_MATRIX_SPEC_VERSION :: 2; VK_KHR_COOPERATIVE_MATRIX_EXTENSION_NAME :: "VK_KHR_cooperative_matrix"; VK_KHR_compute_shader_derivatives :: 1; VK_KHR_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: 1; VK_KHR_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: "VK_KHR_compute_shader_derivatives"; VK_KHR_video_decode_av1 :: 1; VULKAN_VIDEO_CODEC_AV1STD_H_ :: 1; vulkan_video_codec_av1std :: 1; STD_VIDEO_AV1_NUM_REF_FRAMES :: 8; STD_VIDEO_AV1_REFS_PER_FRAME :: 7; STD_VIDEO_AV1_TOTAL_REFS_PER_FRAME :: 8; STD_VIDEO_AV1_MAX_TILE_COLS :: 64; STD_VIDEO_AV1_MAX_TILE_ROWS :: 64; STD_VIDEO_AV1_MAX_SEGMENTS :: 8; STD_VIDEO_AV1_SEG_LVL_MAX :: 8; STD_VIDEO_AV1_PRIMARY_REF_NONE :: 7; STD_VIDEO_AV1_SELECT_INTEGER_MV :: 2; STD_VIDEO_AV1_SELECT_SCREEN_CONTENT_TOOLS :: 2; STD_VIDEO_AV1_SKIP_MODE_FRAMES :: 2; STD_VIDEO_AV1_MAX_LOOP_FILTER_STRENGTHS :: 4; STD_VIDEO_AV1_LOOP_FILTER_ADJUSTMENTS :: 2; STD_VIDEO_AV1_MAX_CDEF_FILTER_STRENGTHS :: 8; STD_VIDEO_AV1_MAX_NUM_PLANES :: 3; STD_VIDEO_AV1_GLOBAL_MOTION_PARAMS :: 6; STD_VIDEO_AV1_MAX_NUM_Y_POINTS :: 14; STD_VIDEO_AV1_MAX_NUM_CB_POINTS :: 10; STD_VIDEO_AV1_MAX_NUM_CR_POINTS :: 10; STD_VIDEO_AV1_MAX_NUM_POS_LUMA :: 24; STD_VIDEO_AV1_MAX_NUM_POS_CHROMA :: 25; VULKAN_VIDEO_CODEC_AV1STD_DECODE_H_ :: 1; vulkan_video_codec_av1std_decode :: 1; VK_STD_VULKAN_VIDEO_CODEC_AV1_DECODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_av1_decode"; VK_MAX_VIDEO_AV1_REFERENCES_PER_FRAME_KHR :: 7; VK_KHR_VIDEO_DECODE_AV1_SPEC_VERSION :: 1; VK_KHR_VIDEO_DECODE_AV1_EXTENSION_NAME :: "VK_KHR_video_decode_av1"; VK_KHR_video_encode_av1 :: 1; VULKAN_VIDEO_CODEC_AV1STD_ENCODE_H_ :: 1; vulkan_video_codec_av1std_encode :: 1; VK_STD_VULKAN_VIDEO_CODEC_AV1_ENCODE_EXTENSION_NAME :: "VK_STD_vulkan_video_codec_av1_encode"; VK_KHR_VIDEO_ENCODE_AV1_SPEC_VERSION :: 1; VK_KHR_VIDEO_ENCODE_AV1_EXTENSION_NAME :: "VK_KHR_video_encode_av1"; VK_KHR_video_maintenance1 :: 1; VK_KHR_VIDEO_MAINTENANCE_1_SPEC_VERSION :: 1; VK_KHR_VIDEO_MAINTENANCE_1_EXTENSION_NAME :: "VK_KHR_video_maintenance1"; VK_KHR_vertex_attribute_divisor :: 1; VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION :: 1; VK_KHR_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME :: "VK_KHR_vertex_attribute_divisor"; VK_KHR_load_store_op_none :: 1; VK_KHR_LOAD_STORE_OP_NONE_SPEC_VERSION :: 1; VK_KHR_LOAD_STORE_OP_NONE_EXTENSION_NAME :: "VK_KHR_load_store_op_none"; VK_KHR_shader_float_controls2 :: 1; VK_KHR_SHADER_FLOAT_CONTROLS_2_SPEC_VERSION :: 1; VK_KHR_SHADER_FLOAT_CONTROLS_2_EXTENSION_NAME :: "VK_KHR_shader_float_controls2"; VK_KHR_index_type_uint8 :: 1; VK_KHR_INDEX_TYPE_UINT8_SPEC_VERSION :: 1; VK_KHR_INDEX_TYPE_UINT8_EXTENSION_NAME :: "VK_KHR_index_type_uint8"; VK_KHR_line_rasterization :: 1; VK_KHR_LINE_RASTERIZATION_SPEC_VERSION :: 1; VK_KHR_LINE_RASTERIZATION_EXTENSION_NAME :: "VK_KHR_line_rasterization"; VK_KHR_calibrated_timestamps :: 1; VK_KHR_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: 1; VK_KHR_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: "VK_KHR_calibrated_timestamps"; VK_KHR_shader_expect_assume :: 1; VK_KHR_SHADER_EXPECT_ASSUME_SPEC_VERSION :: 1; VK_KHR_SHADER_EXPECT_ASSUME_EXTENSION_NAME :: "VK_KHR_shader_expect_assume"; VK_KHR_maintenance6 :: 1; VK_KHR_MAINTENANCE_6_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_6_EXTENSION_NAME :: "VK_KHR_maintenance6"; VK_KHR_video_encode_quantization_map :: 1; VK_KHR_VIDEO_ENCODE_QUANTIZATION_MAP_SPEC_VERSION :: 2; VK_KHR_VIDEO_ENCODE_QUANTIZATION_MAP_EXTENSION_NAME :: "VK_KHR_video_encode_quantization_map"; VK_KHR_shader_relaxed_extended_instruction :: 1; VK_KHR_SHADER_RELAXED_EXTENDED_INSTRUCTION_SPEC_VERSION :: 1; VK_KHR_SHADER_RELAXED_EXTENDED_INSTRUCTION_EXTENSION_NAME :: "VK_KHR_shader_relaxed_extended_instruction"; VK_KHR_maintenance7 :: 1; VK_KHR_MAINTENANCE_7_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_7_EXTENSION_NAME :: "VK_KHR_maintenance7"; VK_KHR_maintenance8 :: 1; VK_KHR_MAINTENANCE_8_SPEC_VERSION :: 1; VK_KHR_MAINTENANCE_8_EXTENSION_NAME :: "VK_KHR_maintenance8"; VK_KHR_video_maintenance2 :: 1; VK_KHR_VIDEO_MAINTENANCE_2_SPEC_VERSION :: 1; VK_KHR_VIDEO_MAINTENANCE_2_EXTENSION_NAME :: "VK_KHR_video_maintenance2"; VK_KHR_depth_clamp_zero_one :: 1; VK_KHR_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION :: 1; VK_KHR_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME :: "VK_KHR_depth_clamp_zero_one"; VK_EXT_debug_report :: 1; VK_EXT_DEBUG_REPORT_SPEC_VERSION :: 10; VK_EXT_DEBUG_REPORT_EXTENSION_NAME :: "VK_EXT_debug_report"; VK_NV_glsl_shader :: 1; VK_NV_GLSL_SHADER_SPEC_VERSION :: 1; VK_NV_GLSL_SHADER_EXTENSION_NAME :: "VK_NV_glsl_shader"; VK_EXT_depth_range_unrestricted :: 1; VK_EXT_DEPTH_RANGE_UNRESTRICTED_SPEC_VERSION :: 1; VK_EXT_DEPTH_RANGE_UNRESTRICTED_EXTENSION_NAME :: "VK_EXT_depth_range_unrestricted"; VK_IMG_filter_cubic :: 1; VK_IMG_FILTER_CUBIC_SPEC_VERSION :: 1; VK_IMG_FILTER_CUBIC_EXTENSION_NAME :: "VK_IMG_filter_cubic"; VK_AMD_rasterization_order :: 1; VK_AMD_RASTERIZATION_ORDER_SPEC_VERSION :: 1; VK_AMD_RASTERIZATION_ORDER_EXTENSION_NAME :: "VK_AMD_rasterization_order"; VK_AMD_shader_trinary_minmax :: 1; VK_AMD_SHADER_TRINARY_MINMAX_SPEC_VERSION :: 1; VK_AMD_SHADER_TRINARY_MINMAX_EXTENSION_NAME :: "VK_AMD_shader_trinary_minmax"; VK_AMD_shader_explicit_vertex_parameter :: 1; VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_SPEC_VERSION :: 1; VK_AMD_SHADER_EXPLICIT_VERTEX_PARAMETER_EXTENSION_NAME :: "VK_AMD_shader_explicit_vertex_parameter"; VK_EXT_debug_marker :: 1; VK_EXT_DEBUG_MARKER_SPEC_VERSION :: 4; VK_EXT_DEBUG_MARKER_EXTENSION_NAME :: "VK_EXT_debug_marker"; VK_AMD_gcn_shader :: 1; VK_AMD_GCN_SHADER_SPEC_VERSION :: 1; VK_AMD_GCN_SHADER_EXTENSION_NAME :: "VK_AMD_gcn_shader"; VK_NV_dedicated_allocation :: 1; VK_NV_DEDICATED_ALLOCATION_SPEC_VERSION :: 1; VK_NV_DEDICATED_ALLOCATION_EXTENSION_NAME :: "VK_NV_dedicated_allocation"; VK_EXT_transform_feedback :: 1; VK_EXT_TRANSFORM_FEEDBACK_SPEC_VERSION :: 1; VK_EXT_TRANSFORM_FEEDBACK_EXTENSION_NAME :: "VK_EXT_transform_feedback"; VK_NVX_binary_import :: 1; VK_NVX_BINARY_IMPORT_SPEC_VERSION :: 2; VK_NVX_BINARY_IMPORT_EXTENSION_NAME :: "VK_NVX_binary_import"; VK_NVX_image_view_handle :: 1; VK_NVX_IMAGE_VIEW_HANDLE_SPEC_VERSION :: 3; VK_NVX_IMAGE_VIEW_HANDLE_EXTENSION_NAME :: "VK_NVX_image_view_handle"; VK_AMD_draw_indirect_count :: 1; VK_AMD_DRAW_INDIRECT_COUNT_SPEC_VERSION :: 2; VK_AMD_DRAW_INDIRECT_COUNT_EXTENSION_NAME :: "VK_AMD_draw_indirect_count"; VK_AMD_negative_viewport_height :: 1; VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_SPEC_VERSION :: 1; VK_AMD_NEGATIVE_VIEWPORT_HEIGHT_EXTENSION_NAME :: "VK_AMD_negative_viewport_height"; VK_AMD_gpu_shader_half_float :: 1; VK_AMD_GPU_SHADER_HALF_FLOAT_SPEC_VERSION :: 2; VK_AMD_GPU_SHADER_HALF_FLOAT_EXTENSION_NAME :: "VK_AMD_gpu_shader_half_float"; VK_AMD_shader_ballot :: 1; VK_AMD_SHADER_BALLOT_SPEC_VERSION :: 1; VK_AMD_SHADER_BALLOT_EXTENSION_NAME :: "VK_AMD_shader_ballot"; VK_AMD_texture_gather_bias_lod :: 1; VK_AMD_TEXTURE_GATHER_BIAS_LOD_SPEC_VERSION :: 1; VK_AMD_TEXTURE_GATHER_BIAS_LOD_EXTENSION_NAME :: "VK_AMD_texture_gather_bias_lod"; VK_AMD_shader_info :: 1; VK_AMD_SHADER_INFO_SPEC_VERSION :: 1; VK_AMD_SHADER_INFO_EXTENSION_NAME :: "VK_AMD_shader_info"; VK_AMD_shader_image_load_store_lod :: 1; VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_SPEC_VERSION :: 1; VK_AMD_SHADER_IMAGE_LOAD_STORE_LOD_EXTENSION_NAME :: "VK_AMD_shader_image_load_store_lod"; VK_NV_corner_sampled_image :: 1; VK_NV_CORNER_SAMPLED_IMAGE_SPEC_VERSION :: 2; VK_NV_CORNER_SAMPLED_IMAGE_EXTENSION_NAME :: "VK_NV_corner_sampled_image"; VK_IMG_format_pvrtc :: 1; VK_IMG_FORMAT_PVRTC_SPEC_VERSION :: 1; VK_IMG_FORMAT_PVRTC_EXTENSION_NAME :: "VK_IMG_format_pvrtc"; VK_NV_external_memory_capabilities :: 1; VK_NV_EXTERNAL_MEMORY_CAPABILITIES_SPEC_VERSION :: 1; VK_NV_EXTERNAL_MEMORY_CAPABILITIES_EXTENSION_NAME :: "VK_NV_external_memory_capabilities"; VK_NV_external_memory :: 1; VK_NV_EXTERNAL_MEMORY_SPEC_VERSION :: 1; VK_NV_EXTERNAL_MEMORY_EXTENSION_NAME :: "VK_NV_external_memory"; VK_EXT_validation_flags :: 1; VK_EXT_VALIDATION_FLAGS_SPEC_VERSION :: 3; VK_EXT_VALIDATION_FLAGS_EXTENSION_NAME :: "VK_EXT_validation_flags"; VK_EXT_shader_subgroup_ballot :: 1; VK_EXT_SHADER_SUBGROUP_BALLOT_SPEC_VERSION :: 1; VK_EXT_SHADER_SUBGROUP_BALLOT_EXTENSION_NAME :: "VK_EXT_shader_subgroup_ballot"; VK_EXT_shader_subgroup_vote :: 1; VK_EXT_SHADER_SUBGROUP_VOTE_SPEC_VERSION :: 1; VK_EXT_SHADER_SUBGROUP_VOTE_EXTENSION_NAME :: "VK_EXT_shader_subgroup_vote"; VK_EXT_texture_compression_astc_hdr :: 1; VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_SPEC_VERSION :: 1; VK_EXT_TEXTURE_COMPRESSION_ASTC_HDR_EXTENSION_NAME :: "VK_EXT_texture_compression_astc_hdr"; VK_EXT_astc_decode_mode :: 1; VK_EXT_ASTC_DECODE_MODE_SPEC_VERSION :: 1; VK_EXT_ASTC_DECODE_MODE_EXTENSION_NAME :: "VK_EXT_astc_decode_mode"; VK_EXT_pipeline_robustness :: 1; VK_EXT_PIPELINE_ROBUSTNESS_SPEC_VERSION :: 1; VK_EXT_PIPELINE_ROBUSTNESS_EXTENSION_NAME :: "VK_EXT_pipeline_robustness"; VK_EXT_conditional_rendering :: 1; VK_EXT_CONDITIONAL_RENDERING_SPEC_VERSION :: 2; VK_EXT_CONDITIONAL_RENDERING_EXTENSION_NAME :: "VK_EXT_conditional_rendering"; VK_NV_clip_space_w_scaling :: 1; VK_NV_CLIP_SPACE_W_SCALING_SPEC_VERSION :: 1; VK_NV_CLIP_SPACE_W_SCALING_EXTENSION_NAME :: "VK_NV_clip_space_w_scaling"; VK_EXT_direct_mode_display :: 1; VK_EXT_DIRECT_MODE_DISPLAY_SPEC_VERSION :: 1; VK_EXT_DIRECT_MODE_DISPLAY_EXTENSION_NAME :: "VK_EXT_direct_mode_display"; VK_EXT_display_surface_counter :: 1; VK_EXT_DISPLAY_SURFACE_COUNTER_SPEC_VERSION :: 1; VK_EXT_DISPLAY_SURFACE_COUNTER_EXTENSION_NAME :: "VK_EXT_display_surface_counter"; VK_EXT_display_control :: 1; VK_EXT_DISPLAY_CONTROL_SPEC_VERSION :: 1; VK_EXT_DISPLAY_CONTROL_EXTENSION_NAME :: "VK_EXT_display_control"; VK_GOOGLE_display_timing :: 1; VK_GOOGLE_DISPLAY_TIMING_SPEC_VERSION :: 1; VK_GOOGLE_DISPLAY_TIMING_EXTENSION_NAME :: "VK_GOOGLE_display_timing"; VK_NV_sample_mask_override_coverage :: 1; VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_SPEC_VERSION :: 1; VK_NV_SAMPLE_MASK_OVERRIDE_COVERAGE_EXTENSION_NAME :: "VK_NV_sample_mask_override_coverage"; VK_NV_geometry_shader_passthrough :: 1; VK_NV_GEOMETRY_SHADER_PASSTHROUGH_SPEC_VERSION :: 1; VK_NV_GEOMETRY_SHADER_PASSTHROUGH_EXTENSION_NAME :: "VK_NV_geometry_shader_passthrough"; VK_NV_viewport_array2 :: 1; VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION :: 1; VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME :: "VK_NV_viewport_array2"; VK_NV_VIEWPORT_ARRAY2_SPEC_VERSION :: VK_NV_VIEWPORT_ARRAY_2_SPEC_VERSION; VK_NV_VIEWPORT_ARRAY2_EXTENSION_NAME :: VK_NV_VIEWPORT_ARRAY_2_EXTENSION_NAME; VK_NVX_multiview_per_view_attributes :: 1; VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_SPEC_VERSION :: 1; VK_NVX_MULTIVIEW_PER_VIEW_ATTRIBUTES_EXTENSION_NAME :: "VK_NVX_multiview_per_view_attributes"; VK_NV_viewport_swizzle :: 1; VK_NV_VIEWPORT_SWIZZLE_SPEC_VERSION :: 1; VK_NV_VIEWPORT_SWIZZLE_EXTENSION_NAME :: "VK_NV_viewport_swizzle"; VK_EXT_discard_rectangles :: 1; VK_EXT_DISCARD_RECTANGLES_SPEC_VERSION :: 2; VK_EXT_DISCARD_RECTANGLES_EXTENSION_NAME :: "VK_EXT_discard_rectangles"; VK_EXT_conservative_rasterization :: 1; VK_EXT_CONSERVATIVE_RASTERIZATION_SPEC_VERSION :: 1; VK_EXT_CONSERVATIVE_RASTERIZATION_EXTENSION_NAME :: "VK_EXT_conservative_rasterization"; VK_EXT_depth_clip_enable :: 1; VK_EXT_DEPTH_CLIP_ENABLE_SPEC_VERSION :: 1; VK_EXT_DEPTH_CLIP_ENABLE_EXTENSION_NAME :: "VK_EXT_depth_clip_enable"; VK_EXT_swapchain_colorspace :: 1; VK_EXT_SWAPCHAIN_COLOR_SPACE_SPEC_VERSION :: 5; VK_EXT_SWAPCHAIN_COLOR_SPACE_EXTENSION_NAME :: "VK_EXT_swapchain_colorspace"; VK_EXT_hdr_metadata :: 1; VK_EXT_HDR_METADATA_SPEC_VERSION :: 3; VK_EXT_HDR_METADATA_EXTENSION_NAME :: "VK_EXT_hdr_metadata"; VK_IMG_relaxed_line_rasterization :: 1; VK_IMG_RELAXED_LINE_RASTERIZATION_SPEC_VERSION :: 1; VK_IMG_RELAXED_LINE_RASTERIZATION_EXTENSION_NAME :: "VK_IMG_relaxed_line_rasterization"; VK_EXT_external_memory_dma_buf :: 1; VK_EXT_EXTERNAL_MEMORY_DMA_BUF_SPEC_VERSION :: 1; VK_EXT_EXTERNAL_MEMORY_DMA_BUF_EXTENSION_NAME :: "VK_EXT_external_memory_dma_buf"; VK_EXT_queue_family_foreign :: 1; VK_EXT_QUEUE_FAMILY_FOREIGN_SPEC_VERSION :: 1; VK_EXT_QUEUE_FAMILY_FOREIGN_EXTENSION_NAME :: "VK_EXT_queue_family_foreign"; VK_QUEUE_FAMILY_FOREIGN_EXT :: ~2; VK_EXT_debug_utils :: 1; VK_EXT_DEBUG_UTILS_SPEC_VERSION :: 2; VK_EXT_DEBUG_UTILS_EXTENSION_NAME :: "VK_EXT_debug_utils"; VK_EXT_sampler_filter_minmax :: 1; VK_EXT_SAMPLER_FILTER_MINMAX_SPEC_VERSION :: 2; VK_EXT_SAMPLER_FILTER_MINMAX_EXTENSION_NAME :: "VK_EXT_sampler_filter_minmax"; VK_AMD_gpu_shader_int16 :: 1; VK_AMD_GPU_SHADER_INT16_SPEC_VERSION :: 2; VK_AMD_GPU_SHADER_INT16_EXTENSION_NAME :: "VK_AMD_gpu_shader_int16"; VK_AMD_mixed_attachment_samples :: 1; VK_AMD_MIXED_ATTACHMENT_SAMPLES_SPEC_VERSION :: 1; VK_AMD_MIXED_ATTACHMENT_SAMPLES_EXTENSION_NAME :: "VK_AMD_mixed_attachment_samples"; VK_AMD_shader_fragment_mask :: 1; VK_AMD_SHADER_FRAGMENT_MASK_SPEC_VERSION :: 1; VK_AMD_SHADER_FRAGMENT_MASK_EXTENSION_NAME :: "VK_AMD_shader_fragment_mask"; VK_EXT_inline_uniform_block :: 1; VK_EXT_INLINE_UNIFORM_BLOCK_SPEC_VERSION :: 1; VK_EXT_INLINE_UNIFORM_BLOCK_EXTENSION_NAME :: "VK_EXT_inline_uniform_block"; VK_EXT_shader_stencil_export :: 1; VK_EXT_SHADER_STENCIL_EXPORT_SPEC_VERSION :: 1; VK_EXT_SHADER_STENCIL_EXPORT_EXTENSION_NAME :: "VK_EXT_shader_stencil_export"; VK_EXT_sample_locations :: 1; VK_EXT_SAMPLE_LOCATIONS_SPEC_VERSION :: 1; VK_EXT_SAMPLE_LOCATIONS_EXTENSION_NAME :: "VK_EXT_sample_locations"; VK_EXT_blend_operation_advanced :: 1; VK_EXT_BLEND_OPERATION_ADVANCED_SPEC_VERSION :: 2; VK_EXT_BLEND_OPERATION_ADVANCED_EXTENSION_NAME :: "VK_EXT_blend_operation_advanced"; VK_NV_fragment_coverage_to_color :: 1; VK_NV_FRAGMENT_COVERAGE_TO_COLOR_SPEC_VERSION :: 1; VK_NV_FRAGMENT_COVERAGE_TO_COLOR_EXTENSION_NAME :: "VK_NV_fragment_coverage_to_color"; VK_NV_framebuffer_mixed_samples :: 1; VK_NV_FRAMEBUFFER_MIXED_SAMPLES_SPEC_VERSION :: 1; VK_NV_FRAMEBUFFER_MIXED_SAMPLES_EXTENSION_NAME :: "VK_NV_framebuffer_mixed_samples"; VK_NV_fill_rectangle :: 1; VK_NV_FILL_RECTANGLE_SPEC_VERSION :: 1; VK_NV_FILL_RECTANGLE_EXTENSION_NAME :: "VK_NV_fill_rectangle"; VK_NV_shader_sm_builtins :: 1; VK_NV_SHADER_SM_BUILTINS_SPEC_VERSION :: 1; VK_NV_SHADER_SM_BUILTINS_EXTENSION_NAME :: "VK_NV_shader_sm_builtins"; VK_EXT_post_depth_coverage :: 1; VK_EXT_POST_DEPTH_COVERAGE_SPEC_VERSION :: 1; VK_EXT_POST_DEPTH_COVERAGE_EXTENSION_NAME :: "VK_EXT_post_depth_coverage"; VK_EXT_image_drm_format_modifier :: 1; VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_SPEC_VERSION :: 2; VK_EXT_IMAGE_DRM_FORMAT_MODIFIER_EXTENSION_NAME :: "VK_EXT_image_drm_format_modifier"; VK_EXT_validation_cache :: 1; VK_EXT_VALIDATION_CACHE_SPEC_VERSION :: 1; VK_EXT_VALIDATION_CACHE_EXTENSION_NAME :: "VK_EXT_validation_cache"; VK_EXT_descriptor_indexing :: 1; VK_EXT_DESCRIPTOR_INDEXING_SPEC_VERSION :: 2; VK_EXT_DESCRIPTOR_INDEXING_EXTENSION_NAME :: "VK_EXT_descriptor_indexing"; VK_EXT_shader_viewport_index_layer :: 1; VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_SPEC_VERSION :: 1; VK_EXT_SHADER_VIEWPORT_INDEX_LAYER_EXTENSION_NAME :: "VK_EXT_shader_viewport_index_layer"; VK_NV_shading_rate_image :: 1; VK_NV_SHADING_RATE_IMAGE_SPEC_VERSION :: 3; VK_NV_SHADING_RATE_IMAGE_EXTENSION_NAME :: "VK_NV_shading_rate_image"; VK_NV_ray_tracing :: 1; VK_NV_RAY_TRACING_SPEC_VERSION :: 3; VK_NV_RAY_TRACING_EXTENSION_NAME :: "VK_NV_ray_tracing"; VK_SHADER_UNUSED_KHR :: ~0; VK_SHADER_UNUSED_NV :: VK_SHADER_UNUSED_KHR; VK_NV_representative_fragment_test :: 1; VK_NV_REPRESENTATIVE_FRAGMENT_TEST_SPEC_VERSION :: 2; VK_NV_REPRESENTATIVE_FRAGMENT_TEST_EXTENSION_NAME :: "VK_NV_representative_fragment_test"; VK_EXT_filter_cubic :: 1; VK_EXT_FILTER_CUBIC_SPEC_VERSION :: 3; VK_EXT_FILTER_CUBIC_EXTENSION_NAME :: "VK_EXT_filter_cubic"; VK_QCOM_render_pass_shader_resolve :: 1; VK_QCOM_RENDER_PASS_SHADER_RESOLVE_SPEC_VERSION :: 4; VK_QCOM_RENDER_PASS_SHADER_RESOLVE_EXTENSION_NAME :: "VK_QCOM_render_pass_shader_resolve"; VK_EXT_global_priority :: 1; VK_EXT_GLOBAL_PRIORITY_SPEC_VERSION :: 2; VK_EXT_GLOBAL_PRIORITY_EXTENSION_NAME :: "VK_EXT_global_priority"; VK_EXT_external_memory_host :: 1; VK_EXT_EXTERNAL_MEMORY_HOST_SPEC_VERSION :: 1; VK_EXT_EXTERNAL_MEMORY_HOST_EXTENSION_NAME :: "VK_EXT_external_memory_host"; VK_AMD_buffer_marker :: 1; VK_AMD_BUFFER_MARKER_SPEC_VERSION :: 1; VK_AMD_BUFFER_MARKER_EXTENSION_NAME :: "VK_AMD_buffer_marker"; VK_AMD_pipeline_compiler_control :: 1; VK_AMD_PIPELINE_COMPILER_CONTROL_SPEC_VERSION :: 1; VK_AMD_PIPELINE_COMPILER_CONTROL_EXTENSION_NAME :: "VK_AMD_pipeline_compiler_control"; VK_EXT_calibrated_timestamps :: 1; VK_EXT_CALIBRATED_TIMESTAMPS_SPEC_VERSION :: 2; VK_EXT_CALIBRATED_TIMESTAMPS_EXTENSION_NAME :: "VK_EXT_calibrated_timestamps"; VK_AMD_shader_core_properties :: 1; VK_AMD_SHADER_CORE_PROPERTIES_SPEC_VERSION :: 2; VK_AMD_SHADER_CORE_PROPERTIES_EXTENSION_NAME :: "VK_AMD_shader_core_properties"; VK_AMD_memory_overallocation_behavior :: 1; VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_SPEC_VERSION :: 1; VK_AMD_MEMORY_OVERALLOCATION_BEHAVIOR_EXTENSION_NAME :: "VK_AMD_memory_overallocation_behavior"; VK_EXT_vertex_attribute_divisor :: 1; VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_SPEC_VERSION :: 3; VK_EXT_VERTEX_ATTRIBUTE_DIVISOR_EXTENSION_NAME :: "VK_EXT_vertex_attribute_divisor"; VK_EXT_pipeline_creation_feedback :: 1; VK_EXT_PIPELINE_CREATION_FEEDBACK_SPEC_VERSION :: 1; VK_EXT_PIPELINE_CREATION_FEEDBACK_EXTENSION_NAME :: "VK_EXT_pipeline_creation_feedback"; VK_NV_shader_subgroup_partitioned :: 1; VK_NV_SHADER_SUBGROUP_PARTITIONED_SPEC_VERSION :: 1; VK_NV_SHADER_SUBGROUP_PARTITIONED_EXTENSION_NAME :: "VK_NV_shader_subgroup_partitioned"; VK_NV_compute_shader_derivatives :: 1; VK_NV_COMPUTE_SHADER_DERIVATIVES_SPEC_VERSION :: 1; VK_NV_COMPUTE_SHADER_DERIVATIVES_EXTENSION_NAME :: "VK_NV_compute_shader_derivatives"; VK_NV_mesh_shader :: 1; VK_NV_MESH_SHADER_SPEC_VERSION :: 1; VK_NV_MESH_SHADER_EXTENSION_NAME :: "VK_NV_mesh_shader"; VK_NV_fragment_shader_barycentric :: 1; VK_NV_FRAGMENT_SHADER_BARYCENTRIC_SPEC_VERSION :: 1; VK_NV_FRAGMENT_SHADER_BARYCENTRIC_EXTENSION_NAME :: "VK_NV_fragment_shader_barycentric"; VK_NV_shader_image_footprint :: 1; VK_NV_SHADER_IMAGE_FOOTPRINT_SPEC_VERSION :: 2; VK_NV_SHADER_IMAGE_FOOTPRINT_EXTENSION_NAME :: "VK_NV_shader_image_footprint"; VK_NV_scissor_exclusive :: 1; VK_NV_SCISSOR_EXCLUSIVE_SPEC_VERSION :: 2; VK_NV_SCISSOR_EXCLUSIVE_EXTENSION_NAME :: "VK_NV_scissor_exclusive"; VK_NV_device_diagnostic_checkpoints :: 1; VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_SPEC_VERSION :: 2; VK_NV_DEVICE_DIAGNOSTIC_CHECKPOINTS_EXTENSION_NAME :: "VK_NV_device_diagnostic_checkpoints"; VK_INTEL_shader_integer_functions2 :: 1; VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_SPEC_VERSION :: 1; VK_INTEL_SHADER_INTEGER_FUNCTIONS_2_EXTENSION_NAME :: "VK_INTEL_shader_integer_functions2"; VK_INTEL_performance_query :: 1; VK_INTEL_PERFORMANCE_QUERY_SPEC_VERSION :: 2; VK_INTEL_PERFORMANCE_QUERY_EXTENSION_NAME :: "VK_INTEL_performance_query"; VK_EXT_pci_bus_info :: 1; VK_EXT_PCI_BUS_INFO_SPEC_VERSION :: 2; VK_EXT_PCI_BUS_INFO_EXTENSION_NAME :: "VK_EXT_pci_bus_info"; VK_AMD_display_native_hdr :: 1; VK_AMD_DISPLAY_NATIVE_HDR_SPEC_VERSION :: 1; VK_AMD_DISPLAY_NATIVE_HDR_EXTENSION_NAME :: "VK_AMD_display_native_hdr"; VK_EXT_fragment_density_map :: 1; VK_EXT_FRAGMENT_DENSITY_MAP_SPEC_VERSION :: 2; VK_EXT_FRAGMENT_DENSITY_MAP_EXTENSION_NAME :: "VK_EXT_fragment_density_map"; VK_EXT_scalar_block_layout :: 1; VK_EXT_SCALAR_BLOCK_LAYOUT_SPEC_VERSION :: 1; VK_EXT_SCALAR_BLOCK_LAYOUT_EXTENSION_NAME :: "VK_EXT_scalar_block_layout"; VK_GOOGLE_hlsl_functionality1 :: 1; VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION :: 1; VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME :: "VK_GOOGLE_hlsl_functionality1"; VK_GOOGLE_HLSL_FUNCTIONALITY1_SPEC_VERSION :: VK_GOOGLE_HLSL_FUNCTIONALITY_1_SPEC_VERSION; VK_GOOGLE_HLSL_FUNCTIONALITY1_EXTENSION_NAME :: VK_GOOGLE_HLSL_FUNCTIONALITY_1_EXTENSION_NAME; VK_GOOGLE_decorate_string :: 1; VK_GOOGLE_DECORATE_STRING_SPEC_VERSION :: 1; VK_GOOGLE_DECORATE_STRING_EXTENSION_NAME :: "VK_GOOGLE_decorate_string"; VK_EXT_subgroup_size_control :: 1; VK_EXT_SUBGROUP_SIZE_CONTROL_SPEC_VERSION :: 2; VK_EXT_SUBGROUP_SIZE_CONTROL_EXTENSION_NAME :: "VK_EXT_subgroup_size_control"; VK_AMD_shader_core_properties2 :: 1; VK_AMD_SHADER_CORE_PROPERTIES_2_SPEC_VERSION :: 1; VK_AMD_SHADER_CORE_PROPERTIES_2_EXTENSION_NAME :: "VK_AMD_shader_core_properties2"; VK_AMD_device_coherent_memory :: 1; VK_AMD_DEVICE_COHERENT_MEMORY_SPEC_VERSION :: 1; VK_AMD_DEVICE_COHERENT_MEMORY_EXTENSION_NAME :: "VK_AMD_device_coherent_memory"; VK_EXT_shader_image_atomic_int64 :: 1; VK_EXT_SHADER_IMAGE_ATOMIC_INT64_SPEC_VERSION :: 1; VK_EXT_SHADER_IMAGE_ATOMIC_INT64_EXTENSION_NAME :: "VK_EXT_shader_image_atomic_int64"; VK_EXT_memory_budget :: 1; VK_EXT_MEMORY_BUDGET_SPEC_VERSION :: 1; VK_EXT_MEMORY_BUDGET_EXTENSION_NAME :: "VK_EXT_memory_budget"; VK_EXT_memory_priority :: 1; VK_EXT_MEMORY_PRIORITY_SPEC_VERSION :: 1; VK_EXT_MEMORY_PRIORITY_EXTENSION_NAME :: "VK_EXT_memory_priority"; VK_NV_dedicated_allocation_image_aliasing :: 1; VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_SPEC_VERSION :: 1; VK_NV_DEDICATED_ALLOCATION_IMAGE_ALIASING_EXTENSION_NAME :: "VK_NV_dedicated_allocation_image_aliasing"; VK_EXT_buffer_device_address :: 1; VK_EXT_BUFFER_DEVICE_ADDRESS_SPEC_VERSION :: 2; VK_EXT_BUFFER_DEVICE_ADDRESS_EXTENSION_NAME :: "VK_EXT_buffer_device_address"; VK_EXT_tooling_info :: 1; VK_EXT_TOOLING_INFO_SPEC_VERSION :: 1; VK_EXT_TOOLING_INFO_EXTENSION_NAME :: "VK_EXT_tooling_info"; VK_EXT_separate_stencil_usage :: 1; VK_EXT_SEPARATE_STENCIL_USAGE_SPEC_VERSION :: 1; VK_EXT_SEPARATE_STENCIL_USAGE_EXTENSION_NAME :: "VK_EXT_separate_stencil_usage"; VK_EXT_validation_features :: 1; VK_EXT_VALIDATION_FEATURES_SPEC_VERSION :: 6; VK_EXT_VALIDATION_FEATURES_EXTENSION_NAME :: "VK_EXT_validation_features"; VK_NV_cooperative_matrix :: 1; VK_NV_COOPERATIVE_MATRIX_SPEC_VERSION :: 1; VK_NV_COOPERATIVE_MATRIX_EXTENSION_NAME :: "VK_NV_cooperative_matrix"; VK_NV_coverage_reduction_mode :: 1; VK_NV_COVERAGE_REDUCTION_MODE_SPEC_VERSION :: 1; VK_NV_COVERAGE_REDUCTION_MODE_EXTENSION_NAME :: "VK_NV_coverage_reduction_mode"; VK_EXT_fragment_shader_interlock :: 1; VK_EXT_FRAGMENT_SHADER_INTERLOCK_SPEC_VERSION :: 1; VK_EXT_FRAGMENT_SHADER_INTERLOCK_EXTENSION_NAME :: "VK_EXT_fragment_shader_interlock"; VK_EXT_ycbcr_image_arrays :: 1; VK_EXT_YCBCR_IMAGE_ARRAYS_SPEC_VERSION :: 1; VK_EXT_YCBCR_IMAGE_ARRAYS_EXTENSION_NAME :: "VK_EXT_ycbcr_image_arrays"; VK_EXT_provoking_vertex :: 1; VK_EXT_PROVOKING_VERTEX_SPEC_VERSION :: 1; VK_EXT_PROVOKING_VERTEX_EXTENSION_NAME :: "VK_EXT_provoking_vertex"; VK_EXT_headless_surface :: 1; VK_EXT_HEADLESS_SURFACE_SPEC_VERSION :: 1; VK_EXT_HEADLESS_SURFACE_EXTENSION_NAME :: "VK_EXT_headless_surface"; VK_EXT_line_rasterization :: 1; VK_EXT_LINE_RASTERIZATION_SPEC_VERSION :: 1; VK_EXT_LINE_RASTERIZATION_EXTENSION_NAME :: "VK_EXT_line_rasterization"; VK_EXT_shader_atomic_float :: 1; VK_EXT_SHADER_ATOMIC_FLOAT_SPEC_VERSION :: 1; VK_EXT_SHADER_ATOMIC_FLOAT_EXTENSION_NAME :: "VK_EXT_shader_atomic_float"; VK_EXT_host_query_reset :: 1; VK_EXT_HOST_QUERY_RESET_SPEC_VERSION :: 1; VK_EXT_HOST_QUERY_RESET_EXTENSION_NAME :: "VK_EXT_host_query_reset"; VK_EXT_index_type_uint8 :: 1; VK_EXT_INDEX_TYPE_UINT8_SPEC_VERSION :: 1; VK_EXT_INDEX_TYPE_UINT8_EXTENSION_NAME :: "VK_EXT_index_type_uint8"; VK_EXT_extended_dynamic_state :: 1; VK_EXT_EXTENDED_DYNAMIC_STATE_SPEC_VERSION :: 1; VK_EXT_EXTENDED_DYNAMIC_STATE_EXTENSION_NAME :: "VK_EXT_extended_dynamic_state"; VK_EXT_host_image_copy :: 1; VK_EXT_HOST_IMAGE_COPY_SPEC_VERSION :: 1; VK_EXT_HOST_IMAGE_COPY_EXTENSION_NAME :: "VK_EXT_host_image_copy"; VK_EXT_map_memory_placed :: 1; VK_EXT_MAP_MEMORY_PLACED_SPEC_VERSION :: 1; VK_EXT_MAP_MEMORY_PLACED_EXTENSION_NAME :: "VK_EXT_map_memory_placed"; VK_EXT_shader_atomic_float2 :: 1; VK_EXT_SHADER_ATOMIC_FLOAT_2_SPEC_VERSION :: 1; VK_EXT_SHADER_ATOMIC_FLOAT_2_EXTENSION_NAME :: "VK_EXT_shader_atomic_float2"; VK_EXT_surface_maintenance1 :: 1; VK_EXT_SURFACE_MAINTENANCE_1_SPEC_VERSION :: 1; VK_EXT_SURFACE_MAINTENANCE_1_EXTENSION_NAME :: "VK_EXT_surface_maintenance1"; VK_EXT_swapchain_maintenance1 :: 1; VK_EXT_SWAPCHAIN_MAINTENANCE_1_SPEC_VERSION :: 1; VK_EXT_SWAPCHAIN_MAINTENANCE_1_EXTENSION_NAME :: "VK_EXT_swapchain_maintenance1"; VK_EXT_shader_demote_to_helper_invocation :: 1; VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_SPEC_VERSION :: 1; VK_EXT_SHADER_DEMOTE_TO_HELPER_INVOCATION_EXTENSION_NAME :: "VK_EXT_shader_demote_to_helper_invocation"; VK_NV_device_generated_commands :: 1; VK_NV_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: 3; VK_NV_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: "VK_NV_device_generated_commands"; VK_NV_inherited_viewport_scissor :: 1; VK_NV_INHERITED_VIEWPORT_SCISSOR_SPEC_VERSION :: 1; VK_NV_INHERITED_VIEWPORT_SCISSOR_EXTENSION_NAME :: "VK_NV_inherited_viewport_scissor"; VK_EXT_texel_buffer_alignment :: 1; VK_EXT_TEXEL_BUFFER_ALIGNMENT_SPEC_VERSION :: 1; VK_EXT_TEXEL_BUFFER_ALIGNMENT_EXTENSION_NAME :: "VK_EXT_texel_buffer_alignment"; VK_QCOM_render_pass_transform :: 1; VK_QCOM_RENDER_PASS_TRANSFORM_SPEC_VERSION :: 4; VK_QCOM_RENDER_PASS_TRANSFORM_EXTENSION_NAME :: "VK_QCOM_render_pass_transform"; VK_EXT_depth_bias_control :: 1; VK_EXT_DEPTH_BIAS_CONTROL_SPEC_VERSION :: 1; VK_EXT_DEPTH_BIAS_CONTROL_EXTENSION_NAME :: "VK_EXT_depth_bias_control"; VK_EXT_device_memory_report :: 1; VK_EXT_DEVICE_MEMORY_REPORT_SPEC_VERSION :: 2; VK_EXT_DEVICE_MEMORY_REPORT_EXTENSION_NAME :: "VK_EXT_device_memory_report"; VK_EXT_acquire_drm_display :: 1; VK_EXT_ACQUIRE_DRM_DISPLAY_SPEC_VERSION :: 1; VK_EXT_ACQUIRE_DRM_DISPLAY_EXTENSION_NAME :: "VK_EXT_acquire_drm_display"; VK_EXT_robustness2 :: 1; VK_EXT_ROBUSTNESS_2_SPEC_VERSION :: 1; VK_EXT_ROBUSTNESS_2_EXTENSION_NAME :: "VK_EXT_robustness2"; VK_EXT_custom_border_color :: 1; VK_EXT_CUSTOM_BORDER_COLOR_SPEC_VERSION :: 12; VK_EXT_CUSTOM_BORDER_COLOR_EXTENSION_NAME :: "VK_EXT_custom_border_color"; VK_GOOGLE_user_type :: 1; VK_GOOGLE_USER_TYPE_SPEC_VERSION :: 1; VK_GOOGLE_USER_TYPE_EXTENSION_NAME :: "VK_GOOGLE_user_type"; VK_NV_present_barrier :: 1; VK_NV_PRESENT_BARRIER_SPEC_VERSION :: 1; VK_NV_PRESENT_BARRIER_EXTENSION_NAME :: "VK_NV_present_barrier"; VK_EXT_private_data :: 1; VK_EXT_PRIVATE_DATA_SPEC_VERSION :: 1; VK_EXT_PRIVATE_DATA_EXTENSION_NAME :: "VK_EXT_private_data"; VK_EXT_pipeline_creation_cache_control :: 1; VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_SPEC_VERSION :: 3; VK_EXT_PIPELINE_CREATION_CACHE_CONTROL_EXTENSION_NAME :: "VK_EXT_pipeline_creation_cache_control"; VK_NV_device_diagnostics_config :: 1; VK_NV_DEVICE_DIAGNOSTICS_CONFIG_SPEC_VERSION :: 2; VK_NV_DEVICE_DIAGNOSTICS_CONFIG_EXTENSION_NAME :: "VK_NV_device_diagnostics_config"; VK_QCOM_render_pass_store_ops :: 1; VK_QCOM_RENDER_PASS_STORE_OPS_SPEC_VERSION :: 2; VK_QCOM_RENDER_PASS_STORE_OPS_EXTENSION_NAME :: "VK_QCOM_render_pass_store_ops"; VK_NV_cuda_kernel_launch :: 1; VK_NV_CUDA_KERNEL_LAUNCH_SPEC_VERSION :: 2; VK_NV_CUDA_KERNEL_LAUNCH_EXTENSION_NAME :: "VK_NV_cuda_kernel_launch"; VK_QCOM_tile_shading :: 1; VK_QCOM_TILE_SHADING_SPEC_VERSION :: 1; VK_QCOM_TILE_SHADING_EXTENSION_NAME :: "VK_QCOM_tile_shading"; VK_NV_low_latency :: 1; VK_NV_LOW_LATENCY_SPEC_VERSION :: 1; VK_NV_LOW_LATENCY_EXTENSION_NAME :: "VK_NV_low_latency"; VK_EXT_descriptor_buffer :: 1; VK_EXT_DESCRIPTOR_BUFFER_SPEC_VERSION :: 1; VK_EXT_DESCRIPTOR_BUFFER_EXTENSION_NAME :: "VK_EXT_descriptor_buffer"; VK_EXT_graphics_pipeline_library :: 1; VK_EXT_GRAPHICS_PIPELINE_LIBRARY_SPEC_VERSION :: 1; VK_EXT_GRAPHICS_PIPELINE_LIBRARY_EXTENSION_NAME :: "VK_EXT_graphics_pipeline_library"; VK_AMD_shader_early_and_late_fragment_tests :: 1; VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_SPEC_VERSION :: 1; VK_AMD_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_EXTENSION_NAME :: "VK_AMD_shader_early_and_late_fragment_tests"; VK_NV_fragment_shading_rate_enums :: 1; VK_NV_FRAGMENT_SHADING_RATE_ENUMS_SPEC_VERSION :: 1; VK_NV_FRAGMENT_SHADING_RATE_ENUMS_EXTENSION_NAME :: "VK_NV_fragment_shading_rate_enums"; VK_NV_ray_tracing_motion_blur :: 1; VK_NV_RAY_TRACING_MOTION_BLUR_SPEC_VERSION :: 1; VK_NV_RAY_TRACING_MOTION_BLUR_EXTENSION_NAME :: "VK_NV_ray_tracing_motion_blur"; VK_EXT_ycbcr_2plane_444_formats :: 1; VK_EXT_YCBCR_2PLANE_444_FORMATS_SPEC_VERSION :: 1; VK_EXT_YCBCR_2PLANE_444_FORMATS_EXTENSION_NAME :: "VK_EXT_ycbcr_2plane_444_formats"; VK_EXT_fragment_density_map2 :: 1; VK_EXT_FRAGMENT_DENSITY_MAP_2_SPEC_VERSION :: 1; VK_EXT_FRAGMENT_DENSITY_MAP_2_EXTENSION_NAME :: "VK_EXT_fragment_density_map2"; VK_QCOM_rotated_copy_commands :: 1; VK_QCOM_ROTATED_COPY_COMMANDS_SPEC_VERSION :: 2; VK_QCOM_ROTATED_COPY_COMMANDS_EXTENSION_NAME :: "VK_QCOM_rotated_copy_commands"; VK_EXT_image_robustness :: 1; VK_EXT_IMAGE_ROBUSTNESS_SPEC_VERSION :: 1; VK_EXT_IMAGE_ROBUSTNESS_EXTENSION_NAME :: "VK_EXT_image_robustness"; VK_EXT_image_compression_control :: 1; VK_EXT_IMAGE_COMPRESSION_CONTROL_SPEC_VERSION :: 1; VK_EXT_IMAGE_COMPRESSION_CONTROL_EXTENSION_NAME :: "VK_EXT_image_compression_control"; VK_EXT_attachment_feedback_loop_layout :: 1; VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_SPEC_VERSION :: 2; VK_EXT_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_EXTENSION_NAME :: "VK_EXT_attachment_feedback_loop_layout"; VK_EXT_4444_formats :: 1; VK_EXT_4444_FORMATS_SPEC_VERSION :: 1; VK_EXT_4444_FORMATS_EXTENSION_NAME :: "VK_EXT_4444_formats"; VK_EXT_device_fault :: 1; VK_EXT_DEVICE_FAULT_SPEC_VERSION :: 2; VK_EXT_DEVICE_FAULT_EXTENSION_NAME :: "VK_EXT_device_fault"; VK_ARM_rasterization_order_attachment_access :: 1; VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION :: 1; VK_ARM_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME :: "VK_ARM_rasterization_order_attachment_access"; VK_EXT_rgba10x6_formats :: 1; VK_EXT_RGBA10X6_FORMATS_SPEC_VERSION :: 1; VK_EXT_RGBA10X6_FORMATS_EXTENSION_NAME :: "VK_EXT_rgba10x6_formats"; VK_VALVE_mutable_descriptor_type :: 1; VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION :: 1; VK_VALVE_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME :: "VK_VALVE_mutable_descriptor_type"; VK_EXT_vertex_input_dynamic_state :: 1; VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_SPEC_VERSION :: 2; VK_EXT_VERTEX_INPUT_DYNAMIC_STATE_EXTENSION_NAME :: "VK_EXT_vertex_input_dynamic_state"; VK_EXT_physical_device_drm :: 1; VK_EXT_PHYSICAL_DEVICE_DRM_SPEC_VERSION :: 1; VK_EXT_PHYSICAL_DEVICE_DRM_EXTENSION_NAME :: "VK_EXT_physical_device_drm"; VK_EXT_device_address_binding_report :: 1; VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_SPEC_VERSION :: 1; VK_EXT_DEVICE_ADDRESS_BINDING_REPORT_EXTENSION_NAME :: "VK_EXT_device_address_binding_report"; VK_EXT_depth_clip_control :: 1; VK_EXT_DEPTH_CLIP_CONTROL_SPEC_VERSION :: 1; VK_EXT_DEPTH_CLIP_CONTROL_EXTENSION_NAME :: "VK_EXT_depth_clip_control"; VK_EXT_primitive_topology_list_restart :: 1; VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_SPEC_VERSION :: 1; VK_EXT_PRIMITIVE_TOPOLOGY_LIST_RESTART_EXTENSION_NAME :: "VK_EXT_primitive_topology_list_restart"; VK_EXT_present_mode_fifo_latest_ready :: 1; VK_EXT_PRESENT_MODE_FIFO_LATEST_READY_SPEC_VERSION :: 1; VK_EXT_PRESENT_MODE_FIFO_LATEST_READY_EXTENSION_NAME :: "VK_EXT_present_mode_fifo_latest_ready"; VK_HUAWEI_subpass_shading :: 1; VK_HUAWEI_SUBPASS_SHADING_SPEC_VERSION :: 3; VK_HUAWEI_SUBPASS_SHADING_EXTENSION_NAME :: "VK_HUAWEI_subpass_shading"; VK_HUAWEI_invocation_mask :: 1; VK_HUAWEI_INVOCATION_MASK_SPEC_VERSION :: 1; VK_HUAWEI_INVOCATION_MASK_EXTENSION_NAME :: "VK_HUAWEI_invocation_mask"; VK_NV_external_memory_rdma :: 1; VK_NV_EXTERNAL_MEMORY_RDMA_SPEC_VERSION :: 1; VK_NV_EXTERNAL_MEMORY_RDMA_EXTENSION_NAME :: "VK_NV_external_memory_rdma"; VK_EXT_pipeline_properties :: 1; VK_EXT_PIPELINE_PROPERTIES_SPEC_VERSION :: 1; VK_EXT_PIPELINE_PROPERTIES_EXTENSION_NAME :: "VK_EXT_pipeline_properties"; VK_EXT_frame_boundary :: 1; VK_EXT_FRAME_BOUNDARY_SPEC_VERSION :: 1; VK_EXT_FRAME_BOUNDARY_EXTENSION_NAME :: "VK_EXT_frame_boundary"; VK_EXT_multisampled_render_to_single_sampled :: 1; VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_SPEC_VERSION :: 1; VK_EXT_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_EXTENSION_NAME :: "VK_EXT_multisampled_render_to_single_sampled"; VK_EXT_extended_dynamic_state2 :: 1; VK_EXT_EXTENDED_DYNAMIC_STATE_2_SPEC_VERSION :: 1; VK_EXT_EXTENDED_DYNAMIC_STATE_2_EXTENSION_NAME :: "VK_EXT_extended_dynamic_state2"; VK_EXT_color_write_enable :: 1; VK_EXT_COLOR_WRITE_ENABLE_SPEC_VERSION :: 1; VK_EXT_COLOR_WRITE_ENABLE_EXTENSION_NAME :: "VK_EXT_color_write_enable"; VK_EXT_primitives_generated_query :: 1; VK_EXT_PRIMITIVES_GENERATED_QUERY_SPEC_VERSION :: 1; VK_EXT_PRIMITIVES_GENERATED_QUERY_EXTENSION_NAME :: "VK_EXT_primitives_generated_query"; VK_EXT_global_priority_query :: 1; VK_EXT_GLOBAL_PRIORITY_QUERY_SPEC_VERSION :: 1; VK_EXT_GLOBAL_PRIORITY_QUERY_EXTENSION_NAME :: "VK_EXT_global_priority_query"; VK_MAX_GLOBAL_PRIORITY_SIZE_EXT :: VK_MAX_GLOBAL_PRIORITY_SIZE; VK_EXT_image_view_min_lod :: 1; VK_EXT_IMAGE_VIEW_MIN_LOD_SPEC_VERSION :: 1; VK_EXT_IMAGE_VIEW_MIN_LOD_EXTENSION_NAME :: "VK_EXT_image_view_min_lod"; VK_EXT_multi_draw :: 1; VK_EXT_MULTI_DRAW_SPEC_VERSION :: 1; VK_EXT_MULTI_DRAW_EXTENSION_NAME :: "VK_EXT_multi_draw"; VK_EXT_image_2d_view_of_3d :: 1; VK_EXT_IMAGE_2D_VIEW_OF_3D_SPEC_VERSION :: 1; VK_EXT_IMAGE_2D_VIEW_OF_3D_EXTENSION_NAME :: "VK_EXT_image_2d_view_of_3d"; VK_EXT_shader_tile_image :: 1; VK_EXT_SHADER_TILE_IMAGE_SPEC_VERSION :: 1; VK_EXT_SHADER_TILE_IMAGE_EXTENSION_NAME :: "VK_EXT_shader_tile_image"; VK_EXT_opacity_micromap :: 1; VK_EXT_OPACITY_MICROMAP_SPEC_VERSION :: 2; VK_EXT_OPACITY_MICROMAP_EXTENSION_NAME :: "VK_EXT_opacity_micromap"; VK_EXT_load_store_op_none :: 1; VK_EXT_LOAD_STORE_OP_NONE_SPEC_VERSION :: 1; VK_EXT_LOAD_STORE_OP_NONE_EXTENSION_NAME :: "VK_EXT_load_store_op_none"; VK_HUAWEI_cluster_culling_shader :: 1; VK_HUAWEI_CLUSTER_CULLING_SHADER_SPEC_VERSION :: 3; VK_HUAWEI_CLUSTER_CULLING_SHADER_EXTENSION_NAME :: "VK_HUAWEI_cluster_culling_shader"; VK_EXT_border_color_swizzle :: 1; VK_EXT_BORDER_COLOR_SWIZZLE_SPEC_VERSION :: 1; VK_EXT_BORDER_COLOR_SWIZZLE_EXTENSION_NAME :: "VK_EXT_border_color_swizzle"; VK_EXT_pageable_device_local_memory :: 1; VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_SPEC_VERSION :: 1; VK_EXT_PAGEABLE_DEVICE_LOCAL_MEMORY_EXTENSION_NAME :: "VK_EXT_pageable_device_local_memory"; VK_ARM_shader_core_properties :: 1; VK_ARM_SHADER_CORE_PROPERTIES_SPEC_VERSION :: 1; VK_ARM_SHADER_CORE_PROPERTIES_EXTENSION_NAME :: "VK_ARM_shader_core_properties"; VK_ARM_scheduling_controls :: 1; VK_ARM_SCHEDULING_CONTROLS_SPEC_VERSION :: 1; VK_ARM_SCHEDULING_CONTROLS_EXTENSION_NAME :: "VK_ARM_scheduling_controls"; VK_EXT_image_sliced_view_of_3d :: 1; VK_EXT_IMAGE_SLICED_VIEW_OF_3D_SPEC_VERSION :: 1; VK_EXT_IMAGE_SLICED_VIEW_OF_3D_EXTENSION_NAME :: "VK_EXT_image_sliced_view_of_3d"; VK_REMAINING_3D_SLICES_EXT :: ~0; VK_VALVE_descriptor_set_host_mapping :: 1; VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_SPEC_VERSION :: 1; VK_VALVE_DESCRIPTOR_SET_HOST_MAPPING_EXTENSION_NAME :: "VK_VALVE_descriptor_set_host_mapping"; VK_EXT_depth_clamp_zero_one :: 1; VK_EXT_DEPTH_CLAMP_ZERO_ONE_SPEC_VERSION :: 1; VK_EXT_DEPTH_CLAMP_ZERO_ONE_EXTENSION_NAME :: "VK_EXT_depth_clamp_zero_one"; VK_EXT_non_seamless_cube_map :: 1; VK_EXT_NON_SEAMLESS_CUBE_MAP_SPEC_VERSION :: 1; VK_EXT_NON_SEAMLESS_CUBE_MAP_EXTENSION_NAME :: "VK_EXT_non_seamless_cube_map"; VK_ARM_render_pass_striped :: 1; VK_ARM_RENDER_PASS_STRIPED_SPEC_VERSION :: 1; VK_ARM_RENDER_PASS_STRIPED_EXTENSION_NAME :: "VK_ARM_render_pass_striped"; VK_QCOM_fragment_density_map_offset :: 1; VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION :: 3; VK_QCOM_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME :: "VK_QCOM_fragment_density_map_offset"; VK_NV_copy_memory_indirect :: 1; VK_NV_COPY_MEMORY_INDIRECT_SPEC_VERSION :: 1; VK_NV_COPY_MEMORY_INDIRECT_EXTENSION_NAME :: "VK_NV_copy_memory_indirect"; VK_NV_memory_decompression :: 1; VK_NV_MEMORY_DECOMPRESSION_SPEC_VERSION :: 1; VK_NV_MEMORY_DECOMPRESSION_EXTENSION_NAME :: "VK_NV_memory_decompression"; VK_NV_device_generated_commands_compute :: 1; VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_SPEC_VERSION :: 2; VK_NV_DEVICE_GENERATED_COMMANDS_COMPUTE_EXTENSION_NAME :: "VK_NV_device_generated_commands_compute"; VK_NV_ray_tracing_linear_swept_spheres :: 1; VK_NV_RAY_TRACING_LINEAR_SWEPT_SPHERES_SPEC_VERSION :: 1; VK_NV_RAY_TRACING_LINEAR_SWEPT_SPHERES_EXTENSION_NAME :: "VK_NV_ray_tracing_linear_swept_spheres"; VK_NV_linear_color_attachment :: 1; VK_NV_LINEAR_COLOR_ATTACHMENT_SPEC_VERSION :: 1; VK_NV_LINEAR_COLOR_ATTACHMENT_EXTENSION_NAME :: "VK_NV_linear_color_attachment"; VK_GOOGLE_surfaceless_query :: 1; VK_GOOGLE_SURFACELESS_QUERY_SPEC_VERSION :: 2; VK_GOOGLE_SURFACELESS_QUERY_EXTENSION_NAME :: "VK_GOOGLE_surfaceless_query"; VK_EXT_image_compression_control_swapchain :: 1; VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_SPEC_VERSION :: 1; VK_EXT_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_EXTENSION_NAME :: "VK_EXT_image_compression_control_swapchain"; VK_QCOM_image_processing :: 1; VK_QCOM_IMAGE_PROCESSING_SPEC_VERSION :: 1; VK_QCOM_IMAGE_PROCESSING_EXTENSION_NAME :: "VK_QCOM_image_processing"; VK_EXT_nested_command_buffer :: 1; VK_EXT_NESTED_COMMAND_BUFFER_SPEC_VERSION :: 1; VK_EXT_NESTED_COMMAND_BUFFER_EXTENSION_NAME :: "VK_EXT_nested_command_buffer"; VK_EXT_external_memory_acquire_unmodified :: 1; VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_SPEC_VERSION :: 1; VK_EXT_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXTENSION_NAME :: "VK_EXT_external_memory_acquire_unmodified"; VK_EXT_extended_dynamic_state3 :: 1; VK_EXT_EXTENDED_DYNAMIC_STATE_3_SPEC_VERSION :: 2; VK_EXT_EXTENDED_DYNAMIC_STATE_3_EXTENSION_NAME :: "VK_EXT_extended_dynamic_state3"; VK_EXT_subpass_merge_feedback :: 1; VK_EXT_SUBPASS_MERGE_FEEDBACK_SPEC_VERSION :: 2; VK_EXT_SUBPASS_MERGE_FEEDBACK_EXTENSION_NAME :: "VK_EXT_subpass_merge_feedback"; VK_LUNARG_direct_driver_loading :: 1; VK_LUNARG_DIRECT_DRIVER_LOADING_SPEC_VERSION :: 1; VK_LUNARG_DIRECT_DRIVER_LOADING_EXTENSION_NAME :: "VK_LUNARG_direct_driver_loading"; VK_EXT_shader_module_identifier :: 1; VK_MAX_SHADER_MODULE_IDENTIFIER_SIZE_EXT :: 32; VK_EXT_SHADER_MODULE_IDENTIFIER_SPEC_VERSION :: 1; VK_EXT_SHADER_MODULE_IDENTIFIER_EXTENSION_NAME :: "VK_EXT_shader_module_identifier"; VK_EXT_rasterization_order_attachment_access :: 1; VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_SPEC_VERSION :: 1; VK_EXT_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_EXTENSION_NAME :: "VK_EXT_rasterization_order_attachment_access"; VK_NV_optical_flow :: 1; VK_NV_OPTICAL_FLOW_SPEC_VERSION :: 1; VK_NV_OPTICAL_FLOW_EXTENSION_NAME :: "VK_NV_optical_flow"; VK_EXT_legacy_dithering :: 1; VK_EXT_LEGACY_DITHERING_SPEC_VERSION :: 2; VK_EXT_LEGACY_DITHERING_EXTENSION_NAME :: "VK_EXT_legacy_dithering"; VK_EXT_pipeline_protected_access :: 1; VK_EXT_PIPELINE_PROTECTED_ACCESS_SPEC_VERSION :: 1; VK_EXT_PIPELINE_PROTECTED_ACCESS_EXTENSION_NAME :: "VK_EXT_pipeline_protected_access"; VK_AMD_anti_lag :: 1; VK_AMD_ANTI_LAG_SPEC_VERSION :: 1; VK_AMD_ANTI_LAG_EXTENSION_NAME :: "VK_AMD_anti_lag"; VK_EXT_shader_object :: 1; VK_EXT_SHADER_OBJECT_SPEC_VERSION :: 1; VK_EXT_SHADER_OBJECT_EXTENSION_NAME :: "VK_EXT_shader_object"; VK_QCOM_tile_properties :: 1; VK_QCOM_TILE_PROPERTIES_SPEC_VERSION :: 1; VK_QCOM_TILE_PROPERTIES_EXTENSION_NAME :: "VK_QCOM_tile_properties"; VK_SEC_amigo_profiling :: 1; VK_SEC_AMIGO_PROFILING_SPEC_VERSION :: 1; VK_SEC_AMIGO_PROFILING_EXTENSION_NAME :: "VK_SEC_amigo_profiling"; VK_QCOM_multiview_per_view_viewports :: 1; VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_SPEC_VERSION :: 1; VK_QCOM_MULTIVIEW_PER_VIEW_VIEWPORTS_EXTENSION_NAME :: "VK_QCOM_multiview_per_view_viewports"; VK_NV_ray_tracing_invocation_reorder :: 1; VK_NV_RAY_TRACING_INVOCATION_REORDER_SPEC_VERSION :: 1; VK_NV_RAY_TRACING_INVOCATION_REORDER_EXTENSION_NAME :: "VK_NV_ray_tracing_invocation_reorder"; VK_NV_cooperative_vector :: 1; VK_NV_COOPERATIVE_VECTOR_SPEC_VERSION :: 4; VK_NV_COOPERATIVE_VECTOR_EXTENSION_NAME :: "VK_NV_cooperative_vector"; VK_NV_extended_sparse_address_space :: 1; VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_SPEC_VERSION :: 1; VK_NV_EXTENDED_SPARSE_ADDRESS_SPACE_EXTENSION_NAME :: "VK_NV_extended_sparse_address_space"; VK_EXT_mutable_descriptor_type :: 1; VK_EXT_MUTABLE_DESCRIPTOR_TYPE_SPEC_VERSION :: 1; VK_EXT_MUTABLE_DESCRIPTOR_TYPE_EXTENSION_NAME :: "VK_EXT_mutable_descriptor_type"; VK_EXT_legacy_vertex_attributes :: 1; VK_EXT_LEGACY_VERTEX_ATTRIBUTES_SPEC_VERSION :: 1; VK_EXT_LEGACY_VERTEX_ATTRIBUTES_EXTENSION_NAME :: "VK_EXT_legacy_vertex_attributes"; VK_EXT_layer_settings :: 1; VK_EXT_LAYER_SETTINGS_SPEC_VERSION :: 2; VK_EXT_LAYER_SETTINGS_EXTENSION_NAME :: "VK_EXT_layer_settings"; VK_ARM_shader_core_builtins :: 1; VK_ARM_SHADER_CORE_BUILTINS_SPEC_VERSION :: 2; VK_ARM_SHADER_CORE_BUILTINS_EXTENSION_NAME :: "VK_ARM_shader_core_builtins"; VK_EXT_pipeline_library_group_handles :: 1; VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_SPEC_VERSION :: 1; VK_EXT_PIPELINE_LIBRARY_GROUP_HANDLES_EXTENSION_NAME :: "VK_EXT_pipeline_library_group_handles"; VK_EXT_dynamic_rendering_unused_attachments :: 1; VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_SPEC_VERSION :: 1; VK_EXT_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_EXTENSION_NAME :: "VK_EXT_dynamic_rendering_unused_attachments"; VK_NV_low_latency2 :: 1; VK_NV_LOW_LATENCY_2_SPEC_VERSION :: 2; VK_NV_LOW_LATENCY_2_EXTENSION_NAME :: "VK_NV_low_latency2"; VK_QCOM_multiview_per_view_render_areas :: 1; VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_SPEC_VERSION :: 1; VK_QCOM_MULTIVIEW_PER_VIEW_RENDER_AREAS_EXTENSION_NAME :: "VK_QCOM_multiview_per_view_render_areas"; VK_NV_per_stage_descriptor_set :: 1; VK_NV_PER_STAGE_DESCRIPTOR_SET_SPEC_VERSION :: 1; VK_NV_PER_STAGE_DESCRIPTOR_SET_EXTENSION_NAME :: "VK_NV_per_stage_descriptor_set"; VK_QCOM_image_processing2 :: 1; VK_QCOM_IMAGE_PROCESSING_2_SPEC_VERSION :: 1; VK_QCOM_IMAGE_PROCESSING_2_EXTENSION_NAME :: "VK_QCOM_image_processing2"; VK_QCOM_filter_cubic_weights :: 1; VK_QCOM_FILTER_CUBIC_WEIGHTS_SPEC_VERSION :: 1; VK_QCOM_FILTER_CUBIC_WEIGHTS_EXTENSION_NAME :: "VK_QCOM_filter_cubic_weights"; VK_QCOM_ycbcr_degamma :: 1; VK_QCOM_YCBCR_DEGAMMA_SPEC_VERSION :: 1; VK_QCOM_YCBCR_DEGAMMA_EXTENSION_NAME :: "VK_QCOM_ycbcr_degamma"; VK_QCOM_filter_cubic_clamp :: 1; VK_QCOM_FILTER_CUBIC_CLAMP_SPEC_VERSION :: 1; VK_QCOM_FILTER_CUBIC_CLAMP_EXTENSION_NAME :: "VK_QCOM_filter_cubic_clamp"; VK_EXT_attachment_feedback_loop_dynamic_state :: 1; VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_SPEC_VERSION :: 1; VK_EXT_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_EXTENSION_NAME :: "VK_EXT_attachment_feedback_loop_dynamic_state"; VK_MSFT_layered_driver :: 1; VK_MSFT_LAYERED_DRIVER_SPEC_VERSION :: 1; VK_MSFT_LAYERED_DRIVER_EXTENSION_NAME :: "VK_MSFT_layered_driver"; VK_NV_descriptor_pool_overallocation :: 1; VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_SPEC_VERSION :: 1; VK_NV_DESCRIPTOR_POOL_OVERALLOCATION_EXTENSION_NAME :: "VK_NV_descriptor_pool_overallocation"; VK_QCOM_tile_memory_heap :: 1; VK_QCOM_TILE_MEMORY_HEAP_SPEC_VERSION :: 1; VK_QCOM_TILE_MEMORY_HEAP_EXTENSION_NAME :: "VK_QCOM_tile_memory_heap"; VK_NV_display_stereo :: 1; VK_NV_DISPLAY_STEREO_SPEC_VERSION :: 1; VK_NV_DISPLAY_STEREO_EXTENSION_NAME :: "VK_NV_display_stereo"; VK_NV_raw_access_chains :: 1; VK_NV_RAW_ACCESS_CHAINS_SPEC_VERSION :: 1; VK_NV_RAW_ACCESS_CHAINS_EXTENSION_NAME :: "VK_NV_raw_access_chains"; VK_NV_external_compute_queue :: 1; VK_NV_EXTERNAL_COMPUTE_QUEUE_SPEC_VERSION :: 1; VK_NV_EXTERNAL_COMPUTE_QUEUE_EXTENSION_NAME :: "VK_NV_external_compute_queue"; VK_NV_command_buffer_inheritance :: 1; VK_NV_COMMAND_BUFFER_INHERITANCE_SPEC_VERSION :: 1; VK_NV_COMMAND_BUFFER_INHERITANCE_EXTENSION_NAME :: "VK_NV_command_buffer_inheritance"; VK_NV_shader_atomic_float16_vector :: 1; VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_SPEC_VERSION :: 1; VK_NV_SHADER_ATOMIC_FLOAT16_VECTOR_EXTENSION_NAME :: "VK_NV_shader_atomic_float16_vector"; VK_EXT_shader_replicated_composites :: 1; VK_EXT_SHADER_REPLICATED_COMPOSITES_SPEC_VERSION :: 1; VK_EXT_SHADER_REPLICATED_COMPOSITES_EXTENSION_NAME :: "VK_EXT_shader_replicated_composites"; VK_NV_ray_tracing_validation :: 1; VK_NV_RAY_TRACING_VALIDATION_SPEC_VERSION :: 1; VK_NV_RAY_TRACING_VALIDATION_EXTENSION_NAME :: "VK_NV_ray_tracing_validation"; VK_NV_cluster_acceleration_structure :: 1; VK_NV_CLUSTER_ACCELERATION_STRUCTURE_SPEC_VERSION :: 2; VK_NV_CLUSTER_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_NV_cluster_acceleration_structure"; VK_NV_partitioned_acceleration_structure :: 1; VK_NV_PARTITIONED_ACCELERATION_STRUCTURE_SPEC_VERSION :: 1; VK_NV_PARTITIONED_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_NV_partitioned_acceleration_structure"; VK_PARTITIONED_ACCELERATION_STRUCTURE_PARTITION_INDEX_GLOBAL_NV :: ~0; VK_EXT_device_generated_commands :: 1; VK_EXT_DEVICE_GENERATED_COMMANDS_SPEC_VERSION :: 1; VK_EXT_DEVICE_GENERATED_COMMANDS_EXTENSION_NAME :: "VK_EXT_device_generated_commands"; VK_MESA_image_alignment_control :: 1; VK_MESA_IMAGE_ALIGNMENT_CONTROL_SPEC_VERSION :: 1; VK_MESA_IMAGE_ALIGNMENT_CONTROL_EXTENSION_NAME :: "VK_MESA_image_alignment_control"; VK_EXT_depth_clamp_control :: 1; VK_EXT_DEPTH_CLAMP_CONTROL_SPEC_VERSION :: 1; VK_EXT_DEPTH_CLAMP_CONTROL_EXTENSION_NAME :: "VK_EXT_depth_clamp_control"; VK_HUAWEI_hdr_vivid :: 1; VK_HUAWEI_HDR_VIVID_SPEC_VERSION :: 1; VK_HUAWEI_HDR_VIVID_EXTENSION_NAME :: "VK_HUAWEI_hdr_vivid"; VK_NV_cooperative_matrix2 :: 1; VK_NV_COOPERATIVE_MATRIX_2_SPEC_VERSION :: 1; VK_NV_COOPERATIVE_MATRIX_2_EXTENSION_NAME :: "VK_NV_cooperative_matrix2"; VK_ARM_pipeline_opacity_micromap :: 1; VK_ARM_PIPELINE_OPACITY_MICROMAP_SPEC_VERSION :: 1; VK_ARM_PIPELINE_OPACITY_MICROMAP_EXTENSION_NAME :: "VK_ARM_pipeline_opacity_micromap"; VK_EXT_vertex_attribute_robustness :: 1; VK_EXT_VERTEX_ATTRIBUTE_ROBUSTNESS_SPEC_VERSION :: 1; VK_EXT_VERTEX_ATTRIBUTE_ROBUSTNESS_EXTENSION_NAME :: "VK_EXT_vertex_attribute_robustness"; VK_NV_present_metering :: 1; VK_NV_PRESENT_METERING_SPEC_VERSION :: 1; VK_NV_PRESENT_METERING_EXTENSION_NAME :: "VK_NV_present_metering"; VK_EXT_fragment_density_map_offset :: 1; VK_EXT_FRAGMENT_DENSITY_MAP_OFFSET_SPEC_VERSION :: 1; VK_EXT_FRAGMENT_DENSITY_MAP_OFFSET_EXTENSION_NAME :: "VK_EXT_fragment_density_map_offset"; VK_KHR_acceleration_structure :: 1; VK_KHR_ACCELERATION_STRUCTURE_SPEC_VERSION :: 13; VK_KHR_ACCELERATION_STRUCTURE_EXTENSION_NAME :: "VK_KHR_acceleration_structure"; VK_KHR_ray_tracing_pipeline :: 1; VK_KHR_RAY_TRACING_PIPELINE_SPEC_VERSION :: 1; VK_KHR_RAY_TRACING_PIPELINE_EXTENSION_NAME :: "VK_KHR_ray_tracing_pipeline"; VK_KHR_ray_query :: 1; VK_KHR_RAY_QUERY_SPEC_VERSION :: 1; VK_KHR_RAY_QUERY_EXTENSION_NAME :: "VK_KHR_ray_query"; VK_EXT_mesh_shader :: 1; VK_EXT_MESH_SHADER_SPEC_VERSION :: 1; VK_EXT_MESH_SHADER_EXTENSION_NAME :: "VK_EXT_mesh_shader"; VkBool32 :: u32; VkDeviceAddress :: u64; VkDeviceSize :: u64; VkFlags :: u32; VkSampleMask :: u32; VkBuffer_T :: struct {} VkBuffer :: *VkBuffer_T; VkImage_T :: struct {} VkImage :: *VkImage_T; VkInstance_T :: struct {} VkInstance :: *VkInstance_T; VkPhysicalDevice_T :: struct {} VkPhysicalDevice :: *VkPhysicalDevice_T; VkDevice_T :: struct {} VkDevice :: *VkDevice_T; VkQueue_T :: struct {} VkQueue :: *VkQueue_T; VkSemaphore_T :: struct {} VkSemaphore :: *VkSemaphore_T; VkCommandBuffer_T :: struct {} VkCommandBuffer :: *VkCommandBuffer_T; VkFence_T :: struct {} VkFence :: *VkFence_T; VkDeviceMemory_T :: struct {} VkDeviceMemory :: *VkDeviceMemory_T; VkEvent_T :: struct {} VkEvent :: *VkEvent_T; VkQueryPool_T :: struct {} VkQueryPool :: *VkQueryPool_T; VkBufferView_T :: struct {} VkBufferView :: *VkBufferView_T; VkImageView_T :: struct {} VkImageView :: *VkImageView_T; VkShaderModule_T :: struct {} VkShaderModule :: *VkShaderModule_T; VkPipelineCache_T :: struct {} VkPipelineCache :: *VkPipelineCache_T; VkPipelineLayout_T :: struct {} VkPipelineLayout :: *VkPipelineLayout_T; VkPipeline_T :: struct {} VkPipeline :: *VkPipeline_T; VkRenderPass_T :: struct {} VkRenderPass :: *VkRenderPass_T; VkDescriptorSetLayout_T :: struct {} VkDescriptorSetLayout :: *VkDescriptorSetLayout_T; VkSampler_T :: struct {} VkSampler :: *VkSampler_T; VkDescriptorSet_T :: struct {} VkDescriptorSet :: *VkDescriptorSet_T; VkDescriptorPool_T :: struct {} VkDescriptorPool :: *VkDescriptorPool_T; VkFramebuffer_T :: struct {} VkFramebuffer :: *VkFramebuffer_T; VkCommandPool_T :: struct {} VkCommandPool :: *VkCommandPool_T; VkResult :: enum s32 { SUCCESS :: 0; NOT_READY :: 1; TIMEOUT :: 2; EVENT_SET :: 3; EVENT_RESET :: 4; INCOMPLETE :: 5; ERROR_OUT_OF_HOST_MEMORY :: -1; ERROR_OUT_OF_DEVICE_MEMORY :: -2; ERROR_INITIALIZATION_FAILED :: -3; ERROR_DEVICE_LOST :: -4; ERROR_MEMORY_MAP_FAILED :: -5; ERROR_LAYER_NOT_PRESENT :: -6; ERROR_EXTENSION_NOT_PRESENT :: -7; ERROR_FEATURE_NOT_PRESENT :: -8; ERROR_INCOMPATIBLE_DRIVER :: -9; ERROR_TOO_MANY_OBJECTS :: -10; ERROR_FORMAT_NOT_SUPPORTED :: -11; ERROR_FRAGMENTED_POOL :: -12; ERROR_UNKNOWN :: -13; ERROR_OUT_OF_POOL_MEMORY :: -1000069000; ERROR_INVALID_EXTERNAL_HANDLE :: -1000072003; ERROR_FRAGMENTATION :: -1000161000; ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: -1000257000; PIPELINE_COMPILE_REQUIRED :: 1000297000; ERROR_NOT_PERMITTED :: -1000174001; ERROR_SURFACE_LOST_KHR :: -1000000000; ERROR_NATIVE_WINDOW_IN_USE_KHR :: -1000000001; SUBOPTIMAL_KHR :: 1000001003; ERROR_OUT_OF_DATE_KHR :: -1000001004; ERROR_INCOMPATIBLE_DISPLAY_KHR :: -1000003001; ERROR_VALIDATION_FAILED_EXT :: -1000011001; ERROR_INVALID_SHADER_NV :: -1000012000; ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR :: -1000023000; ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR :: -1000023001; ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR :: -1000023002; ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR :: -1000023003; ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR :: -1000023004; ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR :: -1000023005; ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: -1000158000; ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: -1000255000; THREAD_IDLE_KHR :: 1000268000; THREAD_DONE_KHR :: 1000268001; OPERATION_DEFERRED_KHR :: 1000268002; OPERATION_NOT_DEFERRED_KHR :: 1000268003; ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR :: -1000299000; ERROR_COMPRESSION_EXHAUSTED_EXT :: -1000338000; INCOMPATIBLE_SHADER_BINARY_EXT :: 1000482000; PIPELINE_BINARY_MISSING_KHR :: 1000483000; ERROR_NOT_ENOUGH_SPACE_KHR :: -1000483000; ERROR_OUT_OF_POOL_MEMORY_KHR :: -1000069000; ERROR_INVALID_EXTERNAL_HANDLE_KHR :: -1000072003; ERROR_FRAGMENTATION_EXT :: -1000161000; ERROR_NOT_PERMITTED_EXT :: -1000174001; ERROR_NOT_PERMITTED_KHR :: -1000174001; ERROR_INVALID_DEVICE_ADDRESS_EXT :: -1000257000; ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR :: -1000257000; PIPELINE_COMPILE_REQUIRED_EXT :: 1000297000; ERROR_PIPELINE_COMPILE_REQUIRED_EXT :: 1000297000; ERROR_INCOMPATIBLE_SHADER_BINARY_EXT :: 1000482000; RESULT_MAX_ENUM :: 2147483647; VK_SUCCESS :: SUCCESS; VK_NOT_READY :: NOT_READY; VK_TIMEOUT :: TIMEOUT; VK_EVENT_SET :: EVENT_SET; VK_EVENT_RESET :: EVENT_RESET; VK_INCOMPLETE :: INCOMPLETE; VK_ERROR_OUT_OF_HOST_MEMORY :: ERROR_OUT_OF_HOST_MEMORY; VK_ERROR_OUT_OF_DEVICE_MEMORY :: ERROR_OUT_OF_DEVICE_MEMORY; VK_ERROR_INITIALIZATION_FAILED :: ERROR_INITIALIZATION_FAILED; VK_ERROR_DEVICE_LOST :: ERROR_DEVICE_LOST; VK_ERROR_MEMORY_MAP_FAILED :: ERROR_MEMORY_MAP_FAILED; VK_ERROR_LAYER_NOT_PRESENT :: ERROR_LAYER_NOT_PRESENT; VK_ERROR_EXTENSION_NOT_PRESENT :: ERROR_EXTENSION_NOT_PRESENT; VK_ERROR_FEATURE_NOT_PRESENT :: ERROR_FEATURE_NOT_PRESENT; VK_ERROR_INCOMPATIBLE_DRIVER :: ERROR_INCOMPATIBLE_DRIVER; VK_ERROR_TOO_MANY_OBJECTS :: ERROR_TOO_MANY_OBJECTS; VK_ERROR_FORMAT_NOT_SUPPORTED :: ERROR_FORMAT_NOT_SUPPORTED; VK_ERROR_FRAGMENTED_POOL :: ERROR_FRAGMENTED_POOL; VK_ERROR_UNKNOWN :: ERROR_UNKNOWN; VK_ERROR_OUT_OF_POOL_MEMORY :: ERROR_OUT_OF_POOL_MEMORY; VK_ERROR_INVALID_EXTERNAL_HANDLE :: ERROR_INVALID_EXTERNAL_HANDLE; VK_ERROR_FRAGMENTATION :: ERROR_FRAGMENTATION; VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS :: ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS; VK_PIPELINE_COMPILE_REQUIRED :: PIPELINE_COMPILE_REQUIRED; VK_ERROR_NOT_PERMITTED :: ERROR_NOT_PERMITTED; VK_ERROR_SURFACE_LOST_KHR :: ERROR_SURFACE_LOST_KHR; VK_ERROR_NATIVE_WINDOW_IN_USE_KHR :: ERROR_NATIVE_WINDOW_IN_USE_KHR; VK_SUBOPTIMAL_KHR :: SUBOPTIMAL_KHR; VK_ERROR_OUT_OF_DATE_KHR :: ERROR_OUT_OF_DATE_KHR; VK_ERROR_INCOMPATIBLE_DISPLAY_KHR :: ERROR_INCOMPATIBLE_DISPLAY_KHR; VK_ERROR_VALIDATION_FAILED_EXT :: ERROR_VALIDATION_FAILED_EXT; VK_ERROR_INVALID_SHADER_NV :: ERROR_INVALID_SHADER_NV; VK_ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR :: ERROR_IMAGE_USAGE_NOT_SUPPORTED_KHR; VK_ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR :: ERROR_VIDEO_PICTURE_LAYOUT_NOT_SUPPORTED_KHR; VK_ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR :: ERROR_VIDEO_PROFILE_OPERATION_NOT_SUPPORTED_KHR; VK_ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR :: ERROR_VIDEO_PROFILE_FORMAT_NOT_SUPPORTED_KHR; VK_ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR :: ERROR_VIDEO_PROFILE_CODEC_NOT_SUPPORTED_KHR; VK_ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR :: ERROR_VIDEO_STD_VERSION_NOT_SUPPORTED_KHR; VK_ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT :: ERROR_INVALID_DRM_FORMAT_MODIFIER_PLANE_LAYOUT_EXT; VK_ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT :: ERROR_FULL_SCREEN_EXCLUSIVE_MODE_LOST_EXT; VK_THREAD_IDLE_KHR :: THREAD_IDLE_KHR; VK_THREAD_DONE_KHR :: THREAD_DONE_KHR; VK_OPERATION_DEFERRED_KHR :: OPERATION_DEFERRED_KHR; VK_OPERATION_NOT_DEFERRED_KHR :: OPERATION_NOT_DEFERRED_KHR; VK_ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR :: ERROR_INVALID_VIDEO_STD_PARAMETERS_KHR; VK_ERROR_COMPRESSION_EXHAUSTED_EXT :: ERROR_COMPRESSION_EXHAUSTED_EXT; VK_INCOMPATIBLE_SHADER_BINARY_EXT :: INCOMPATIBLE_SHADER_BINARY_EXT; VK_PIPELINE_BINARY_MISSING_KHR :: PIPELINE_BINARY_MISSING_KHR; VK_ERROR_NOT_ENOUGH_SPACE_KHR :: ERROR_NOT_ENOUGH_SPACE_KHR; VK_ERROR_OUT_OF_POOL_MEMORY_KHR :: ERROR_OUT_OF_POOL_MEMORY_KHR; VK_ERROR_INVALID_EXTERNAL_HANDLE_KHR :: ERROR_INVALID_EXTERNAL_HANDLE_KHR; VK_ERROR_FRAGMENTATION_EXT :: ERROR_FRAGMENTATION_EXT; VK_ERROR_NOT_PERMITTED_EXT :: ERROR_NOT_PERMITTED_EXT; VK_ERROR_NOT_PERMITTED_KHR :: ERROR_NOT_PERMITTED_KHR; VK_ERROR_INVALID_DEVICE_ADDRESS_EXT :: ERROR_INVALID_DEVICE_ADDRESS_EXT; VK_ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR :: ERROR_INVALID_OPAQUE_CAPTURE_ADDRESS_KHR; VK_PIPELINE_COMPILE_REQUIRED_EXT :: PIPELINE_COMPILE_REQUIRED_EXT; VK_ERROR_PIPELINE_COMPILE_REQUIRED_EXT :: ERROR_PIPELINE_COMPILE_REQUIRED_EXT; VK_ERROR_INCOMPATIBLE_SHADER_BINARY_EXT :: ERROR_INCOMPATIBLE_SHADER_BINARY_EXT; VK_RESULT_MAX_ENUM :: RESULT_MAX_ENUM; } VkStructureType :: enum u32 { APPLICATION_INFO :: 0; INSTANCE_CREATE_INFO :: 1; DEVICE_QUEUE_CREATE_INFO :: 2; DEVICE_CREATE_INFO :: 3; SUBMIT_INFO :: 4; MEMORY_ALLOCATE_INFO :: 5; MAPPED_MEMORY_RANGE :: 6; BIND_SPARSE_INFO :: 7; FENCE_CREATE_INFO :: 8; SEMAPHORE_CREATE_INFO :: 9; EVENT_CREATE_INFO :: 10; QUERY_POOL_CREATE_INFO :: 11; BUFFER_CREATE_INFO :: 12; BUFFER_VIEW_CREATE_INFO :: 13; IMAGE_CREATE_INFO :: 14; IMAGE_VIEW_CREATE_INFO :: 15; SHADER_MODULE_CREATE_INFO :: 16; PIPELINE_CACHE_CREATE_INFO :: 17; PIPELINE_SHADER_STAGE_CREATE_INFO :: 18; PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: 19; PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: 20; PIPELINE_TESSELLATION_STATE_CREATE_INFO :: 21; PIPELINE_VIEWPORT_STATE_CREATE_INFO :: 22; PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: 23; PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: 24; PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: 25; PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: 26; PIPELINE_DYNAMIC_STATE_CREATE_INFO :: 27; GRAPHICS_PIPELINE_CREATE_INFO :: 28; COMPUTE_PIPELINE_CREATE_INFO :: 29; PIPELINE_LAYOUT_CREATE_INFO :: 30; SAMPLER_CREATE_INFO :: 31; DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: 32; DESCRIPTOR_POOL_CREATE_INFO :: 33; DESCRIPTOR_SET_ALLOCATE_INFO :: 34; WRITE_DESCRIPTOR_SET :: 35; COPY_DESCRIPTOR_SET :: 36; FRAMEBUFFER_CREATE_INFO :: 37; RENDER_PASS_CREATE_INFO :: 38; COMMAND_POOL_CREATE_INFO :: 39; COMMAND_BUFFER_ALLOCATE_INFO :: 40; COMMAND_BUFFER_INHERITANCE_INFO :: 41; COMMAND_BUFFER_BEGIN_INFO :: 42; RENDER_PASS_BEGIN_INFO :: 43; BUFFER_MEMORY_BARRIER :: 44; IMAGE_MEMORY_BARRIER :: 45; MEMORY_BARRIER :: 46; LOADER_INSTANCE_CREATE_INFO :: 47; LOADER_DEVICE_CREATE_INFO :: 48; PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: 1000094000; BIND_BUFFER_MEMORY_INFO :: 1000157000; BIND_IMAGE_MEMORY_INFO :: 1000157001; PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: 1000083000; MEMORY_DEDICATED_REQUIREMENTS :: 1000127000; MEMORY_DEDICATED_ALLOCATE_INFO :: 1000127001; MEMORY_ALLOCATE_FLAGS_INFO :: 1000060000; DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: 1000060003; DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: 1000060004; DEVICE_GROUP_SUBMIT_INFO :: 1000060005; DEVICE_GROUP_BIND_SPARSE_INFO :: 1000060006; BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: 1000060013; BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: 1000060014; PHYSICAL_DEVICE_GROUP_PROPERTIES :: 1000070000; DEVICE_GROUP_DEVICE_CREATE_INFO :: 1000070001; BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: 1000146000; IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: 1000146001; IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: 1000146002; MEMORY_REQUIREMENTS_2 :: 1000146003; SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: 1000146004; PHYSICAL_DEVICE_FEATURES_2 :: 1000059000; PHYSICAL_DEVICE_PROPERTIES_2 :: 1000059001; FORMAT_PROPERTIES_2 :: 1000059002; IMAGE_FORMAT_PROPERTIES_2 :: 1000059003; PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: 1000059004; QUEUE_FAMILY_PROPERTIES_2 :: 1000059005; PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: 1000059006; SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: 1000059007; PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: 1000059008; PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: 1000117000; RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: 1000117001; IMAGE_VIEW_USAGE_CREATE_INFO :: 1000117002; PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: 1000117003; RENDER_PASS_MULTIVIEW_CREATE_INFO :: 1000053000; PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: 1000053001; PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: 1000053002; PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: 1000120000; PROTECTED_SUBMIT_INFO :: 1000145000; PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: 1000145001; PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: 1000145002; DEVICE_QUEUE_INFO_2 :: 1000145003; SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: 1000156000; SAMPLER_YCBCR_CONVERSION_INFO :: 1000156001; BIND_IMAGE_PLANE_MEMORY_INFO :: 1000156002; IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: 1000156003; PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: 1000156004; SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: 1000156005; DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: 1000085000; PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: 1000071000; EXTERNAL_IMAGE_FORMAT_PROPERTIES :: 1000071001; PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: 1000071002; EXTERNAL_BUFFER_PROPERTIES :: 1000071003; PHYSICAL_DEVICE_ID_PROPERTIES :: 1000071004; EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: 1000072000; EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: 1000072001; EXPORT_MEMORY_ALLOCATE_INFO :: 1000072002; PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: 1000112000; EXTERNAL_FENCE_PROPERTIES :: 1000112001; EXPORT_FENCE_CREATE_INFO :: 1000113000; EXPORT_SEMAPHORE_CREATE_INFO :: 1000077000; PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: 1000076000; EXTERNAL_SEMAPHORE_PROPERTIES :: 1000076001; PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: 1000168000; DESCRIPTOR_SET_LAYOUT_SUPPORT :: 1000168001; PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: 1000063000; PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: 49; PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: 50; PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: 51; PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: 52; IMAGE_FORMAT_LIST_CREATE_INFO :: 1000147000; ATTACHMENT_DESCRIPTION_2 :: 1000109000; ATTACHMENT_REFERENCE_2 :: 1000109001; SUBPASS_DESCRIPTION_2 :: 1000109002; SUBPASS_DEPENDENCY_2 :: 1000109003; RENDER_PASS_CREATE_INFO_2 :: 1000109004; SUBPASS_BEGIN_INFO :: 1000109005; SUBPASS_END_INFO :: 1000109006; PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: 1000177000; PHYSICAL_DEVICE_DRIVER_PROPERTIES :: 1000196000; PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: 1000180000; PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: 1000082000; PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: 1000197000; DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: 1000161000; PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: 1000161001; PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: 1000161002; DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: 1000161003; DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: 1000161004; PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: 1000199000; SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: 1000199001; PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: 1000221000; IMAGE_STENCIL_USAGE_CREATE_INFO :: 1000246000; PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: 1000130000; SAMPLER_REDUCTION_MODE_CREATE_INFO :: 1000130001; PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: 1000211000; PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: 1000108000; FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: 1000108001; FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: 1000108002; RENDER_PASS_ATTACHMENT_BEGIN_INFO :: 1000108003; PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: 1000253000; PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: 1000175000; PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: 1000241000; ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: 1000241001; ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: 1000241002; PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: 1000261000; PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: 1000207000; PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: 1000207001; SEMAPHORE_TYPE_CREATE_INFO :: 1000207002; TIMELINE_SEMAPHORE_SUBMIT_INFO :: 1000207003; SEMAPHORE_WAIT_INFO :: 1000207004; SEMAPHORE_SIGNAL_INFO :: 1000207005; PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: 1000257000; BUFFER_DEVICE_ADDRESS_INFO :: 1000244001; BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: 1000257002; MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: 1000257003; DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: 1000257004; PHYSICAL_DEVICE_VULKAN_1_3_FEATURES :: 53; PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES :: 54; PIPELINE_CREATION_FEEDBACK_CREATE_INFO :: 1000192000; PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES :: 1000215000; PHYSICAL_DEVICE_TOOL_PROPERTIES :: 1000245000; PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES :: 1000276000; PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES :: 1000295000; DEVICE_PRIVATE_DATA_CREATE_INFO :: 1000295001; PRIVATE_DATA_SLOT_CREATE_INFO :: 1000295002; PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES :: 1000297000; MEMORY_BARRIER_2 :: 1000314000; BUFFER_MEMORY_BARRIER_2 :: 1000314001; IMAGE_MEMORY_BARRIER_2 :: 1000314002; DEPENDENCY_INFO :: 1000314003; SUBMIT_INFO_2 :: 1000314004; SEMAPHORE_SUBMIT_INFO :: 1000314005; COMMAND_BUFFER_SUBMIT_INFO :: 1000314006; PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES :: 1000314007; PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES :: 1000325000; PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES :: 1000335000; COPY_BUFFER_INFO_2 :: 1000337000; COPY_IMAGE_INFO_2 :: 1000337001; COPY_BUFFER_TO_IMAGE_INFO_2 :: 1000337002; COPY_IMAGE_TO_BUFFER_INFO_2 :: 1000337003; BLIT_IMAGE_INFO_2 :: 1000337004; RESOLVE_IMAGE_INFO_2 :: 1000337005; BUFFER_COPY_2 :: 1000337006; IMAGE_COPY_2 :: 1000337007; IMAGE_BLIT_2 :: 1000337008; BUFFER_IMAGE_COPY_2 :: 1000337009; IMAGE_RESOLVE_2 :: 1000337010; PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES :: 1000225000; PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO :: 1000225001; PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES :: 1000225002; PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES :: 1000138000; PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES :: 1000138001; WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK :: 1000138002; DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO :: 1000138003; PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES :: 1000066000; RENDERING_INFO :: 1000044000; RENDERING_ATTACHMENT_INFO :: 1000044001; PIPELINE_RENDERING_CREATE_INFO :: 1000044002; PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES :: 1000044003; COMMAND_BUFFER_INHERITANCE_RENDERING_INFO :: 1000044004; PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES :: 1000280000; PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES :: 1000280001; PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES :: 1000281001; FORMAT_PROPERTIES_3 :: 1000360000; PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES :: 1000413000; PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES :: 1000413001; DEVICE_BUFFER_MEMORY_REQUIREMENTS :: 1000413002; DEVICE_IMAGE_MEMORY_REQUIREMENTS :: 1000413003; PHYSICAL_DEVICE_VULKAN_1_4_FEATURES :: 55; PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES :: 56; DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO :: 1000174000; PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES :: 1000388000; QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES :: 1000388001; PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES :: 1000416000; PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES :: 1000528000; PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES :: 1000544000; PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES :: 1000259000; PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO :: 1000259001; PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES :: 1000259002; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES :: 1000525000; PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO :: 1000190001; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES :: 1000190002; PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES :: 1000265000; MEMORY_MAP_INFO :: 1000271000; MEMORY_UNMAP_INFO :: 1000271001; PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES :: 1000470000; PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES :: 1000470001; RENDERING_AREA_INFO :: 1000470003; DEVICE_IMAGE_SUBRESOURCE_INFO :: 1000470004; SUBRESOURCE_LAYOUT_2 :: 1000338002; IMAGE_SUBRESOURCE_2 :: 1000338003; PIPELINE_CREATE_FLAGS_2_CREATE_INFO :: 1000470005; BUFFER_USAGE_FLAGS_2_CREATE_INFO :: 1000470006; PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES :: 1000080000; PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES :: 1000232000; RENDERING_ATTACHMENT_LOCATION_INFO :: 1000232001; RENDERING_INPUT_ATTACHMENT_INDEX_INFO :: 1000232002; PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES :: 1000545000; PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES :: 1000545001; BIND_MEMORY_STATUS :: 1000545002; BIND_DESCRIPTOR_SETS_INFO :: 1000545003; PUSH_CONSTANTS_INFO :: 1000545004; PUSH_DESCRIPTOR_SET_INFO :: 1000545005; PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO :: 1000545006; PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES :: 1000466000; PIPELINE_ROBUSTNESS_CREATE_INFO :: 1000068000; PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES :: 1000068001; PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES :: 1000068002; PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES :: 1000270000; PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES :: 1000270001; MEMORY_TO_IMAGE_COPY :: 1000270002; IMAGE_TO_MEMORY_COPY :: 1000270003; COPY_IMAGE_TO_MEMORY_INFO :: 1000270004; COPY_MEMORY_TO_IMAGE_INFO :: 1000270005; HOST_IMAGE_LAYOUT_TRANSITION_INFO :: 1000270006; COPY_IMAGE_TO_IMAGE_INFO :: 1000270007; SUBRESOURCE_HOST_MEMCPY_SIZE :: 1000270008; HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY :: 1000270009; SWAPCHAIN_CREATE_INFO_KHR :: 1000001000; PRESENT_INFO_KHR :: 1000001001; DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: 1000060007; IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: 1000060008; BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: 1000060009; ACQUIRE_NEXT_IMAGE_INFO_KHR :: 1000060010; DEVICE_GROUP_PRESENT_INFO_KHR :: 1000060011; DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: 1000060012; DISPLAY_MODE_CREATE_INFO_KHR :: 1000002000; DISPLAY_SURFACE_CREATE_INFO_KHR :: 1000002001; DISPLAY_PRESENT_INFO_KHR :: 1000003000; XLIB_SURFACE_CREATE_INFO_KHR :: 1000004000; XCB_SURFACE_CREATE_INFO_KHR :: 1000005000; WAYLAND_SURFACE_CREATE_INFO_KHR :: 1000006000; ANDROID_SURFACE_CREATE_INFO_KHR :: 1000008000; WIN32_SURFACE_CREATE_INFO_KHR :: 1000009000; DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: 1000011000; PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: 1000018000; DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: 1000022000; DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: 1000022001; DEBUG_MARKER_MARKER_INFO_EXT :: 1000022002; VIDEO_PROFILE_INFO_KHR :: 1000023000; VIDEO_CAPABILITIES_KHR :: 1000023001; VIDEO_PICTURE_RESOURCE_INFO_KHR :: 1000023002; VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR :: 1000023003; BIND_VIDEO_SESSION_MEMORY_INFO_KHR :: 1000023004; VIDEO_SESSION_CREATE_INFO_KHR :: 1000023005; VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000023006; VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR :: 1000023007; VIDEO_BEGIN_CODING_INFO_KHR :: 1000023008; VIDEO_END_CODING_INFO_KHR :: 1000023009; VIDEO_CODING_CONTROL_INFO_KHR :: 1000023010; VIDEO_REFERENCE_SLOT_INFO_KHR :: 1000023011; QUEUE_FAMILY_VIDEO_PROPERTIES_KHR :: 1000023012; VIDEO_PROFILE_LIST_INFO_KHR :: 1000023013; PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR :: 1000023014; VIDEO_FORMAT_PROPERTIES_KHR :: 1000023015; QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR :: 1000023016; VIDEO_DECODE_INFO_KHR :: 1000024000; VIDEO_DECODE_CAPABILITIES_KHR :: 1000024001; VIDEO_DECODE_USAGE_INFO_KHR :: 1000024002; DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: 1000026000; DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: 1000026001; DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: 1000026002; PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: 1000028000; PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: 1000028001; PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: 1000028002; CU_MODULE_CREATE_INFO_NVX :: 1000029000; CU_FUNCTION_CREATE_INFO_NVX :: 1000029001; CU_LAUNCH_INFO_NVX :: 1000029002; CU_MODULE_TEXTURING_MODE_CREATE_INFO_NVX :: 1000029004; IMAGE_VIEW_HANDLE_INFO_NVX :: 1000030000; IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: 1000030001; VIDEO_ENCODE_H264_CAPABILITIES_KHR :: 1000038000; VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000038001; VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR :: 1000038002; VIDEO_ENCODE_H264_PICTURE_INFO_KHR :: 1000038003; VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR :: 1000038004; VIDEO_ENCODE_H264_NALU_SLICE_INFO_KHR :: 1000038005; VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR :: 1000038006; VIDEO_ENCODE_H264_PROFILE_INFO_KHR :: 1000038007; VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR :: 1000038008; VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR :: 1000038009; VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR :: 1000038010; VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR :: 1000038011; VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR :: 1000038012; VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: 1000038013; VIDEO_ENCODE_H265_CAPABILITIES_KHR :: 1000039000; VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000039001; VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR :: 1000039002; VIDEO_ENCODE_H265_PICTURE_INFO_KHR :: 1000039003; VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR :: 1000039004; VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_KHR :: 1000039005; VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR :: 1000039006; VIDEO_ENCODE_H265_PROFILE_INFO_KHR :: 1000039007; VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR :: 1000039009; VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR :: 1000039010; VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR :: 1000039011; VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR :: 1000039012; VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR :: 1000039013; VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: 1000039014; VIDEO_DECODE_H264_CAPABILITIES_KHR :: 1000040000; VIDEO_DECODE_H264_PICTURE_INFO_KHR :: 1000040001; VIDEO_DECODE_H264_PROFILE_INFO_KHR :: 1000040003; VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000040004; VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR :: 1000040005; VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR :: 1000040006; TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: 1000041000; STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: 1000049000; PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: 1000050000; EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: 1000056000; EXPORT_MEMORY_ALLOCATE_INFO_NV :: 1000056001; IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: 1000057000; EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: 1000057001; WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: 1000058000; VALIDATION_FLAGS_EXT :: 1000061000; VI_SURFACE_CREATE_INFO_NN :: 1000062000; IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: 1000067000; PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: 1000067001; IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: 1000073000; EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: 1000073001; MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: 1000073002; MEMORY_GET_WIN32_HANDLE_INFO_KHR :: 1000073003; IMPORT_MEMORY_FD_INFO_KHR :: 1000074000; MEMORY_FD_PROPERTIES_KHR :: 1000074001; MEMORY_GET_FD_INFO_KHR :: 1000074002; WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: 1000075000; IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: 1000078000; EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: 1000078001; D3D12_FENCE_SUBMIT_INFO_KHR :: 1000078002; SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: 1000078003; IMPORT_SEMAPHORE_FD_INFO_KHR :: 1000079000; SEMAPHORE_GET_FD_INFO_KHR :: 1000079001; COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: 1000081000; PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: 1000081001; CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: 1000081002; PRESENT_REGIONS_KHR :: 1000084000; PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: 1000087000; SURFACE_CAPABILITIES_2_EXT :: 1000090000; DISPLAY_POWER_INFO_EXT :: 1000091000; DEVICE_EVENT_INFO_EXT :: 1000091001; DISPLAY_EVENT_INFO_EXT :: 1000091002; SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: 1000091003; PRESENT_TIMES_INFO_GOOGLE :: 1000092000; PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: 1000097000; MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX :: 1000044009; PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: 1000098000; PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: 1000099000; PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: 1000099001; PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: 1000101000; PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: 1000101001; PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: 1000102000; PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: 1000102001; HDR_METADATA_EXT :: 1000105000; PHYSICAL_DEVICE_RELAXED_LINE_RASTERIZATION_FEATURES_IMG :: 1000110000; SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: 1000111000; IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: 1000114000; EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: 1000114001; FENCE_GET_WIN32_HANDLE_INFO_KHR :: 1000114002; IMPORT_FENCE_FD_INFO_KHR :: 1000115000; FENCE_GET_FD_INFO_KHR :: 1000115001; PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: 1000116000; PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: 1000116001; QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: 1000116002; PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: 1000116003; ACQUIRE_PROFILING_LOCK_INFO_KHR :: 1000116004; PERFORMANCE_COUNTER_KHR :: 1000116005; PERFORMANCE_COUNTER_DESCRIPTION_KHR :: 1000116006; PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: 1000119000; SURFACE_CAPABILITIES_2_KHR :: 1000119001; SURFACE_FORMAT_2_KHR :: 1000119002; DISPLAY_PROPERTIES_2_KHR :: 1000121000; DISPLAY_PLANE_PROPERTIES_2_KHR :: 1000121001; DISPLAY_MODE_PROPERTIES_2_KHR :: 1000121002; DISPLAY_PLANE_INFO_2_KHR :: 1000121003; DISPLAY_PLANE_CAPABILITIES_2_KHR :: 1000121004; IOS_SURFACE_CREATE_INFO_MVK :: 1000122000; MACOS_SURFACE_CREATE_INFO_MVK :: 1000123000; DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: 1000128000; DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: 1000128001; DEBUG_UTILS_LABEL_EXT :: 1000128002; DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: 1000128003; DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: 1000128004; ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: 1000129000; ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: 1000129001; ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: 1000129002; IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: 1000129003; MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: 1000129004; EXTERNAL_FORMAT_ANDROID :: 1000129005; ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID :: 1000129006; ATTACHMENT_SAMPLE_COUNT_INFO_AMD :: 1000044008; PHYSICAL_DEVICE_SHADER_BFLOAT16_FEATURES_KHR :: 1000141000; SAMPLE_LOCATIONS_INFO_EXT :: 1000143000; RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: 1000143001; PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: 1000143002; PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: 1000143003; MULTISAMPLE_PROPERTIES_EXT :: 1000143004; PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: 1000148000; PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: 1000148001; PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: 1000148002; PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: 1000149000; WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: 1000150007; ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: 1000150000; ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: 1000150002; ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: 1000150003; ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: 1000150004; ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: 1000150005; ACCELERATION_STRUCTURE_GEOMETRY_KHR :: 1000150006; ACCELERATION_STRUCTURE_VERSION_INFO_KHR :: 1000150009; COPY_ACCELERATION_STRUCTURE_INFO_KHR :: 1000150010; COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: 1000150011; COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: 1000150012; PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR :: 1000150013; PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR :: 1000150014; ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: 1000150017; ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR :: 1000150020; PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR :: 1000347000; PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR :: 1000347001; RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: 1000150015; RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: 1000150016; RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: 1000150018; PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR :: 1000348013; PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: 1000152000; PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: 1000154000; PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: 1000154001; DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: 1000158000; PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: 1000158002; IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: 1000158003; IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: 1000158004; IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: 1000158005; DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT :: 1000158006; VALIDATION_CACHE_CREATE_INFO_EXT :: 1000160000; SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: 1000160001; PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: 1000164000; PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: 1000164001; PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: 1000164002; PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: 1000164005; RAY_TRACING_PIPELINE_CREATE_INFO_NV :: 1000165000; ACCELERATION_STRUCTURE_CREATE_INFO_NV :: 1000165001; GEOMETRY_NV :: 1000165003; GEOMETRY_TRIANGLES_NV :: 1000165004; GEOMETRY_AABB_NV :: 1000165005; BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV :: 1000165006; WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV :: 1000165007; ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: 1000165008; PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: 1000165009; RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: 1000165011; ACCELERATION_STRUCTURE_INFO_NV :: 1000165012; PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: 1000166000; PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: 1000166001; PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: 1000170000; FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: 1000170001; IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: 1000178000; MEMORY_HOST_POINTER_PROPERTIES_EXT :: 1000178001; PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: 1000178002; PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: 1000181000; PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: 1000183000; PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: 1000185000; VIDEO_DECODE_H265_CAPABILITIES_KHR :: 1000187000; VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000187001; VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR :: 1000187002; VIDEO_DECODE_H265_PROFILE_INFO_KHR :: 1000187003; VIDEO_DECODE_H265_PICTURE_INFO_KHR :: 1000187004; VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR :: 1000187005; DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: 1000189000; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: 1000190000; PRESENT_FRAME_TOKEN_GGP :: 1000191000; PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: 1000202000; PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: 1000202001; PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: 1000204000; PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: 1000205000; PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: 1000205002; CHECKPOINT_DATA_NV :: 1000206000; QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: 1000206001; QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV :: 1000314008; CHECKPOINT_DATA_2_NV :: 1000314009; PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: 1000209000; QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: 1000210000; INITIALIZE_PERFORMANCE_API_INFO_INTEL :: 1000210001; PERFORMANCE_MARKER_INFO_INTEL :: 1000210002; PERFORMANCE_STREAM_MARKER_INFO_INTEL :: 1000210003; PERFORMANCE_OVERRIDE_INFO_INTEL :: 1000210004; PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: 1000210005; PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: 1000212000; DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: 1000213000; SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: 1000213001; IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: 1000214000; METAL_SURFACE_CREATE_INFO_EXT :: 1000217000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: 1000218000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: 1000218001; RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: 1000218002; RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT :: 1000044007; FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR :: 1000226000; PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR :: 1000226001; PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR :: 1000226002; PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR :: 1000226003; PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR :: 1000226004; RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR :: 1000044006; PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: 1000227000; PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: 1000229000; PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT :: 1000234000; PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR :: 1000235000; PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: 1000237000; PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: 1000238000; MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: 1000238001; SURFACE_PROTECTED_CAPABILITIES_KHR :: 1000239000; PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: 1000240000; PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: 1000244000; BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: 1000244002; VALIDATION_FEATURES_EXT :: 1000247000; PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR :: 1000248000; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: 1000249000; COOPERATIVE_MATRIX_PROPERTIES_NV :: 1000249001; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: 1000249002; PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: 1000250000; PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: 1000250001; FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: 1000250002; PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: 1000251000; PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: 1000252000; PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT :: 1000254000; PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT :: 1000254001; PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT :: 1000254002; SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: 1000255000; SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: 1000255002; SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: 1000255001; HEADLESS_SURFACE_CREATE_INFO_EXT :: 1000256000; PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT :: 1000260000; PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT :: 1000267000; PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: 1000269000; PIPELINE_INFO_KHR :: 1000269001; PIPELINE_EXECUTABLE_PROPERTIES_KHR :: 1000269002; PIPELINE_EXECUTABLE_INFO_KHR :: 1000269003; PIPELINE_EXECUTABLE_STATISTIC_KHR :: 1000269004; PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: 1000269005; PHYSICAL_DEVICE_MAP_MEMORY_PLACED_FEATURES_EXT :: 1000272000; PHYSICAL_DEVICE_MAP_MEMORY_PLACED_PROPERTIES_EXT :: 1000272001; MEMORY_MAP_PLACED_INFO_EXT :: 1000272002; PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT :: 1000273000; SURFACE_PRESENT_MODE_EXT :: 1000274000; SURFACE_PRESENT_SCALING_CAPABILITIES_EXT :: 1000274001; SURFACE_PRESENT_MODE_COMPATIBILITY_EXT :: 1000274002; PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT :: 1000275000; SWAPCHAIN_PRESENT_FENCE_INFO_EXT :: 1000275001; SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT :: 1000275002; SWAPCHAIN_PRESENT_MODE_INFO_EXT :: 1000275003; SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT :: 1000275004; RELEASE_SWAPCHAIN_IMAGES_INFO_EXT :: 1000275005; PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: 1000277000; GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: 1000277001; GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: 1000277002; INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: 1000277003; INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: 1000277004; GENERATED_COMMANDS_INFO_NV :: 1000277005; GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: 1000277006; PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: 1000277007; PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV :: 1000278000; COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV :: 1000278001; PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: 1000281000; COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: 1000282000; RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: 1000282001; PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT :: 1000283000; DEPTH_BIAS_INFO_EXT :: 1000283001; DEPTH_BIAS_REPRESENTATION_INFO_EXT :: 1000283002; PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT :: 1000284000; DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT :: 1000284001; DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT :: 1000284002; PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: 1000286000; PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: 1000286001; SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: 1000287000; PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: 1000287001; PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: 1000287002; PIPELINE_LIBRARY_CREATE_INFO_KHR :: 1000290000; PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV :: 1000292000; SURFACE_CAPABILITIES_PRESENT_BARRIER_NV :: 1000292001; SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV :: 1000292002; PRESENT_ID_KHR :: 1000294000; PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR :: 1000294001; VIDEO_ENCODE_INFO_KHR :: 1000299000; VIDEO_ENCODE_RATE_CONTROL_INFO_KHR :: 1000299001; VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR :: 1000299002; VIDEO_ENCODE_CAPABILITIES_KHR :: 1000299003; VIDEO_ENCODE_USAGE_INFO_KHR :: 1000299004; QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR :: 1000299005; PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR :: 1000299006; VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR :: 1000299007; VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR :: 1000299008; VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR :: 1000299009; VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: 1000299010; PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: 1000300000; DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: 1000300001; PHYSICAL_DEVICE_TILE_SHADING_FEATURES_QCOM :: 1000309000; PHYSICAL_DEVICE_TILE_SHADING_PROPERTIES_QCOM :: 1000309001; RENDER_PASS_TILE_SHADING_CREATE_INFO_QCOM :: 1000309002; PER_TILE_BEGIN_INFO_QCOM :: 1000309003; PER_TILE_END_INFO_QCOM :: 1000309004; DISPATCH_TILE_INFO_QCOM :: 1000309005; QUERY_LOW_LATENCY_SUPPORT_NV :: 1000310000; EXPORT_METAL_OBJECT_CREATE_INFO_EXT :: 1000311000; EXPORT_METAL_OBJECTS_INFO_EXT :: 1000311001; EXPORT_METAL_DEVICE_INFO_EXT :: 1000311002; EXPORT_METAL_COMMAND_QUEUE_INFO_EXT :: 1000311003; EXPORT_METAL_BUFFER_INFO_EXT :: 1000311004; IMPORT_METAL_BUFFER_INFO_EXT :: 1000311005; EXPORT_METAL_TEXTURE_INFO_EXT :: 1000311006; IMPORT_METAL_TEXTURE_INFO_EXT :: 1000311007; EXPORT_METAL_IO_SURFACE_INFO_EXT :: 1000311008; IMPORT_METAL_IO_SURFACE_INFO_EXT :: 1000311009; EXPORT_METAL_SHARED_EVENT_INFO_EXT :: 1000311010; IMPORT_METAL_SHARED_EVENT_INFO_EXT :: 1000311011; PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT :: 1000316000; PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT :: 1000316001; PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT :: 1000316002; DESCRIPTOR_ADDRESS_INFO_EXT :: 1000316003; DESCRIPTOR_GET_INFO_EXT :: 1000316004; BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: 1000316005; IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: 1000316006; IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: 1000316007; SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: 1000316008; OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT :: 1000316010; DESCRIPTOR_BUFFER_BINDING_INFO_EXT :: 1000316011; DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT :: 1000316012; ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: 1000316009; PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT :: 1000320000; PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT :: 1000320001; GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT :: 1000320002; PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD :: 1000321000; PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR :: 1000203000; PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR :: 1000322000; PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR :: 1000323000; PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV :: 1000326000; PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV :: 1000326001; PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV :: 1000326002; ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV :: 1000327000; PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV :: 1000327001; ACCELERATION_STRUCTURE_MOTION_INFO_NV :: 1000327002; PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT :: 1000328000; PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT :: 1000328001; PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT :: 1000330000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT :: 1000332000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT :: 1000332001; COPY_COMMAND_TRANSFORM_INFO_QCOM :: 1000333000; PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR :: 1000336000; PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT :: 1000338000; IMAGE_COMPRESSION_CONTROL_EXT :: 1000338001; IMAGE_COMPRESSION_PROPERTIES_EXT :: 1000338004; PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT :: 1000339000; PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT :: 1000340000; PHYSICAL_DEVICE_FAULT_FEATURES_EXT :: 1000341000; DEVICE_FAULT_COUNTS_EXT :: 1000341001; DEVICE_FAULT_INFO_EXT :: 1000341002; PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT :: 1000344000; DIRECTFB_SURFACE_CREATE_INFO_EXT :: 1000346000; PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT :: 1000352000; VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT :: 1000352001; VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT :: 1000352002; PHYSICAL_DEVICE_DRM_PROPERTIES_EXT :: 1000353000; PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT :: 1000354000; DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT :: 1000354001; PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT :: 1000355000; PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT :: 1000355001; PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT :: 1000356000; PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT :: 1000361000; IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA :: 1000364000; MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA :: 1000364001; MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA :: 1000364002; IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA :: 1000365000; SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA :: 1000365001; BUFFER_COLLECTION_CREATE_INFO_FUCHSIA :: 1000366000; IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA :: 1000366001; BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA :: 1000366002; BUFFER_COLLECTION_PROPERTIES_FUCHSIA :: 1000366003; BUFFER_CONSTRAINTS_INFO_FUCHSIA :: 1000366004; BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA :: 1000366005; IMAGE_CONSTRAINTS_INFO_FUCHSIA :: 1000366006; IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA :: 1000366007; SYSMEM_COLOR_SPACE_FUCHSIA :: 1000366008; BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA :: 1000366009; SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI :: 1000369000; PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI :: 1000369001; PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI :: 1000369002; PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI :: 1000370000; MEMORY_GET_REMOTE_ADDRESS_INFO_NV :: 1000371000; PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV :: 1000371001; PIPELINE_PROPERTIES_IDENTIFIER_EXT :: 1000372000; PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT :: 1000372001; PHYSICAL_DEVICE_FRAME_BOUNDARY_FEATURES_EXT :: 1000375000; FRAME_BOUNDARY_EXT :: 1000375001; PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT :: 1000376000; SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT :: 1000376001; MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT :: 1000376002; PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT :: 1000377000; SCREEN_SURFACE_CREATE_INFO_QNX :: 1000378000; PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT :: 1000381000; PIPELINE_COLOR_WRITE_CREATE_INFO_EXT :: 1000381001; PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT :: 1000382000; PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR :: 1000386000; PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT :: 1000391000; IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT :: 1000391001; PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT :: 1000392000; PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT :: 1000392001; PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT :: 1000393000; PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT :: 1000395000; PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT :: 1000395001; MICROMAP_BUILD_INFO_EXT :: 1000396000; MICROMAP_VERSION_INFO_EXT :: 1000396001; COPY_MICROMAP_INFO_EXT :: 1000396002; COPY_MICROMAP_TO_MEMORY_INFO_EXT :: 1000396003; COPY_MEMORY_TO_MICROMAP_INFO_EXT :: 1000396004; PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT :: 1000396005; PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT :: 1000396006; MICROMAP_CREATE_INFO_EXT :: 1000396007; MICROMAP_BUILD_SIZES_INFO_EXT :: 1000396008; ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT :: 1000396009; PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI :: 1000404000; PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI :: 1000404001; PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI :: 1000404002; PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT :: 1000411000; SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT :: 1000411001; PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT :: 1000412000; PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM :: 1000415000; DEVICE_QUEUE_SHADER_CORE_CONTROL_CREATE_INFO_ARM :: 1000417000; PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM :: 1000417001; PHYSICAL_DEVICE_SCHEDULING_CONTROLS_PROPERTIES_ARM :: 1000417002; PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT :: 1000418000; IMAGE_VIEW_SLICED_CREATE_INFO_EXT :: 1000418001; PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE :: 1000420000; DESCRIPTOR_SET_BINDING_REFERENCE_VALVE :: 1000420001; DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE :: 1000420002; PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT :: 1000422000; PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM :: 1000424000; PHYSICAL_DEVICE_RENDER_PASS_STRIPED_PROPERTIES_ARM :: 1000424001; RENDER_PASS_STRIPE_BEGIN_INFO_ARM :: 1000424002; RENDER_PASS_STRIPE_INFO_ARM :: 1000424003; RENDER_PASS_STRIPE_SUBMIT_INFO_ARM :: 1000424004; PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV :: 1000426000; PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV :: 1000426001; PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV :: 1000427000; PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV :: 1000427001; PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV :: 1000428000; COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV :: 1000428001; PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV :: 1000428002; PHYSICAL_DEVICE_RAY_TRACING_LINEAR_SWEPT_SPHERES_FEATURES_NV :: 1000429008; ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV :: 1000429009; ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV :: 1000429010; PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV :: 1000430000; PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR :: 1000434000; PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT :: 1000437000; PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM :: 1000440000; PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM :: 1000440001; IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM :: 1000440002; PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT :: 1000451000; PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT :: 1000451001; EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT :: 1000453000; PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT :: 1000455000; PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT :: 1000455001; PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT :: 1000458000; RENDER_PASS_CREATION_CONTROL_EXT :: 1000458001; RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT :: 1000458002; RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT :: 1000458003; DIRECT_DRIVER_LOADING_INFO_LUNARG :: 1000459000; DIRECT_DRIVER_LOADING_LIST_LUNARG :: 1000459001; PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT :: 1000462000; PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT :: 1000462001; PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT :: 1000462002; SHADER_MODULE_IDENTIFIER_EXT :: 1000462003; PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT :: 1000342000; PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV :: 1000464000; PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV :: 1000464001; OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV :: 1000464002; OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV :: 1000464003; OPTICAL_FLOW_SESSION_CREATE_INFO_NV :: 1000464004; OPTICAL_FLOW_EXECUTE_INFO_NV :: 1000464005; OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV :: 1000464010; PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT :: 1000465000; PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_FEATURES_ANDROID :: 1000468000; PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID :: 1000468001; ANDROID_HARDWARE_BUFFER_FORMAT_RESOLVE_PROPERTIES_ANDROID :: 1000468002; PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD :: 1000476000; ANTI_LAG_DATA_AMD :: 1000476001; ANTI_LAG_PRESENTATION_INFO_AMD :: 1000476002; PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR :: 1000481000; PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT :: 1000482000; PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT :: 1000482001; SHADER_CREATE_INFO_EXT :: 1000482002; PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR :: 1000483000; PIPELINE_BINARY_CREATE_INFO_KHR :: 1000483001; PIPELINE_BINARY_INFO_KHR :: 1000483002; PIPELINE_BINARY_KEY_KHR :: 1000483003; PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR :: 1000483004; RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR :: 1000483005; PIPELINE_BINARY_DATA_INFO_KHR :: 1000483006; PIPELINE_CREATE_INFO_KHR :: 1000483007; DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR :: 1000483008; PIPELINE_BINARY_HANDLES_INFO_KHR :: 1000483009; PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM :: 1000484000; TILE_PROPERTIES_QCOM :: 1000484001; PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC :: 1000485000; AMIGO_PROFILING_SUBMIT_INFO_SEC :: 1000485001; PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM :: 1000488000; PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV :: 1000490000; PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV :: 1000490001; PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV :: 1000491000; PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV :: 1000491001; COOPERATIVE_VECTOR_PROPERTIES_NV :: 1000491002; CONVERT_COOPERATIVE_VECTOR_MATRIX_INFO_NV :: 1000491004; PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV :: 1000492000; PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV :: 1000492001; PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT :: 1000351000; MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT :: 1000351002; PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT :: 1000495000; PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT :: 1000495001; LAYER_SETTINGS_CREATE_INFO_EXT :: 1000496000; PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM :: 1000497000; PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM :: 1000497001; PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT :: 1000498000; PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT :: 1000499000; LATENCY_SLEEP_MODE_INFO_NV :: 1000505000; LATENCY_SLEEP_INFO_NV :: 1000505001; SET_LATENCY_MARKER_INFO_NV :: 1000505002; GET_LATENCY_MARKER_INFO_NV :: 1000505003; LATENCY_TIMINGS_FRAME_REPORT_NV :: 1000505004; LATENCY_SUBMISSION_PRESENT_ID_NV :: 1000505005; OUT_OF_BAND_QUEUE_TYPE_INFO_NV :: 1000505006; SWAPCHAIN_LATENCY_CREATE_INFO_NV :: 1000505007; LATENCY_SURFACE_CAPABILITIES_NV :: 1000505008; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR :: 1000506000; COOPERATIVE_MATRIX_PROPERTIES_KHR :: 1000506001; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR :: 1000506002; PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM :: 1000510000; MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM :: 1000510001; PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR :: 1000201000; PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR :: 1000511000; VIDEO_DECODE_AV1_CAPABILITIES_KHR :: 1000512000; VIDEO_DECODE_AV1_PICTURE_INFO_KHR :: 1000512001; VIDEO_DECODE_AV1_PROFILE_INFO_KHR :: 1000512003; VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000512004; VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR :: 1000512005; VIDEO_ENCODE_AV1_CAPABILITIES_KHR :: 1000513000; VIDEO_ENCODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000513001; VIDEO_ENCODE_AV1_PICTURE_INFO_KHR :: 1000513002; VIDEO_ENCODE_AV1_DPB_SLOT_INFO_KHR :: 1000513003; PHYSICAL_DEVICE_VIDEO_ENCODE_AV1_FEATURES_KHR :: 1000513004; VIDEO_ENCODE_AV1_PROFILE_INFO_KHR :: 1000513005; VIDEO_ENCODE_AV1_RATE_CONTROL_INFO_KHR :: 1000513006; VIDEO_ENCODE_AV1_RATE_CONTROL_LAYER_INFO_KHR :: 1000513007; VIDEO_ENCODE_AV1_QUALITY_LEVEL_PROPERTIES_KHR :: 1000513008; VIDEO_ENCODE_AV1_SESSION_CREATE_INFO_KHR :: 1000513009; VIDEO_ENCODE_AV1_GOP_REMAINING_FRAME_INFO_KHR :: 1000513010; PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR :: 1000515000; VIDEO_INLINE_QUERY_INFO_KHR :: 1000515001; PHYSICAL_DEVICE_PER_STAGE_DESCRIPTOR_SET_FEATURES_NV :: 1000516000; PHYSICAL_DEVICE_IMAGE_PROCESSING_2_FEATURES_QCOM :: 1000518000; PHYSICAL_DEVICE_IMAGE_PROCESSING_2_PROPERTIES_QCOM :: 1000518001; SAMPLER_BLOCK_MATCH_WINDOW_CREATE_INFO_QCOM :: 1000518002; SAMPLER_CUBIC_WEIGHTS_CREATE_INFO_QCOM :: 1000519000; PHYSICAL_DEVICE_CUBIC_WEIGHTS_FEATURES_QCOM :: 1000519001; BLIT_IMAGE_CUBIC_WEIGHTS_INFO_QCOM :: 1000519002; PHYSICAL_DEVICE_YCBCR_DEGAMMA_FEATURES_QCOM :: 1000520000; SAMPLER_YCBCR_CONVERSION_YCBCR_DEGAMMA_CREATE_INFO_QCOM :: 1000520001; PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM :: 1000521000; PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT :: 1000524000; SCREEN_BUFFER_PROPERTIES_QNX :: 1000529000; SCREEN_BUFFER_FORMAT_PROPERTIES_QNX :: 1000529001; IMPORT_SCREEN_BUFFER_INFO_QNX :: 1000529002; EXTERNAL_FORMAT_QNX :: 1000529003; PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX :: 1000529004; PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT :: 1000530000; CALIBRATED_TIMESTAMP_INFO_KHR :: 1000184000; SET_DESCRIPTOR_BUFFER_OFFSETS_INFO_EXT :: 1000545007; BIND_DESCRIPTOR_BUFFER_EMBEDDED_SAMPLERS_INFO_EXT :: 1000545008; PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV :: 1000546000; PHYSICAL_DEVICE_TILE_MEMORY_HEAP_FEATURES_QCOM :: 1000547000; PHYSICAL_DEVICE_TILE_MEMORY_HEAP_PROPERTIES_QCOM :: 1000547001; TILE_MEMORY_REQUIREMENTS_QCOM :: 1000547002; TILE_MEMORY_BIND_INFO_QCOM :: 1000547003; TILE_MEMORY_SIZE_INFO_QCOM :: 1000547004; DISPLAY_SURFACE_STEREO_CREATE_INFO_NV :: 1000551000; DISPLAY_MODE_STEREO_PROPERTIES_NV :: 1000551001; VIDEO_ENCODE_QUANTIZATION_MAP_CAPABILITIES_KHR :: 1000553000; VIDEO_FORMAT_QUANTIZATION_MAP_PROPERTIES_KHR :: 1000553001; VIDEO_ENCODE_QUANTIZATION_MAP_INFO_KHR :: 1000553002; VIDEO_ENCODE_QUANTIZATION_MAP_SESSION_PARAMETERS_CREATE_INFO_KHR :: 1000553005; PHYSICAL_DEVICE_VIDEO_ENCODE_QUANTIZATION_MAP_FEATURES_KHR :: 1000553009; VIDEO_ENCODE_H264_QUANTIZATION_MAP_CAPABILITIES_KHR :: 1000553003; VIDEO_ENCODE_H265_QUANTIZATION_MAP_CAPABILITIES_KHR :: 1000553004; VIDEO_FORMAT_H265_QUANTIZATION_MAP_PROPERTIES_KHR :: 1000553006; VIDEO_ENCODE_AV1_QUANTIZATION_MAP_CAPABILITIES_KHR :: 1000553007; VIDEO_FORMAT_AV1_QUANTIZATION_MAP_PROPERTIES_KHR :: 1000553008; PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV :: 1000555000; EXTERNAL_COMPUTE_QUEUE_DEVICE_CREATE_INFO_NV :: 1000556000; EXTERNAL_COMPUTE_QUEUE_CREATE_INFO_NV :: 1000556001; EXTERNAL_COMPUTE_QUEUE_DATA_PARAMS_NV :: 1000556002; PHYSICAL_DEVICE_EXTERNAL_COMPUTE_QUEUE_PROPERTIES_NV :: 1000556003; PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR :: 1000558000; PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV :: 1000559000; PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR :: 1000562000; PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR :: 1000562001; PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR :: 1000562002; PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_KHR :: 1000562003; PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR :: 1000562004; PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT16_VECTOR_FEATURES_NV :: 1000563000; PHYSICAL_DEVICE_SHADER_REPLICATED_COMPOSITES_FEATURES_EXT :: 1000564000; PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV :: 1000568000; PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_FEATURES_NV :: 1000569000; PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_PROPERTIES_NV :: 1000569001; CLUSTER_ACCELERATION_STRUCTURE_CLUSTERS_BOTTOM_LEVEL_INPUT_NV :: 1000569002; CLUSTER_ACCELERATION_STRUCTURE_TRIANGLE_CLUSTER_INPUT_NV :: 1000569003; CLUSTER_ACCELERATION_STRUCTURE_MOVE_OBJECTS_INPUT_NV :: 1000569004; CLUSTER_ACCELERATION_STRUCTURE_INPUT_INFO_NV :: 1000569005; CLUSTER_ACCELERATION_STRUCTURE_COMMANDS_INFO_NV :: 1000569006; RAY_TRACING_PIPELINE_CLUSTER_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: 1000569007; PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_FEATURES_NV :: 1000570000; PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_PROPERTIES_NV :: 1000570001; WRITE_DESCRIPTOR_SET_PARTITIONED_ACCELERATION_STRUCTURE_NV :: 1000570002; PARTITIONED_ACCELERATION_STRUCTURE_INSTANCES_INPUT_NV :: 1000570003; BUILD_PARTITIONED_ACCELERATION_STRUCTURE_INFO_NV :: 1000570004; PARTITIONED_ACCELERATION_STRUCTURE_FLAGS_NV :: 1000570005; PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT :: 1000572000; PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT :: 1000572001; GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_EXT :: 1000572002; INDIRECT_EXECUTION_SET_CREATE_INFO_EXT :: 1000572003; GENERATED_COMMANDS_INFO_EXT :: 1000572004; INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_EXT :: 1000572006; INDIRECT_COMMANDS_LAYOUT_TOKEN_EXT :: 1000572007; WRITE_INDIRECT_EXECUTION_SET_PIPELINE_EXT :: 1000572008; WRITE_INDIRECT_EXECUTION_SET_SHADER_EXT :: 1000572009; INDIRECT_EXECUTION_SET_PIPELINE_INFO_EXT :: 1000572010; INDIRECT_EXECUTION_SET_SHADER_INFO_EXT :: 1000572011; INDIRECT_EXECUTION_SET_SHADER_LAYOUT_INFO_EXT :: 1000572012; GENERATED_COMMANDS_PIPELINE_INFO_EXT :: 1000572013; GENERATED_COMMANDS_SHADER_INFO_EXT :: 1000572014; PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR :: 1000574000; MEMORY_BARRIER_ACCESS_FLAGS_3_KHR :: 1000574002; PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA :: 1000575000; PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA :: 1000575001; IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA :: 1000575002; PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT :: 1000582000; PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT :: 1000582001; PHYSICAL_DEVICE_VIDEO_MAINTENANCE_2_FEATURES_KHR :: 1000586000; VIDEO_DECODE_H264_INLINE_SESSION_PARAMETERS_INFO_KHR :: 1000586001; VIDEO_DECODE_H265_INLINE_SESSION_PARAMETERS_INFO_KHR :: 1000586002; VIDEO_DECODE_AV1_INLINE_SESSION_PARAMETERS_INFO_KHR :: 1000586003; PHYSICAL_DEVICE_HDR_VIVID_FEATURES_HUAWEI :: 1000590000; HDR_VIVID_DYNAMIC_METADATA_HUAWEI :: 1000590001; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_FEATURES_NV :: 1000593000; COOPERATIVE_MATRIX_FLEXIBLE_DIMENSIONS_PROPERTIES_NV :: 1000593001; PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_PROPERTIES_NV :: 1000593002; PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM :: 1000596000; IMPORT_MEMORY_METAL_HANDLE_INFO_EXT :: 1000602000; MEMORY_METAL_HANDLE_PROPERTIES_EXT :: 1000602001; MEMORY_GET_METAL_HANDLE_INFO_EXT :: 1000602002; PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_KHR :: 1000421000; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_ROBUSTNESS_FEATURES_EXT :: 1000608000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_EXT :: 1000425000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT :: 1000425001; RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT :: 1000425002; RENDERING_END_INFO_EXT :: 1000619003; PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES :: 1000120000; PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES :: 1000063000; DEBUG_REPORT_CREATE_INFO_EXT :: 1000011000; RENDERING_INFO_KHR :: 1000044000; RENDERING_ATTACHMENT_INFO_KHR :: 1000044001; PIPELINE_RENDERING_CREATE_INFO_KHR :: 1000044002; PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR :: 1000044003; COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR :: 1000044004; RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR :: 1000053000; PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR :: 1000053001; PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR :: 1000053002; PHYSICAL_DEVICE_FEATURES_2_KHR :: 1000059000; PHYSICAL_DEVICE_PROPERTIES_2_KHR :: 1000059001; FORMAT_PROPERTIES_2_KHR :: 1000059002; IMAGE_FORMAT_PROPERTIES_2_KHR :: 1000059003; PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR :: 1000059004; QUEUE_FAMILY_PROPERTIES_2_KHR :: 1000059005; PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR :: 1000059006; SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR :: 1000059007; PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR :: 1000059008; MEMORY_ALLOCATE_FLAGS_INFO_KHR :: 1000060000; DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR :: 1000060003; DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR :: 1000060004; DEVICE_GROUP_SUBMIT_INFO_KHR :: 1000060005; DEVICE_GROUP_BIND_SPARSE_INFO_KHR :: 1000060006; BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR :: 1000060013; BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR :: 1000060014; PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: 1000066000; PIPELINE_ROBUSTNESS_CREATE_INFO_EXT :: 1000068000; PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT :: 1000068001; PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT :: 1000068002; PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR :: 1000070000; DEVICE_GROUP_DEVICE_CREATE_INFO_KHR :: 1000070001; PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR :: 1000071000; EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR :: 1000071001; PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR :: 1000071002; EXTERNAL_BUFFER_PROPERTIES_KHR :: 1000071003; PHYSICAL_DEVICE_ID_PROPERTIES_KHR :: 1000071004; EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR :: 1000072000; EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR :: 1000072001; EXPORT_MEMORY_ALLOCATE_INFO_KHR :: 1000072002; PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR :: 1000076000; EXTERNAL_SEMAPHORE_PROPERTIES_KHR :: 1000076001; EXPORT_SEMAPHORE_CREATE_INFO_KHR :: 1000077000; PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: 1000080000; PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR :: 1000082000; PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR :: 1000082000; PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR :: 1000083000; DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR :: 1000085000; SURFACE_CAPABILITIES2_EXT :: 1000090000; PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR :: 1000108000; FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR :: 1000108001; FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR :: 1000108002; RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR :: 1000108003; ATTACHMENT_DESCRIPTION_2_KHR :: 1000109000; ATTACHMENT_REFERENCE_2_KHR :: 1000109001; SUBPASS_DESCRIPTION_2_KHR :: 1000109002; SUBPASS_DEPENDENCY_2_KHR :: 1000109003; RENDER_PASS_CREATE_INFO_2_KHR :: 1000109004; SUBPASS_BEGIN_INFO_KHR :: 1000109005; SUBPASS_END_INFO_KHR :: 1000109006; PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR :: 1000112000; EXTERNAL_FENCE_PROPERTIES_KHR :: 1000112001; EXPORT_FENCE_CREATE_INFO_KHR :: 1000113000; PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR :: 1000117000; RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR :: 1000117001; IMAGE_VIEW_USAGE_CREATE_INFO_KHR :: 1000117002; PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR :: 1000117003; PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR :: 1000120000; PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR :: 1000120000; MEMORY_DEDICATED_REQUIREMENTS_KHR :: 1000127000; MEMORY_DEDICATED_ALLOCATE_INFO_KHR :: 1000127001; PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT :: 1000130000; SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT :: 1000130001; PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: 1000138000; PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: 1000138001; WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: 1000138002; DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: 1000138003; BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR :: 1000146000; IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR :: 1000146001; IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR :: 1000146002; MEMORY_REQUIREMENTS_2_KHR :: 1000146003; SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR :: 1000146004; IMAGE_FORMAT_LIST_CREATE_INFO_KHR :: 1000147000; ATTACHMENT_SAMPLE_COUNT_INFO_NV :: 1000044008; SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR :: 1000156000; SAMPLER_YCBCR_CONVERSION_INFO_KHR :: 1000156001; BIND_IMAGE_PLANE_MEMORY_INFO_KHR :: 1000156002; IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR :: 1000156003; PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR :: 1000156004; SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR :: 1000156005; BIND_BUFFER_MEMORY_INFO_KHR :: 1000157000; BIND_IMAGE_MEMORY_INFO_KHR :: 1000157001; DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT :: 1000161000; PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT :: 1000161001; PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT :: 1000161002; DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT :: 1000161003; DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT :: 1000161004; PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR :: 1000168000; DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR :: 1000168001; DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: 1000174000; PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR :: 1000175000; PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR :: 1000177000; PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR :: 1000180000; CALIBRATED_TIMESTAMP_INFO_EXT :: 1000184000; DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR :: 1000174000; PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR :: 1000388000; QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR :: 1000388001; PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: 1000190001; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: 1000190002; PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: 1000192000; PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR :: 1000196000; PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR :: 1000197000; PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR :: 1000199000; SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR :: 1000199001; PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: 1000201000; PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: 1000203000; PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR :: 1000207000; PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR :: 1000207001; SEMAPHORE_TYPE_CREATE_INFO_KHR :: 1000207002; TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR :: 1000207003; SEMAPHORE_WAIT_INFO_KHR :: 1000207004; SEMAPHORE_SIGNAL_INFO_KHR :: 1000207005; QUERY_POOL_CREATE_INFO_INTEL :: 1000210000; PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR :: 1000211000; PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR :: 1000215000; PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT :: 1000221000; PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: 1000225000; PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: 1000225001; PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: 1000225002; PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES_KHR :: 1000232000; RENDERING_ATTACHMENT_LOCATION_INFO_KHR :: 1000232001; RENDERING_INPUT_ATTACHMENT_INDEX_INFO_KHR :: 1000232002; PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR :: 1000241000; ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR :: 1000241001; ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR :: 1000241002; PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT :: 1000244000; BUFFER_DEVICE_ADDRESS_INFO_EXT :: 1000244001; PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: 1000245000; IMAGE_STENCIL_USAGE_CREATE_INFO_EXT :: 1000246000; PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR :: 1000253000; PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR :: 1000257000; BUFFER_DEVICE_ADDRESS_INFO_KHR :: 1000244001; BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR :: 1000257002; MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR :: 1000257003; DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR :: 1000257004; PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: 1000259000; PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: 1000259001; PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: 1000259002; PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT :: 1000261000; PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: 1000265000; PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT :: 1000270000; PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT :: 1000270001; MEMORY_TO_IMAGE_COPY_EXT :: 1000270002; IMAGE_TO_MEMORY_COPY_EXT :: 1000270003; COPY_IMAGE_TO_MEMORY_INFO_EXT :: 1000270004; COPY_MEMORY_TO_IMAGE_INFO_EXT :: 1000270005; HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT :: 1000270006; COPY_IMAGE_TO_IMAGE_INFO_EXT :: 1000270007; SUBRESOURCE_HOST_MEMCPY_SIZE_EXT :: 1000270008; HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT :: 1000270009; MEMORY_MAP_INFO_KHR :: 1000271000; MEMORY_UNMAP_INFO_KHR :: 1000271001; PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: 1000276000; PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR :: 1000280000; PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR :: 1000280001; PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: 1000281001; PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: 1000295000; DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: 1000295001; PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: 1000295002; PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: 1000297000; MEMORY_BARRIER_2_KHR :: 1000314000; BUFFER_MEMORY_BARRIER_2_KHR :: 1000314001; IMAGE_MEMORY_BARRIER_2_KHR :: 1000314002; DEPENDENCY_INFO_KHR :: 1000314003; SUBMIT_INFO_2_KHR :: 1000314004; SEMAPHORE_SUBMIT_INFO_KHR :: 1000314005; COMMAND_BUFFER_SUBMIT_INFO_KHR :: 1000314006; PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR :: 1000314007; PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR :: 1000325000; PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT :: 1000335000; COPY_BUFFER_INFO_2_KHR :: 1000337000; COPY_IMAGE_INFO_2_KHR :: 1000337001; COPY_BUFFER_TO_IMAGE_INFO_2_KHR :: 1000337002; COPY_IMAGE_TO_BUFFER_INFO_2_KHR :: 1000337003; BLIT_IMAGE_INFO_2_KHR :: 1000337004; RESOLVE_IMAGE_INFO_2_KHR :: 1000337005; BUFFER_COPY_2_KHR :: 1000337006; IMAGE_COPY_2_KHR :: 1000337007; IMAGE_BLIT_2_KHR :: 1000337008; BUFFER_IMAGE_COPY_2_KHR :: 1000337009; IMAGE_RESOLVE_2_KHR :: 1000337010; SUBRESOURCE_LAYOUT_2_EXT :: 1000338002; IMAGE_SUBRESOURCE_2_EXT :: 1000338003; PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM :: 1000342000; PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE :: 1000351000; MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE :: 1000351002; FORMAT_PROPERTIES_3_KHR :: 1000360000; PIPELINE_INFO_EXT :: 1000269001; PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT :: 1000388000; QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT :: 1000388001; PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR :: 1000413000; PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR :: 1000413001; DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR :: 1000413002; DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR :: 1000413003; PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES_KHR :: 1000416000; PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT :: 1000421000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM :: 1000425000; PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM :: 1000425001; SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM :: 1000425002; PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT :: 1000466000; PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR :: 1000470000; PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR :: 1000470001; RENDERING_AREA_INFO_KHR :: 1000470003; DEVICE_IMAGE_SUBRESOURCE_INFO_KHR :: 1000470004; SUBRESOURCE_LAYOUT_2_KHR :: 1000338002; IMAGE_SUBRESOURCE_2_KHR :: 1000338003; PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR :: 1000470005; BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR :: 1000470006; SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: 1000225001; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR :: 1000525000; PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR :: 1000190001; PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR :: 1000190002; PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES_KHR :: 1000528000; PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR :: 1000265000; PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR :: 1000259000; PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR :: 1000259001; PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR :: 1000259002; PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES_KHR :: 1000544000; PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES_KHR :: 1000545000; PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES_KHR :: 1000545001; BIND_MEMORY_STATUS_KHR :: 1000545002; BIND_DESCRIPTOR_SETS_INFO_KHR :: 1000545003; PUSH_CONSTANTS_INFO_KHR :: 1000545004; PUSH_DESCRIPTOR_SET_INFO_KHR :: 1000545005; PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO_KHR :: 1000545006; MAX_ENUM :: 2147483647; VK_STRUCTURE_TYPE_APPLICATION_INFO :: APPLICATION_INFO; VK_STRUCTURE_TYPE_INSTANCE_CREATE_INFO :: INSTANCE_CREATE_INFO; VK_STRUCTURE_TYPE_DEVICE_QUEUE_CREATE_INFO :: DEVICE_QUEUE_CREATE_INFO; VK_STRUCTURE_TYPE_DEVICE_CREATE_INFO :: DEVICE_CREATE_INFO; VK_STRUCTURE_TYPE_SUBMIT_INFO :: SUBMIT_INFO; VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_INFO :: MEMORY_ALLOCATE_INFO; VK_STRUCTURE_TYPE_MAPPED_MEMORY_RANGE :: MAPPED_MEMORY_RANGE; VK_STRUCTURE_TYPE_BIND_SPARSE_INFO :: BIND_SPARSE_INFO; VK_STRUCTURE_TYPE_FENCE_CREATE_INFO :: FENCE_CREATE_INFO; VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO :: SEMAPHORE_CREATE_INFO; VK_STRUCTURE_TYPE_EVENT_CREATE_INFO :: EVENT_CREATE_INFO; VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO :: QUERY_POOL_CREATE_INFO; VK_STRUCTURE_TYPE_BUFFER_CREATE_INFO :: BUFFER_CREATE_INFO; VK_STRUCTURE_TYPE_BUFFER_VIEW_CREATE_INFO :: BUFFER_VIEW_CREATE_INFO; VK_STRUCTURE_TYPE_IMAGE_CREATE_INFO :: IMAGE_CREATE_INFO; VK_STRUCTURE_TYPE_IMAGE_VIEW_CREATE_INFO :: IMAGE_VIEW_CREATE_INFO; VK_STRUCTURE_TYPE_SHADER_MODULE_CREATE_INFO :: SHADER_MODULE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_CACHE_CREATE_INFO :: PIPELINE_CACHE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_CREATE_INFO :: PIPELINE_SHADER_STAGE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO :: PIPELINE_VERTEX_INPUT_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO :: PIPELINE_INPUT_ASSEMBLY_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_STATE_CREATE_INFO :: PIPELINE_TESSELLATION_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_STATE_CREATE_INFO :: PIPELINE_VIEWPORT_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_CREATE_INFO :: PIPELINE_RASTERIZATION_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_MULTISAMPLE_STATE_CREATE_INFO :: PIPELINE_MULTISAMPLE_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO :: PIPELINE_DEPTH_STENCIL_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_STATE_CREATE_INFO :: PIPELINE_COLOR_BLEND_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_DYNAMIC_STATE_CREATE_INFO :: PIPELINE_DYNAMIC_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_CREATE_INFO :: GRAPHICS_PIPELINE_CREATE_INFO; VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_CREATE_INFO :: COMPUTE_PIPELINE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_LAYOUT_CREATE_INFO :: PIPELINE_LAYOUT_CREATE_INFO; VK_STRUCTURE_TYPE_SAMPLER_CREATE_INFO :: SAMPLER_CREATE_INFO; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_CREATE_INFO :: DESCRIPTOR_SET_LAYOUT_CREATE_INFO; VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_CREATE_INFO :: DESCRIPTOR_POOL_CREATE_INFO; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_ALLOCATE_INFO :: DESCRIPTOR_SET_ALLOCATE_INFO; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET :: WRITE_DESCRIPTOR_SET; VK_STRUCTURE_TYPE_COPY_DESCRIPTOR_SET :: COPY_DESCRIPTOR_SET; VK_STRUCTURE_TYPE_FRAMEBUFFER_CREATE_INFO :: FRAMEBUFFER_CREATE_INFO; VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO :: RENDER_PASS_CREATE_INFO; VK_STRUCTURE_TYPE_COMMAND_POOL_CREATE_INFO :: COMMAND_POOL_CREATE_INFO; VK_STRUCTURE_TYPE_COMMAND_BUFFER_ALLOCATE_INFO :: COMMAND_BUFFER_ALLOCATE_INFO; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_INFO :: COMMAND_BUFFER_INHERITANCE_INFO; VK_STRUCTURE_TYPE_COMMAND_BUFFER_BEGIN_INFO :: COMMAND_BUFFER_BEGIN_INFO; VK_STRUCTURE_TYPE_RENDER_PASS_BEGIN_INFO :: RENDER_PASS_BEGIN_INFO; VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER :: BUFFER_MEMORY_BARRIER; VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER :: IMAGE_MEMORY_BARRIER; VK_STRUCTURE_TYPE_MEMORY_BARRIER :: MEMORY_BARRIER; VK_STRUCTURE_TYPE_LOADER_INSTANCE_CREATE_INFO :: LOADER_INSTANCE_CREATE_INFO; VK_STRUCTURE_TYPE_LOADER_DEVICE_CREATE_INFO :: LOADER_DEVICE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_PROPERTIES :: PHYSICAL_DEVICE_SUBGROUP_PROPERTIES; VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO :: BIND_BUFFER_MEMORY_INFO; VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO :: BIND_IMAGE_MEMORY_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES :: PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES; VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS :: MEMORY_DEDICATED_REQUIREMENTS; VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO :: MEMORY_DEDICATED_ALLOCATE_INFO; VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO :: MEMORY_ALLOCATE_FLAGS_INFO; VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO :: DEVICE_GROUP_RENDER_PASS_BEGIN_INFO; VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO :: DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO; VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO :: DEVICE_GROUP_SUBMIT_INFO; VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO :: DEVICE_GROUP_BIND_SPARSE_INFO; VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO :: BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO; VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO :: BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES :: PHYSICAL_DEVICE_GROUP_PROPERTIES; VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO :: DEVICE_GROUP_DEVICE_CREATE_INFO; VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2 :: BUFFER_MEMORY_REQUIREMENTS_INFO_2; VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2 :: IMAGE_MEMORY_REQUIREMENTS_INFO_2; VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2 :: IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2; VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2 :: MEMORY_REQUIREMENTS_2; VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2 :: SPARSE_IMAGE_MEMORY_REQUIREMENTS_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2 :: PHYSICAL_DEVICE_FEATURES_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2 :: PHYSICAL_DEVICE_PROPERTIES_2; VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2 :: FORMAT_PROPERTIES_2; VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2 :: IMAGE_FORMAT_PROPERTIES_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2 :: PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2; VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2 :: QUEUE_FAMILY_PROPERTIES_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2 :: PHYSICAL_DEVICE_MEMORY_PROPERTIES_2; VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2 :: SPARSE_IMAGE_FORMAT_PROPERTIES_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2 :: PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES :: PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES; VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO :: RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO; VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO :: IMAGE_VIEW_USAGE_CREATE_INFO; VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO :: PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO :: RENDER_PASS_MULTIVIEW_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES :: PHYSICAL_DEVICE_MULTIVIEW_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES :: PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES :: PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES; VK_STRUCTURE_TYPE_PROTECTED_SUBMIT_INFO :: PROTECTED_SUBMIT_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES :: PHYSICAL_DEVICE_PROTECTED_MEMORY_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES :: PHYSICAL_DEVICE_PROTECTED_MEMORY_PROPERTIES; VK_STRUCTURE_TYPE_DEVICE_QUEUE_INFO_2 :: DEVICE_QUEUE_INFO_2; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO :: SAMPLER_YCBCR_CONVERSION_CREATE_INFO; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO :: SAMPLER_YCBCR_CONVERSION_INFO; VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO :: BIND_IMAGE_PLANE_MEMORY_INFO; VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO :: IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES :: PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES :: SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES; VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO :: DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO :: PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO; VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES :: EXTERNAL_IMAGE_FORMAT_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO :: PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO; VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES :: EXTERNAL_BUFFER_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES :: PHYSICAL_DEVICE_ID_PROPERTIES; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO :: EXTERNAL_MEMORY_BUFFER_CREATE_INFO; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO :: EXTERNAL_MEMORY_IMAGE_CREATE_INFO; VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO :: EXPORT_MEMORY_ALLOCATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO :: PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO; VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES :: EXTERNAL_FENCE_PROPERTIES; VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO :: EXPORT_FENCE_CREATE_INFO; VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO :: EXPORT_SEMAPHORE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO :: PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO; VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES :: EXTERNAL_SEMAPHORE_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES :: PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT :: DESCRIPTOR_SET_LAYOUT_SUPPORT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES :: PHYSICAL_DEVICE_SHADER_DRAW_PARAMETERS_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_FEATURES :: PHYSICAL_DEVICE_VULKAN_1_1_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES :: PHYSICAL_DEVICE_VULKAN_1_1_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_FEATURES :: PHYSICAL_DEVICE_VULKAN_1_2_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES :: PHYSICAL_DEVICE_VULKAN_1_2_PROPERTIES; VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO :: IMAGE_FORMAT_LIST_CREATE_INFO; VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2 :: ATTACHMENT_DESCRIPTION_2; VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2 :: ATTACHMENT_REFERENCE_2; VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2 :: SUBPASS_DESCRIPTION_2; VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2 :: SUBPASS_DEPENDENCY_2; VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2 :: RENDER_PASS_CREATE_INFO_2; VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO :: SUBPASS_BEGIN_INFO; VK_STRUCTURE_TYPE_SUBPASS_END_INFO :: SUBPASS_END_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES :: PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES :: PHYSICAL_DEVICE_DRIVER_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES :: PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES :: PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES :: PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO :: DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES :: PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES :: PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO :: DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT :: DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES :: PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES; VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE :: SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES :: PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES; VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO :: IMAGE_STENCIL_USAGE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES :: PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES; VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO :: SAMPLER_REDUCTION_MODE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES :: PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES :: PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES; VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO :: FRAMEBUFFER_ATTACHMENTS_CREATE_INFO; VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO :: FRAMEBUFFER_ATTACHMENT_IMAGE_INFO; VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO :: RENDER_PASS_ATTACHMENT_BEGIN_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES :: PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES :: PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES :: PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES; VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT :: ATTACHMENT_REFERENCE_STENCIL_LAYOUT; VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT :: ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES :: PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES :: PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES :: PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES; VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO :: SEMAPHORE_TYPE_CREATE_INFO; VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO :: TIMELINE_SEMAPHORE_SUBMIT_INFO; VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO :: SEMAPHORE_WAIT_INFO; VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO :: SEMAPHORE_SIGNAL_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES :: PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES; VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO :: BUFFER_DEVICE_ADDRESS_INFO; VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO :: BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO; VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO :: MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO; VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO :: DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_FEATURES :: PHYSICAL_DEVICE_VULKAN_1_3_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES :: PHYSICAL_DEVICE_VULKAN_1_3_PROPERTIES; VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO :: PIPELINE_CREATION_FEEDBACK_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES :: PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES :: PHYSICAL_DEVICE_TOOL_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES :: PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES :: PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES; VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO :: DEVICE_PRIVATE_DATA_CREATE_INFO; VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO :: PRIVATE_DATA_SLOT_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES :: PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES; VK_STRUCTURE_TYPE_MEMORY_BARRIER_2 :: MEMORY_BARRIER_2; VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2 :: BUFFER_MEMORY_BARRIER_2; VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2 :: IMAGE_MEMORY_BARRIER_2; VK_STRUCTURE_TYPE_DEPENDENCY_INFO :: DEPENDENCY_INFO; VK_STRUCTURE_TYPE_SUBMIT_INFO_2 :: SUBMIT_INFO_2; VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO :: SEMAPHORE_SUBMIT_INFO; VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO :: COMMAND_BUFFER_SUBMIT_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES :: PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES :: PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES :: PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES; VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2 :: COPY_BUFFER_INFO_2; VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2 :: COPY_IMAGE_INFO_2; VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2 :: COPY_BUFFER_TO_IMAGE_INFO_2; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2 :: COPY_IMAGE_TO_BUFFER_INFO_2; VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2 :: BLIT_IMAGE_INFO_2; VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2 :: RESOLVE_IMAGE_INFO_2; VK_STRUCTURE_TYPE_BUFFER_COPY_2 :: BUFFER_COPY_2; VK_STRUCTURE_TYPE_IMAGE_COPY_2 :: IMAGE_COPY_2; VK_STRUCTURE_TYPE_IMAGE_BLIT_2 :: IMAGE_BLIT_2; VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2 :: BUFFER_IMAGE_COPY_2; VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2 :: IMAGE_RESOLVE_2; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES :: PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES; VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO :: PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES :: PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES :: PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES :: PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK :: WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK; VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO :: DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES :: PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES; VK_STRUCTURE_TYPE_RENDERING_INFO :: RENDERING_INFO; VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO :: RENDERING_ATTACHMENT_INFO; VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO :: PIPELINE_RENDERING_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES :: PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO :: COMMAND_BUFFER_INHERITANCE_RENDERING_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES :: PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES :: PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES :: PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES; VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3 :: FORMAT_PROPERTIES_3; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES :: PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES :: PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES; VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS :: DEVICE_BUFFER_MEMORY_REQUIREMENTS; VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS :: DEVICE_IMAGE_MEMORY_REQUIREMENTS; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_FEATURES :: PHYSICAL_DEVICE_VULKAN_1_4_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES :: PHYSICAL_DEVICE_VULKAN_1_4_PROPERTIES; VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO :: DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES :: PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES; VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES :: QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES :: PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES :: PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES :: PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES :: PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO :: PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES :: PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES; VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO :: PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES :: PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES; VK_STRUCTURE_TYPE_MEMORY_MAP_INFO :: MEMORY_MAP_INFO; VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO :: MEMORY_UNMAP_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES :: PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES :: PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES; VK_STRUCTURE_TYPE_RENDERING_AREA_INFO :: RENDERING_AREA_INFO; VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO :: DEVICE_IMAGE_SUBRESOURCE_INFO; VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2 :: SUBRESOURCE_LAYOUT_2; VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2 :: IMAGE_SUBRESOURCE_2; VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO :: PIPELINE_CREATE_FLAGS_2_CREATE_INFO; VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO :: BUFFER_USAGE_FLAGS_2_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES :: PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES :: PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES; VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO :: RENDERING_ATTACHMENT_LOCATION_INFO; VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO :: RENDERING_INPUT_ATTACHMENT_INDEX_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES :: PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES :: PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES; VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS :: BIND_MEMORY_STATUS; VK_STRUCTURE_TYPE_BIND_DESCRIPTOR_SETS_INFO :: BIND_DESCRIPTOR_SETS_INFO; VK_STRUCTURE_TYPE_PUSH_CONSTANTS_INFO :: PUSH_CONSTANTS_INFO; VK_STRUCTURE_TYPE_PUSH_DESCRIPTOR_SET_INFO :: PUSH_DESCRIPTOR_SET_INFO; VK_STRUCTURE_TYPE_PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO :: PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES :: PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES; VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO :: PIPELINE_ROBUSTNESS_CREATE_INFO; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES :: PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES :: PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES :: PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES :: PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES; VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY :: MEMORY_TO_IMAGE_COPY; VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY :: IMAGE_TO_MEMORY_COPY; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO :: COPY_IMAGE_TO_MEMORY_INFO; VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO :: COPY_MEMORY_TO_IMAGE_INFO; VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO :: HOST_IMAGE_LAYOUT_TRANSITION_INFO; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO :: COPY_IMAGE_TO_IMAGE_INFO; VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE :: SUBRESOURCE_HOST_MEMCPY_SIZE; VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY :: HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY; VK_STRUCTURE_TYPE_SWAPCHAIN_CREATE_INFO_KHR :: SWAPCHAIN_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PRESENT_INFO_KHR :: PRESENT_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_CAPABILITIES_KHR :: DEVICE_GROUP_PRESENT_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_IMAGE_SWAPCHAIN_CREATE_INFO_KHR :: IMAGE_SWAPCHAIN_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR :: BIND_IMAGE_MEMORY_SWAPCHAIN_INFO_KHR; VK_STRUCTURE_TYPE_ACQUIRE_NEXT_IMAGE_INFO_KHR :: ACQUIRE_NEXT_IMAGE_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_PRESENT_INFO_KHR :: DEVICE_GROUP_PRESENT_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR :: DEVICE_GROUP_SWAPCHAIN_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_DISPLAY_MODE_CREATE_INFO_KHR :: DISPLAY_MODE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_DISPLAY_SURFACE_CREATE_INFO_KHR :: DISPLAY_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_DISPLAY_PRESENT_INFO_KHR :: DISPLAY_PRESENT_INFO_KHR; VK_STRUCTURE_TYPE_XLIB_SURFACE_CREATE_INFO_KHR :: XLIB_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_XCB_SURFACE_CREATE_INFO_KHR :: XCB_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_WAYLAND_SURFACE_CREATE_INFO_KHR :: WAYLAND_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_ANDROID_SURFACE_CREATE_INFO_KHR :: ANDROID_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_WIN32_SURFACE_CREATE_INFO_KHR :: WIN32_SURFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT :: DEBUG_REPORT_CALLBACK_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD :: PIPELINE_RASTERIZATION_STATE_RASTERIZATION_ORDER_AMD; VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_NAME_INFO_EXT :: DEBUG_MARKER_OBJECT_NAME_INFO_EXT; VK_STRUCTURE_TYPE_DEBUG_MARKER_OBJECT_TAG_INFO_EXT :: DEBUG_MARKER_OBJECT_TAG_INFO_EXT; VK_STRUCTURE_TYPE_DEBUG_MARKER_MARKER_INFO_EXT :: DEBUG_MARKER_MARKER_INFO_EXT; VK_STRUCTURE_TYPE_VIDEO_PROFILE_INFO_KHR :: VIDEO_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_CAPABILITIES_KHR :: VIDEO_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_PICTURE_RESOURCE_INFO_KHR :: VIDEO_PICTURE_RESOURCE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR :: VIDEO_SESSION_MEMORY_REQUIREMENTS_KHR; VK_STRUCTURE_TYPE_BIND_VIDEO_SESSION_MEMORY_INFO_KHR :: BIND_VIDEO_SESSION_MEMORY_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_SESSION_CREATE_INFO_KHR :: VIDEO_SESSION_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR :: VIDEO_SESSION_PARAMETERS_UPDATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_BEGIN_CODING_INFO_KHR :: VIDEO_BEGIN_CODING_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_END_CODING_INFO_KHR :: VIDEO_END_CODING_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_CODING_CONTROL_INFO_KHR :: VIDEO_CODING_CONTROL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_REFERENCE_SLOT_INFO_KHR :: VIDEO_REFERENCE_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_QUEUE_FAMILY_VIDEO_PROPERTIES_KHR :: QUEUE_FAMILY_VIDEO_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_PROFILE_LIST_INFO_KHR :: VIDEO_PROFILE_LIST_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR :: PHYSICAL_DEVICE_VIDEO_FORMAT_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_FORMAT_PROPERTIES_KHR :: VIDEO_FORMAT_PROPERTIES_KHR; VK_STRUCTURE_TYPE_QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR :: QUEUE_FAMILY_QUERY_RESULT_STATUS_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_INFO_KHR :: VIDEO_DECODE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_CAPABILITIES_KHR :: VIDEO_DECODE_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_USAGE_INFO_KHR :: VIDEO_DECODE_USAGE_INFO_KHR; VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV :: DEDICATED_ALLOCATION_IMAGE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV :: DEDICATED_ALLOCATION_BUFFER_CREATE_INFO_NV; VK_STRUCTURE_TYPE_DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV :: DEDICATED_ALLOCATION_MEMORY_ALLOCATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT :: PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT :: PHYSICAL_DEVICE_TRANSFORM_FEEDBACK_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT :: PIPELINE_RASTERIZATION_STATE_STREAM_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_CU_MODULE_CREATE_INFO_NVX :: CU_MODULE_CREATE_INFO_NVX; VK_STRUCTURE_TYPE_CU_FUNCTION_CREATE_INFO_NVX :: CU_FUNCTION_CREATE_INFO_NVX; VK_STRUCTURE_TYPE_CU_LAUNCH_INFO_NVX :: CU_LAUNCH_INFO_NVX; VK_STRUCTURE_TYPE_CU_MODULE_TEXTURING_MODE_CREATE_INFO_NVX :: CU_MODULE_TEXTURING_MODE_CREATE_INFO_NVX; VK_STRUCTURE_TYPE_IMAGE_VIEW_HANDLE_INFO_NVX :: IMAGE_VIEW_HANDLE_INFO_NVX; VK_STRUCTURE_TYPE_IMAGE_VIEW_ADDRESS_PROPERTIES_NVX :: IMAGE_VIEW_ADDRESS_PROPERTIES_NVX; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_CAPABILITIES_KHR :: VIDEO_ENCODE_H264_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_ENCODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR :: VIDEO_ENCODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PICTURE_INFO_KHR :: VIDEO_ENCODE_H264_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR :: VIDEO_ENCODE_H264_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_NALU_SLICE_INFO_KHR :: VIDEO_ENCODE_H264_NALU_SLICE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR :: VIDEO_ENCODE_H264_GOP_REMAINING_FRAME_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_PROFILE_INFO_KHR :: VIDEO_ENCODE_H264_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR :: VIDEO_ENCODE_H264_RATE_CONTROL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR :: VIDEO_ENCODE_H264_RATE_CONTROL_LAYER_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR :: VIDEO_ENCODE_H264_SESSION_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR :: VIDEO_ENCODE_H264_QUALITY_LEVEL_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR :: VIDEO_ENCODE_H264_SESSION_PARAMETERS_GET_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: VIDEO_ENCODE_H264_SESSION_PARAMETERS_FEEDBACK_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_CAPABILITIES_KHR :: VIDEO_ENCODE_H265_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_ENCODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR :: VIDEO_ENCODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PICTURE_INFO_KHR :: VIDEO_ENCODE_H265_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR :: VIDEO_ENCODE_H265_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_KHR :: VIDEO_ENCODE_H265_NALU_SLICE_SEGMENT_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR :: VIDEO_ENCODE_H265_GOP_REMAINING_FRAME_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_PROFILE_INFO_KHR :: VIDEO_ENCODE_H265_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR :: VIDEO_ENCODE_H265_RATE_CONTROL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR :: VIDEO_ENCODE_H265_RATE_CONTROL_LAYER_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR :: VIDEO_ENCODE_H265_SESSION_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR :: VIDEO_ENCODE_H265_QUALITY_LEVEL_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR :: VIDEO_ENCODE_H265_SESSION_PARAMETERS_GET_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: VIDEO_ENCODE_H265_SESSION_PARAMETERS_FEEDBACK_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_CAPABILITIES_KHR :: VIDEO_DECODE_H264_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PICTURE_INFO_KHR :: VIDEO_DECODE_H264_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_PROFILE_INFO_KHR :: VIDEO_DECODE_H264_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_DECODE_H264_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR :: VIDEO_DECODE_H264_SESSION_PARAMETERS_ADD_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR :: VIDEO_DECODE_H264_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD :: TEXTURE_LOD_GATHER_FORMAT_PROPERTIES_AMD; VK_STRUCTURE_TYPE_STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP :: STREAM_DESCRIPTOR_SURFACE_CREATE_INFO_GGP; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV :: PHYSICAL_DEVICE_CORNER_SAMPLED_IMAGE_FEATURES_NV; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV :: EXTERNAL_MEMORY_IMAGE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_NV :: EXPORT_MEMORY_ALLOCATE_INFO_NV; VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV :: IMPORT_MEMORY_WIN32_HANDLE_INFO_NV; VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV :: EXPORT_MEMORY_WIN32_HANDLE_INFO_NV; VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV :: WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_NV; VK_STRUCTURE_TYPE_VALIDATION_FLAGS_EXT :: VALIDATION_FLAGS_EXT; VK_STRUCTURE_TYPE_VI_SURFACE_CREATE_INFO_NN :: VI_SURFACE_CREATE_INFO_NN; VK_STRUCTURE_TYPE_IMAGE_VIEW_ASTC_DECODE_MODE_EXT :: IMAGE_VIEW_ASTC_DECODE_MODE_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT :: PHYSICAL_DEVICE_ASTC_DECODE_FEATURES_EXT; VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: IMPORT_MEMORY_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR :: EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_MEMORY_WIN32_HANDLE_PROPERTIES_KHR :: MEMORY_WIN32_HANDLE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_MEMORY_GET_WIN32_HANDLE_INFO_KHR :: MEMORY_GET_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_IMPORT_MEMORY_FD_INFO_KHR :: IMPORT_MEMORY_FD_INFO_KHR; VK_STRUCTURE_TYPE_MEMORY_FD_PROPERTIES_KHR :: MEMORY_FD_PROPERTIES_KHR; VK_STRUCTURE_TYPE_MEMORY_GET_FD_INFO_KHR :: MEMORY_GET_FD_INFO_KHR; VK_STRUCTURE_TYPE_WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR :: WIN32_KEYED_MUTEX_ACQUIRE_RELEASE_INFO_KHR; VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: IMPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR :: EXPORT_SEMAPHORE_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_D3D12_FENCE_SUBMIT_INFO_KHR :: D3D12_FENCE_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR :: SEMAPHORE_GET_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_FD_INFO_KHR :: IMPORT_SEMAPHORE_FD_INFO_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_GET_FD_INFO_KHR :: SEMAPHORE_GET_FD_INFO_KHR; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT :: COMMAND_BUFFER_INHERITANCE_CONDITIONAL_RENDERING_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT :: PHYSICAL_DEVICE_CONDITIONAL_RENDERING_FEATURES_EXT; VK_STRUCTURE_TYPE_CONDITIONAL_RENDERING_BEGIN_INFO_EXT :: CONDITIONAL_RENDERING_BEGIN_INFO_EXT; VK_STRUCTURE_TYPE_PRESENT_REGIONS_KHR :: PRESENT_REGIONS_KHR; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV :: PIPELINE_VIEWPORT_W_SCALING_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_EXT :: SURFACE_CAPABILITIES_2_EXT; VK_STRUCTURE_TYPE_DISPLAY_POWER_INFO_EXT :: DISPLAY_POWER_INFO_EXT; VK_STRUCTURE_TYPE_DEVICE_EVENT_INFO_EXT :: DEVICE_EVENT_INFO_EXT; VK_STRUCTURE_TYPE_DISPLAY_EVENT_INFO_EXT :: DISPLAY_EVENT_INFO_EXT; VK_STRUCTURE_TYPE_SWAPCHAIN_COUNTER_CREATE_INFO_EXT :: SWAPCHAIN_COUNTER_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PRESENT_TIMES_INFO_GOOGLE :: PRESENT_TIMES_INFO_GOOGLE; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX :: PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_ATTRIBUTES_PROPERTIES_NVX; VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX :: MULTIVIEW_PER_VIEW_ATTRIBUTES_INFO_NVX; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV :: PIPELINE_VIEWPORT_SWIZZLE_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT :: PHYSICAL_DEVICE_DISCARD_RECTANGLE_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT :: PIPELINE_DISCARD_RECTANGLE_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT :: PHYSICAL_DEVICE_CONSERVATIVE_RASTERIZATION_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT :: PIPELINE_RASTERIZATION_CONSERVATIVE_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT :: PHYSICAL_DEVICE_DEPTH_CLIP_ENABLE_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT :: PIPELINE_RASTERIZATION_DEPTH_CLIP_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_HDR_METADATA_EXT :: HDR_METADATA_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RELAXED_LINE_RASTERIZATION_FEATURES_IMG :: PHYSICAL_DEVICE_RELAXED_LINE_RASTERIZATION_FEATURES_IMG; VK_STRUCTURE_TYPE_SHARED_PRESENT_SURFACE_CAPABILITIES_KHR :: SHARED_PRESENT_SURFACE_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_IMPORT_FENCE_WIN32_HANDLE_INFO_KHR :: IMPORT_FENCE_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_EXPORT_FENCE_WIN32_HANDLE_INFO_KHR :: EXPORT_FENCE_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_FENCE_GET_WIN32_HANDLE_INFO_KHR :: FENCE_GET_WIN32_HANDLE_INFO_KHR; VK_STRUCTURE_TYPE_IMPORT_FENCE_FD_INFO_KHR :: IMPORT_FENCE_FD_INFO_KHR; VK_STRUCTURE_TYPE_FENCE_GET_FD_INFO_KHR :: FENCE_GET_FD_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR :: PHYSICAL_DEVICE_PERFORMANCE_QUERY_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR :: PHYSICAL_DEVICE_PERFORMANCE_QUERY_PROPERTIES_KHR; VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR :: QUERY_POOL_PERFORMANCE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PERFORMANCE_QUERY_SUBMIT_INFO_KHR :: PERFORMANCE_QUERY_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_ACQUIRE_PROFILING_LOCK_INFO_KHR :: ACQUIRE_PROFILING_LOCK_INFO_KHR; VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_KHR :: PERFORMANCE_COUNTER_KHR; VK_STRUCTURE_TYPE_PERFORMANCE_COUNTER_DESCRIPTION_KHR :: PERFORMANCE_COUNTER_DESCRIPTION_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SURFACE_INFO_2_KHR :: PHYSICAL_DEVICE_SURFACE_INFO_2_KHR; VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_2_KHR :: SURFACE_CAPABILITIES_2_KHR; VK_STRUCTURE_TYPE_SURFACE_FORMAT_2_KHR :: SURFACE_FORMAT_2_KHR; VK_STRUCTURE_TYPE_DISPLAY_PROPERTIES_2_KHR :: DISPLAY_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_DISPLAY_PLANE_PROPERTIES_2_KHR :: DISPLAY_PLANE_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_DISPLAY_MODE_PROPERTIES_2_KHR :: DISPLAY_MODE_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_DISPLAY_PLANE_INFO_2_KHR :: DISPLAY_PLANE_INFO_2_KHR; VK_STRUCTURE_TYPE_DISPLAY_PLANE_CAPABILITIES_2_KHR :: DISPLAY_PLANE_CAPABILITIES_2_KHR; VK_STRUCTURE_TYPE_IOS_SURFACE_CREATE_INFO_MVK :: IOS_SURFACE_CREATE_INFO_MVK; VK_STRUCTURE_TYPE_MACOS_SURFACE_CREATE_INFO_MVK :: MACOS_SURFACE_CREATE_INFO_MVK; VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_NAME_INFO_EXT :: DEBUG_UTILS_OBJECT_NAME_INFO_EXT; VK_STRUCTURE_TYPE_DEBUG_UTILS_OBJECT_TAG_INFO_EXT :: DEBUG_UTILS_OBJECT_TAG_INFO_EXT; VK_STRUCTURE_TYPE_DEBUG_UTILS_LABEL_EXT :: DEBUG_UTILS_LABEL_EXT; VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT :: DEBUG_UTILS_MESSENGER_CALLBACK_DATA_EXT; VK_STRUCTURE_TYPE_DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT :: DEBUG_UTILS_MESSENGER_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_USAGE_ANDROID :: ANDROID_HARDWARE_BUFFER_USAGE_ANDROID; VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID :: ANDROID_HARDWARE_BUFFER_PROPERTIES_ANDROID; VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID :: ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_ANDROID; VK_STRUCTURE_TYPE_IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: IMPORT_ANDROID_HARDWARE_BUFFER_INFO_ANDROID; VK_STRUCTURE_TYPE_MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID :: MEMORY_GET_ANDROID_HARDWARE_BUFFER_INFO_ANDROID; VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_ANDROID :: EXTERNAL_FORMAT_ANDROID; VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID :: ANDROID_HARDWARE_BUFFER_FORMAT_PROPERTIES_2_ANDROID; VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_AMD :: ATTACHMENT_SAMPLE_COUNT_INFO_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_BFLOAT16_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_BFLOAT16_FEATURES_KHR; VK_STRUCTURE_TYPE_SAMPLE_LOCATIONS_INFO_EXT :: SAMPLE_LOCATIONS_INFO_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT :: RENDER_PASS_SAMPLE_LOCATIONS_BEGIN_INFO_EXT; VK_STRUCTURE_TYPE_PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT :: PIPELINE_SAMPLE_LOCATIONS_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT :: PHYSICAL_DEVICE_SAMPLE_LOCATIONS_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MULTISAMPLE_PROPERTIES_EXT :: MULTISAMPLE_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT :: PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT :: PHYSICAL_DEVICE_BLEND_OPERATION_ADVANCED_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT :: PIPELINE_COLOR_BLEND_ADVANCED_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV :: PIPELINE_COVERAGE_TO_COLOR_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR :: WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR :: ACCELERATION_STRUCTURE_BUILD_GEOMETRY_INFO_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR :: ACCELERATION_STRUCTURE_DEVICE_ADDRESS_INFO_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR :: ACCELERATION_STRUCTURE_GEOMETRY_AABBS_DATA_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR :: ACCELERATION_STRUCTURE_GEOMETRY_INSTANCES_DATA_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR :: ACCELERATION_STRUCTURE_GEOMETRY_TRIANGLES_DATA_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_KHR :: ACCELERATION_STRUCTURE_GEOMETRY_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_VERSION_INFO_KHR :: ACCELERATION_STRUCTURE_VERSION_INFO_KHR; VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_INFO_KHR :: COPY_ACCELERATION_STRUCTURE_INFO_KHR; VK_STRUCTURE_TYPE_COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR :: COPY_ACCELERATION_STRUCTURE_TO_MEMORY_INFO_KHR; VK_STRUCTURE_TYPE_COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR :: COPY_MEMORY_TO_ACCELERATION_STRUCTURE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR :: PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR :: PHYSICAL_DEVICE_ACCELERATION_STRUCTURE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_KHR :: ACCELERATION_STRUCTURE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR :: ACCELERATION_STRUCTURE_BUILD_SIZES_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR :: PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR :: PHYSICAL_DEVICE_RAY_TRACING_PIPELINE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_KHR :: RAY_TRACING_PIPELINE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR :: RAY_TRACING_SHADER_GROUP_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR :: RAY_TRACING_PIPELINE_INTERFACE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR :: PHYSICAL_DEVICE_RAY_QUERY_FEATURES_KHR; VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV :: PIPELINE_COVERAGE_MODULATION_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV :: PHYSICAL_DEVICE_SHADER_SM_BUILTINS_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV :: PHYSICAL_DEVICE_SHADER_SM_BUILTINS_PROPERTIES_NV; VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT :: DRM_FORMAT_MODIFIER_PROPERTIES_LIST_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT :: PHYSICAL_DEVICE_IMAGE_DRM_FORMAT_MODIFIER_INFO_EXT; VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT :: IMAGE_DRM_FORMAT_MODIFIER_LIST_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT :: IMAGE_DRM_FORMAT_MODIFIER_EXPLICIT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT :: IMAGE_DRM_FORMAT_MODIFIER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT :: DRM_FORMAT_MODIFIER_PROPERTIES_LIST_2_EXT; VK_STRUCTURE_TYPE_VALIDATION_CACHE_CREATE_INFO_EXT :: VALIDATION_CACHE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT :: SHADER_MODULE_VALIDATION_CACHE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV :: PIPELINE_VIEWPORT_SHADING_RATE_IMAGE_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV :: PHYSICAL_DEVICE_SHADING_RATE_IMAGE_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV :: PHYSICAL_DEVICE_SHADING_RATE_IMAGE_PROPERTIES_NV; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV :: PIPELINE_VIEWPORT_COARSE_SAMPLE_ORDER_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CREATE_INFO_NV :: RAY_TRACING_PIPELINE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: ACCELERATION_STRUCTURE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_GEOMETRY_NV :: GEOMETRY_NV; VK_STRUCTURE_TYPE_GEOMETRY_TRIANGLES_NV :: GEOMETRY_TRIANGLES_NV; VK_STRUCTURE_TYPE_GEOMETRY_AABB_NV :: GEOMETRY_AABB_NV; VK_STRUCTURE_TYPE_BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV :: BIND_ACCELERATION_STRUCTURE_MEMORY_INFO_NV; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV :: WRITE_DESCRIPTOR_SET_ACCELERATION_STRUCTURE_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV :: ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV :: PHYSICAL_DEVICE_RAY_TRACING_PROPERTIES_NV; VK_STRUCTURE_TYPE_RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV :: RAY_TRACING_SHADER_GROUP_CREATE_INFO_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_INFO_NV :: ACCELERATION_STRUCTURE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV :: PHYSICAL_DEVICE_REPRESENTATIVE_FRAGMENT_TEST_FEATURES_NV; VK_STRUCTURE_TYPE_PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV :: PIPELINE_REPRESENTATIVE_FRAGMENT_TEST_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT :: PHYSICAL_DEVICE_IMAGE_VIEW_IMAGE_FORMAT_INFO_EXT; VK_STRUCTURE_TYPE_FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT :: FILTER_CUBIC_IMAGE_VIEW_IMAGE_FORMAT_PROPERTIES_EXT; VK_STRUCTURE_TYPE_IMPORT_MEMORY_HOST_POINTER_INFO_EXT :: IMPORT_MEMORY_HOST_POINTER_INFO_EXT; VK_STRUCTURE_TYPE_MEMORY_HOST_POINTER_PROPERTIES_EXT :: MEMORY_HOST_POINTER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT :: PHYSICAL_DEVICE_EXTERNAL_MEMORY_HOST_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_CLOCK_FEATURES_KHR; VK_STRUCTURE_TYPE_PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD :: PIPELINE_COMPILER_CONTROL_CREATE_INFO_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD :: PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_AMD; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_CAPABILITIES_KHR :: VIDEO_DECODE_H265_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_DECODE_H265_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR :: VIDEO_DECODE_H265_SESSION_PARAMETERS_ADD_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PROFILE_INFO_KHR :: VIDEO_DECODE_H265_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_PICTURE_INFO_KHR :: VIDEO_DECODE_H265_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR :: VIDEO_DECODE_H265_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD :: DEVICE_MEMORY_OVERALLOCATION_CREATE_INFO_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PRESENT_FRAME_TOKEN_GGP :: PRESENT_FRAME_TOKEN_GGP; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV :: PHYSICAL_DEVICE_MESH_SHADER_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV :: PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV :: PHYSICAL_DEVICE_SHADER_IMAGE_FOOTPRINT_FEATURES_NV; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV :: PIPELINE_VIEWPORT_EXCLUSIVE_SCISSOR_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV :: PHYSICAL_DEVICE_EXCLUSIVE_SCISSOR_FEATURES_NV; VK_STRUCTURE_TYPE_CHECKPOINT_DATA_NV :: CHECKPOINT_DATA_NV; VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV :: QUEUE_FAMILY_CHECKPOINT_PROPERTIES_NV; VK_STRUCTURE_TYPE_QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV :: QUEUE_FAMILY_CHECKPOINT_PROPERTIES_2_NV; VK_STRUCTURE_TYPE_CHECKPOINT_DATA_2_NV :: CHECKPOINT_DATA_2_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL :: PHYSICAL_DEVICE_SHADER_INTEGER_FUNCTIONS_2_FEATURES_INTEL; VK_STRUCTURE_TYPE_QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL :: QUERY_POOL_PERFORMANCE_QUERY_CREATE_INFO_INTEL; VK_STRUCTURE_TYPE_INITIALIZE_PERFORMANCE_API_INFO_INTEL :: INITIALIZE_PERFORMANCE_API_INFO_INTEL; VK_STRUCTURE_TYPE_PERFORMANCE_MARKER_INFO_INTEL :: PERFORMANCE_MARKER_INFO_INTEL; VK_STRUCTURE_TYPE_PERFORMANCE_STREAM_MARKER_INFO_INTEL :: PERFORMANCE_STREAM_MARKER_INFO_INTEL; VK_STRUCTURE_TYPE_PERFORMANCE_OVERRIDE_INFO_INTEL :: PERFORMANCE_OVERRIDE_INFO_INTEL; VK_STRUCTURE_TYPE_PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL :: PERFORMANCE_CONFIGURATION_ACQUIRE_INFO_INTEL; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT :: PHYSICAL_DEVICE_PCI_BUS_INFO_PROPERTIES_EXT; VK_STRUCTURE_TYPE_DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD :: DISPLAY_NATIVE_HDR_SURFACE_CAPABILITIES_AMD; VK_STRUCTURE_TYPE_SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD :: SWAPCHAIN_DISPLAY_NATIVE_HDR_CREATE_INFO_AMD; VK_STRUCTURE_TYPE_IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA :: IMAGEPIPE_SURFACE_CREATE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_METAL_SURFACE_CREATE_INFO_EXT :: METAL_SURFACE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_PROPERTIES_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT :: RENDER_PASS_FRAGMENT_DENSITY_MAP_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT :: RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_INFO_EXT; VK_STRUCTURE_TYPE_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR :: PIPELINE_FRAGMENT_SHADING_RATE_STATE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR :: PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR :: PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR :: PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_KHR; VK_STRUCTURE_TYPE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR :: RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD :: PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_2_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD :: PHYSICAL_DEVICE_COHERENT_MEMORY_FEATURES_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_IMAGE_ATOMIC_INT64_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_QUAD_CONTROL_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT :: PHYSICAL_DEVICE_MEMORY_BUDGET_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT :: PHYSICAL_DEVICE_MEMORY_PRIORITY_FEATURES_EXT; VK_STRUCTURE_TYPE_MEMORY_PRIORITY_ALLOCATE_INFO_EXT :: MEMORY_PRIORITY_ALLOCATE_INFO_EXT; VK_STRUCTURE_TYPE_SURFACE_PROTECTED_CAPABILITIES_KHR :: SURFACE_PROTECTED_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV :: PHYSICAL_DEVICE_DEDICATED_ALLOCATION_IMAGE_ALIASING_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT :: PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_EXT; VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT :: BUFFER_DEVICE_ADDRESS_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_VALIDATION_FEATURES_EXT :: VALIDATION_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR :: PHYSICAL_DEVICE_PRESENT_WAIT_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_NV; VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_NV :: COOPERATIVE_MATRIX_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV :: PHYSICAL_DEVICE_COVERAGE_REDUCTION_MODE_FEATURES_NV; VK_STRUCTURE_TYPE_PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV :: PIPELINE_COVERAGE_REDUCTION_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV :: FRAMEBUFFER_MIXED_SAMPLES_COMBINATION_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT :: PHYSICAL_DEVICE_FRAGMENT_SHADER_INTERLOCK_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT :: PHYSICAL_DEVICE_YCBCR_IMAGE_ARRAYS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT :: PHYSICAL_DEVICE_PROVOKING_VERTEX_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT :: PIPELINE_RASTERIZATION_PROVOKING_VERTEX_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT :: PHYSICAL_DEVICE_PROVOKING_VERTEX_PROPERTIES_EXT; VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT :: SURFACE_FULL_SCREEN_EXCLUSIVE_INFO_EXT; VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT :: SURFACE_CAPABILITIES_FULL_SCREEN_EXCLUSIVE_EXT; VK_STRUCTURE_TYPE_SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT :: SURFACE_FULL_SCREEN_EXCLUSIVE_WIN32_INFO_EXT; VK_STRUCTURE_TYPE_HEADLESS_SURFACE_CREATE_INFO_EXT :: HEADLESS_SURFACE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT :: PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR :: PHYSICAL_DEVICE_PIPELINE_EXECUTABLE_PROPERTIES_FEATURES_KHR; VK_STRUCTURE_TYPE_PIPELINE_INFO_KHR :: PIPELINE_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_PROPERTIES_KHR :: PIPELINE_EXECUTABLE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INFO_KHR :: PIPELINE_EXECUTABLE_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_STATISTIC_KHR :: PIPELINE_EXECUTABLE_STATISTIC_KHR; VK_STRUCTURE_TYPE_PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR :: PIPELINE_EXECUTABLE_INTERNAL_REPRESENTATION_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_FEATURES_EXT :: PHYSICAL_DEVICE_MAP_MEMORY_PLACED_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAP_MEMORY_PLACED_PROPERTIES_EXT :: PHYSICAL_DEVICE_MAP_MEMORY_PLACED_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MEMORY_MAP_PLACED_INFO_EXT :: MEMORY_MAP_PLACED_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT_2_FEATURES_EXT; VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_EXT :: SURFACE_PRESENT_MODE_EXT; VK_STRUCTURE_TYPE_SURFACE_PRESENT_SCALING_CAPABILITIES_EXT :: SURFACE_PRESENT_SCALING_CAPABILITIES_EXT; VK_STRUCTURE_TYPE_SURFACE_PRESENT_MODE_COMPATIBILITY_EXT :: SURFACE_PRESENT_MODE_COMPATIBILITY_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT :: PHYSICAL_DEVICE_SWAPCHAIN_MAINTENANCE_1_FEATURES_EXT; VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_FENCE_INFO_EXT :: SWAPCHAIN_PRESENT_FENCE_INFO_EXT; VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT :: SWAPCHAIN_PRESENT_MODES_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_MODE_INFO_EXT :: SWAPCHAIN_PRESENT_MODE_INFO_EXT; VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT :: SWAPCHAIN_PRESENT_SCALING_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_RELEASE_SWAPCHAIN_IMAGES_INFO_EXT :: RELEASE_SWAPCHAIN_IMAGES_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV :: PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_NV; VK_STRUCTURE_TYPE_GRAPHICS_SHADER_GROUP_CREATE_INFO_NV :: GRAPHICS_SHADER_GROUP_CREATE_INFO_NV; VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV :: GRAPHICS_PIPELINE_SHADER_GROUPS_CREATE_INFO_NV; VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_NV :: INDIRECT_COMMANDS_LAYOUT_TOKEN_NV; VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV :: INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_NV; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_NV :: GENERATED_COMMANDS_INFO_NV; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV :: GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV :: PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV :: PHYSICAL_DEVICE_INHERITED_VIEWPORT_SCISSOR_FEATURES_NV; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV :: COMMAND_BUFFER_INHERITANCE_VIEWPORT_SCISSOR_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT :: PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_FEATURES_EXT; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM :: COMMAND_BUFFER_INHERITANCE_RENDER_PASS_TRANSFORM_INFO_QCOM; VK_STRUCTURE_TYPE_RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM :: RENDER_PASS_TRANSFORM_BEGIN_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_DEPTH_BIAS_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_DEPTH_BIAS_INFO_EXT :: DEPTH_BIAS_INFO_EXT; VK_STRUCTURE_TYPE_DEPTH_BIAS_REPRESENTATION_INFO_EXT :: DEPTH_BIAS_REPRESENTATION_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT :: PHYSICAL_DEVICE_DEVICE_MEMORY_REPORT_FEATURES_EXT; VK_STRUCTURE_TYPE_DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT :: DEVICE_DEVICE_MEMORY_REPORT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT :: DEVICE_MEMORY_REPORT_CALLBACK_DATA_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT :: PHYSICAL_DEVICE_ROBUSTNESS_2_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT :: PHYSICAL_DEVICE_ROBUSTNESS_2_PROPERTIES_EXT; VK_STRUCTURE_TYPE_SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT :: SAMPLER_CUSTOM_BORDER_COLOR_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT :: PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT :: PHYSICAL_DEVICE_CUSTOM_BORDER_COLOR_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_LIBRARY_CREATE_INFO_KHR :: PIPELINE_LIBRARY_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV :: PHYSICAL_DEVICE_PRESENT_BARRIER_FEATURES_NV; VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES_PRESENT_BARRIER_NV :: SURFACE_CAPABILITIES_PRESENT_BARRIER_NV; VK_STRUCTURE_TYPE_SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV :: SWAPCHAIN_PRESENT_BARRIER_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PRESENT_ID_KHR :: PRESENT_ID_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR :: PHYSICAL_DEVICE_PRESENT_ID_FEATURES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_INFO_KHR :: VIDEO_ENCODE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_INFO_KHR :: VIDEO_ENCODE_RATE_CONTROL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR :: VIDEO_ENCODE_RATE_CONTROL_LAYER_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_CAPABILITIES_KHR :: VIDEO_ENCODE_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_USAGE_INFO_KHR :: VIDEO_ENCODE_USAGE_INFO_KHR; VK_STRUCTURE_TYPE_QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR :: QUERY_POOL_VIDEO_ENCODE_FEEDBACK_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR :: PHYSICAL_DEVICE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR :: VIDEO_ENCODE_QUALITY_LEVEL_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR :: VIDEO_ENCODE_QUALITY_LEVEL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR :: VIDEO_ENCODE_SESSION_PARAMETERS_GET_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR :: VIDEO_ENCODE_SESSION_PARAMETERS_FEEDBACK_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV :: PHYSICAL_DEVICE_DIAGNOSTICS_CONFIG_FEATURES_NV; VK_STRUCTURE_TYPE_DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV :: DEVICE_DIAGNOSTICS_CONFIG_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_SHADING_FEATURES_QCOM :: PHYSICAL_DEVICE_TILE_SHADING_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_SHADING_PROPERTIES_QCOM :: PHYSICAL_DEVICE_TILE_SHADING_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_RENDER_PASS_TILE_SHADING_CREATE_INFO_QCOM :: RENDER_PASS_TILE_SHADING_CREATE_INFO_QCOM; VK_STRUCTURE_TYPE_PER_TILE_BEGIN_INFO_QCOM :: PER_TILE_BEGIN_INFO_QCOM; VK_STRUCTURE_TYPE_PER_TILE_END_INFO_QCOM :: PER_TILE_END_INFO_QCOM; VK_STRUCTURE_TYPE_DISPATCH_TILE_INFO_QCOM :: DISPATCH_TILE_INFO_QCOM; VK_STRUCTURE_TYPE_QUERY_LOW_LATENCY_SUPPORT_NV :: QUERY_LOW_LATENCY_SUPPORT_NV; VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECT_CREATE_INFO_EXT :: EXPORT_METAL_OBJECT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_OBJECTS_INFO_EXT :: EXPORT_METAL_OBJECTS_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_DEVICE_INFO_EXT :: EXPORT_METAL_DEVICE_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_COMMAND_QUEUE_INFO_EXT :: EXPORT_METAL_COMMAND_QUEUE_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_BUFFER_INFO_EXT :: EXPORT_METAL_BUFFER_INFO_EXT; VK_STRUCTURE_TYPE_IMPORT_METAL_BUFFER_INFO_EXT :: IMPORT_METAL_BUFFER_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_TEXTURE_INFO_EXT :: EXPORT_METAL_TEXTURE_INFO_EXT; VK_STRUCTURE_TYPE_IMPORT_METAL_TEXTURE_INFO_EXT :: IMPORT_METAL_TEXTURE_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_IO_SURFACE_INFO_EXT :: EXPORT_METAL_IO_SURFACE_INFO_EXT; VK_STRUCTURE_TYPE_IMPORT_METAL_IO_SURFACE_INFO_EXT :: IMPORT_METAL_IO_SURFACE_INFO_EXT; VK_STRUCTURE_TYPE_EXPORT_METAL_SHARED_EVENT_INFO_EXT :: EXPORT_METAL_SHARED_EVENT_INFO_EXT; VK_STRUCTURE_TYPE_IMPORT_METAL_SHARED_EVENT_INFO_EXT :: IMPORT_METAL_SHARED_EVENT_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT :: PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT :: PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_DENSITY_MAP_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT :: PHYSICAL_DEVICE_DESCRIPTOR_BUFFER_FEATURES_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_ADDRESS_INFO_EXT :: DESCRIPTOR_ADDRESS_INFO_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_GET_INFO_EXT :: DESCRIPTOR_GET_INFO_EXT; VK_STRUCTURE_TYPE_BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: BUFFER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT; VK_STRUCTURE_TYPE_IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: IMAGE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT; VK_STRUCTURE_TYPE_IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: IMAGE_VIEW_CAPTURE_DESCRIPTOR_DATA_INFO_EXT; VK_STRUCTURE_TYPE_SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: SAMPLER_CAPTURE_DESCRIPTOR_DATA_INFO_EXT; VK_STRUCTURE_TYPE_OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT :: OPAQUE_CAPTURE_DESCRIPTOR_DATA_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_INFO_EXT :: DESCRIPTOR_BUFFER_BINDING_INFO_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT :: DESCRIPTOR_BUFFER_BINDING_PUSH_DESCRIPTOR_BUFFER_HANDLE_EXT; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT :: ACCELERATION_STRUCTURE_CAPTURE_DESCRIPTOR_DATA_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT :: PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT :: PHYSICAL_DEVICE_GRAPHICS_PIPELINE_LIBRARY_PROPERTIES_EXT; VK_STRUCTURE_TYPE_GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT :: GRAPHICS_PIPELINE_LIBRARY_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD :: PHYSICAL_DEVICE_SHADER_EARLY_AND_LATE_FRAGMENT_TESTS_FEATURES_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR :: PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR :: PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_SUBGROUP_UNIFORM_CONTROL_FLOW_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV :: PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV :: PHYSICAL_DEVICE_FRAGMENT_SHADING_RATE_ENUMS_FEATURES_NV; VK_STRUCTURE_TYPE_PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV :: PIPELINE_FRAGMENT_SHADING_RATE_ENUM_STATE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV :: ACCELERATION_STRUCTURE_GEOMETRY_MOTION_TRIANGLES_DATA_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV :: PHYSICAL_DEVICE_RAY_TRACING_MOTION_BLUR_FEATURES_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_MOTION_INFO_NV :: ACCELERATION_STRUCTURE_MOTION_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT :: PHYSICAL_DEVICE_MESH_SHADER_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT :: PHYSICAL_DEVICE_MESH_SHADER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT :: PHYSICAL_DEVICE_YCBCR_2_PLANE_444_FORMATS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_2_PROPERTIES_EXT; VK_STRUCTURE_TYPE_COPY_COMMAND_TRANSFORM_INFO_QCOM :: COPY_COMMAND_TRANSFORM_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR :: PHYSICAL_DEVICE_WORKGROUP_MEMORY_EXPLICIT_LAYOUT_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_CONTROL_EXT :: IMAGE_COMPRESSION_CONTROL_EXT; VK_STRUCTURE_TYPE_IMAGE_COMPRESSION_PROPERTIES_EXT :: IMAGE_COMPRESSION_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT :: PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_LAYOUT_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT :: PHYSICAL_DEVICE_4444_FORMATS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FAULT_FEATURES_EXT :: PHYSICAL_DEVICE_FAULT_FEATURES_EXT; VK_STRUCTURE_TYPE_DEVICE_FAULT_COUNTS_EXT :: DEVICE_FAULT_COUNTS_EXT; VK_STRUCTURE_TYPE_DEVICE_FAULT_INFO_EXT :: DEVICE_FAULT_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT :: PHYSICAL_DEVICE_RGBA10X6_FORMATS_FEATURES_EXT; VK_STRUCTURE_TYPE_DIRECTFB_SURFACE_CREATE_INFO_EXT :: DIRECTFB_SURFACE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT :: PHYSICAL_DEVICE_VERTEX_INPUT_DYNAMIC_STATE_FEATURES_EXT; VK_STRUCTURE_TYPE_VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT :: VERTEX_INPUT_BINDING_DESCRIPTION_2_EXT; VK_STRUCTURE_TYPE_VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT :: VERTEX_INPUT_ATTRIBUTE_DESCRIPTION_2_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRM_PROPERTIES_EXT :: PHYSICAL_DEVICE_DRM_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT :: PHYSICAL_DEVICE_ADDRESS_BINDING_REPORT_FEATURES_EXT; VK_STRUCTURE_TYPE_DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT :: DEVICE_ADDRESS_BINDING_CALLBACK_DATA_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_DEPTH_CLIP_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT :: PIPELINE_VIEWPORT_DEPTH_CLIP_CONTROL_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT :: PHYSICAL_DEVICE_PRIMITIVE_TOPOLOGY_LIST_RESTART_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT :: PHYSICAL_DEVICE_PRESENT_MODE_FIFO_LATEST_READY_FEATURES_EXT; VK_STRUCTURE_TYPE_IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA :: IMPORT_MEMORY_ZIRCON_HANDLE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA :: MEMORY_ZIRCON_HANDLE_PROPERTIES_FUCHSIA; VK_STRUCTURE_TYPE_MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA :: MEMORY_GET_ZIRCON_HANDLE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA :: IMPORT_SEMAPHORE_ZIRCON_HANDLE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA :: SEMAPHORE_GET_ZIRCON_HANDLE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CREATE_INFO_FUCHSIA :: BUFFER_COLLECTION_CREATE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA :: IMPORT_MEMORY_BUFFER_COLLECTION_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA :: BUFFER_COLLECTION_IMAGE_CREATE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_COLLECTION_PROPERTIES_FUCHSIA :: BUFFER_COLLECTION_PROPERTIES_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_CONSTRAINTS_INFO_FUCHSIA :: BUFFER_CONSTRAINTS_INFO_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA :: BUFFER_COLLECTION_BUFFER_CREATE_INFO_FUCHSIA; VK_STRUCTURE_TYPE_IMAGE_CONSTRAINTS_INFO_FUCHSIA :: IMAGE_CONSTRAINTS_INFO_FUCHSIA; VK_STRUCTURE_TYPE_IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA :: IMAGE_FORMAT_CONSTRAINTS_INFO_FUCHSIA; VK_STRUCTURE_TYPE_SYSMEM_COLOR_SPACE_FUCHSIA :: SYSMEM_COLOR_SPACE_FUCHSIA; VK_STRUCTURE_TYPE_BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA :: BUFFER_COLLECTION_CONSTRAINTS_INFO_FUCHSIA; VK_STRUCTURE_TYPE_SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI :: SUBPASS_SHADING_PIPELINE_CREATE_INFO_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI :: PHYSICAL_DEVICE_SUBPASS_SHADING_FEATURES_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI :: PHYSICAL_DEVICE_SUBPASS_SHADING_PROPERTIES_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI :: PHYSICAL_DEVICE_INVOCATION_MASK_FEATURES_HUAWEI; VK_STRUCTURE_TYPE_MEMORY_GET_REMOTE_ADDRESS_INFO_NV :: MEMORY_GET_REMOTE_ADDRESS_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV :: PHYSICAL_DEVICE_EXTERNAL_MEMORY_RDMA_FEATURES_NV; VK_STRUCTURE_TYPE_PIPELINE_PROPERTIES_IDENTIFIER_EXT :: PIPELINE_PROPERTIES_IDENTIFIER_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT :: PHYSICAL_DEVICE_PIPELINE_PROPERTIES_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAME_BOUNDARY_FEATURES_EXT :: PHYSICAL_DEVICE_FRAME_BOUNDARY_FEATURES_EXT; VK_STRUCTURE_TYPE_FRAME_BOUNDARY_EXT :: FRAME_BOUNDARY_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT :: PHYSICAL_DEVICE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_FEATURES_EXT; VK_STRUCTURE_TYPE_SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT :: SUBPASS_RESOLVE_PERFORMANCE_QUERY_EXT; VK_STRUCTURE_TYPE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT :: MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT :: PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_2_FEATURES_EXT; VK_STRUCTURE_TYPE_SCREEN_SURFACE_CREATE_INFO_QNX :: SCREEN_SURFACE_CREATE_INFO_QNX; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT :: PHYSICAL_DEVICE_COLOR_WRITE_ENABLE_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_COLOR_WRITE_CREATE_INFO_EXT :: PIPELINE_COLOR_WRITE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT :: PHYSICAL_DEVICE_PRIMITIVES_GENERATED_QUERY_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR :: PHYSICAL_DEVICE_RAY_TRACING_MAINTENANCE_1_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_VIEW_MIN_LOD_FEATURES_EXT; VK_STRUCTURE_TYPE_IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT :: IMAGE_VIEW_MIN_LOD_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT :: PHYSICAL_DEVICE_MULTI_DRAW_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT :: PHYSICAL_DEVICE_MULTI_DRAW_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_2D_VIEW_OF_3D_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_TILE_IMAGE_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT :: PHYSICAL_DEVICE_SHADER_TILE_IMAGE_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MICROMAP_BUILD_INFO_EXT :: MICROMAP_BUILD_INFO_EXT; VK_STRUCTURE_TYPE_MICROMAP_VERSION_INFO_EXT :: MICROMAP_VERSION_INFO_EXT; VK_STRUCTURE_TYPE_COPY_MICROMAP_INFO_EXT :: COPY_MICROMAP_INFO_EXT; VK_STRUCTURE_TYPE_COPY_MICROMAP_TO_MEMORY_INFO_EXT :: COPY_MICROMAP_TO_MEMORY_INFO_EXT; VK_STRUCTURE_TYPE_COPY_MEMORY_TO_MICROMAP_INFO_EXT :: COPY_MEMORY_TO_MICROMAP_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT :: PHYSICAL_DEVICE_OPACITY_MICROMAP_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT :: PHYSICAL_DEVICE_OPACITY_MICROMAP_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MICROMAP_CREATE_INFO_EXT :: MICROMAP_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_MICROMAP_BUILD_SIZES_INFO_EXT :: MICROMAP_BUILD_SIZES_INFO_EXT; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT :: ACCELERATION_STRUCTURE_TRIANGLES_OPACITY_MICROMAP_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI :: PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_FEATURES_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI :: PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_PROPERTIES_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI :: PHYSICAL_DEVICE_CLUSTER_CULLING_SHADER_VRS_FEATURES_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT :: PHYSICAL_DEVICE_BORDER_COLOR_SWIZZLE_FEATURES_EXT; VK_STRUCTURE_TYPE_SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT :: SAMPLER_BORDER_COLOR_COMPONENT_MAPPING_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT :: PHYSICAL_DEVICE_PAGEABLE_DEVICE_LOCAL_MEMORY_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM :: PHYSICAL_DEVICE_SHADER_CORE_PROPERTIES_ARM; VK_STRUCTURE_TYPE_DEVICE_QUEUE_SHADER_CORE_CONTROL_CREATE_INFO_ARM :: DEVICE_QUEUE_SHADER_CORE_CONTROL_CREATE_INFO_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM :: PHYSICAL_DEVICE_SCHEDULING_CONTROLS_FEATURES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_PROPERTIES_ARM :: PHYSICAL_DEVICE_SCHEDULING_CONTROLS_PROPERTIES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_SLICED_VIEW_OF_3D_FEATURES_EXT; VK_STRUCTURE_TYPE_IMAGE_VIEW_SLICED_CREATE_INFO_EXT :: IMAGE_VIEW_SLICED_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE :: PHYSICAL_DEVICE_DESCRIPTOR_SET_HOST_MAPPING_FEATURES_VALVE; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_BINDING_REFERENCE_VALVE :: DESCRIPTOR_SET_BINDING_REFERENCE_VALVE; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE :: DESCRIPTOR_SET_LAYOUT_HOST_MAPPING_INFO_VALVE; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT :: PHYSICAL_DEVICE_NON_SEAMLESS_CUBE_MAP_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM :: PHYSICAL_DEVICE_RENDER_PASS_STRIPED_FEATURES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RENDER_PASS_STRIPED_PROPERTIES_ARM :: PHYSICAL_DEVICE_RENDER_PASS_STRIPED_PROPERTIES_ARM; VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_BEGIN_INFO_ARM :: RENDER_PASS_STRIPE_BEGIN_INFO_ARM; VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_INFO_ARM :: RENDER_PASS_STRIPE_INFO_ARM; VK_STRUCTURE_TYPE_RENDER_PASS_STRIPE_SUBMIT_INFO_ARM :: RENDER_PASS_STRIPE_SUBMIT_INFO_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV :: PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV :: PHYSICAL_DEVICE_COPY_MEMORY_INDIRECT_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV :: PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV :: PHYSICAL_DEVICE_MEMORY_DECOMPRESSION_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV :: PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_COMPUTE_FEATURES_NV; VK_STRUCTURE_TYPE_COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV :: COMPUTE_PIPELINE_INDIRECT_BUFFER_INFO_NV; VK_STRUCTURE_TYPE_PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV :: PIPELINE_INDIRECT_DEVICE_ADDRESS_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_LINEAR_SWEPT_SPHERES_FEATURES_NV :: PHYSICAL_DEVICE_RAY_TRACING_LINEAR_SWEPT_SPHERES_FEATURES_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV :: ACCELERATION_STRUCTURE_GEOMETRY_LINEAR_SWEPT_SPHERES_DATA_NV; VK_STRUCTURE_TYPE_ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV :: ACCELERATION_STRUCTURE_GEOMETRY_SPHERES_DATA_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV :: PHYSICAL_DEVICE_LINEAR_COLOR_ATTACHMENT_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_MAXIMAL_RECONVERGENCE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_COMPRESSION_CONTROL_SWAPCHAIN_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM :: PHYSICAL_DEVICE_IMAGE_PROCESSING_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM :: PHYSICAL_DEVICE_IMAGE_PROCESSING_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM :: IMAGE_VIEW_SAMPLE_WEIGHT_CREATE_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT :: PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT :: PHYSICAL_DEVICE_NESTED_COMMAND_BUFFER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT :: EXTERNAL_MEMORY_ACQUIRE_UNMODIFIED_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT :: PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT :: PHYSICAL_DEVICE_EXTENDED_DYNAMIC_STATE_3_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT :: PHYSICAL_DEVICE_SUBPASS_MERGE_FEEDBACK_FEATURES_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_CONTROL_EXT :: RENDER_PASS_CREATION_CONTROL_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT :: RENDER_PASS_CREATION_FEEDBACK_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT :: RENDER_PASS_SUBPASS_FEEDBACK_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_INFO_LUNARG :: DIRECT_DRIVER_LOADING_INFO_LUNARG; VK_STRUCTURE_TYPE_DIRECT_DRIVER_LOADING_LIST_LUNARG :: DIRECT_DRIVER_LOADING_LIST_LUNARG; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT :: PHYSICAL_DEVICE_SHADER_MODULE_IDENTIFIER_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT :: PIPELINE_SHADER_STAGE_MODULE_IDENTIFIER_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_SHADER_MODULE_IDENTIFIER_EXT :: SHADER_MODULE_IDENTIFIER_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT :: PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV :: PHYSICAL_DEVICE_OPTICAL_FLOW_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV :: PHYSICAL_DEVICE_OPTICAL_FLOW_PROPERTIES_NV; VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV :: OPTICAL_FLOW_IMAGE_FORMAT_INFO_NV; VK_STRUCTURE_TYPE_OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV :: OPTICAL_FLOW_IMAGE_FORMAT_PROPERTIES_NV; VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_INFO_NV :: OPTICAL_FLOW_SESSION_CREATE_INFO_NV; VK_STRUCTURE_TYPE_OPTICAL_FLOW_EXECUTE_INFO_NV :: OPTICAL_FLOW_EXECUTE_INFO_NV; VK_STRUCTURE_TYPE_OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV :: OPTICAL_FLOW_SESSION_CREATE_PRIVATE_DATA_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT :: PHYSICAL_DEVICE_LEGACY_DITHERING_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_FEATURES_ANDROID :: PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_FEATURES_ANDROID; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID :: PHYSICAL_DEVICE_EXTERNAL_FORMAT_RESOLVE_PROPERTIES_ANDROID; VK_STRUCTURE_TYPE_ANDROID_HARDWARE_BUFFER_FORMAT_RESOLVE_PROPERTIES_ANDROID :: ANDROID_HARDWARE_BUFFER_FORMAT_RESOLVE_PROPERTIES_ANDROID; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD :: PHYSICAL_DEVICE_ANTI_LAG_FEATURES_AMD; VK_STRUCTURE_TYPE_ANTI_LAG_DATA_AMD :: ANTI_LAG_DATA_AMD; VK_STRUCTURE_TYPE_ANTI_LAG_PRESENTATION_INFO_AMD :: ANTI_LAG_PRESENTATION_INFO_AMD; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR :: PHYSICAL_DEVICE_RAY_TRACING_POSITION_FETCH_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_OBJECT_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT :: PHYSICAL_DEVICE_SHADER_OBJECT_PROPERTIES_EXT; VK_STRUCTURE_TYPE_SHADER_CREATE_INFO_EXT :: SHADER_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR :: PHYSICAL_DEVICE_PIPELINE_BINARY_FEATURES_KHR; VK_STRUCTURE_TYPE_PIPELINE_BINARY_CREATE_INFO_KHR :: PIPELINE_BINARY_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_BINARY_INFO_KHR :: PIPELINE_BINARY_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_BINARY_KEY_KHR :: PIPELINE_BINARY_KEY_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR :: PHYSICAL_DEVICE_PIPELINE_BINARY_PROPERTIES_KHR; VK_STRUCTURE_TYPE_RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR :: RELEASE_CAPTURED_PIPELINE_DATA_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_BINARY_DATA_INFO_KHR :: PIPELINE_BINARY_DATA_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_CREATE_INFO_KHR :: PIPELINE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR :: DEVICE_PIPELINE_BINARY_INTERNAL_CACHE_CONTROL_KHR; VK_STRUCTURE_TYPE_PIPELINE_BINARY_HANDLES_INFO_KHR :: PIPELINE_BINARY_HANDLES_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM :: PHYSICAL_DEVICE_TILE_PROPERTIES_FEATURES_QCOM; VK_STRUCTURE_TYPE_TILE_PROPERTIES_QCOM :: TILE_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC :: PHYSICAL_DEVICE_AMIGO_PROFILING_FEATURES_SEC; VK_STRUCTURE_TYPE_AMIGO_PROFILING_SUBMIT_INFO_SEC :: AMIGO_PROFILING_SUBMIT_INFO_SEC; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM :: PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_VIEWPORTS_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV :: PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV :: PHYSICAL_DEVICE_RAY_TRACING_INVOCATION_REORDER_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV :: PHYSICAL_DEVICE_COOPERATIVE_VECTOR_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV :: PHYSICAL_DEVICE_COOPERATIVE_VECTOR_PROPERTIES_NV; VK_STRUCTURE_TYPE_COOPERATIVE_VECTOR_PROPERTIES_NV :: COOPERATIVE_VECTOR_PROPERTIES_NV; VK_STRUCTURE_TYPE_CONVERT_COOPERATIVE_VECTOR_MATRIX_INFO_NV :: CONVERT_COOPERATIVE_VECTOR_MATRIX_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV :: PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV :: PHYSICAL_DEVICE_EXTENDED_SPARSE_ADDRESS_SPACE_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT :: PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_EXT; VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT :: MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT :: PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT :: PHYSICAL_DEVICE_LEGACY_VERTEX_ATTRIBUTES_PROPERTIES_EXT; VK_STRUCTURE_TYPE_LAYER_SETTINGS_CREATE_INFO_EXT :: LAYER_SETTINGS_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM :: PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_FEATURES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM :: PHYSICAL_DEVICE_SHADER_CORE_BUILTINS_PROPERTIES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT :: PHYSICAL_DEVICE_PIPELINE_LIBRARY_GROUP_HANDLES_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT :: PHYSICAL_DEVICE_DYNAMIC_RENDERING_UNUSED_ATTACHMENTS_FEATURES_EXT; VK_STRUCTURE_TYPE_LATENCY_SLEEP_MODE_INFO_NV :: LATENCY_SLEEP_MODE_INFO_NV; VK_STRUCTURE_TYPE_LATENCY_SLEEP_INFO_NV :: LATENCY_SLEEP_INFO_NV; VK_STRUCTURE_TYPE_SET_LATENCY_MARKER_INFO_NV :: SET_LATENCY_MARKER_INFO_NV; VK_STRUCTURE_TYPE_GET_LATENCY_MARKER_INFO_NV :: GET_LATENCY_MARKER_INFO_NV; VK_STRUCTURE_TYPE_LATENCY_TIMINGS_FRAME_REPORT_NV :: LATENCY_TIMINGS_FRAME_REPORT_NV; VK_STRUCTURE_TYPE_LATENCY_SUBMISSION_PRESENT_ID_NV :: LATENCY_SUBMISSION_PRESENT_ID_NV; VK_STRUCTURE_TYPE_OUT_OF_BAND_QUEUE_TYPE_INFO_NV :: OUT_OF_BAND_QUEUE_TYPE_INFO_NV; VK_STRUCTURE_TYPE_SWAPCHAIN_LATENCY_CREATE_INFO_NV :: SWAPCHAIN_LATENCY_CREATE_INFO_NV; VK_STRUCTURE_TYPE_LATENCY_SURFACE_CAPABILITIES_NV :: LATENCY_SURFACE_CAPABILITIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_FEATURES_KHR; VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_PROPERTIES_KHR :: COOPERATIVE_MATRIX_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM :: PHYSICAL_DEVICE_MULTIVIEW_PER_VIEW_RENDER_AREAS_FEATURES_QCOM; VK_STRUCTURE_TYPE_MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM :: MULTIVIEW_PER_VIEW_RENDER_AREAS_RENDER_PASS_BEGIN_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR :: PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR :: PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_CAPABILITIES_KHR :: VIDEO_DECODE_AV1_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PICTURE_INFO_KHR :: VIDEO_DECODE_AV1_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_PROFILE_INFO_KHR :: VIDEO_DECODE_AV1_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_DECODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR :: VIDEO_DECODE_AV1_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_CAPABILITIES_KHR :: VIDEO_ENCODE_AV1_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_ENCODE_AV1_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PICTURE_INFO_KHR :: VIDEO_ENCODE_AV1_PICTURE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_DPB_SLOT_INFO_KHR :: VIDEO_ENCODE_AV1_DPB_SLOT_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_AV1_FEATURES_KHR :: PHYSICAL_DEVICE_VIDEO_ENCODE_AV1_FEATURES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_PROFILE_INFO_KHR :: VIDEO_ENCODE_AV1_PROFILE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_INFO_KHR :: VIDEO_ENCODE_AV1_RATE_CONTROL_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_RATE_CONTROL_LAYER_INFO_KHR :: VIDEO_ENCODE_AV1_RATE_CONTROL_LAYER_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUALITY_LEVEL_PROPERTIES_KHR :: VIDEO_ENCODE_AV1_QUALITY_LEVEL_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_SESSION_CREATE_INFO_KHR :: VIDEO_ENCODE_AV1_SESSION_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_GOP_REMAINING_FRAME_INFO_KHR :: VIDEO_ENCODE_AV1_GOP_REMAINING_FRAME_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR :: PHYSICAL_DEVICE_VIDEO_MAINTENANCE_1_FEATURES_KHR; VK_STRUCTURE_TYPE_VIDEO_INLINE_QUERY_INFO_KHR :: VIDEO_INLINE_QUERY_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PER_STAGE_DESCRIPTOR_SET_FEATURES_NV :: PHYSICAL_DEVICE_PER_STAGE_DESCRIPTOR_SET_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_FEATURES_QCOM :: PHYSICAL_DEVICE_IMAGE_PROCESSING_2_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_PROCESSING_2_PROPERTIES_QCOM :: PHYSICAL_DEVICE_IMAGE_PROCESSING_2_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_SAMPLER_BLOCK_MATCH_WINDOW_CREATE_INFO_QCOM :: SAMPLER_BLOCK_MATCH_WINDOW_CREATE_INFO_QCOM; VK_STRUCTURE_TYPE_SAMPLER_CUBIC_WEIGHTS_CREATE_INFO_QCOM :: SAMPLER_CUBIC_WEIGHTS_CREATE_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_WEIGHTS_FEATURES_QCOM :: PHYSICAL_DEVICE_CUBIC_WEIGHTS_FEATURES_QCOM; VK_STRUCTURE_TYPE_BLIT_IMAGE_CUBIC_WEIGHTS_INFO_QCOM :: BLIT_IMAGE_CUBIC_WEIGHTS_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_YCBCR_DEGAMMA_FEATURES_QCOM :: PHYSICAL_DEVICE_YCBCR_DEGAMMA_FEATURES_QCOM; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_YCBCR_DEGAMMA_CREATE_INFO_QCOM :: SAMPLER_YCBCR_CONVERSION_YCBCR_DEGAMMA_CREATE_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM :: PHYSICAL_DEVICE_CUBIC_CLAMP_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT :: PHYSICAL_DEVICE_ATTACHMENT_FEEDBACK_LOOP_DYNAMIC_STATE_FEATURES_EXT; VK_STRUCTURE_TYPE_SCREEN_BUFFER_PROPERTIES_QNX :: SCREEN_BUFFER_PROPERTIES_QNX; VK_STRUCTURE_TYPE_SCREEN_BUFFER_FORMAT_PROPERTIES_QNX :: SCREEN_BUFFER_FORMAT_PROPERTIES_QNX; VK_STRUCTURE_TYPE_IMPORT_SCREEN_BUFFER_INFO_QNX :: IMPORT_SCREEN_BUFFER_INFO_QNX; VK_STRUCTURE_TYPE_EXTERNAL_FORMAT_QNX :: EXTERNAL_FORMAT_QNX; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX :: PHYSICAL_DEVICE_EXTERNAL_MEMORY_SCREEN_BUFFER_FEATURES_QNX; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT :: PHYSICAL_DEVICE_LAYERED_DRIVER_PROPERTIES_MSFT; VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_KHR :: CALIBRATED_TIMESTAMP_INFO_KHR; VK_STRUCTURE_TYPE_SET_DESCRIPTOR_BUFFER_OFFSETS_INFO_EXT :: SET_DESCRIPTOR_BUFFER_OFFSETS_INFO_EXT; VK_STRUCTURE_TYPE_BIND_DESCRIPTOR_BUFFER_EMBEDDED_SAMPLERS_INFO_EXT :: BIND_DESCRIPTOR_BUFFER_EMBEDDED_SAMPLERS_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV :: PHYSICAL_DEVICE_DESCRIPTOR_POOL_OVERALLOCATION_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_MEMORY_HEAP_FEATURES_QCOM :: PHYSICAL_DEVICE_TILE_MEMORY_HEAP_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TILE_MEMORY_HEAP_PROPERTIES_QCOM :: PHYSICAL_DEVICE_TILE_MEMORY_HEAP_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_TILE_MEMORY_REQUIREMENTS_QCOM :: TILE_MEMORY_REQUIREMENTS_QCOM; VK_STRUCTURE_TYPE_TILE_MEMORY_BIND_INFO_QCOM :: TILE_MEMORY_BIND_INFO_QCOM; VK_STRUCTURE_TYPE_TILE_MEMORY_SIZE_INFO_QCOM :: TILE_MEMORY_SIZE_INFO_QCOM; VK_STRUCTURE_TYPE_DISPLAY_SURFACE_STEREO_CREATE_INFO_NV :: DISPLAY_SURFACE_STEREO_CREATE_INFO_NV; VK_STRUCTURE_TYPE_DISPLAY_MODE_STEREO_PROPERTIES_NV :: DISPLAY_MODE_STEREO_PROPERTIES_NV; VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_CAPABILITIES_KHR :: VIDEO_ENCODE_QUANTIZATION_MAP_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_FORMAT_QUANTIZATION_MAP_PROPERTIES_KHR :: VIDEO_FORMAT_QUANTIZATION_MAP_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_INFO_KHR :: VIDEO_ENCODE_QUANTIZATION_MAP_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_QUANTIZATION_MAP_SESSION_PARAMETERS_CREATE_INFO_KHR :: VIDEO_ENCODE_QUANTIZATION_MAP_SESSION_PARAMETERS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_ENCODE_QUANTIZATION_MAP_FEATURES_KHR :: PHYSICAL_DEVICE_VIDEO_ENCODE_QUANTIZATION_MAP_FEATURES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H264_QUANTIZATION_MAP_CAPABILITIES_KHR :: VIDEO_ENCODE_H264_QUANTIZATION_MAP_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_H265_QUANTIZATION_MAP_CAPABILITIES_KHR :: VIDEO_ENCODE_H265_QUANTIZATION_MAP_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_FORMAT_H265_QUANTIZATION_MAP_PROPERTIES_KHR :: VIDEO_FORMAT_H265_QUANTIZATION_MAP_PROPERTIES_KHR; VK_STRUCTURE_TYPE_VIDEO_ENCODE_AV1_QUANTIZATION_MAP_CAPABILITIES_KHR :: VIDEO_ENCODE_AV1_QUANTIZATION_MAP_CAPABILITIES_KHR; VK_STRUCTURE_TYPE_VIDEO_FORMAT_AV1_QUANTIZATION_MAP_PROPERTIES_KHR :: VIDEO_FORMAT_AV1_QUANTIZATION_MAP_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV :: PHYSICAL_DEVICE_RAW_ACCESS_CHAINS_FEATURES_NV; VK_STRUCTURE_TYPE_EXTERNAL_COMPUTE_QUEUE_DEVICE_CREATE_INFO_NV :: EXTERNAL_COMPUTE_QUEUE_DEVICE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_EXTERNAL_COMPUTE_QUEUE_CREATE_INFO_NV :: EXTERNAL_COMPUTE_QUEUE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_EXTERNAL_COMPUTE_QUEUE_DATA_PARAMS_NV :: EXTERNAL_COMPUTE_QUEUE_DATA_PARAMS_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_COMPUTE_QUEUE_PROPERTIES_NV :: PHYSICAL_DEVICE_EXTERNAL_COMPUTE_QUEUE_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_RELAXED_EXTENDED_INSTRUCTION_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV :: PHYSICAL_DEVICE_COMMAND_BUFFER_INHERITANCE_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_7_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_7_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR :: PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_LIST_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_KHR :: PHYSICAL_DEVICE_LAYERED_API_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR :: PHYSICAL_DEVICE_LAYERED_API_VULKAN_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT16_VECTOR_FEATURES_NV :: PHYSICAL_DEVICE_SHADER_ATOMIC_FLOAT16_VECTOR_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_REPLICATED_COMPOSITES_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_REPLICATED_COMPOSITES_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV :: PHYSICAL_DEVICE_RAY_TRACING_VALIDATION_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_FEATURES_NV :: PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_PROPERTIES_NV :: PHYSICAL_DEVICE_CLUSTER_ACCELERATION_STRUCTURE_PROPERTIES_NV; VK_STRUCTURE_TYPE_CLUSTER_ACCELERATION_STRUCTURE_CLUSTERS_BOTTOM_LEVEL_INPUT_NV :: CLUSTER_ACCELERATION_STRUCTURE_CLUSTERS_BOTTOM_LEVEL_INPUT_NV; VK_STRUCTURE_TYPE_CLUSTER_ACCELERATION_STRUCTURE_TRIANGLE_CLUSTER_INPUT_NV :: CLUSTER_ACCELERATION_STRUCTURE_TRIANGLE_CLUSTER_INPUT_NV; VK_STRUCTURE_TYPE_CLUSTER_ACCELERATION_STRUCTURE_MOVE_OBJECTS_INPUT_NV :: CLUSTER_ACCELERATION_STRUCTURE_MOVE_OBJECTS_INPUT_NV; VK_STRUCTURE_TYPE_CLUSTER_ACCELERATION_STRUCTURE_INPUT_INFO_NV :: CLUSTER_ACCELERATION_STRUCTURE_INPUT_INFO_NV; VK_STRUCTURE_TYPE_CLUSTER_ACCELERATION_STRUCTURE_COMMANDS_INFO_NV :: CLUSTER_ACCELERATION_STRUCTURE_COMMANDS_INFO_NV; VK_STRUCTURE_TYPE_RAY_TRACING_PIPELINE_CLUSTER_ACCELERATION_STRUCTURE_CREATE_INFO_NV :: RAY_TRACING_PIPELINE_CLUSTER_ACCELERATION_STRUCTURE_CREATE_INFO_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_FEATURES_NV :: PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_PROPERTIES_NV :: PHYSICAL_DEVICE_PARTITIONED_ACCELERATION_STRUCTURE_PROPERTIES_NV; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_PARTITIONED_ACCELERATION_STRUCTURE_NV :: WRITE_DESCRIPTOR_SET_PARTITIONED_ACCELERATION_STRUCTURE_NV; VK_STRUCTURE_TYPE_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCES_INPUT_NV :: PARTITIONED_ACCELERATION_STRUCTURE_INSTANCES_INPUT_NV; VK_STRUCTURE_TYPE_BUILD_PARTITIONED_ACCELERATION_STRUCTURE_INFO_NV :: BUILD_PARTITIONED_ACCELERATION_STRUCTURE_INFO_NV; VK_STRUCTURE_TYPE_PARTITIONED_ACCELERATION_STRUCTURE_FLAGS_NV :: PARTITIONED_ACCELERATION_STRUCTURE_FLAGS_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT :: PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT :: PHYSICAL_DEVICE_DEVICE_GENERATED_COMMANDS_PROPERTIES_EXT; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_EXT :: GENERATED_COMMANDS_MEMORY_REQUIREMENTS_INFO_EXT; VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_CREATE_INFO_EXT :: INDIRECT_EXECUTION_SET_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_INFO_EXT :: GENERATED_COMMANDS_INFO_EXT; VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_EXT :: INDIRECT_COMMANDS_LAYOUT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_INDIRECT_COMMANDS_LAYOUT_TOKEN_EXT :: INDIRECT_COMMANDS_LAYOUT_TOKEN_EXT; VK_STRUCTURE_TYPE_WRITE_INDIRECT_EXECUTION_SET_PIPELINE_EXT :: WRITE_INDIRECT_EXECUTION_SET_PIPELINE_EXT; VK_STRUCTURE_TYPE_WRITE_INDIRECT_EXECUTION_SET_SHADER_EXT :: WRITE_INDIRECT_EXECUTION_SET_SHADER_EXT; VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_PIPELINE_INFO_EXT :: INDIRECT_EXECUTION_SET_PIPELINE_INFO_EXT; VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_SHADER_INFO_EXT :: INDIRECT_EXECUTION_SET_SHADER_INFO_EXT; VK_STRUCTURE_TYPE_INDIRECT_EXECUTION_SET_SHADER_LAYOUT_INFO_EXT :: INDIRECT_EXECUTION_SET_SHADER_LAYOUT_INFO_EXT; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_PIPELINE_INFO_EXT :: GENERATED_COMMANDS_PIPELINE_INFO_EXT; VK_STRUCTURE_TYPE_GENERATED_COMMANDS_SHADER_INFO_EXT :: GENERATED_COMMANDS_SHADER_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_8_FEATURES_KHR; VK_STRUCTURE_TYPE_MEMORY_BARRIER_ACCESS_FLAGS_3_KHR :: MEMORY_BARRIER_ACCESS_FLAGS_3_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA :: PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_FEATURES_MESA; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA :: PHYSICAL_DEVICE_IMAGE_ALIGNMENT_CONTROL_PROPERTIES_MESA; VK_STRUCTURE_TYPE_IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA :: IMAGE_ALIGNMENT_CONTROL_CREATE_INFO_MESA; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_DEPTH_CLAMP_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT :: PIPELINE_VIEWPORT_DEPTH_CLAMP_CONTROL_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VIDEO_MAINTENANCE_2_FEATURES_KHR :: PHYSICAL_DEVICE_VIDEO_MAINTENANCE_2_FEATURES_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H264_INLINE_SESSION_PARAMETERS_INFO_KHR :: VIDEO_DECODE_H264_INLINE_SESSION_PARAMETERS_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_H265_INLINE_SESSION_PARAMETERS_INFO_KHR :: VIDEO_DECODE_H265_INLINE_SESSION_PARAMETERS_INFO_KHR; VK_STRUCTURE_TYPE_VIDEO_DECODE_AV1_INLINE_SESSION_PARAMETERS_INFO_KHR :: VIDEO_DECODE_AV1_INLINE_SESSION_PARAMETERS_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HDR_VIVID_FEATURES_HUAWEI :: PHYSICAL_DEVICE_HDR_VIVID_FEATURES_HUAWEI; VK_STRUCTURE_TYPE_HDR_VIVID_DYNAMIC_METADATA_HUAWEI :: HDR_VIVID_DYNAMIC_METADATA_HUAWEI; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_FEATURES_NV :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_FEATURES_NV; VK_STRUCTURE_TYPE_COOPERATIVE_MATRIX_FLEXIBLE_DIMENSIONS_PROPERTIES_NV :: COOPERATIVE_MATRIX_FLEXIBLE_DIMENSIONS_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_PROPERTIES_NV :: PHYSICAL_DEVICE_COOPERATIVE_MATRIX_2_PROPERTIES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM :: PHYSICAL_DEVICE_PIPELINE_OPACITY_MICROMAP_FEATURES_ARM; VK_STRUCTURE_TYPE_IMPORT_MEMORY_METAL_HANDLE_INFO_EXT :: IMPORT_MEMORY_METAL_HANDLE_INFO_EXT; VK_STRUCTURE_TYPE_MEMORY_METAL_HANDLE_PROPERTIES_EXT :: MEMORY_METAL_HANDLE_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MEMORY_GET_METAL_HANDLE_INFO_EXT :: MEMORY_GET_METAL_HANDLE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_KHR :: PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_ROBUSTNESS_FEATURES_EXT :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_ROBUSTNESS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_EXT; VK_STRUCTURE_TYPE_RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT :: RENDER_PASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_EXT; VK_STRUCTURE_TYPE_RENDERING_END_INFO_EXT :: RENDERING_END_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES :: PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES :: PHYSICAL_DEVICE_SHADER_DRAW_PARAMETER_FEATURES; VK_STRUCTURE_TYPE_DEBUG_REPORT_CREATE_INFO_EXT :: DEBUG_REPORT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_RENDERING_INFO_KHR :: RENDERING_INFO_KHR; VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_INFO_KHR :: RENDERING_ATTACHMENT_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_RENDERING_CREATE_INFO_KHR :: PIPELINE_RENDERING_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR :: PHYSICAL_DEVICE_DYNAMIC_RENDERING_FEATURES_KHR; VK_STRUCTURE_TYPE_COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR :: COMMAND_BUFFER_INHERITANCE_RENDERING_INFO_KHR; VK_STRUCTURE_TYPE_RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR :: RENDER_PASS_MULTIVIEW_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR :: PHYSICAL_DEVICE_MULTIVIEW_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR :: PHYSICAL_DEVICE_MULTIVIEW_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FEATURES_2_KHR :: PHYSICAL_DEVICE_FEATURES_2_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PROPERTIES_2_KHR :: PHYSICAL_DEVICE_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_2_KHR :: FORMAT_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_IMAGE_FORMAT_PROPERTIES_2_KHR :: IMAGE_FORMAT_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR :: PHYSICAL_DEVICE_IMAGE_FORMAT_INFO_2_KHR; VK_STRUCTURE_TYPE_QUEUE_FAMILY_PROPERTIES_2_KHR :: QUEUE_FAMILY_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR :: PHYSICAL_DEVICE_MEMORY_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR :: SPARSE_IMAGE_FORMAT_PROPERTIES_2_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR :: PHYSICAL_DEVICE_SPARSE_IMAGE_FORMAT_INFO_2_KHR; VK_STRUCTURE_TYPE_MEMORY_ALLOCATE_FLAGS_INFO_KHR :: MEMORY_ALLOCATE_FLAGS_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR :: DEVICE_GROUP_RENDER_PASS_BEGIN_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR :: DEVICE_GROUP_COMMAND_BUFFER_BEGIN_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_SUBMIT_INFO_KHR :: DEVICE_GROUP_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_BIND_SPARSE_INFO_KHR :: DEVICE_GROUP_BIND_SPARSE_INFO_KHR; VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR :: BIND_BUFFER_MEMORY_DEVICE_GROUP_INFO_KHR; VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR :: BIND_IMAGE_MEMORY_DEVICE_GROUP_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT :: PHYSICAL_DEVICE_TEXTURE_COMPRESSION_ASTC_HDR_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_ROBUSTNESS_CREATE_INFO_EXT :: PIPELINE_ROBUSTNESS_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT :: PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT :: PHYSICAL_DEVICE_PIPELINE_ROBUSTNESS_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR :: PHYSICAL_DEVICE_GROUP_PROPERTIES_KHR; VK_STRUCTURE_TYPE_DEVICE_GROUP_DEVICE_CREATE_INFO_KHR :: DEVICE_GROUP_DEVICE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR :: PHYSICAL_DEVICE_EXTERNAL_IMAGE_FORMAT_INFO_KHR; VK_STRUCTURE_TYPE_EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR :: EXTERNAL_IMAGE_FORMAT_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR :: PHYSICAL_DEVICE_EXTERNAL_BUFFER_INFO_KHR; VK_STRUCTURE_TYPE_EXTERNAL_BUFFER_PROPERTIES_KHR :: EXTERNAL_BUFFER_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ID_PROPERTIES_KHR :: PHYSICAL_DEVICE_ID_PROPERTIES_KHR; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR :: EXTERNAL_MEMORY_BUFFER_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR :: EXTERNAL_MEMORY_IMAGE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_EXPORT_MEMORY_ALLOCATE_INFO_KHR :: EXPORT_MEMORY_ALLOCATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR :: PHYSICAL_DEVICE_EXTERNAL_SEMAPHORE_INFO_KHR; VK_STRUCTURE_TYPE_EXTERNAL_SEMAPHORE_PROPERTIES_KHR :: EXTERNAL_SEMAPHORE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_EXPORT_SEMAPHORE_CREATE_INFO_KHR :: EXPORT_SEMAPHORE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR :: PHYSICAL_DEVICE_PUSH_DESCRIPTOR_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_FLOAT16_INT8_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR :: PHYSICAL_DEVICE_FLOAT16_INT8_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR :: PHYSICAL_DEVICE_16BIT_STORAGE_FEATURES_KHR; VK_STRUCTURE_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR :: DESCRIPTOR_UPDATE_TEMPLATE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_SURFACE_CAPABILITIES2_EXT :: SURFACE_CAPABILITIES2_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR :: PHYSICAL_DEVICE_IMAGELESS_FRAMEBUFFER_FEATURES_KHR; VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR :: FRAMEBUFFER_ATTACHMENTS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR :: FRAMEBUFFER_ATTACHMENT_IMAGE_INFO_KHR; VK_STRUCTURE_TYPE_RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR :: RENDER_PASS_ATTACHMENT_BEGIN_INFO_KHR; VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_2_KHR :: ATTACHMENT_DESCRIPTION_2_KHR; VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_2_KHR :: ATTACHMENT_REFERENCE_2_KHR; VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_2_KHR :: SUBPASS_DESCRIPTION_2_KHR; VK_STRUCTURE_TYPE_SUBPASS_DEPENDENCY_2_KHR :: SUBPASS_DEPENDENCY_2_KHR; VK_STRUCTURE_TYPE_RENDER_PASS_CREATE_INFO_2_KHR :: RENDER_PASS_CREATE_INFO_2_KHR; VK_STRUCTURE_TYPE_SUBPASS_BEGIN_INFO_KHR :: SUBPASS_BEGIN_INFO_KHR; VK_STRUCTURE_TYPE_SUBPASS_END_INFO_KHR :: SUBPASS_END_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR :: PHYSICAL_DEVICE_EXTERNAL_FENCE_INFO_KHR; VK_STRUCTURE_TYPE_EXTERNAL_FENCE_PROPERTIES_KHR :: EXTERNAL_FENCE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_EXPORT_FENCE_CREATE_INFO_KHR :: EXPORT_FENCE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR :: PHYSICAL_DEVICE_POINT_CLIPPING_PROPERTIES_KHR; VK_STRUCTURE_TYPE_RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR :: RENDER_PASS_INPUT_ATTACHMENT_ASPECT_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_IMAGE_VIEW_USAGE_CREATE_INFO_KHR :: IMAGE_VIEW_USAGE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR :: PIPELINE_TESSELLATION_DOMAIN_ORIGIN_STATE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR :: PHYSICAL_DEVICE_VARIABLE_POINTERS_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR :: PHYSICAL_DEVICE_VARIABLE_POINTER_FEATURES_KHR; VK_STRUCTURE_TYPE_MEMORY_DEDICATED_REQUIREMENTS_KHR :: MEMORY_DEDICATED_REQUIREMENTS_KHR; VK_STRUCTURE_TYPE_MEMORY_DEDICATED_ALLOCATE_INFO_KHR :: MEMORY_DEDICATED_ALLOCATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT :: PHYSICAL_DEVICE_SAMPLER_FILTER_MINMAX_PROPERTIES_EXT; VK_STRUCTURE_TYPE_SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT :: SAMPLER_REDUCTION_MODE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT :: PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT :: PHYSICAL_DEVICE_INLINE_UNIFORM_BLOCK_PROPERTIES_EXT; VK_STRUCTURE_TYPE_WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT :: WRITE_DESCRIPTOR_SET_INLINE_UNIFORM_BLOCK_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT :: DESCRIPTOR_POOL_INLINE_UNIFORM_BLOCK_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR :: BUFFER_MEMORY_REQUIREMENTS_INFO_2_KHR; VK_STRUCTURE_TYPE_IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR :: IMAGE_MEMORY_REQUIREMENTS_INFO_2_KHR; VK_STRUCTURE_TYPE_IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR :: IMAGE_SPARSE_MEMORY_REQUIREMENTS_INFO_2_KHR; VK_STRUCTURE_TYPE_MEMORY_REQUIREMENTS_2_KHR :: MEMORY_REQUIREMENTS_2_KHR; VK_STRUCTURE_TYPE_SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR :: SPARSE_IMAGE_MEMORY_REQUIREMENTS_2_KHR; VK_STRUCTURE_TYPE_IMAGE_FORMAT_LIST_CREATE_INFO_KHR :: IMAGE_FORMAT_LIST_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_ATTACHMENT_SAMPLE_COUNT_INFO_NV :: ATTACHMENT_SAMPLE_COUNT_INFO_NV; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR :: SAMPLER_YCBCR_CONVERSION_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_INFO_KHR :: SAMPLER_YCBCR_CONVERSION_INFO_KHR; VK_STRUCTURE_TYPE_BIND_IMAGE_PLANE_MEMORY_INFO_KHR :: BIND_IMAGE_PLANE_MEMORY_INFO_KHR; VK_STRUCTURE_TYPE_IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR :: IMAGE_PLANE_MEMORY_REQUIREMENTS_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR :: PHYSICAL_DEVICE_SAMPLER_YCBCR_CONVERSION_FEATURES_KHR; VK_STRUCTURE_TYPE_SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR :: SAMPLER_YCBCR_CONVERSION_IMAGE_FORMAT_PROPERTIES_KHR; VK_STRUCTURE_TYPE_BIND_BUFFER_MEMORY_INFO_KHR :: BIND_BUFFER_MEMORY_INFO_KHR; VK_STRUCTURE_TYPE_BIND_IMAGE_MEMORY_INFO_KHR :: BIND_IMAGE_MEMORY_INFO_KHR; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT :: DESCRIPTOR_SET_LAYOUT_BINDING_FLAGS_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT :: PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT :: PHYSICAL_DEVICE_DESCRIPTOR_INDEXING_PROPERTIES_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT :: DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_ALLOCATE_INFO_EXT; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT :: DESCRIPTOR_SET_VARIABLE_DESCRIPTOR_COUNT_LAYOUT_SUPPORT_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_3_PROPERTIES_KHR; VK_STRUCTURE_TYPE_DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR :: DESCRIPTOR_SET_LAYOUT_SUPPORT_KHR; VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT :: DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_SUBGROUP_EXTENDED_TYPES_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR :: PHYSICAL_DEVICE_8BIT_STORAGE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_ATOMIC_INT64_FEATURES_KHR; VK_STRUCTURE_TYPE_CALIBRATED_TIMESTAMP_INFO_EXT :: CALIBRATED_TIMESTAMP_INFO_EXT; VK_STRUCTURE_TYPE_DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR :: DEVICE_QUEUE_GLOBAL_PRIORITY_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR :: PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_KHR; VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR :: QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT :: PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT :: PIPELINE_CREATION_FEEDBACK_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR :: PHYSICAL_DEVICE_DRIVER_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR :: PHYSICAL_DEVICE_FLOAT_CONTROLS_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR :: PHYSICAL_DEVICE_DEPTH_STENCIL_RESOLVE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR :: SUBPASS_DESCRIPTION_DEPTH_STENCIL_RESOLVE_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV :: PHYSICAL_DEVICE_COMPUTE_SHADER_DERIVATIVES_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV :: PHYSICAL_DEVICE_FRAGMENT_SHADER_BARYCENTRIC_FEATURES_NV; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR :: PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR :: PHYSICAL_DEVICE_TIMELINE_SEMAPHORE_PROPERTIES_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_TYPE_CREATE_INFO_KHR :: SEMAPHORE_TYPE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR :: TIMELINE_SEMAPHORE_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_WAIT_INFO_KHR :: SEMAPHORE_WAIT_INFO_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_SIGNAL_INFO_KHR :: SEMAPHORE_SIGNAL_INFO_KHR; VK_STRUCTURE_TYPE_QUERY_POOL_CREATE_INFO_INTEL :: QUERY_POOL_CREATE_INFO_INTEL; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR :: PHYSICAL_DEVICE_VULKAN_MEMORY_MODEL_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_TERMINATE_INVOCATION_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT :: PHYSICAL_DEVICE_SCALAR_BLOCK_LAYOUT_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT :: PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: PIPELINE_SHADER_STAGE_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_SUBGROUP_SIZE_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES_KHR :: PHYSICAL_DEVICE_DYNAMIC_RENDERING_LOCAL_READ_FEATURES_KHR; VK_STRUCTURE_TYPE_RENDERING_ATTACHMENT_LOCATION_INFO_KHR :: RENDERING_ATTACHMENT_LOCATION_INFO_KHR; VK_STRUCTURE_TYPE_RENDERING_INPUT_ATTACHMENT_INDEX_INFO_KHR :: RENDERING_INPUT_ATTACHMENT_INDEX_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR :: PHYSICAL_DEVICE_SEPARATE_DEPTH_STENCIL_LAYOUTS_FEATURES_KHR; VK_STRUCTURE_TYPE_ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR :: ATTACHMENT_REFERENCE_STENCIL_LAYOUT_KHR; VK_STRUCTURE_TYPE_ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR :: ATTACHMENT_DESCRIPTION_STENCIL_LAYOUT_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT :: PHYSICAL_DEVICE_BUFFER_ADDRESS_FEATURES_EXT; VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_EXT :: BUFFER_DEVICE_ADDRESS_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT :: PHYSICAL_DEVICE_TOOL_PROPERTIES_EXT; VK_STRUCTURE_TYPE_IMAGE_STENCIL_USAGE_CREATE_INFO_EXT :: IMAGE_STENCIL_USAGE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR :: PHYSICAL_DEVICE_UNIFORM_BUFFER_STANDARD_LAYOUT_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR :: PHYSICAL_DEVICE_BUFFER_DEVICE_ADDRESS_FEATURES_KHR; VK_STRUCTURE_TYPE_BUFFER_DEVICE_ADDRESS_INFO_KHR :: BUFFER_DEVICE_ADDRESS_INFO_KHR; VK_STRUCTURE_TYPE_BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR :: BUFFER_OPAQUE_CAPTURE_ADDRESS_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR :: MEMORY_OPAQUE_CAPTURE_ADDRESS_ALLOCATE_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR :: DEVICE_MEMORY_OPAQUE_CAPTURE_ADDRESS_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT :: PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_EXT; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT :: PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT :: PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT :: PHYSICAL_DEVICE_HOST_QUERY_RESET_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT :: PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT :: PHYSICAL_DEVICE_HOST_IMAGE_COPY_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT :: PHYSICAL_DEVICE_HOST_IMAGE_COPY_PROPERTIES_EXT; VK_STRUCTURE_TYPE_MEMORY_TO_IMAGE_COPY_EXT :: MEMORY_TO_IMAGE_COPY_EXT; VK_STRUCTURE_TYPE_IMAGE_TO_MEMORY_COPY_EXT :: IMAGE_TO_MEMORY_COPY_EXT; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_MEMORY_INFO_EXT :: COPY_IMAGE_TO_MEMORY_INFO_EXT; VK_STRUCTURE_TYPE_COPY_MEMORY_TO_IMAGE_INFO_EXT :: COPY_MEMORY_TO_IMAGE_INFO_EXT; VK_STRUCTURE_TYPE_HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT :: HOST_IMAGE_LAYOUT_TRANSITION_INFO_EXT; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_IMAGE_INFO_EXT :: COPY_IMAGE_TO_IMAGE_INFO_EXT; VK_STRUCTURE_TYPE_SUBRESOURCE_HOST_MEMCPY_SIZE_EXT :: SUBRESOURCE_HOST_MEMCPY_SIZE_EXT; VK_STRUCTURE_TYPE_HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT :: HOST_IMAGE_COPY_DEVICE_PERFORMANCE_QUERY_EXT; VK_STRUCTURE_TYPE_MEMORY_MAP_INFO_KHR :: MEMORY_MAP_INFO_KHR; VK_STRUCTURE_TYPE_MEMORY_UNMAP_INFO_KHR :: MEMORY_UNMAP_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT :: PHYSICAL_DEVICE_SHADER_DEMOTE_TO_HELPER_INVOCATION_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR :: PHYSICAL_DEVICE_SHADER_INTEGER_DOT_PRODUCT_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT :: PHYSICAL_DEVICE_TEXEL_BUFFER_ALIGNMENT_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT :: PHYSICAL_DEVICE_PRIVATE_DATA_FEATURES_EXT; VK_STRUCTURE_TYPE_DEVICE_PRIVATE_DATA_CREATE_INFO_EXT :: DEVICE_PRIVATE_DATA_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PRIVATE_DATA_SLOT_CREATE_INFO_EXT :: PRIVATE_DATA_SLOT_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT :: PHYSICAL_DEVICE_PIPELINE_CREATION_CACHE_CONTROL_FEATURES_EXT; VK_STRUCTURE_TYPE_MEMORY_BARRIER_2_KHR :: MEMORY_BARRIER_2_KHR; VK_STRUCTURE_TYPE_BUFFER_MEMORY_BARRIER_2_KHR :: BUFFER_MEMORY_BARRIER_2_KHR; VK_STRUCTURE_TYPE_IMAGE_MEMORY_BARRIER_2_KHR :: IMAGE_MEMORY_BARRIER_2_KHR; VK_STRUCTURE_TYPE_DEPENDENCY_INFO_KHR :: DEPENDENCY_INFO_KHR; VK_STRUCTURE_TYPE_SUBMIT_INFO_2_KHR :: SUBMIT_INFO_2_KHR; VK_STRUCTURE_TYPE_SEMAPHORE_SUBMIT_INFO_KHR :: SEMAPHORE_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_COMMAND_BUFFER_SUBMIT_INFO_KHR :: COMMAND_BUFFER_SUBMIT_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR :: PHYSICAL_DEVICE_SYNCHRONIZATION_2_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR :: PHYSICAL_DEVICE_ZERO_INITIALIZE_WORKGROUP_MEMORY_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT :: PHYSICAL_DEVICE_IMAGE_ROBUSTNESS_FEATURES_EXT; VK_STRUCTURE_TYPE_COPY_BUFFER_INFO_2_KHR :: COPY_BUFFER_INFO_2_KHR; VK_STRUCTURE_TYPE_COPY_IMAGE_INFO_2_KHR :: COPY_IMAGE_INFO_2_KHR; VK_STRUCTURE_TYPE_COPY_BUFFER_TO_IMAGE_INFO_2_KHR :: COPY_BUFFER_TO_IMAGE_INFO_2_KHR; VK_STRUCTURE_TYPE_COPY_IMAGE_TO_BUFFER_INFO_2_KHR :: COPY_IMAGE_TO_BUFFER_INFO_2_KHR; VK_STRUCTURE_TYPE_BLIT_IMAGE_INFO_2_KHR :: BLIT_IMAGE_INFO_2_KHR; VK_STRUCTURE_TYPE_RESOLVE_IMAGE_INFO_2_KHR :: RESOLVE_IMAGE_INFO_2_KHR; VK_STRUCTURE_TYPE_BUFFER_COPY_2_KHR :: BUFFER_COPY_2_KHR; VK_STRUCTURE_TYPE_IMAGE_COPY_2_KHR :: IMAGE_COPY_2_KHR; VK_STRUCTURE_TYPE_IMAGE_BLIT_2_KHR :: IMAGE_BLIT_2_KHR; VK_STRUCTURE_TYPE_BUFFER_IMAGE_COPY_2_KHR :: BUFFER_IMAGE_COPY_2_KHR; VK_STRUCTURE_TYPE_IMAGE_RESOLVE_2_KHR :: IMAGE_RESOLVE_2_KHR; VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_EXT :: SUBRESOURCE_LAYOUT_2_EXT; VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_EXT :: IMAGE_SUBRESOURCE_2_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM :: PHYSICAL_DEVICE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_FEATURES_ARM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE :: PHYSICAL_DEVICE_MUTABLE_DESCRIPTOR_TYPE_FEATURES_VALVE; VK_STRUCTURE_TYPE_MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE :: MUTABLE_DESCRIPTOR_TYPE_CREATE_INFO_VALVE; VK_STRUCTURE_TYPE_FORMAT_PROPERTIES_3_KHR :: FORMAT_PROPERTIES_3_KHR; VK_STRUCTURE_TYPE_PIPELINE_INFO_EXT :: PIPELINE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT :: PHYSICAL_DEVICE_GLOBAL_PRIORITY_QUERY_FEATURES_EXT; VK_STRUCTURE_TYPE_QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT :: QUEUE_FAMILY_GLOBAL_PRIORITY_PROPERTIES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_4_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_4_PROPERTIES_KHR; VK_STRUCTURE_TYPE_DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR :: DEVICE_BUFFER_MEMORY_REQUIREMENTS_KHR; VK_STRUCTURE_TYPE_DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR :: DEVICE_IMAGE_MEMORY_REQUIREMENTS_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_SUBGROUP_ROTATE_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT :: PHYSICAL_DEVICE_DEPTH_CLAMP_ZERO_ONE_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_FEATURES_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM :: PHYSICAL_DEVICE_FRAGMENT_DENSITY_MAP_OFFSET_PROPERTIES_QCOM; VK_STRUCTURE_TYPE_SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM :: SUBPASS_FRAGMENT_DENSITY_MAP_OFFSET_END_INFO_QCOM; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT :: PHYSICAL_DEVICE_PIPELINE_PROTECTED_ACCESS_FEATURES_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_5_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_5_PROPERTIES_KHR; VK_STRUCTURE_TYPE_RENDERING_AREA_INFO_KHR :: RENDERING_AREA_INFO_KHR; VK_STRUCTURE_TYPE_DEVICE_IMAGE_SUBRESOURCE_INFO_KHR :: DEVICE_IMAGE_SUBRESOURCE_INFO_KHR; VK_STRUCTURE_TYPE_SUBRESOURCE_LAYOUT_2_KHR :: SUBRESOURCE_LAYOUT_2_KHR; VK_STRUCTURE_TYPE_IMAGE_SUBRESOURCE_2_KHR :: IMAGE_SUBRESOURCE_2_KHR; VK_STRUCTURE_TYPE_PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR :: PIPELINE_CREATE_FLAGS_2_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR :: BUFFER_USAGE_FLAGS_2_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT :: SHADER_REQUIRED_SUBGROUP_SIZE_CREATE_INFO_EXT; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR :: PIPELINE_VERTEX_INPUT_DIVISOR_STATE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR :: PHYSICAL_DEVICE_VERTEX_ATTRIBUTE_DIVISOR_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_FLOAT_CONTROLS_2_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR :: PHYSICAL_DEVICE_INDEX_TYPE_UINT8_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR :: PHYSICAL_DEVICE_LINE_RASTERIZATION_FEATURES_KHR; VK_STRUCTURE_TYPE_PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR :: PIPELINE_RASTERIZATION_LINE_STATE_CREATE_INFO_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR :: PHYSICAL_DEVICE_LINE_RASTERIZATION_PROPERTIES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES_KHR :: PHYSICAL_DEVICE_SHADER_EXPECT_ASSUME_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_6_FEATURES_KHR; VK_STRUCTURE_TYPE_PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES_KHR :: PHYSICAL_DEVICE_MAINTENANCE_6_PROPERTIES_KHR; VK_STRUCTURE_TYPE_BIND_MEMORY_STATUS_KHR :: BIND_MEMORY_STATUS_KHR; VK_STRUCTURE_TYPE_BIND_DESCRIPTOR_SETS_INFO_KHR :: BIND_DESCRIPTOR_SETS_INFO_KHR; VK_STRUCTURE_TYPE_PUSH_CONSTANTS_INFO_KHR :: PUSH_CONSTANTS_INFO_KHR; VK_STRUCTURE_TYPE_PUSH_DESCRIPTOR_SET_INFO_KHR :: PUSH_DESCRIPTOR_SET_INFO_KHR; VK_STRUCTURE_TYPE_PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO_KHR :: PUSH_DESCRIPTOR_SET_WITH_TEMPLATE_INFO_KHR; VK_STRUCTURE_TYPE_MAX_ENUM :: MAX_ENUM; } VkPipelineCacheHeaderVersion :: enum u32 { ONE :: 1; MAX_ENUM :: 2147483647; VK_PIPELINE_CACHE_HEADER_VERSION_ONE :: ONE; VK_PIPELINE_CACHE_HEADER_VERSION_MAX_ENUM :: MAX_ENUM; } VkImageLayout :: enum u32 { UNDEFINED :: 0; GENERAL :: 1; COLOR_ATTACHMENT_OPTIMAL :: 2; DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: 3; DEPTH_STENCIL_READ_ONLY_OPTIMAL :: 4; SHADER_READ_ONLY_OPTIMAL :: 5; TRANSFER_SRC_OPTIMAL :: 6; TRANSFER_DST_OPTIMAL :: 7; PREINITIALIZED :: 8; DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: 1000117000; DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: 1000117001; DEPTH_ATTACHMENT_OPTIMAL :: 1000241000; DEPTH_READ_ONLY_OPTIMAL :: 1000241001; STENCIL_ATTACHMENT_OPTIMAL :: 1000241002; STENCIL_READ_ONLY_OPTIMAL :: 1000241003; READ_ONLY_OPTIMAL :: 1000314000; ATTACHMENT_OPTIMAL :: 1000314001; RENDERING_LOCAL_READ :: 1000232000; PRESENT_SRC_KHR :: 1000001002; VIDEO_DECODE_DST_KHR :: 1000024000; VIDEO_DECODE_SRC_KHR :: 1000024001; VIDEO_DECODE_DPB_KHR :: 1000024002; SHARED_PRESENT_KHR :: 1000111000; FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: 1000218000; FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR :: 1000164003; VIDEO_ENCODE_DST_KHR :: 1000299000; VIDEO_ENCODE_SRC_KHR :: 1000299001; VIDEO_ENCODE_DPB_KHR :: 1000299002; ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT :: 1000339000; VIDEO_ENCODE_QUANTIZATION_MAP_KHR :: 1000553000; DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR :: 1000117000; DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR :: 1000117001; SHADING_RATE_OPTIMAL_NV :: 1000164003; RENDERING_LOCAL_READ_KHR :: 1000232000; DEPTH_ATTACHMENT_OPTIMAL_KHR :: 1000241000; DEPTH_READ_ONLY_OPTIMAL_KHR :: 1000241001; STENCIL_ATTACHMENT_OPTIMAL_KHR :: 1000241002; STENCIL_READ_ONLY_OPTIMAL_KHR :: 1000241003; READ_ONLY_OPTIMAL_KHR :: 1000314000; ATTACHMENT_OPTIMAL_KHR :: 1000314001; MAX_ENUM :: 2147483647; VK_IMAGE_LAYOUT_UNDEFINED :: UNDEFINED; VK_IMAGE_LAYOUT_GENERAL :: GENERAL; VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL :: COLOR_ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL :: DEPTH_STENCIL_ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL :: DEPTH_STENCIL_READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL :: SHADER_READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_TRANSFER_SRC_OPTIMAL :: TRANSFER_SRC_OPTIMAL; VK_IMAGE_LAYOUT_TRANSFER_DST_OPTIMAL :: TRANSFER_DST_OPTIMAL; VK_IMAGE_LAYOUT_PREINITIALIZED :: PREINITIALIZED; VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL :: DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL :: DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL :: DEPTH_ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL :: DEPTH_READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL :: STENCIL_ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL :: STENCIL_READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL :: READ_ONLY_OPTIMAL; VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL :: ATTACHMENT_OPTIMAL; VK_IMAGE_LAYOUT_RENDERING_LOCAL_READ :: RENDERING_LOCAL_READ; VK_IMAGE_LAYOUT_PRESENT_SRC_KHR :: PRESENT_SRC_KHR; VK_IMAGE_LAYOUT_VIDEO_DECODE_DST_KHR :: VIDEO_DECODE_DST_KHR; VK_IMAGE_LAYOUT_VIDEO_DECODE_SRC_KHR :: VIDEO_DECODE_SRC_KHR; VK_IMAGE_LAYOUT_VIDEO_DECODE_DPB_KHR :: VIDEO_DECODE_DPB_KHR; VK_IMAGE_LAYOUT_SHARED_PRESENT_KHR :: SHARED_PRESENT_KHR; VK_IMAGE_LAYOUT_FRAGMENT_DENSITY_MAP_OPTIMAL_EXT :: FRAGMENT_DENSITY_MAP_OPTIMAL_EXT; VK_IMAGE_LAYOUT_FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_OPTIMAL_KHR; VK_IMAGE_LAYOUT_VIDEO_ENCODE_DST_KHR :: VIDEO_ENCODE_DST_KHR; VK_IMAGE_LAYOUT_VIDEO_ENCODE_SRC_KHR :: VIDEO_ENCODE_SRC_KHR; VK_IMAGE_LAYOUT_VIDEO_ENCODE_DPB_KHR :: VIDEO_ENCODE_DPB_KHR; VK_IMAGE_LAYOUT_ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT :: ATTACHMENT_FEEDBACK_LOOP_OPTIMAL_EXT; VK_IMAGE_LAYOUT_VIDEO_ENCODE_QUANTIZATION_MAP_KHR :: VIDEO_ENCODE_QUANTIZATION_MAP_KHR; VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR :: DEPTH_READ_ONLY_STENCIL_ATTACHMENT_OPTIMAL_KHR; VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR :: DEPTH_ATTACHMENT_STENCIL_READ_ONLY_OPTIMAL_KHR; VK_IMAGE_LAYOUT_SHADING_RATE_OPTIMAL_NV :: SHADING_RATE_OPTIMAL_NV; VK_IMAGE_LAYOUT_RENDERING_LOCAL_READ_KHR :: RENDERING_LOCAL_READ_KHR; VK_IMAGE_LAYOUT_DEPTH_ATTACHMENT_OPTIMAL_KHR :: DEPTH_ATTACHMENT_OPTIMAL_KHR; VK_IMAGE_LAYOUT_DEPTH_READ_ONLY_OPTIMAL_KHR :: DEPTH_READ_ONLY_OPTIMAL_KHR; VK_IMAGE_LAYOUT_STENCIL_ATTACHMENT_OPTIMAL_KHR :: STENCIL_ATTACHMENT_OPTIMAL_KHR; VK_IMAGE_LAYOUT_STENCIL_READ_ONLY_OPTIMAL_KHR :: STENCIL_READ_ONLY_OPTIMAL_KHR; VK_IMAGE_LAYOUT_READ_ONLY_OPTIMAL_KHR :: READ_ONLY_OPTIMAL_KHR; VK_IMAGE_LAYOUT_ATTACHMENT_OPTIMAL_KHR :: ATTACHMENT_OPTIMAL_KHR; VK_IMAGE_LAYOUT_MAX_ENUM :: MAX_ENUM; } VkObjectType :: enum u32 { UNKNOWN :: 0; INSTANCE :: 1; PHYSICAL_DEVICE :: 2; DEVICE :: 3; QUEUE :: 4; SEMAPHORE :: 5; COMMAND_BUFFER :: 6; FENCE :: 7; DEVICE_MEMORY :: 8; BUFFER :: 9; IMAGE :: 10; EVENT :: 11; QUERY_POOL :: 12; BUFFER_VIEW :: 13; IMAGE_VIEW :: 14; SHADER_MODULE :: 15; PIPELINE_CACHE :: 16; PIPELINE_LAYOUT :: 17; RENDER_PASS :: 18; PIPELINE :: 19; DESCRIPTOR_SET_LAYOUT :: 20; SAMPLER :: 21; DESCRIPTOR_POOL :: 22; DESCRIPTOR_SET :: 23; FRAMEBUFFER :: 24; COMMAND_POOL :: 25; SAMPLER_YCBCR_CONVERSION :: 1000156000; DESCRIPTOR_UPDATE_TEMPLATE :: 1000085000; PRIVATE_DATA_SLOT :: 1000295000; SURFACE_KHR :: 1000000000; SWAPCHAIN_KHR :: 1000001000; DISPLAY_KHR :: 1000002000; DISPLAY_MODE_KHR :: 1000002001; DEBUG_REPORT_CALLBACK_EXT :: 1000011000; VIDEO_SESSION_KHR :: 1000023000; VIDEO_SESSION_PARAMETERS_KHR :: 1000023001; CU_MODULE_NVX :: 1000029000; CU_FUNCTION_NVX :: 1000029001; DEBUG_UTILS_MESSENGER_EXT :: 1000128000; ACCELERATION_STRUCTURE_KHR :: 1000150000; VALIDATION_CACHE_EXT :: 1000160000; ACCELERATION_STRUCTURE_NV :: 1000165000; PERFORMANCE_CONFIGURATION_INTEL :: 1000210000; DEFERRED_OPERATION_KHR :: 1000268000; INDIRECT_COMMANDS_LAYOUT_NV :: 1000277000; BUFFER_COLLECTION_FUCHSIA :: 1000366000; MICROMAP_EXT :: 1000396000; OPTICAL_FLOW_SESSION_NV :: 1000464000; SHADER_EXT :: 1000482000; PIPELINE_BINARY_KHR :: 1000483000; EXTERNAL_COMPUTE_QUEUE_NV :: 1000556000; INDIRECT_COMMANDS_LAYOUT_EXT :: 1000572000; INDIRECT_EXECUTION_SET_EXT :: 1000572001; DESCRIPTOR_UPDATE_TEMPLATE_KHR :: 1000085000; SAMPLER_YCBCR_CONVERSION_KHR :: 1000156000; PRIVATE_DATA_SLOT_EXT :: 1000295000; MAX_ENUM :: 2147483647; VK_OBJECT_TYPE_UNKNOWN :: UNKNOWN; VK_OBJECT_TYPE_INSTANCE :: INSTANCE; VK_OBJECT_TYPE_PHYSICAL_DEVICE :: PHYSICAL_DEVICE; VK_OBJECT_TYPE_DEVICE :: DEVICE; VK_OBJECT_TYPE_QUEUE :: QUEUE; VK_OBJECT_TYPE_SEMAPHORE :: SEMAPHORE; VK_OBJECT_TYPE_COMMAND_BUFFER :: COMMAND_BUFFER; VK_OBJECT_TYPE_FENCE :: FENCE; VK_OBJECT_TYPE_DEVICE_MEMORY :: DEVICE_MEMORY; VK_OBJECT_TYPE_BUFFER :: BUFFER; VK_OBJECT_TYPE_IMAGE :: IMAGE; VK_OBJECT_TYPE_EVENT :: EVENT; VK_OBJECT_TYPE_QUERY_POOL :: QUERY_POOL; VK_OBJECT_TYPE_BUFFER_VIEW :: BUFFER_VIEW; VK_OBJECT_TYPE_IMAGE_VIEW :: IMAGE_VIEW; VK_OBJECT_TYPE_SHADER_MODULE :: SHADER_MODULE; VK_OBJECT_TYPE_PIPELINE_CACHE :: PIPELINE_CACHE; VK_OBJECT_TYPE_PIPELINE_LAYOUT :: PIPELINE_LAYOUT; VK_OBJECT_TYPE_RENDER_PASS :: RENDER_PASS; VK_OBJECT_TYPE_PIPELINE :: PIPELINE; VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT :: DESCRIPTOR_SET_LAYOUT; VK_OBJECT_TYPE_SAMPLER :: SAMPLER; VK_OBJECT_TYPE_DESCRIPTOR_POOL :: DESCRIPTOR_POOL; VK_OBJECT_TYPE_DESCRIPTOR_SET :: DESCRIPTOR_SET; VK_OBJECT_TYPE_FRAMEBUFFER :: FRAMEBUFFER; VK_OBJECT_TYPE_COMMAND_POOL :: COMMAND_POOL; VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION :: SAMPLER_YCBCR_CONVERSION; VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE :: DESCRIPTOR_UPDATE_TEMPLATE; VK_OBJECT_TYPE_PRIVATE_DATA_SLOT :: PRIVATE_DATA_SLOT; VK_OBJECT_TYPE_SURFACE_KHR :: SURFACE_KHR; VK_OBJECT_TYPE_SWAPCHAIN_KHR :: SWAPCHAIN_KHR; VK_OBJECT_TYPE_DISPLAY_KHR :: DISPLAY_KHR; VK_OBJECT_TYPE_DISPLAY_MODE_KHR :: DISPLAY_MODE_KHR; VK_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT :: DEBUG_REPORT_CALLBACK_EXT; VK_OBJECT_TYPE_VIDEO_SESSION_KHR :: VIDEO_SESSION_KHR; VK_OBJECT_TYPE_VIDEO_SESSION_PARAMETERS_KHR :: VIDEO_SESSION_PARAMETERS_KHR; VK_OBJECT_TYPE_CU_MODULE_NVX :: CU_MODULE_NVX; VK_OBJECT_TYPE_CU_FUNCTION_NVX :: CU_FUNCTION_NVX; VK_OBJECT_TYPE_DEBUG_UTILS_MESSENGER_EXT :: DEBUG_UTILS_MESSENGER_EXT; VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR :: ACCELERATION_STRUCTURE_KHR; VK_OBJECT_TYPE_VALIDATION_CACHE_EXT :: VALIDATION_CACHE_EXT; VK_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV :: ACCELERATION_STRUCTURE_NV; VK_OBJECT_TYPE_PERFORMANCE_CONFIGURATION_INTEL :: PERFORMANCE_CONFIGURATION_INTEL; VK_OBJECT_TYPE_DEFERRED_OPERATION_KHR :: DEFERRED_OPERATION_KHR; VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_NV :: INDIRECT_COMMANDS_LAYOUT_NV; VK_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA :: BUFFER_COLLECTION_FUCHSIA; VK_OBJECT_TYPE_MICROMAP_EXT :: MICROMAP_EXT; VK_OBJECT_TYPE_OPTICAL_FLOW_SESSION_NV :: OPTICAL_FLOW_SESSION_NV; VK_OBJECT_TYPE_SHADER_EXT :: SHADER_EXT; VK_OBJECT_TYPE_PIPELINE_BINARY_KHR :: PIPELINE_BINARY_KHR; VK_OBJECT_TYPE_EXTERNAL_COMPUTE_QUEUE_NV :: EXTERNAL_COMPUTE_QUEUE_NV; VK_OBJECT_TYPE_INDIRECT_COMMANDS_LAYOUT_EXT :: INDIRECT_COMMANDS_LAYOUT_EXT; VK_OBJECT_TYPE_INDIRECT_EXECUTION_SET_EXT :: INDIRECT_EXECUTION_SET_EXT; VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR :: DESCRIPTOR_UPDATE_TEMPLATE_KHR; VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR :: SAMPLER_YCBCR_CONVERSION_KHR; VK_OBJECT_TYPE_PRIVATE_DATA_SLOT_EXT :: PRIVATE_DATA_SLOT_EXT; VK_OBJECT_TYPE_MAX_ENUM :: MAX_ENUM; } VkVendorId :: enum u32 { KHRONOS :: 65536; VIV :: 65537; VSI :: 65538; KAZAN :: 65539; CODEPLAY :: 65540; MESA :: 65541; POCL :: 65542; MOBILEYE :: 65543; MAX_ENUM :: 2147483647; VK_VENDOR_ID_KHRONOS :: KHRONOS; VK_VENDOR_ID_VIV :: VIV; VK_VENDOR_ID_VSI :: VSI; VK_VENDOR_ID_KAZAN :: KAZAN; VK_VENDOR_ID_CODEPLAY :: CODEPLAY; VK_VENDOR_ID_MESA :: MESA; VK_VENDOR_ID_POCL :: POCL; VK_VENDOR_ID_MOBILEYE :: MOBILEYE; VK_VENDOR_ID_MAX_ENUM :: MAX_ENUM; } VkSystemAllocationScope :: enum u32 { COMMAND :: 0; OBJECT :: 1; CACHE :: 2; DEVICE :: 3; INSTANCE :: 4; MAX_ENUM :: 2147483647; VK_SYSTEM_ALLOCATION_SCOPE_COMMAND :: COMMAND; VK_SYSTEM_ALLOCATION_SCOPE_OBJECT :: OBJECT; VK_SYSTEM_ALLOCATION_SCOPE_CACHE :: CACHE; VK_SYSTEM_ALLOCATION_SCOPE_DEVICE :: DEVICE; VK_SYSTEM_ALLOCATION_SCOPE_INSTANCE :: INSTANCE; VK_SYSTEM_ALLOCATION_SCOPE_MAX_ENUM :: MAX_ENUM; } VkInternalAllocationType :: enum u32 { EXECUTABLE :: 0; MAX_ENUM :: 2147483647; VK_INTERNAL_ALLOCATION_TYPE_EXECUTABLE :: EXECUTABLE; VK_INTERNAL_ALLOCATION_TYPE_MAX_ENUM :: MAX_ENUM; } VkFormat :: enum u32 { UNDEFINED :: 0; R4G4_UNORM_PACK8 :: 1; R4G4B4A4_UNORM_PACK16 :: 2; B4G4R4A4_UNORM_PACK16 :: 3; R5G6B5_UNORM_PACK16 :: 4; B5G6R5_UNORM_PACK16 :: 5; R5G5B5A1_UNORM_PACK16 :: 6; B5G5R5A1_UNORM_PACK16 :: 7; A1R5G5B5_UNORM_PACK16 :: 8; R8_UNORM :: 9; R8_SNORM :: 10; R8_USCALED :: 11; R8_SSCALED :: 12; R8_UINT :: 13; R8_SINT :: 14; R8_SRGB :: 15; R8G8_UNORM :: 16; R8G8_SNORM :: 17; R8G8_USCALED :: 18; R8G8_SSCALED :: 19; R8G8_UINT :: 20; R8G8_SINT :: 21; R8G8_SRGB :: 22; R8G8B8_UNORM :: 23; R8G8B8_SNORM :: 24; R8G8B8_USCALED :: 25; R8G8B8_SSCALED :: 26; R8G8B8_UINT :: 27; R8G8B8_SINT :: 28; R8G8B8_SRGB :: 29; B8G8R8_UNORM :: 30; B8G8R8_SNORM :: 31; B8G8R8_USCALED :: 32; B8G8R8_SSCALED :: 33; B8G8R8_UINT :: 34; B8G8R8_SINT :: 35; B8G8R8_SRGB :: 36; R8G8B8A8_UNORM :: 37; R8G8B8A8_SNORM :: 38; R8G8B8A8_USCALED :: 39; R8G8B8A8_SSCALED :: 40; R8G8B8A8_UINT :: 41; R8G8B8A8_SINT :: 42; R8G8B8A8_SRGB :: 43; B8G8R8A8_UNORM :: 44; B8G8R8A8_SNORM :: 45; B8G8R8A8_USCALED :: 46; B8G8R8A8_SSCALED :: 47; B8G8R8A8_UINT :: 48; B8G8R8A8_SINT :: 49; B8G8R8A8_SRGB :: 50; A8B8G8R8_UNORM_PACK32 :: 51; A8B8G8R8_SNORM_PACK32 :: 52; A8B8G8R8_USCALED_PACK32 :: 53; A8B8G8R8_SSCALED_PACK32 :: 54; A8B8G8R8_UINT_PACK32 :: 55; A8B8G8R8_SINT_PACK32 :: 56; A8B8G8R8_SRGB_PACK32 :: 57; A2R10G10B10_UNORM_PACK32 :: 58; A2R10G10B10_SNORM_PACK32 :: 59; A2R10G10B10_USCALED_PACK32 :: 60; A2R10G10B10_SSCALED_PACK32 :: 61; A2R10G10B10_UINT_PACK32 :: 62; A2R10G10B10_SINT_PACK32 :: 63; A2B10G10R10_UNORM_PACK32 :: 64; A2B10G10R10_SNORM_PACK32 :: 65; A2B10G10R10_USCALED_PACK32 :: 66; A2B10G10R10_SSCALED_PACK32 :: 67; A2B10G10R10_UINT_PACK32 :: 68; A2B10G10R10_SINT_PACK32 :: 69; R16_UNORM :: 70; R16_SNORM :: 71; R16_USCALED :: 72; R16_SSCALED :: 73; R16_UINT :: 74; R16_SINT :: 75; R16_SFLOAT :: 76; R16G16_UNORM :: 77; R16G16_SNORM :: 78; R16G16_USCALED :: 79; R16G16_SSCALED :: 80; R16G16_UINT :: 81; R16G16_SINT :: 82; R16G16_SFLOAT :: 83; R16G16B16_UNORM :: 84; R16G16B16_SNORM :: 85; R16G16B16_USCALED :: 86; R16G16B16_SSCALED :: 87; R16G16B16_UINT :: 88; R16G16B16_SINT :: 89; R16G16B16_SFLOAT :: 90; R16G16B16A16_UNORM :: 91; R16G16B16A16_SNORM :: 92; R16G16B16A16_USCALED :: 93; R16G16B16A16_SSCALED :: 94; R16G16B16A16_UINT :: 95; R16G16B16A16_SINT :: 96; R16G16B16A16_SFLOAT :: 97; R32_UINT :: 98; R32_SINT :: 99; R32_SFLOAT :: 100; R32G32_UINT :: 101; R32G32_SINT :: 102; R32G32_SFLOAT :: 103; R32G32B32_UINT :: 104; R32G32B32_SINT :: 105; R32G32B32_SFLOAT :: 106; R32G32B32A32_UINT :: 107; R32G32B32A32_SINT :: 108; R32G32B32A32_SFLOAT :: 109; R64_UINT :: 110; R64_SINT :: 111; R64_SFLOAT :: 112; R64G64_UINT :: 113; R64G64_SINT :: 114; R64G64_SFLOAT :: 115; R64G64B64_UINT :: 116; R64G64B64_SINT :: 117; R64G64B64_SFLOAT :: 118; R64G64B64A64_UINT :: 119; R64G64B64A64_SINT :: 120; R64G64B64A64_SFLOAT :: 121; B10G11R11_UFLOAT_PACK32 :: 122; E5B9G9R9_UFLOAT_PACK32 :: 123; D16_UNORM :: 124; X8_D24_UNORM_PACK32 :: 125; D32_SFLOAT :: 126; S8_UINT :: 127; D16_UNORM_S8_UINT :: 128; D24_UNORM_S8_UINT :: 129; D32_SFLOAT_S8_UINT :: 130; BC1_RGB_UNORM_BLOCK :: 131; BC1_RGB_SRGB_BLOCK :: 132; BC1_RGBA_UNORM_BLOCK :: 133; BC1_RGBA_SRGB_BLOCK :: 134; BC2_UNORM_BLOCK :: 135; BC2_SRGB_BLOCK :: 136; BC3_UNORM_BLOCK :: 137; BC3_SRGB_BLOCK :: 138; BC4_UNORM_BLOCK :: 139; BC4_SNORM_BLOCK :: 140; BC5_UNORM_BLOCK :: 141; BC5_SNORM_BLOCK :: 142; BC6H_UFLOAT_BLOCK :: 143; BC6H_SFLOAT_BLOCK :: 144; BC7_UNORM_BLOCK :: 145; BC7_SRGB_BLOCK :: 146; ETC2_R8G8B8_UNORM_BLOCK :: 147; ETC2_R8G8B8_SRGB_BLOCK :: 148; ETC2_R8G8B8A1_UNORM_BLOCK :: 149; ETC2_R8G8B8A1_SRGB_BLOCK :: 150; ETC2_R8G8B8A8_UNORM_BLOCK :: 151; ETC2_R8G8B8A8_SRGB_BLOCK :: 152; EAC_R11_UNORM_BLOCK :: 153; EAC_R11_SNORM_BLOCK :: 154; EAC_R11G11_UNORM_BLOCK :: 155; EAC_R11G11_SNORM_BLOCK :: 156; ASTC_4x4_UNORM_BLOCK :: 157; ASTC_4x4_SRGB_BLOCK :: 158; ASTC_5x4_UNORM_BLOCK :: 159; ASTC_5x4_SRGB_BLOCK :: 160; ASTC_5x5_UNORM_BLOCK :: 161; ASTC_5x5_SRGB_BLOCK :: 162; ASTC_6x5_UNORM_BLOCK :: 163; ASTC_6x5_SRGB_BLOCK :: 164; ASTC_6x6_UNORM_BLOCK :: 165; ASTC_6x6_SRGB_BLOCK :: 166; ASTC_8x5_UNORM_BLOCK :: 167; ASTC_8x5_SRGB_BLOCK :: 168; ASTC_8x6_UNORM_BLOCK :: 169; ASTC_8x6_SRGB_BLOCK :: 170; ASTC_8x8_UNORM_BLOCK :: 171; ASTC_8x8_SRGB_BLOCK :: 172; ASTC_10x5_UNORM_BLOCK :: 173; ASTC_10x5_SRGB_BLOCK :: 174; ASTC_10x6_UNORM_BLOCK :: 175; ASTC_10x6_SRGB_BLOCK :: 176; ASTC_10x8_UNORM_BLOCK :: 177; ASTC_10x8_SRGB_BLOCK :: 178; ASTC_10x10_UNORM_BLOCK :: 179; ASTC_10x10_SRGB_BLOCK :: 180; ASTC_12x10_UNORM_BLOCK :: 181; ASTC_12x10_SRGB_BLOCK :: 182; ASTC_12x12_UNORM_BLOCK :: 183; ASTC_12x12_SRGB_BLOCK :: 184; G8B8G8R8_422_UNORM :: 1000156000; B8G8R8G8_422_UNORM :: 1000156001; G8_B8_R8_3PLANE_420_UNORM :: 1000156002; G8_B8R8_2PLANE_420_UNORM :: 1000156003; G8_B8_R8_3PLANE_422_UNORM :: 1000156004; G8_B8R8_2PLANE_422_UNORM :: 1000156005; G8_B8_R8_3PLANE_444_UNORM :: 1000156006; R10X6_UNORM_PACK16 :: 1000156007; R10X6G10X6_UNORM_2PACK16 :: 1000156008; R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: 1000156009; G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 :: 1000156010; B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 :: 1000156011; G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 :: 1000156012; G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 :: 1000156013; G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 :: 1000156014; G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 :: 1000156015; G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 :: 1000156016; R12X4_UNORM_PACK16 :: 1000156017; R12X4G12X4_UNORM_2PACK16 :: 1000156018; R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: 1000156019; G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 :: 1000156020; B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 :: 1000156021; G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 :: 1000156022; G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 :: 1000156023; G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 :: 1000156024; G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 :: 1000156025; G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 :: 1000156026; G16B16G16R16_422_UNORM :: 1000156027; B16G16R16G16_422_UNORM :: 1000156028; G16_B16_R16_3PLANE_420_UNORM :: 1000156029; G16_B16R16_2PLANE_420_UNORM :: 1000156030; G16_B16_R16_3PLANE_422_UNORM :: 1000156031; G16_B16R16_2PLANE_422_UNORM :: 1000156032; G16_B16_R16_3PLANE_444_UNORM :: 1000156033; G8_B8R8_2PLANE_444_UNORM :: 1000330000; G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 :: 1000330001; G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 :: 1000330002; G16_B16R16_2PLANE_444_UNORM :: 1000330003; A4R4G4B4_UNORM_PACK16 :: 1000340000; A4B4G4R4_UNORM_PACK16 :: 1000340001; ASTC_4x4_SFLOAT_BLOCK :: 1000066000; ASTC_5x4_SFLOAT_BLOCK :: 1000066001; ASTC_5x5_SFLOAT_BLOCK :: 1000066002; ASTC_6x5_SFLOAT_BLOCK :: 1000066003; ASTC_6x6_SFLOAT_BLOCK :: 1000066004; ASTC_8x5_SFLOAT_BLOCK :: 1000066005; ASTC_8x6_SFLOAT_BLOCK :: 1000066006; ASTC_8x8_SFLOAT_BLOCK :: 1000066007; ASTC_10x5_SFLOAT_BLOCK :: 1000066008; ASTC_10x6_SFLOAT_BLOCK :: 1000066009; ASTC_10x8_SFLOAT_BLOCK :: 1000066010; ASTC_10x10_SFLOAT_BLOCK :: 1000066011; ASTC_12x10_SFLOAT_BLOCK :: 1000066012; ASTC_12x12_SFLOAT_BLOCK :: 1000066013; A1B5G5R5_UNORM_PACK16 :: 1000470000; A8_UNORM :: 1000470001; PVRTC1_2BPP_UNORM_BLOCK_IMG :: 1000054000; PVRTC1_4BPP_UNORM_BLOCK_IMG :: 1000054001; PVRTC2_2BPP_UNORM_BLOCK_IMG :: 1000054002; PVRTC2_4BPP_UNORM_BLOCK_IMG :: 1000054003; PVRTC1_2BPP_SRGB_BLOCK_IMG :: 1000054004; PVRTC1_4BPP_SRGB_BLOCK_IMG :: 1000054005; PVRTC2_2BPP_SRGB_BLOCK_IMG :: 1000054006; PVRTC2_4BPP_SRGB_BLOCK_IMG :: 1000054007; R16G16_SFIXED5_NV :: 1000464000; ASTC_4x4_SFLOAT_BLOCK_EXT :: 1000066000; ASTC_5x4_SFLOAT_BLOCK_EXT :: 1000066001; ASTC_5x5_SFLOAT_BLOCK_EXT :: 1000066002; ASTC_6x5_SFLOAT_BLOCK_EXT :: 1000066003; ASTC_6x6_SFLOAT_BLOCK_EXT :: 1000066004; ASTC_8x5_SFLOAT_BLOCK_EXT :: 1000066005; ASTC_8x6_SFLOAT_BLOCK_EXT :: 1000066006; ASTC_8x8_SFLOAT_BLOCK_EXT :: 1000066007; ASTC_10x5_SFLOAT_BLOCK_EXT :: 1000066008; ASTC_10x6_SFLOAT_BLOCK_EXT :: 1000066009; ASTC_10x8_SFLOAT_BLOCK_EXT :: 1000066010; ASTC_10x10_SFLOAT_BLOCK_EXT :: 1000066011; ASTC_12x10_SFLOAT_BLOCK_EXT :: 1000066012; ASTC_12x12_SFLOAT_BLOCK_EXT :: 1000066013; G8B8G8R8_422_UNORM_KHR :: 1000156000; B8G8R8G8_422_UNORM_KHR :: 1000156001; G8_B8_R8_3PLANE_420_UNORM_KHR :: 1000156002; G8_B8R8_2PLANE_420_UNORM_KHR :: 1000156003; G8_B8_R8_3PLANE_422_UNORM_KHR :: 1000156004; G8_B8R8_2PLANE_422_UNORM_KHR :: 1000156005; G8_B8_R8_3PLANE_444_UNORM_KHR :: 1000156006; R10X6_UNORM_PACK16_KHR :: 1000156007; R10X6G10X6_UNORM_2PACK16_KHR :: 1000156008; R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR :: 1000156009; G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR :: 1000156010; B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR :: 1000156011; G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR :: 1000156012; G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR :: 1000156013; G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR :: 1000156014; G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR :: 1000156015; G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR :: 1000156016; R12X4_UNORM_PACK16_KHR :: 1000156017; R12X4G12X4_UNORM_2PACK16_KHR :: 1000156018; R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR :: 1000156019; G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR :: 1000156020; B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR :: 1000156021; G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR :: 1000156022; G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR :: 1000156023; G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR :: 1000156024; G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR :: 1000156025; G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR :: 1000156026; G16B16G16R16_422_UNORM_KHR :: 1000156027; B16G16R16G16_422_UNORM_KHR :: 1000156028; G16_B16_R16_3PLANE_420_UNORM_KHR :: 1000156029; G16_B16R16_2PLANE_420_UNORM_KHR :: 1000156030; G16_B16_R16_3PLANE_422_UNORM_KHR :: 1000156031; G16_B16R16_2PLANE_422_UNORM_KHR :: 1000156032; G16_B16_R16_3PLANE_444_UNORM_KHR :: 1000156033; G8_B8R8_2PLANE_444_UNORM_EXT :: 1000330000; G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT :: 1000330001; G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT :: 1000330002; G16_B16R16_2PLANE_444_UNORM_EXT :: 1000330003; A4R4G4B4_UNORM_PACK16_EXT :: 1000340000; A4B4G4R4_UNORM_PACK16_EXT :: 1000340001; R16G16_S10_5_NV :: 1000464000; A1B5G5R5_UNORM_PACK16_KHR :: 1000470000; A8_UNORM_KHR :: 1000470001; MAX_ENUM :: 2147483647; VK_FORMAT_UNDEFINED :: UNDEFINED; VK_FORMAT_R4G4_UNORM_PACK8 :: R4G4_UNORM_PACK8; VK_FORMAT_R4G4B4A4_UNORM_PACK16 :: R4G4B4A4_UNORM_PACK16; VK_FORMAT_B4G4R4A4_UNORM_PACK16 :: B4G4R4A4_UNORM_PACK16; VK_FORMAT_R5G6B5_UNORM_PACK16 :: R5G6B5_UNORM_PACK16; VK_FORMAT_B5G6R5_UNORM_PACK16 :: B5G6R5_UNORM_PACK16; VK_FORMAT_R5G5B5A1_UNORM_PACK16 :: R5G5B5A1_UNORM_PACK16; VK_FORMAT_B5G5R5A1_UNORM_PACK16 :: B5G5R5A1_UNORM_PACK16; VK_FORMAT_A1R5G5B5_UNORM_PACK16 :: A1R5G5B5_UNORM_PACK16; VK_FORMAT_R8_UNORM :: R8_UNORM; VK_FORMAT_R8_SNORM :: R8_SNORM; VK_FORMAT_R8_USCALED :: R8_USCALED; VK_FORMAT_R8_SSCALED :: R8_SSCALED; VK_FORMAT_R8_UINT :: R8_UINT; VK_FORMAT_R8_SINT :: R8_SINT; VK_FORMAT_R8_SRGB :: R8_SRGB; VK_FORMAT_R8G8_UNORM :: R8G8_UNORM; VK_FORMAT_R8G8_SNORM :: R8G8_SNORM; VK_FORMAT_R8G8_USCALED :: R8G8_USCALED; VK_FORMAT_R8G8_SSCALED :: R8G8_SSCALED; VK_FORMAT_R8G8_UINT :: R8G8_UINT; VK_FORMAT_R8G8_SINT :: R8G8_SINT; VK_FORMAT_R8G8_SRGB :: R8G8_SRGB; VK_FORMAT_R8G8B8_UNORM :: R8G8B8_UNORM; VK_FORMAT_R8G8B8_SNORM :: R8G8B8_SNORM; VK_FORMAT_R8G8B8_USCALED :: R8G8B8_USCALED; VK_FORMAT_R8G8B8_SSCALED :: R8G8B8_SSCALED; VK_FORMAT_R8G8B8_UINT :: R8G8B8_UINT; VK_FORMAT_R8G8B8_SINT :: R8G8B8_SINT; VK_FORMAT_R8G8B8_SRGB :: R8G8B8_SRGB; VK_FORMAT_B8G8R8_UNORM :: B8G8R8_UNORM; VK_FORMAT_B8G8R8_SNORM :: B8G8R8_SNORM; VK_FORMAT_B8G8R8_USCALED :: B8G8R8_USCALED; VK_FORMAT_B8G8R8_SSCALED :: B8G8R8_SSCALED; VK_FORMAT_B8G8R8_UINT :: B8G8R8_UINT; VK_FORMAT_B8G8R8_SINT :: B8G8R8_SINT; VK_FORMAT_B8G8R8_SRGB :: B8G8R8_SRGB; VK_FORMAT_R8G8B8A8_UNORM :: R8G8B8A8_UNORM; VK_FORMAT_R8G8B8A8_SNORM :: R8G8B8A8_SNORM; VK_FORMAT_R8G8B8A8_USCALED :: R8G8B8A8_USCALED; VK_FORMAT_R8G8B8A8_SSCALED :: R8G8B8A8_SSCALED; VK_FORMAT_R8G8B8A8_UINT :: R8G8B8A8_UINT; VK_FORMAT_R8G8B8A8_SINT :: R8G8B8A8_SINT; VK_FORMAT_R8G8B8A8_SRGB :: R8G8B8A8_SRGB; VK_FORMAT_B8G8R8A8_UNORM :: B8G8R8A8_UNORM; VK_FORMAT_B8G8R8A8_SNORM :: B8G8R8A8_SNORM; VK_FORMAT_B8G8R8A8_USCALED :: B8G8R8A8_USCALED; VK_FORMAT_B8G8R8A8_SSCALED :: B8G8R8A8_SSCALED; VK_FORMAT_B8G8R8A8_UINT :: B8G8R8A8_UINT; VK_FORMAT_B8G8R8A8_SINT :: B8G8R8A8_SINT; VK_FORMAT_B8G8R8A8_SRGB :: B8G8R8A8_SRGB; VK_FORMAT_A8B8G8R8_UNORM_PACK32 :: A8B8G8R8_UNORM_PACK32; VK_FORMAT_A8B8G8R8_SNORM_PACK32 :: A8B8G8R8_SNORM_PACK32; VK_FORMAT_A8B8G8R8_USCALED_PACK32 :: A8B8G8R8_USCALED_PACK32; VK_FORMAT_A8B8G8R8_SSCALED_PACK32 :: A8B8G8R8_SSCALED_PACK32; VK_FORMAT_A8B8G8R8_UINT_PACK32 :: A8B8G8R8_UINT_PACK32; VK_FORMAT_A8B8G8R8_SINT_PACK32 :: A8B8G8R8_SINT_PACK32; VK_FORMAT_A8B8G8R8_SRGB_PACK32 :: A8B8G8R8_SRGB_PACK32; VK_FORMAT_A2R10G10B10_UNORM_PACK32 :: A2R10G10B10_UNORM_PACK32; VK_FORMAT_A2R10G10B10_SNORM_PACK32 :: A2R10G10B10_SNORM_PACK32; VK_FORMAT_A2R10G10B10_USCALED_PACK32 :: A2R10G10B10_USCALED_PACK32; VK_FORMAT_A2R10G10B10_SSCALED_PACK32 :: A2R10G10B10_SSCALED_PACK32; VK_FORMAT_A2R10G10B10_UINT_PACK32 :: A2R10G10B10_UINT_PACK32; VK_FORMAT_A2R10G10B10_SINT_PACK32 :: A2R10G10B10_SINT_PACK32; VK_FORMAT_A2B10G10R10_UNORM_PACK32 :: A2B10G10R10_UNORM_PACK32; VK_FORMAT_A2B10G10R10_SNORM_PACK32 :: A2B10G10R10_SNORM_PACK32; VK_FORMAT_A2B10G10R10_USCALED_PACK32 :: A2B10G10R10_USCALED_PACK32; VK_FORMAT_A2B10G10R10_SSCALED_PACK32 :: A2B10G10R10_SSCALED_PACK32; VK_FORMAT_A2B10G10R10_UINT_PACK32 :: A2B10G10R10_UINT_PACK32; VK_FORMAT_A2B10G10R10_SINT_PACK32 :: A2B10G10R10_SINT_PACK32; VK_FORMAT_R16_UNORM :: R16_UNORM; VK_FORMAT_R16_SNORM :: R16_SNORM; VK_FORMAT_R16_USCALED :: R16_USCALED; VK_FORMAT_R16_SSCALED :: R16_SSCALED; VK_FORMAT_R16_UINT :: R16_UINT; VK_FORMAT_R16_SINT :: R16_SINT; VK_FORMAT_R16_SFLOAT :: R16_SFLOAT; VK_FORMAT_R16G16_UNORM :: R16G16_UNORM; VK_FORMAT_R16G16_SNORM :: R16G16_SNORM; VK_FORMAT_R16G16_USCALED :: R16G16_USCALED; VK_FORMAT_R16G16_SSCALED :: R16G16_SSCALED; VK_FORMAT_R16G16_UINT :: R16G16_UINT; VK_FORMAT_R16G16_SINT :: R16G16_SINT; VK_FORMAT_R16G16_SFLOAT :: R16G16_SFLOAT; VK_FORMAT_R16G16B16_UNORM :: R16G16B16_UNORM; VK_FORMAT_R16G16B16_SNORM :: R16G16B16_SNORM; VK_FORMAT_R16G16B16_USCALED :: R16G16B16_USCALED; VK_FORMAT_R16G16B16_SSCALED :: R16G16B16_SSCALED; VK_FORMAT_R16G16B16_UINT :: R16G16B16_UINT; VK_FORMAT_R16G16B16_SINT :: R16G16B16_SINT; VK_FORMAT_R16G16B16_SFLOAT :: R16G16B16_SFLOAT; VK_FORMAT_R16G16B16A16_UNORM :: R16G16B16A16_UNORM; VK_FORMAT_R16G16B16A16_SNORM :: R16G16B16A16_SNORM; VK_FORMAT_R16G16B16A16_USCALED :: R16G16B16A16_USCALED; VK_FORMAT_R16G16B16A16_SSCALED :: R16G16B16A16_SSCALED; VK_FORMAT_R16G16B16A16_UINT :: R16G16B16A16_UINT; VK_FORMAT_R16G16B16A16_SINT :: R16G16B16A16_SINT; VK_FORMAT_R16G16B16A16_SFLOAT :: R16G16B16A16_SFLOAT; VK_FORMAT_R32_UINT :: R32_UINT; VK_FORMAT_R32_SINT :: R32_SINT; VK_FORMAT_R32_SFLOAT :: R32_SFLOAT; VK_FORMAT_R32G32_UINT :: R32G32_UINT; VK_FORMAT_R32G32_SINT :: R32G32_SINT; VK_FORMAT_R32G32_SFLOAT :: R32G32_SFLOAT; VK_FORMAT_R32G32B32_UINT :: R32G32B32_UINT; VK_FORMAT_R32G32B32_SINT :: R32G32B32_SINT; VK_FORMAT_R32G32B32_SFLOAT :: R32G32B32_SFLOAT; VK_FORMAT_R32G32B32A32_UINT :: R32G32B32A32_UINT; VK_FORMAT_R32G32B32A32_SINT :: R32G32B32A32_SINT; VK_FORMAT_R32G32B32A32_SFLOAT :: R32G32B32A32_SFLOAT; VK_FORMAT_R64_UINT :: R64_UINT; VK_FORMAT_R64_SINT :: R64_SINT; VK_FORMAT_R64_SFLOAT :: R64_SFLOAT; VK_FORMAT_R64G64_UINT :: R64G64_UINT; VK_FORMAT_R64G64_SINT :: R64G64_SINT; VK_FORMAT_R64G64_SFLOAT :: R64G64_SFLOAT; VK_FORMAT_R64G64B64_UINT :: R64G64B64_UINT; VK_FORMAT_R64G64B64_SINT :: R64G64B64_SINT; VK_FORMAT_R64G64B64_SFLOAT :: R64G64B64_SFLOAT; VK_FORMAT_R64G64B64A64_UINT :: R64G64B64A64_UINT; VK_FORMAT_R64G64B64A64_SINT :: R64G64B64A64_SINT; VK_FORMAT_R64G64B64A64_SFLOAT :: R64G64B64A64_SFLOAT; VK_FORMAT_B10G11R11_UFLOAT_PACK32 :: B10G11R11_UFLOAT_PACK32; VK_FORMAT_E5B9G9R9_UFLOAT_PACK32 :: E5B9G9R9_UFLOAT_PACK32; VK_FORMAT_D16_UNORM :: D16_UNORM; VK_FORMAT_X8_D24_UNORM_PACK32 :: X8_D24_UNORM_PACK32; VK_FORMAT_D32_SFLOAT :: D32_SFLOAT; VK_FORMAT_S8_UINT :: S8_UINT; VK_FORMAT_D16_UNORM_S8_UINT :: D16_UNORM_S8_UINT; VK_FORMAT_D24_UNORM_S8_UINT :: D24_UNORM_S8_UINT; VK_FORMAT_D32_SFLOAT_S8_UINT :: D32_SFLOAT_S8_UINT; VK_FORMAT_BC1_RGB_UNORM_BLOCK :: BC1_RGB_UNORM_BLOCK; VK_FORMAT_BC1_RGB_SRGB_BLOCK :: BC1_RGB_SRGB_BLOCK; VK_FORMAT_BC1_RGBA_UNORM_BLOCK :: BC1_RGBA_UNORM_BLOCK; VK_FORMAT_BC1_RGBA_SRGB_BLOCK :: BC1_RGBA_SRGB_BLOCK; VK_FORMAT_BC2_UNORM_BLOCK :: BC2_UNORM_BLOCK; VK_FORMAT_BC2_SRGB_BLOCK :: BC2_SRGB_BLOCK; VK_FORMAT_BC3_UNORM_BLOCK :: BC3_UNORM_BLOCK; VK_FORMAT_BC3_SRGB_BLOCK :: BC3_SRGB_BLOCK; VK_FORMAT_BC4_UNORM_BLOCK :: BC4_UNORM_BLOCK; VK_FORMAT_BC4_SNORM_BLOCK :: BC4_SNORM_BLOCK; VK_FORMAT_BC5_UNORM_BLOCK :: BC5_UNORM_BLOCK; VK_FORMAT_BC5_SNORM_BLOCK :: BC5_SNORM_BLOCK; VK_FORMAT_BC6H_UFLOAT_BLOCK :: BC6H_UFLOAT_BLOCK; VK_FORMAT_BC6H_SFLOAT_BLOCK :: BC6H_SFLOAT_BLOCK; VK_FORMAT_BC7_UNORM_BLOCK :: BC7_UNORM_BLOCK; VK_FORMAT_BC7_SRGB_BLOCK :: BC7_SRGB_BLOCK; VK_FORMAT_ETC2_R8G8B8_UNORM_BLOCK :: ETC2_R8G8B8_UNORM_BLOCK; VK_FORMAT_ETC2_R8G8B8_SRGB_BLOCK :: ETC2_R8G8B8_SRGB_BLOCK; VK_FORMAT_ETC2_R8G8B8A1_UNORM_BLOCK :: ETC2_R8G8B8A1_UNORM_BLOCK; VK_FORMAT_ETC2_R8G8B8A1_SRGB_BLOCK :: ETC2_R8G8B8A1_SRGB_BLOCK; VK_FORMAT_ETC2_R8G8B8A8_UNORM_BLOCK :: ETC2_R8G8B8A8_UNORM_BLOCK; VK_FORMAT_ETC2_R8G8B8A8_SRGB_BLOCK :: ETC2_R8G8B8A8_SRGB_BLOCK; VK_FORMAT_EAC_R11_UNORM_BLOCK :: EAC_R11_UNORM_BLOCK; VK_FORMAT_EAC_R11_SNORM_BLOCK :: EAC_R11_SNORM_BLOCK; VK_FORMAT_EAC_R11G11_UNORM_BLOCK :: EAC_R11G11_UNORM_BLOCK; VK_FORMAT_EAC_R11G11_SNORM_BLOCK :: EAC_R11G11_SNORM_BLOCK; VK_FORMAT_ASTC_4x4_UNORM_BLOCK :: ASTC_4x4_UNORM_BLOCK; VK_FORMAT_ASTC_4x4_SRGB_BLOCK :: ASTC_4x4_SRGB_BLOCK; VK_FORMAT_ASTC_5x4_UNORM_BLOCK :: ASTC_5x4_UNORM_BLOCK; VK_FORMAT_ASTC_5x4_SRGB_BLOCK :: ASTC_5x4_SRGB_BLOCK; VK_FORMAT_ASTC_5x5_UNORM_BLOCK :: ASTC_5x5_UNORM_BLOCK; VK_FORMAT_ASTC_5x5_SRGB_BLOCK :: ASTC_5x5_SRGB_BLOCK; VK_FORMAT_ASTC_6x5_UNORM_BLOCK :: ASTC_6x5_UNORM_BLOCK; VK_FORMAT_ASTC_6x5_SRGB_BLOCK :: ASTC_6x5_SRGB_BLOCK; VK_FORMAT_ASTC_6x6_UNORM_BLOCK :: ASTC_6x6_UNORM_BLOCK; VK_FORMAT_ASTC_6x6_SRGB_BLOCK :: ASTC_6x6_SRGB_BLOCK; VK_FORMAT_ASTC_8x5_UNORM_BLOCK :: ASTC_8x5_UNORM_BLOCK; VK_FORMAT_ASTC_8x5_SRGB_BLOCK :: ASTC_8x5_SRGB_BLOCK; VK_FORMAT_ASTC_8x6_UNORM_BLOCK :: ASTC_8x6_UNORM_BLOCK; VK_FORMAT_ASTC_8x6_SRGB_BLOCK :: ASTC_8x6_SRGB_BLOCK; VK_FORMAT_ASTC_8x8_UNORM_BLOCK :: ASTC_8x8_UNORM_BLOCK; VK_FORMAT_ASTC_8x8_SRGB_BLOCK :: ASTC_8x8_SRGB_BLOCK; VK_FORMAT_ASTC_10x5_UNORM_BLOCK :: ASTC_10x5_UNORM_BLOCK; VK_FORMAT_ASTC_10x5_SRGB_BLOCK :: ASTC_10x5_SRGB_BLOCK; VK_FORMAT_ASTC_10x6_UNORM_BLOCK :: ASTC_10x6_UNORM_BLOCK; VK_FORMAT_ASTC_10x6_SRGB_BLOCK :: ASTC_10x6_SRGB_BLOCK; VK_FORMAT_ASTC_10x8_UNORM_BLOCK :: ASTC_10x8_UNORM_BLOCK; VK_FORMAT_ASTC_10x8_SRGB_BLOCK :: ASTC_10x8_SRGB_BLOCK; VK_FORMAT_ASTC_10x10_UNORM_BLOCK :: ASTC_10x10_UNORM_BLOCK; VK_FORMAT_ASTC_10x10_SRGB_BLOCK :: ASTC_10x10_SRGB_BLOCK; VK_FORMAT_ASTC_12x10_UNORM_BLOCK :: ASTC_12x10_UNORM_BLOCK; VK_FORMAT_ASTC_12x10_SRGB_BLOCK :: ASTC_12x10_SRGB_BLOCK; VK_FORMAT_ASTC_12x12_UNORM_BLOCK :: ASTC_12x12_UNORM_BLOCK; VK_FORMAT_ASTC_12x12_SRGB_BLOCK :: ASTC_12x12_SRGB_BLOCK; VK_FORMAT_G8B8G8R8_422_UNORM :: G8B8G8R8_422_UNORM; VK_FORMAT_B8G8R8G8_422_UNORM :: B8G8R8G8_422_UNORM; VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM :: G8_B8_R8_3PLANE_420_UNORM; VK_FORMAT_G8_B8R8_2PLANE_420_UNORM :: G8_B8R8_2PLANE_420_UNORM; VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM :: G8_B8_R8_3PLANE_422_UNORM; VK_FORMAT_G8_B8R8_2PLANE_422_UNORM :: G8_B8R8_2PLANE_422_UNORM; VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM :: G8_B8_R8_3PLANE_444_UNORM; VK_FORMAT_R10X6_UNORM_PACK16 :: R10X6_UNORM_PACK16; VK_FORMAT_R10X6G10X6_UNORM_2PACK16 :: R10X6G10X6_UNORM_2PACK16; VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16 :: R10X6G10X6B10X6A10X6_UNORM_4PACK16; VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16 :: G10X6B10X6G10X6R10X6_422_UNORM_4PACK16; VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16 :: B10X6G10X6R10X6G10X6_422_UNORM_4PACK16; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16 :: G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16 :: G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16 :: G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16 :: G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16 :: G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16; VK_FORMAT_R12X4_UNORM_PACK16 :: R12X4_UNORM_PACK16; VK_FORMAT_R12X4G12X4_UNORM_2PACK16 :: R12X4G12X4_UNORM_2PACK16; VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16 :: R12X4G12X4B12X4A12X4_UNORM_4PACK16; VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16 :: G12X4B12X4G12X4R12X4_422_UNORM_4PACK16; VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16 :: B12X4G12X4R12X4G12X4_422_UNORM_4PACK16; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16 :: G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16 :: G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16 :: G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16 :: G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16 :: G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16; VK_FORMAT_G16B16G16R16_422_UNORM :: G16B16G16R16_422_UNORM; VK_FORMAT_B16G16R16G16_422_UNORM :: B16G16R16G16_422_UNORM; VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM :: G16_B16_R16_3PLANE_420_UNORM; VK_FORMAT_G16_B16R16_2PLANE_420_UNORM :: G16_B16R16_2PLANE_420_UNORM; VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM :: G16_B16_R16_3PLANE_422_UNORM; VK_FORMAT_G16_B16R16_2PLANE_422_UNORM :: G16_B16R16_2PLANE_422_UNORM; VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM :: G16_B16_R16_3PLANE_444_UNORM; VK_FORMAT_G8_B8R8_2PLANE_444_UNORM :: G8_B8R8_2PLANE_444_UNORM; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16 :: G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16 :: G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16; VK_FORMAT_G16_B16R16_2PLANE_444_UNORM :: G16_B16R16_2PLANE_444_UNORM; VK_FORMAT_A4R4G4B4_UNORM_PACK16 :: A4R4G4B4_UNORM_PACK16; VK_FORMAT_A4B4G4R4_UNORM_PACK16 :: A4B4G4R4_UNORM_PACK16; VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK :: ASTC_4x4_SFLOAT_BLOCK; VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK :: ASTC_5x4_SFLOAT_BLOCK; VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK :: ASTC_5x5_SFLOAT_BLOCK; VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK :: ASTC_6x5_SFLOAT_BLOCK; VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK :: ASTC_6x6_SFLOAT_BLOCK; VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK :: ASTC_8x5_SFLOAT_BLOCK; VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK :: ASTC_8x6_SFLOAT_BLOCK; VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK :: ASTC_8x8_SFLOAT_BLOCK; VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK :: ASTC_10x5_SFLOAT_BLOCK; VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK :: ASTC_10x6_SFLOAT_BLOCK; VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK :: ASTC_10x8_SFLOAT_BLOCK; VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK :: ASTC_10x10_SFLOAT_BLOCK; VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK :: ASTC_12x10_SFLOAT_BLOCK; VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK :: ASTC_12x12_SFLOAT_BLOCK; VK_FORMAT_A1B5G5R5_UNORM_PACK16 :: A1B5G5R5_UNORM_PACK16; VK_FORMAT_A8_UNORM :: A8_UNORM; VK_FORMAT_PVRTC1_2BPP_UNORM_BLOCK_IMG :: PVRTC1_2BPP_UNORM_BLOCK_IMG; VK_FORMAT_PVRTC1_4BPP_UNORM_BLOCK_IMG :: PVRTC1_4BPP_UNORM_BLOCK_IMG; VK_FORMAT_PVRTC2_2BPP_UNORM_BLOCK_IMG :: PVRTC2_2BPP_UNORM_BLOCK_IMG; VK_FORMAT_PVRTC2_4BPP_UNORM_BLOCK_IMG :: PVRTC2_4BPP_UNORM_BLOCK_IMG; VK_FORMAT_PVRTC1_2BPP_SRGB_BLOCK_IMG :: PVRTC1_2BPP_SRGB_BLOCK_IMG; VK_FORMAT_PVRTC1_4BPP_SRGB_BLOCK_IMG :: PVRTC1_4BPP_SRGB_BLOCK_IMG; VK_FORMAT_PVRTC2_2BPP_SRGB_BLOCK_IMG :: PVRTC2_2BPP_SRGB_BLOCK_IMG; VK_FORMAT_PVRTC2_4BPP_SRGB_BLOCK_IMG :: PVRTC2_4BPP_SRGB_BLOCK_IMG; VK_FORMAT_R16G16_SFIXED5_NV :: R16G16_SFIXED5_NV; VK_FORMAT_ASTC_4x4_SFLOAT_BLOCK_EXT :: ASTC_4x4_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_5x4_SFLOAT_BLOCK_EXT :: ASTC_5x4_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_5x5_SFLOAT_BLOCK_EXT :: ASTC_5x5_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_6x5_SFLOAT_BLOCK_EXT :: ASTC_6x5_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_6x6_SFLOAT_BLOCK_EXT :: ASTC_6x6_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_8x5_SFLOAT_BLOCK_EXT :: ASTC_8x5_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_8x6_SFLOAT_BLOCK_EXT :: ASTC_8x6_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_8x8_SFLOAT_BLOCK_EXT :: ASTC_8x8_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_10x5_SFLOAT_BLOCK_EXT :: ASTC_10x5_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_10x6_SFLOAT_BLOCK_EXT :: ASTC_10x6_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_10x8_SFLOAT_BLOCK_EXT :: ASTC_10x8_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_10x10_SFLOAT_BLOCK_EXT :: ASTC_10x10_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_12x10_SFLOAT_BLOCK_EXT :: ASTC_12x10_SFLOAT_BLOCK_EXT; VK_FORMAT_ASTC_12x12_SFLOAT_BLOCK_EXT :: ASTC_12x12_SFLOAT_BLOCK_EXT; VK_FORMAT_G8B8G8R8_422_UNORM_KHR :: G8B8G8R8_422_UNORM_KHR; VK_FORMAT_B8G8R8G8_422_UNORM_KHR :: B8G8R8G8_422_UNORM_KHR; VK_FORMAT_G8_B8_R8_3PLANE_420_UNORM_KHR :: G8_B8_R8_3PLANE_420_UNORM_KHR; VK_FORMAT_G8_B8R8_2PLANE_420_UNORM_KHR :: G8_B8R8_2PLANE_420_UNORM_KHR; VK_FORMAT_G8_B8_R8_3PLANE_422_UNORM_KHR :: G8_B8_R8_3PLANE_422_UNORM_KHR; VK_FORMAT_G8_B8R8_2PLANE_422_UNORM_KHR :: G8_B8R8_2PLANE_422_UNORM_KHR; VK_FORMAT_G8_B8_R8_3PLANE_444_UNORM_KHR :: G8_B8_R8_3PLANE_444_UNORM_KHR; VK_FORMAT_R10X6_UNORM_PACK16_KHR :: R10X6_UNORM_PACK16_KHR; VK_FORMAT_R10X6G10X6_UNORM_2PACK16_KHR :: R10X6G10X6_UNORM_2PACK16_KHR; VK_FORMAT_R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR :: R10X6G10X6B10X6A10X6_UNORM_4PACK16_KHR; VK_FORMAT_G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR :: G10X6B10X6G10X6R10X6_422_UNORM_4PACK16_KHR; VK_FORMAT_B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR :: B10X6G10X6R10X6G10X6_422_UNORM_4PACK16_KHR; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR :: G10X6_B10X6_R10X6_3PLANE_420_UNORM_3PACK16_KHR; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR :: G10X6_B10X6R10X6_2PLANE_420_UNORM_3PACK16_KHR; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR :: G10X6_B10X6_R10X6_3PLANE_422_UNORM_3PACK16_KHR; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR :: G10X6_B10X6R10X6_2PLANE_422_UNORM_3PACK16_KHR; VK_FORMAT_G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR :: G10X6_B10X6_R10X6_3PLANE_444_UNORM_3PACK16_KHR; VK_FORMAT_R12X4_UNORM_PACK16_KHR :: R12X4_UNORM_PACK16_KHR; VK_FORMAT_R12X4G12X4_UNORM_2PACK16_KHR :: R12X4G12X4_UNORM_2PACK16_KHR; VK_FORMAT_R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR :: R12X4G12X4B12X4A12X4_UNORM_4PACK16_KHR; VK_FORMAT_G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR :: G12X4B12X4G12X4R12X4_422_UNORM_4PACK16_KHR; VK_FORMAT_B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR :: B12X4G12X4R12X4G12X4_422_UNORM_4PACK16_KHR; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR :: G12X4_B12X4_R12X4_3PLANE_420_UNORM_3PACK16_KHR; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR :: G12X4_B12X4R12X4_2PLANE_420_UNORM_3PACK16_KHR; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR :: G12X4_B12X4_R12X4_3PLANE_422_UNORM_3PACK16_KHR; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR :: G12X4_B12X4R12X4_2PLANE_422_UNORM_3PACK16_KHR; VK_FORMAT_G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR :: G12X4_B12X4_R12X4_3PLANE_444_UNORM_3PACK16_KHR; VK_FORMAT_G16B16G16R16_422_UNORM_KHR :: G16B16G16R16_422_UNORM_KHR; VK_FORMAT_B16G16R16G16_422_UNORM_KHR :: B16G16R16G16_422_UNORM_KHR; VK_FORMAT_G16_B16_R16_3PLANE_420_UNORM_KHR :: G16_B16_R16_3PLANE_420_UNORM_KHR; VK_FORMAT_G16_B16R16_2PLANE_420_UNORM_KHR :: G16_B16R16_2PLANE_420_UNORM_KHR; VK_FORMAT_G16_B16_R16_3PLANE_422_UNORM_KHR :: G16_B16_R16_3PLANE_422_UNORM_KHR; VK_FORMAT_G16_B16R16_2PLANE_422_UNORM_KHR :: G16_B16R16_2PLANE_422_UNORM_KHR; VK_FORMAT_G16_B16_R16_3PLANE_444_UNORM_KHR :: G16_B16_R16_3PLANE_444_UNORM_KHR; VK_FORMAT_G8_B8R8_2PLANE_444_UNORM_EXT :: G8_B8R8_2PLANE_444_UNORM_EXT; VK_FORMAT_G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT :: G10X6_B10X6R10X6_2PLANE_444_UNORM_3PACK16_EXT; VK_FORMAT_G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT :: G12X4_B12X4R12X4_2PLANE_444_UNORM_3PACK16_EXT; VK_FORMAT_G16_B16R16_2PLANE_444_UNORM_EXT :: G16_B16R16_2PLANE_444_UNORM_EXT; VK_FORMAT_A4R4G4B4_UNORM_PACK16_EXT :: A4R4G4B4_UNORM_PACK16_EXT; VK_FORMAT_A4B4G4R4_UNORM_PACK16_EXT :: A4B4G4R4_UNORM_PACK16_EXT; VK_FORMAT_R16G16_S10_5_NV :: R16G16_S10_5_NV; VK_FORMAT_A1B5G5R5_UNORM_PACK16_KHR :: A1B5G5R5_UNORM_PACK16_KHR; VK_FORMAT_A8_UNORM_KHR :: A8_UNORM_KHR; VK_FORMAT_MAX_ENUM :: MAX_ENUM; } VkImageTiling :: enum u32 { OPTIMAL :: 0; LINEAR :: 1; DRM_FORMAT_MODIFIER_EXT :: 1000158000; MAX_ENUM :: 2147483647; VK_IMAGE_TILING_OPTIMAL :: OPTIMAL; VK_IMAGE_TILING_LINEAR :: LINEAR; VK_IMAGE_TILING_DRM_FORMAT_MODIFIER_EXT :: DRM_FORMAT_MODIFIER_EXT; VK_IMAGE_TILING_MAX_ENUM :: MAX_ENUM; } VkImageType :: enum u32 { _1D :: 0; _2D :: 1; _3D :: 2; MAX_ENUM :: 2147483647; VK_IMAGE_TYPE_1D :: _1D; VK_IMAGE_TYPE_2D :: _2D; VK_IMAGE_TYPE_3D :: _3D; VK_IMAGE_TYPE_MAX_ENUM :: MAX_ENUM; } VkPhysicalDeviceType :: enum u32 { OTHER :: 0; INTEGRATED_GPU :: 1; DISCRETE_GPU :: 2; VIRTUAL_GPU :: 3; CPU :: 4; MAX_ENUM :: 2147483647; VK_PHYSICAL_DEVICE_TYPE_OTHER :: OTHER; VK_PHYSICAL_DEVICE_TYPE_INTEGRATED_GPU :: INTEGRATED_GPU; VK_PHYSICAL_DEVICE_TYPE_DISCRETE_GPU :: DISCRETE_GPU; VK_PHYSICAL_DEVICE_TYPE_VIRTUAL_GPU :: VIRTUAL_GPU; VK_PHYSICAL_DEVICE_TYPE_CPU :: CPU; VK_PHYSICAL_DEVICE_TYPE_MAX_ENUM :: MAX_ENUM; } VkQueryType :: enum u32 { OCCLUSION :: 0; PIPELINE_STATISTICS :: 1; TIMESTAMP :: 2; RESULT_STATUS_ONLY_KHR :: 1000023000; TRANSFORM_FEEDBACK_STREAM_EXT :: 1000028004; PERFORMANCE_QUERY_KHR :: 1000116000; ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR :: 1000150000; ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR :: 1000150001; ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV :: 1000165000; PERFORMANCE_QUERY_INTEL :: 1000210000; VIDEO_ENCODE_FEEDBACK_KHR :: 1000299000; MESH_PRIMITIVES_GENERATED_EXT :: 1000328000; PRIMITIVES_GENERATED_EXT :: 1000382000; ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR :: 1000386000; ACCELERATION_STRUCTURE_SIZE_KHR :: 1000386001; MICROMAP_SERIALIZATION_SIZE_EXT :: 1000396000; MICROMAP_COMPACTED_SIZE_EXT :: 1000396001; MAX_ENUM :: 2147483647; VK_QUERY_TYPE_OCCLUSION :: OCCLUSION; VK_QUERY_TYPE_PIPELINE_STATISTICS :: PIPELINE_STATISTICS; VK_QUERY_TYPE_TIMESTAMP :: TIMESTAMP; VK_QUERY_TYPE_RESULT_STATUS_ONLY_KHR :: RESULT_STATUS_ONLY_KHR; VK_QUERY_TYPE_TRANSFORM_FEEDBACK_STREAM_EXT :: TRANSFORM_FEEDBACK_STREAM_EXT; VK_QUERY_TYPE_PERFORMANCE_QUERY_KHR :: PERFORMANCE_QUERY_KHR; VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR :: ACCELERATION_STRUCTURE_COMPACTED_SIZE_KHR; VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR :: ACCELERATION_STRUCTURE_SERIALIZATION_SIZE_KHR; VK_QUERY_TYPE_ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV :: ACCELERATION_STRUCTURE_COMPACTED_SIZE_NV; VK_QUERY_TYPE_PERFORMANCE_QUERY_INTEL :: PERFORMANCE_QUERY_INTEL; VK_QUERY_TYPE_VIDEO_ENCODE_FEEDBACK_KHR :: VIDEO_ENCODE_FEEDBACK_KHR; VK_QUERY_TYPE_MESH_PRIMITIVES_GENERATED_EXT :: MESH_PRIMITIVES_GENERATED_EXT; VK_QUERY_TYPE_PRIMITIVES_GENERATED_EXT :: PRIMITIVES_GENERATED_EXT; VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR :: ACCELERATION_STRUCTURE_SERIALIZATION_BOTTOM_LEVEL_POINTERS_KHR; VK_QUERY_TYPE_ACCELERATION_STRUCTURE_SIZE_KHR :: ACCELERATION_STRUCTURE_SIZE_KHR; VK_QUERY_TYPE_MICROMAP_SERIALIZATION_SIZE_EXT :: MICROMAP_SERIALIZATION_SIZE_EXT; VK_QUERY_TYPE_MICROMAP_COMPACTED_SIZE_EXT :: MICROMAP_COMPACTED_SIZE_EXT; VK_QUERY_TYPE_MAX_ENUM :: MAX_ENUM; } VkSharingMode :: enum u32 { EXCLUSIVE :: 0; CONCURRENT :: 1; MAX_ENUM :: 2147483647; VK_SHARING_MODE_EXCLUSIVE :: EXCLUSIVE; VK_SHARING_MODE_CONCURRENT :: CONCURRENT; VK_SHARING_MODE_MAX_ENUM :: MAX_ENUM; } VkComponentSwizzle :: enum u32 { IDENTITY :: 0; ZERO :: 1; ONE :: 2; R :: 3; G :: 4; B :: 5; A :: 6; MAX_ENUM :: 2147483647; VK_COMPONENT_SWIZZLE_IDENTITY :: IDENTITY; VK_COMPONENT_SWIZZLE_ZERO :: ZERO; VK_COMPONENT_SWIZZLE_ONE :: ONE; VK_COMPONENT_SWIZZLE_R :: R; VK_COMPONENT_SWIZZLE_G :: G; VK_COMPONENT_SWIZZLE_B :: B; VK_COMPONENT_SWIZZLE_A :: A; VK_COMPONENT_SWIZZLE_MAX_ENUM :: MAX_ENUM; } VkImageViewType :: enum u32 { _1D :: 0; _2D :: 1; _3D :: 2; CUBE :: 3; _1D_ARRAY :: 4; _2D_ARRAY :: 5; CUBE_ARRAY :: 6; MAX_ENUM :: 2147483647; VK_IMAGE_VIEW_TYPE_1D :: _1D; VK_IMAGE_VIEW_TYPE_2D :: _2D; VK_IMAGE_VIEW_TYPE_3D :: _3D; VK_IMAGE_VIEW_TYPE_CUBE :: CUBE; VK_IMAGE_VIEW_TYPE_1D_ARRAY :: _1D_ARRAY; VK_IMAGE_VIEW_TYPE_2D_ARRAY :: _2D_ARRAY; VK_IMAGE_VIEW_TYPE_CUBE_ARRAY :: CUBE_ARRAY; VK_IMAGE_VIEW_TYPE_MAX_ENUM :: MAX_ENUM; } VkBlendFactor :: enum u32 { ZERO :: 0; ONE :: 1; SRC_COLOR :: 2; ONE_MINUS_SRC_COLOR :: 3; DST_COLOR :: 4; ONE_MINUS_DST_COLOR :: 5; SRC_ALPHA :: 6; ONE_MINUS_SRC_ALPHA :: 7; DST_ALPHA :: 8; ONE_MINUS_DST_ALPHA :: 9; CONSTANT_COLOR :: 10; ONE_MINUS_CONSTANT_COLOR :: 11; CONSTANT_ALPHA :: 12; ONE_MINUS_CONSTANT_ALPHA :: 13; SRC_ALPHA_SATURATE :: 14; SRC1_COLOR :: 15; ONE_MINUS_SRC1_COLOR :: 16; SRC1_ALPHA :: 17; ONE_MINUS_SRC1_ALPHA :: 18; MAX_ENUM :: 2147483647; VK_BLEND_FACTOR_ZERO :: ZERO; VK_BLEND_FACTOR_ONE :: ONE; VK_BLEND_FACTOR_SRC_COLOR :: SRC_COLOR; VK_BLEND_FACTOR_ONE_MINUS_SRC_COLOR :: ONE_MINUS_SRC_COLOR; VK_BLEND_FACTOR_DST_COLOR :: DST_COLOR; VK_BLEND_FACTOR_ONE_MINUS_DST_COLOR :: ONE_MINUS_DST_COLOR; VK_BLEND_FACTOR_SRC_ALPHA :: SRC_ALPHA; VK_BLEND_FACTOR_ONE_MINUS_SRC_ALPHA :: ONE_MINUS_SRC_ALPHA; VK_BLEND_FACTOR_DST_ALPHA :: DST_ALPHA; VK_BLEND_FACTOR_ONE_MINUS_DST_ALPHA :: ONE_MINUS_DST_ALPHA; VK_BLEND_FACTOR_CONSTANT_COLOR :: CONSTANT_COLOR; VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_COLOR :: ONE_MINUS_CONSTANT_COLOR; VK_BLEND_FACTOR_CONSTANT_ALPHA :: CONSTANT_ALPHA; VK_BLEND_FACTOR_ONE_MINUS_CONSTANT_ALPHA :: ONE_MINUS_CONSTANT_ALPHA; VK_BLEND_FACTOR_SRC_ALPHA_SATURATE :: SRC_ALPHA_SATURATE; VK_BLEND_FACTOR_SRC1_COLOR :: SRC1_COLOR; VK_BLEND_FACTOR_ONE_MINUS_SRC1_COLOR :: ONE_MINUS_SRC1_COLOR; VK_BLEND_FACTOR_SRC1_ALPHA :: SRC1_ALPHA; VK_BLEND_FACTOR_ONE_MINUS_SRC1_ALPHA :: ONE_MINUS_SRC1_ALPHA; VK_BLEND_FACTOR_MAX_ENUM :: MAX_ENUM; } VkBlendOp :: enum u32 { ADD :: 0; SUBTRACT :: 1; REVERSE_SUBTRACT :: 2; MIN :: 3; MAX :: 4; ZERO_EXT :: 1000148000; SRC_EXT :: 1000148001; DST_EXT :: 1000148002; SRC_OVER_EXT :: 1000148003; DST_OVER_EXT :: 1000148004; SRC_IN_EXT :: 1000148005; DST_IN_EXT :: 1000148006; SRC_OUT_EXT :: 1000148007; DST_OUT_EXT :: 1000148008; SRC_ATOP_EXT :: 1000148009; DST_ATOP_EXT :: 1000148010; XOR_EXT :: 1000148011; MULTIPLY_EXT :: 1000148012; SCREEN_EXT :: 1000148013; OVERLAY_EXT :: 1000148014; DARKEN_EXT :: 1000148015; LIGHTEN_EXT :: 1000148016; COLORDODGE_EXT :: 1000148017; COLORBURN_EXT :: 1000148018; HARDLIGHT_EXT :: 1000148019; SOFTLIGHT_EXT :: 1000148020; DIFFERENCE_EXT :: 1000148021; EXCLUSION_EXT :: 1000148022; INVERT_EXT :: 1000148023; INVERT_RGB_EXT :: 1000148024; LINEARDODGE_EXT :: 1000148025; LINEARBURN_EXT :: 1000148026; VIVIDLIGHT_EXT :: 1000148027; LINEARLIGHT_EXT :: 1000148028; PINLIGHT_EXT :: 1000148029; HARDMIX_EXT :: 1000148030; HSL_HUE_EXT :: 1000148031; HSL_SATURATION_EXT :: 1000148032; HSL_COLOR_EXT :: 1000148033; HSL_LUMINOSITY_EXT :: 1000148034; PLUS_EXT :: 1000148035; PLUS_CLAMPED_EXT :: 1000148036; PLUS_CLAMPED_ALPHA_EXT :: 1000148037; PLUS_DARKER_EXT :: 1000148038; MINUS_EXT :: 1000148039; MINUS_CLAMPED_EXT :: 1000148040; CONTRAST_EXT :: 1000148041; INVERT_OVG_EXT :: 1000148042; RED_EXT :: 1000148043; GREEN_EXT :: 1000148044; BLUE_EXT :: 1000148045; MAX_ENUM :: 2147483647; VK_BLEND_OP_ADD :: ADD; VK_BLEND_OP_SUBTRACT :: SUBTRACT; VK_BLEND_OP_REVERSE_SUBTRACT :: REVERSE_SUBTRACT; VK_BLEND_OP_MIN :: MIN; VK_BLEND_OP_MAX :: MAX; VK_BLEND_OP_ZERO_EXT :: ZERO_EXT; VK_BLEND_OP_SRC_EXT :: SRC_EXT; VK_BLEND_OP_DST_EXT :: DST_EXT; VK_BLEND_OP_SRC_OVER_EXT :: SRC_OVER_EXT; VK_BLEND_OP_DST_OVER_EXT :: DST_OVER_EXT; VK_BLEND_OP_SRC_IN_EXT :: SRC_IN_EXT; VK_BLEND_OP_DST_IN_EXT :: DST_IN_EXT; VK_BLEND_OP_SRC_OUT_EXT :: SRC_OUT_EXT; VK_BLEND_OP_DST_OUT_EXT :: DST_OUT_EXT; VK_BLEND_OP_SRC_ATOP_EXT :: SRC_ATOP_EXT; VK_BLEND_OP_DST_ATOP_EXT :: DST_ATOP_EXT; VK_BLEND_OP_XOR_EXT :: XOR_EXT; VK_BLEND_OP_MULTIPLY_EXT :: MULTIPLY_EXT; VK_BLEND_OP_SCREEN_EXT :: SCREEN_EXT; VK_BLEND_OP_OVERLAY_EXT :: OVERLAY_EXT; VK_BLEND_OP_DARKEN_EXT :: DARKEN_EXT; VK_BLEND_OP_LIGHTEN_EXT :: LIGHTEN_EXT; VK_BLEND_OP_COLORDODGE_EXT :: COLORDODGE_EXT; VK_BLEND_OP_COLORBURN_EXT :: COLORBURN_EXT; VK_BLEND_OP_HARDLIGHT_EXT :: HARDLIGHT_EXT; VK_BLEND_OP_SOFTLIGHT_EXT :: SOFTLIGHT_EXT; VK_BLEND_OP_DIFFERENCE_EXT :: DIFFERENCE_EXT; VK_BLEND_OP_EXCLUSION_EXT :: EXCLUSION_EXT; VK_BLEND_OP_INVERT_EXT :: INVERT_EXT; VK_BLEND_OP_INVERT_RGB_EXT :: INVERT_RGB_EXT; VK_BLEND_OP_LINEARDODGE_EXT :: LINEARDODGE_EXT; VK_BLEND_OP_LINEARBURN_EXT :: LINEARBURN_EXT; VK_BLEND_OP_VIVIDLIGHT_EXT :: VIVIDLIGHT_EXT; VK_BLEND_OP_LINEARLIGHT_EXT :: LINEARLIGHT_EXT; VK_BLEND_OP_PINLIGHT_EXT :: PINLIGHT_EXT; VK_BLEND_OP_HARDMIX_EXT :: HARDMIX_EXT; VK_BLEND_OP_HSL_HUE_EXT :: HSL_HUE_EXT; VK_BLEND_OP_HSL_SATURATION_EXT :: HSL_SATURATION_EXT; VK_BLEND_OP_HSL_COLOR_EXT :: HSL_COLOR_EXT; VK_BLEND_OP_HSL_LUMINOSITY_EXT :: HSL_LUMINOSITY_EXT; VK_BLEND_OP_PLUS_EXT :: PLUS_EXT; VK_BLEND_OP_PLUS_CLAMPED_EXT :: PLUS_CLAMPED_EXT; VK_BLEND_OP_PLUS_CLAMPED_ALPHA_EXT :: PLUS_CLAMPED_ALPHA_EXT; VK_BLEND_OP_PLUS_DARKER_EXT :: PLUS_DARKER_EXT; VK_BLEND_OP_MINUS_EXT :: MINUS_EXT; VK_BLEND_OP_MINUS_CLAMPED_EXT :: MINUS_CLAMPED_EXT; VK_BLEND_OP_CONTRAST_EXT :: CONTRAST_EXT; VK_BLEND_OP_INVERT_OVG_EXT :: INVERT_OVG_EXT; VK_BLEND_OP_RED_EXT :: RED_EXT; VK_BLEND_OP_GREEN_EXT :: GREEN_EXT; VK_BLEND_OP_BLUE_EXT :: BLUE_EXT; VK_BLEND_OP_MAX_ENUM :: MAX_ENUM; } VkCompareOp :: enum u32 { NEVER :: 0; LESS :: 1; EQUAL :: 2; LESS_OR_EQUAL :: 3; GREATER :: 4; NOT_EQUAL :: 5; GREATER_OR_EQUAL :: 6; ALWAYS :: 7; MAX_ENUM :: 2147483647; VK_COMPARE_OP_NEVER :: NEVER; VK_COMPARE_OP_LESS :: LESS; VK_COMPARE_OP_EQUAL :: EQUAL; VK_COMPARE_OP_LESS_OR_EQUAL :: LESS_OR_EQUAL; VK_COMPARE_OP_GREATER :: GREATER; VK_COMPARE_OP_NOT_EQUAL :: NOT_EQUAL; VK_COMPARE_OP_GREATER_OR_EQUAL :: GREATER_OR_EQUAL; VK_COMPARE_OP_ALWAYS :: ALWAYS; VK_COMPARE_OP_MAX_ENUM :: MAX_ENUM; } VkDynamicState :: enum u32 { VIEWPORT :: 0; SCISSOR :: 1; LINE_WIDTH :: 2; DEPTH_BIAS :: 3; BLEND_CONSTANTS :: 4; DEPTH_BOUNDS :: 5; STENCIL_COMPARE_MASK :: 6; STENCIL_WRITE_MASK :: 7; STENCIL_REFERENCE :: 8; CULL_MODE :: 1000267000; FRONT_FACE :: 1000267001; PRIMITIVE_TOPOLOGY :: 1000267002; VIEWPORT_WITH_COUNT :: 1000267003; SCISSOR_WITH_COUNT :: 1000267004; VERTEX_INPUT_BINDING_STRIDE :: 1000267005; DEPTH_TEST_ENABLE :: 1000267006; DEPTH_WRITE_ENABLE :: 1000267007; DEPTH_COMPARE_OP :: 1000267008; DEPTH_BOUNDS_TEST_ENABLE :: 1000267009; STENCIL_TEST_ENABLE :: 1000267010; STENCIL_OP :: 1000267011; RASTERIZER_DISCARD_ENABLE :: 1000377001; DEPTH_BIAS_ENABLE :: 1000377002; PRIMITIVE_RESTART_ENABLE :: 1000377004; LINE_STIPPLE :: 1000259000; VIEWPORT_W_SCALING_NV :: 1000087000; DISCARD_RECTANGLE_EXT :: 1000099000; DISCARD_RECTANGLE_ENABLE_EXT :: 1000099001; DISCARD_RECTANGLE_MODE_EXT :: 1000099002; SAMPLE_LOCATIONS_EXT :: 1000143000; RAY_TRACING_PIPELINE_STACK_SIZE_KHR :: 1000347000; VIEWPORT_SHADING_RATE_PALETTE_NV :: 1000164004; VIEWPORT_COARSE_SAMPLE_ORDER_NV :: 1000164006; EXCLUSIVE_SCISSOR_ENABLE_NV :: 1000205000; EXCLUSIVE_SCISSOR_NV :: 1000205001; FRAGMENT_SHADING_RATE_KHR :: 1000226000; VERTEX_INPUT_EXT :: 1000352000; PATCH_CONTROL_POINTS_EXT :: 1000377000; LOGIC_OP_EXT :: 1000377003; COLOR_WRITE_ENABLE_EXT :: 1000381000; DEPTH_CLAMP_ENABLE_EXT :: 1000455003; POLYGON_MODE_EXT :: 1000455004; RASTERIZATION_SAMPLES_EXT :: 1000455005; SAMPLE_MASK_EXT :: 1000455006; ALPHA_TO_COVERAGE_ENABLE_EXT :: 1000455007; ALPHA_TO_ONE_ENABLE_EXT :: 1000455008; LOGIC_OP_ENABLE_EXT :: 1000455009; COLOR_BLEND_ENABLE_EXT :: 1000455010; COLOR_BLEND_EQUATION_EXT :: 1000455011; COLOR_WRITE_MASK_EXT :: 1000455012; TESSELLATION_DOMAIN_ORIGIN_EXT :: 1000455002; RASTERIZATION_STREAM_EXT :: 1000455013; CONSERVATIVE_RASTERIZATION_MODE_EXT :: 1000455014; EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT :: 1000455015; DEPTH_CLIP_ENABLE_EXT :: 1000455016; SAMPLE_LOCATIONS_ENABLE_EXT :: 1000455017; COLOR_BLEND_ADVANCED_EXT :: 1000455018; PROVOKING_VERTEX_MODE_EXT :: 1000455019; LINE_RASTERIZATION_MODE_EXT :: 1000455020; LINE_STIPPLE_ENABLE_EXT :: 1000455021; DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT :: 1000455022; VIEWPORT_W_SCALING_ENABLE_NV :: 1000455023; VIEWPORT_SWIZZLE_NV :: 1000455024; COVERAGE_TO_COLOR_ENABLE_NV :: 1000455025; COVERAGE_TO_COLOR_LOCATION_NV :: 1000455026; COVERAGE_MODULATION_MODE_NV :: 1000455027; COVERAGE_MODULATION_TABLE_ENABLE_NV :: 1000455028; COVERAGE_MODULATION_TABLE_NV :: 1000455029; SHADING_RATE_IMAGE_ENABLE_NV :: 1000455030; REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV :: 1000455031; COVERAGE_REDUCTION_MODE_NV :: 1000455032; ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT :: 1000524000; DEPTH_CLAMP_RANGE_EXT :: 1000582000; LINE_STIPPLE_EXT :: 1000259000; CULL_MODE_EXT :: 1000267000; FRONT_FACE_EXT :: 1000267001; PRIMITIVE_TOPOLOGY_EXT :: 1000267002; VIEWPORT_WITH_COUNT_EXT :: 1000267003; SCISSOR_WITH_COUNT_EXT :: 1000267004; VERTEX_INPUT_BINDING_STRIDE_EXT :: 1000267005; DEPTH_TEST_ENABLE_EXT :: 1000267006; DEPTH_WRITE_ENABLE_EXT :: 1000267007; DEPTH_COMPARE_OP_EXT :: 1000267008; DEPTH_BOUNDS_TEST_ENABLE_EXT :: 1000267009; STENCIL_TEST_ENABLE_EXT :: 1000267010; STENCIL_OP_EXT :: 1000267011; RASTERIZER_DISCARD_ENABLE_EXT :: 1000377001; DEPTH_BIAS_ENABLE_EXT :: 1000377002; PRIMITIVE_RESTART_ENABLE_EXT :: 1000377004; LINE_STIPPLE_KHR :: 1000259000; MAX_ENUM :: 2147483647; VK_DYNAMIC_STATE_VIEWPORT :: VIEWPORT; VK_DYNAMIC_STATE_SCISSOR :: SCISSOR; VK_DYNAMIC_STATE_LINE_WIDTH :: LINE_WIDTH; VK_DYNAMIC_STATE_DEPTH_BIAS :: DEPTH_BIAS; VK_DYNAMIC_STATE_BLEND_CONSTANTS :: BLEND_CONSTANTS; VK_DYNAMIC_STATE_DEPTH_BOUNDS :: DEPTH_BOUNDS; VK_DYNAMIC_STATE_STENCIL_COMPARE_MASK :: STENCIL_COMPARE_MASK; VK_DYNAMIC_STATE_STENCIL_WRITE_MASK :: STENCIL_WRITE_MASK; VK_DYNAMIC_STATE_STENCIL_REFERENCE :: STENCIL_REFERENCE; VK_DYNAMIC_STATE_CULL_MODE :: CULL_MODE; VK_DYNAMIC_STATE_FRONT_FACE :: FRONT_FACE; VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY :: PRIMITIVE_TOPOLOGY; VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT :: VIEWPORT_WITH_COUNT; VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT :: SCISSOR_WITH_COUNT; VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE :: VERTEX_INPUT_BINDING_STRIDE; VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE :: DEPTH_TEST_ENABLE; VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE :: DEPTH_WRITE_ENABLE; VK_DYNAMIC_STATE_DEPTH_COMPARE_OP :: DEPTH_COMPARE_OP; VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE :: DEPTH_BOUNDS_TEST_ENABLE; VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE :: STENCIL_TEST_ENABLE; VK_DYNAMIC_STATE_STENCIL_OP :: STENCIL_OP; VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE :: RASTERIZER_DISCARD_ENABLE; VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE :: DEPTH_BIAS_ENABLE; VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE :: PRIMITIVE_RESTART_ENABLE; VK_DYNAMIC_STATE_LINE_STIPPLE :: LINE_STIPPLE; VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_NV :: VIEWPORT_W_SCALING_NV; VK_DYNAMIC_STATE_DISCARD_RECTANGLE_EXT :: DISCARD_RECTANGLE_EXT; VK_DYNAMIC_STATE_DISCARD_RECTANGLE_ENABLE_EXT :: DISCARD_RECTANGLE_ENABLE_EXT; VK_DYNAMIC_STATE_DISCARD_RECTANGLE_MODE_EXT :: DISCARD_RECTANGLE_MODE_EXT; VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_EXT :: SAMPLE_LOCATIONS_EXT; VK_DYNAMIC_STATE_RAY_TRACING_PIPELINE_STACK_SIZE_KHR :: RAY_TRACING_PIPELINE_STACK_SIZE_KHR; VK_DYNAMIC_STATE_VIEWPORT_SHADING_RATE_PALETTE_NV :: VIEWPORT_SHADING_RATE_PALETTE_NV; VK_DYNAMIC_STATE_VIEWPORT_COARSE_SAMPLE_ORDER_NV :: VIEWPORT_COARSE_SAMPLE_ORDER_NV; VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_ENABLE_NV :: EXCLUSIVE_SCISSOR_ENABLE_NV; VK_DYNAMIC_STATE_EXCLUSIVE_SCISSOR_NV :: EXCLUSIVE_SCISSOR_NV; VK_DYNAMIC_STATE_FRAGMENT_SHADING_RATE_KHR :: FRAGMENT_SHADING_RATE_KHR; VK_DYNAMIC_STATE_VERTEX_INPUT_EXT :: VERTEX_INPUT_EXT; VK_DYNAMIC_STATE_PATCH_CONTROL_POINTS_EXT :: PATCH_CONTROL_POINTS_EXT; VK_DYNAMIC_STATE_LOGIC_OP_EXT :: LOGIC_OP_EXT; VK_DYNAMIC_STATE_COLOR_WRITE_ENABLE_EXT :: COLOR_WRITE_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_CLAMP_ENABLE_EXT :: DEPTH_CLAMP_ENABLE_EXT; VK_DYNAMIC_STATE_POLYGON_MODE_EXT :: POLYGON_MODE_EXT; VK_DYNAMIC_STATE_RASTERIZATION_SAMPLES_EXT :: RASTERIZATION_SAMPLES_EXT; VK_DYNAMIC_STATE_SAMPLE_MASK_EXT :: SAMPLE_MASK_EXT; VK_DYNAMIC_STATE_ALPHA_TO_COVERAGE_ENABLE_EXT :: ALPHA_TO_COVERAGE_ENABLE_EXT; VK_DYNAMIC_STATE_ALPHA_TO_ONE_ENABLE_EXT :: ALPHA_TO_ONE_ENABLE_EXT; VK_DYNAMIC_STATE_LOGIC_OP_ENABLE_EXT :: LOGIC_OP_ENABLE_EXT; VK_DYNAMIC_STATE_COLOR_BLEND_ENABLE_EXT :: COLOR_BLEND_ENABLE_EXT; VK_DYNAMIC_STATE_COLOR_BLEND_EQUATION_EXT :: COLOR_BLEND_EQUATION_EXT; VK_DYNAMIC_STATE_COLOR_WRITE_MASK_EXT :: COLOR_WRITE_MASK_EXT; VK_DYNAMIC_STATE_TESSELLATION_DOMAIN_ORIGIN_EXT :: TESSELLATION_DOMAIN_ORIGIN_EXT; VK_DYNAMIC_STATE_RASTERIZATION_STREAM_EXT :: RASTERIZATION_STREAM_EXT; VK_DYNAMIC_STATE_CONSERVATIVE_RASTERIZATION_MODE_EXT :: CONSERVATIVE_RASTERIZATION_MODE_EXT; VK_DYNAMIC_STATE_EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT :: EXTRA_PRIMITIVE_OVERESTIMATION_SIZE_EXT; VK_DYNAMIC_STATE_DEPTH_CLIP_ENABLE_EXT :: DEPTH_CLIP_ENABLE_EXT; VK_DYNAMIC_STATE_SAMPLE_LOCATIONS_ENABLE_EXT :: SAMPLE_LOCATIONS_ENABLE_EXT; VK_DYNAMIC_STATE_COLOR_BLEND_ADVANCED_EXT :: COLOR_BLEND_ADVANCED_EXT; VK_DYNAMIC_STATE_PROVOKING_VERTEX_MODE_EXT :: PROVOKING_VERTEX_MODE_EXT; VK_DYNAMIC_STATE_LINE_RASTERIZATION_MODE_EXT :: LINE_RASTERIZATION_MODE_EXT; VK_DYNAMIC_STATE_LINE_STIPPLE_ENABLE_EXT :: LINE_STIPPLE_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT :: DEPTH_CLIP_NEGATIVE_ONE_TO_ONE_EXT; VK_DYNAMIC_STATE_VIEWPORT_W_SCALING_ENABLE_NV :: VIEWPORT_W_SCALING_ENABLE_NV; VK_DYNAMIC_STATE_VIEWPORT_SWIZZLE_NV :: VIEWPORT_SWIZZLE_NV; VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_ENABLE_NV :: COVERAGE_TO_COLOR_ENABLE_NV; VK_DYNAMIC_STATE_COVERAGE_TO_COLOR_LOCATION_NV :: COVERAGE_TO_COLOR_LOCATION_NV; VK_DYNAMIC_STATE_COVERAGE_MODULATION_MODE_NV :: COVERAGE_MODULATION_MODE_NV; VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_ENABLE_NV :: COVERAGE_MODULATION_TABLE_ENABLE_NV; VK_DYNAMIC_STATE_COVERAGE_MODULATION_TABLE_NV :: COVERAGE_MODULATION_TABLE_NV; VK_DYNAMIC_STATE_SHADING_RATE_IMAGE_ENABLE_NV :: SHADING_RATE_IMAGE_ENABLE_NV; VK_DYNAMIC_STATE_REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV :: REPRESENTATIVE_FRAGMENT_TEST_ENABLE_NV; VK_DYNAMIC_STATE_COVERAGE_REDUCTION_MODE_NV :: COVERAGE_REDUCTION_MODE_NV; VK_DYNAMIC_STATE_ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT :: ATTACHMENT_FEEDBACK_LOOP_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_CLAMP_RANGE_EXT :: DEPTH_CLAMP_RANGE_EXT; VK_DYNAMIC_STATE_LINE_STIPPLE_EXT :: LINE_STIPPLE_EXT; VK_DYNAMIC_STATE_CULL_MODE_EXT :: CULL_MODE_EXT; VK_DYNAMIC_STATE_FRONT_FACE_EXT :: FRONT_FACE_EXT; VK_DYNAMIC_STATE_PRIMITIVE_TOPOLOGY_EXT :: PRIMITIVE_TOPOLOGY_EXT; VK_DYNAMIC_STATE_VIEWPORT_WITH_COUNT_EXT :: VIEWPORT_WITH_COUNT_EXT; VK_DYNAMIC_STATE_SCISSOR_WITH_COUNT_EXT :: SCISSOR_WITH_COUNT_EXT; VK_DYNAMIC_STATE_VERTEX_INPUT_BINDING_STRIDE_EXT :: VERTEX_INPUT_BINDING_STRIDE_EXT; VK_DYNAMIC_STATE_DEPTH_TEST_ENABLE_EXT :: DEPTH_TEST_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_WRITE_ENABLE_EXT :: DEPTH_WRITE_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_COMPARE_OP_EXT :: DEPTH_COMPARE_OP_EXT; VK_DYNAMIC_STATE_DEPTH_BOUNDS_TEST_ENABLE_EXT :: DEPTH_BOUNDS_TEST_ENABLE_EXT; VK_DYNAMIC_STATE_STENCIL_TEST_ENABLE_EXT :: STENCIL_TEST_ENABLE_EXT; VK_DYNAMIC_STATE_STENCIL_OP_EXT :: STENCIL_OP_EXT; VK_DYNAMIC_STATE_RASTERIZER_DISCARD_ENABLE_EXT :: RASTERIZER_DISCARD_ENABLE_EXT; VK_DYNAMIC_STATE_DEPTH_BIAS_ENABLE_EXT :: DEPTH_BIAS_ENABLE_EXT; VK_DYNAMIC_STATE_PRIMITIVE_RESTART_ENABLE_EXT :: PRIMITIVE_RESTART_ENABLE_EXT; VK_DYNAMIC_STATE_LINE_STIPPLE_KHR :: LINE_STIPPLE_KHR; VK_DYNAMIC_STATE_MAX_ENUM :: MAX_ENUM; } VkFrontFace :: enum u32 { COUNTER_CLOCKWISE :: 0; CLOCKWISE :: 1; MAX_ENUM :: 2147483647; VK_FRONT_FACE_COUNTER_CLOCKWISE :: COUNTER_CLOCKWISE; VK_FRONT_FACE_CLOCKWISE :: CLOCKWISE; VK_FRONT_FACE_MAX_ENUM :: MAX_ENUM; } VkVertexInputRate :: enum u32 { VERTEX :: 0; INSTANCE :: 1; MAX_ENUM :: 2147483647; VK_VERTEX_INPUT_RATE_VERTEX :: VERTEX; VK_VERTEX_INPUT_RATE_INSTANCE :: INSTANCE; VK_VERTEX_INPUT_RATE_MAX_ENUM :: MAX_ENUM; } VkPrimitiveTopology :: enum u32 { POINT_LIST :: 0; LINE_LIST :: 1; LINE_STRIP :: 2; TRIANGLE_LIST :: 3; TRIANGLE_STRIP :: 4; TRIANGLE_FAN :: 5; LINE_LIST_WITH_ADJACENCY :: 6; LINE_STRIP_WITH_ADJACENCY :: 7; TRIANGLE_LIST_WITH_ADJACENCY :: 8; TRIANGLE_STRIP_WITH_ADJACENCY :: 9; PATCH_LIST :: 10; MAX_ENUM :: 2147483647; VK_PRIMITIVE_TOPOLOGY_POINT_LIST :: POINT_LIST; VK_PRIMITIVE_TOPOLOGY_LINE_LIST :: LINE_LIST; VK_PRIMITIVE_TOPOLOGY_LINE_STRIP :: LINE_STRIP; VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST :: TRIANGLE_LIST; VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP :: TRIANGLE_STRIP; VK_PRIMITIVE_TOPOLOGY_TRIANGLE_FAN :: TRIANGLE_FAN; VK_PRIMITIVE_TOPOLOGY_LINE_LIST_WITH_ADJACENCY :: LINE_LIST_WITH_ADJACENCY; VK_PRIMITIVE_TOPOLOGY_LINE_STRIP_WITH_ADJACENCY :: LINE_STRIP_WITH_ADJACENCY; VK_PRIMITIVE_TOPOLOGY_TRIANGLE_LIST_WITH_ADJACENCY :: TRIANGLE_LIST_WITH_ADJACENCY; VK_PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP_WITH_ADJACENCY :: TRIANGLE_STRIP_WITH_ADJACENCY; VK_PRIMITIVE_TOPOLOGY_PATCH_LIST :: PATCH_LIST; VK_PRIMITIVE_TOPOLOGY_MAX_ENUM :: MAX_ENUM; } VkPolygonMode :: enum u32 { FILL :: 0; LINE :: 1; POINT :: 2; FILL_RECTANGLE_NV :: 1000153000; MAX_ENUM :: 2147483647; VK_POLYGON_MODE_FILL :: FILL; VK_POLYGON_MODE_LINE :: LINE; VK_POLYGON_MODE_POINT :: POINT; VK_POLYGON_MODE_FILL_RECTANGLE_NV :: FILL_RECTANGLE_NV; VK_POLYGON_MODE_MAX_ENUM :: MAX_ENUM; } VkStencilOp :: enum u32 { KEEP :: 0; ZERO :: 1; REPLACE :: 2; INCREMENT_AND_CLAMP :: 3; DECREMENT_AND_CLAMP :: 4; INVERT :: 5; INCREMENT_AND_WRAP :: 6; DECREMENT_AND_WRAP :: 7; MAX_ENUM :: 2147483647; VK_STENCIL_OP_KEEP :: KEEP; VK_STENCIL_OP_ZERO :: ZERO; VK_STENCIL_OP_REPLACE :: REPLACE; VK_STENCIL_OP_INCREMENT_AND_CLAMP :: INCREMENT_AND_CLAMP; VK_STENCIL_OP_DECREMENT_AND_CLAMP :: DECREMENT_AND_CLAMP; VK_STENCIL_OP_INVERT :: INVERT; VK_STENCIL_OP_INCREMENT_AND_WRAP :: INCREMENT_AND_WRAP; VK_STENCIL_OP_DECREMENT_AND_WRAP :: DECREMENT_AND_WRAP; VK_STENCIL_OP_MAX_ENUM :: MAX_ENUM; } VkLogicOp :: enum u32 { CLEAR :: 0; AND :: 1; AND_REVERSE :: 2; COPY :: 3; AND_INVERTED :: 4; NO_OP :: 5; XOR :: 6; OR :: 7; NOR :: 8; EQUIVALENT :: 9; INVERT :: 10; OR_REVERSE :: 11; COPY_INVERTED :: 12; OR_INVERTED :: 13; NAND :: 14; SET :: 15; MAX_ENUM :: 2147483647; VK_LOGIC_OP_CLEAR :: CLEAR; VK_LOGIC_OP_AND :: AND; VK_LOGIC_OP_AND_REVERSE :: AND_REVERSE; VK_LOGIC_OP_COPY :: COPY; VK_LOGIC_OP_AND_INVERTED :: AND_INVERTED; VK_LOGIC_OP_NO_OP :: NO_OP; VK_LOGIC_OP_XOR :: XOR; VK_LOGIC_OP_OR :: OR; VK_LOGIC_OP_NOR :: NOR; VK_LOGIC_OP_EQUIVALENT :: EQUIVALENT; VK_LOGIC_OP_INVERT :: INVERT; VK_LOGIC_OP_OR_REVERSE :: OR_REVERSE; VK_LOGIC_OP_COPY_INVERTED :: COPY_INVERTED; VK_LOGIC_OP_OR_INVERTED :: OR_INVERTED; VK_LOGIC_OP_NAND :: NAND; VK_LOGIC_OP_SET :: SET; VK_LOGIC_OP_MAX_ENUM :: MAX_ENUM; } VkBorderColor :: enum u32 { FLOAT_TRANSPARENT_BLACK :: 0; INT_TRANSPARENT_BLACK :: 1; FLOAT_OPAQUE_BLACK :: 2; INT_OPAQUE_BLACK :: 3; FLOAT_OPAQUE_WHITE :: 4; INT_OPAQUE_WHITE :: 5; FLOAT_CUSTOM_EXT :: 1000287003; INT_CUSTOM_EXT :: 1000287004; MAX_ENUM :: 2147483647; VK_BORDER_COLOR_FLOAT_TRANSPARENT_BLACK :: FLOAT_TRANSPARENT_BLACK; VK_BORDER_COLOR_INT_TRANSPARENT_BLACK :: INT_TRANSPARENT_BLACK; VK_BORDER_COLOR_FLOAT_OPAQUE_BLACK :: FLOAT_OPAQUE_BLACK; VK_BORDER_COLOR_INT_OPAQUE_BLACK :: INT_OPAQUE_BLACK; VK_BORDER_COLOR_FLOAT_OPAQUE_WHITE :: FLOAT_OPAQUE_WHITE; VK_BORDER_COLOR_INT_OPAQUE_WHITE :: INT_OPAQUE_WHITE; VK_BORDER_COLOR_FLOAT_CUSTOM_EXT :: FLOAT_CUSTOM_EXT; VK_BORDER_COLOR_INT_CUSTOM_EXT :: INT_CUSTOM_EXT; VK_BORDER_COLOR_MAX_ENUM :: MAX_ENUM; } VkFilter :: enum u32 { NEAREST :: 0; LINEAR :: 1; CUBIC_EXT :: 1000015000; CUBIC_IMG :: 1000015000; MAX_ENUM :: 2147483647; VK_FILTER_NEAREST :: NEAREST; VK_FILTER_LINEAR :: LINEAR; VK_FILTER_CUBIC_EXT :: CUBIC_EXT; VK_FILTER_CUBIC_IMG :: CUBIC_IMG; VK_FILTER_MAX_ENUM :: MAX_ENUM; } VkSamplerAddressMode :: enum u32 { REPEAT :: 0; MIRRORED_REPEAT :: 1; CLAMP_TO_EDGE :: 2; CLAMP_TO_BORDER :: 3; MIRROR_CLAMP_TO_EDGE :: 4; MIRROR_CLAMP_TO_EDGE_KHR :: 4; MAX_ENUM :: 2147483647; VK_SAMPLER_ADDRESS_MODE_REPEAT :: REPEAT; VK_SAMPLER_ADDRESS_MODE_MIRRORED_REPEAT :: MIRRORED_REPEAT; VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_EDGE :: CLAMP_TO_EDGE; VK_SAMPLER_ADDRESS_MODE_CLAMP_TO_BORDER :: CLAMP_TO_BORDER; VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE :: MIRROR_CLAMP_TO_EDGE; VK_SAMPLER_ADDRESS_MODE_MIRROR_CLAMP_TO_EDGE_KHR :: MIRROR_CLAMP_TO_EDGE_KHR; VK_SAMPLER_ADDRESS_MODE_MAX_ENUM :: MAX_ENUM; } VkSamplerMipmapMode :: enum u32 { NEAREST :: 0; LINEAR :: 1; MAX_ENUM :: 2147483647; VK_SAMPLER_MIPMAP_MODE_NEAREST :: NEAREST; VK_SAMPLER_MIPMAP_MODE_LINEAR :: LINEAR; VK_SAMPLER_MIPMAP_MODE_MAX_ENUM :: MAX_ENUM; } VkDescriptorType :: enum u32 { SAMPLER :: 0; COMBINED_IMAGE_SAMPLER :: 1; SAMPLED_IMAGE :: 2; STORAGE_IMAGE :: 3; UNIFORM_TEXEL_BUFFER :: 4; STORAGE_TEXEL_BUFFER :: 5; UNIFORM_BUFFER :: 6; STORAGE_BUFFER :: 7; UNIFORM_BUFFER_DYNAMIC :: 8; STORAGE_BUFFER_DYNAMIC :: 9; INPUT_ATTACHMENT :: 10; INLINE_UNIFORM_BLOCK :: 1000138000; ACCELERATION_STRUCTURE_KHR :: 1000150000; ACCELERATION_STRUCTURE_NV :: 1000165000; SAMPLE_WEIGHT_IMAGE_QCOM :: 1000440000; BLOCK_MATCH_IMAGE_QCOM :: 1000440001; MUTABLE_EXT :: 1000351000; PARTITIONED_ACCELERATION_STRUCTURE_NV :: 1000570000; INLINE_UNIFORM_BLOCK_EXT :: 1000138000; MUTABLE_VALVE :: 1000351000; MAX_ENUM :: 2147483647; VK_DESCRIPTOR_TYPE_SAMPLER :: SAMPLER; VK_DESCRIPTOR_TYPE_COMBINED_IMAGE_SAMPLER :: COMBINED_IMAGE_SAMPLER; VK_DESCRIPTOR_TYPE_SAMPLED_IMAGE :: SAMPLED_IMAGE; VK_DESCRIPTOR_TYPE_STORAGE_IMAGE :: STORAGE_IMAGE; VK_DESCRIPTOR_TYPE_UNIFORM_TEXEL_BUFFER :: UNIFORM_TEXEL_BUFFER; VK_DESCRIPTOR_TYPE_STORAGE_TEXEL_BUFFER :: STORAGE_TEXEL_BUFFER; VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER :: UNIFORM_BUFFER; VK_DESCRIPTOR_TYPE_STORAGE_BUFFER :: STORAGE_BUFFER; VK_DESCRIPTOR_TYPE_UNIFORM_BUFFER_DYNAMIC :: UNIFORM_BUFFER_DYNAMIC; VK_DESCRIPTOR_TYPE_STORAGE_BUFFER_DYNAMIC :: STORAGE_BUFFER_DYNAMIC; VK_DESCRIPTOR_TYPE_INPUT_ATTACHMENT :: INPUT_ATTACHMENT; VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK :: INLINE_UNIFORM_BLOCK; VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_KHR :: ACCELERATION_STRUCTURE_KHR; VK_DESCRIPTOR_TYPE_ACCELERATION_STRUCTURE_NV :: ACCELERATION_STRUCTURE_NV; VK_DESCRIPTOR_TYPE_SAMPLE_WEIGHT_IMAGE_QCOM :: SAMPLE_WEIGHT_IMAGE_QCOM; VK_DESCRIPTOR_TYPE_BLOCK_MATCH_IMAGE_QCOM :: BLOCK_MATCH_IMAGE_QCOM; VK_DESCRIPTOR_TYPE_MUTABLE_EXT :: MUTABLE_EXT; VK_DESCRIPTOR_TYPE_PARTITIONED_ACCELERATION_STRUCTURE_NV :: PARTITIONED_ACCELERATION_STRUCTURE_NV; VK_DESCRIPTOR_TYPE_INLINE_UNIFORM_BLOCK_EXT :: INLINE_UNIFORM_BLOCK_EXT; VK_DESCRIPTOR_TYPE_MUTABLE_VALVE :: MUTABLE_VALVE; VK_DESCRIPTOR_TYPE_MAX_ENUM :: MAX_ENUM; } VkAttachmentLoadOp :: enum u32 { LOAD :: 0; CLEAR :: 1; DONT_CARE :: 2; NONE :: 1000400000; NONE_EXT :: 1000400000; NONE_KHR :: 1000400000; MAX_ENUM :: 2147483647; VK_ATTACHMENT_LOAD_OP_LOAD :: LOAD; VK_ATTACHMENT_LOAD_OP_CLEAR :: CLEAR; VK_ATTACHMENT_LOAD_OP_DONT_CARE :: DONT_CARE; VK_ATTACHMENT_LOAD_OP_NONE :: NONE; VK_ATTACHMENT_LOAD_OP_NONE_EXT :: NONE_EXT; VK_ATTACHMENT_LOAD_OP_NONE_KHR :: NONE_KHR; VK_ATTACHMENT_LOAD_OP_MAX_ENUM :: MAX_ENUM; } VkAttachmentStoreOp :: enum u32 { STORE :: 0; DONT_CARE :: 1; NONE :: 1000301000; NONE_KHR :: 1000301000; NONE_QCOM :: 1000301000; NONE_EXT :: 1000301000; MAX_ENUM :: 2147483647; VK_ATTACHMENT_STORE_OP_STORE :: STORE; VK_ATTACHMENT_STORE_OP_DONT_CARE :: DONT_CARE; VK_ATTACHMENT_STORE_OP_NONE :: NONE; VK_ATTACHMENT_STORE_OP_NONE_KHR :: NONE_KHR; VK_ATTACHMENT_STORE_OP_NONE_QCOM :: NONE_QCOM; VK_ATTACHMENT_STORE_OP_NONE_EXT :: NONE_EXT; VK_ATTACHMENT_STORE_OP_MAX_ENUM :: MAX_ENUM; } VkPipelineBindPoint :: enum u32 { GRAPHICS :: 0; COMPUTE :: 1; RAY_TRACING_KHR :: 1000165000; SUBPASS_SHADING_HUAWEI :: 1000369003; RAY_TRACING_NV :: 1000165000; MAX_ENUM :: 2147483647; VK_PIPELINE_BIND_POINT_GRAPHICS :: GRAPHICS; VK_PIPELINE_BIND_POINT_COMPUTE :: COMPUTE; VK_PIPELINE_BIND_POINT_RAY_TRACING_KHR :: RAY_TRACING_KHR; VK_PIPELINE_BIND_POINT_SUBPASS_SHADING_HUAWEI :: SUBPASS_SHADING_HUAWEI; VK_PIPELINE_BIND_POINT_RAY_TRACING_NV :: RAY_TRACING_NV; VK_PIPELINE_BIND_POINT_MAX_ENUM :: MAX_ENUM; } VkCommandBufferLevel :: enum u32 { PRIMARY :: 0; SECONDARY :: 1; MAX_ENUM :: 2147483647; VK_COMMAND_BUFFER_LEVEL_PRIMARY :: PRIMARY; VK_COMMAND_BUFFER_LEVEL_SECONDARY :: SECONDARY; VK_COMMAND_BUFFER_LEVEL_MAX_ENUM :: MAX_ENUM; } VkIndexType :: enum u32 { UINT16 :: 0; UINT32 :: 1; UINT8 :: 1000265000; NONE_KHR :: 1000165000; NONE_NV :: 1000165000; UINT8_EXT :: 1000265000; UINT8_KHR :: 1000265000; MAX_ENUM :: 2147483647; VK_INDEX_TYPE_UINT16 :: UINT16; VK_INDEX_TYPE_UINT32 :: UINT32; VK_INDEX_TYPE_UINT8 :: UINT8; VK_INDEX_TYPE_NONE_KHR :: NONE_KHR; VK_INDEX_TYPE_NONE_NV :: NONE_NV; VK_INDEX_TYPE_UINT8_EXT :: UINT8_EXT; VK_INDEX_TYPE_UINT8_KHR :: UINT8_KHR; VK_INDEX_TYPE_MAX_ENUM :: MAX_ENUM; } VkSubpassContents :: enum u32 { INLINE :: 0; SECONDARY_COMMAND_BUFFERS :: 1; INLINE_AND_SECONDARY_COMMAND_BUFFERS_KHR :: 1000451000; INLINE_AND_SECONDARY_COMMAND_BUFFERS_EXT :: 1000451000; MAX_ENUM :: 2147483647; VK_SUBPASS_CONTENTS_INLINE :: INLINE; VK_SUBPASS_CONTENTS_SECONDARY_COMMAND_BUFFERS :: SECONDARY_COMMAND_BUFFERS; VK_SUBPASS_CONTENTS_INLINE_AND_SECONDARY_COMMAND_BUFFERS_KHR :: INLINE_AND_SECONDARY_COMMAND_BUFFERS_KHR; VK_SUBPASS_CONTENTS_INLINE_AND_SECONDARY_COMMAND_BUFFERS_EXT :: INLINE_AND_SECONDARY_COMMAND_BUFFERS_EXT; VK_SUBPASS_CONTENTS_MAX_ENUM :: MAX_ENUM; } VkAccessFlagBits :: enum u32 { INDIRECT_COMMAND_READ_BIT :: 1; INDEX_READ_BIT :: 2; VERTEX_ATTRIBUTE_READ_BIT :: 4; UNIFORM_READ_BIT :: 8; INPUT_ATTACHMENT_READ_BIT :: 16; SHADER_READ_BIT :: 32; SHADER_WRITE_BIT :: 64; COLOR_ATTACHMENT_READ_BIT :: 128; COLOR_ATTACHMENT_WRITE_BIT :: 256; DEPTH_STENCIL_ATTACHMENT_READ_BIT :: 512; DEPTH_STENCIL_ATTACHMENT_WRITE_BIT :: 1024; TRANSFER_READ_BIT :: 2048; TRANSFER_WRITE_BIT :: 4096; HOST_READ_BIT :: 8192; HOST_WRITE_BIT :: 16384; MEMORY_READ_BIT :: 32768; MEMORY_WRITE_BIT :: 65536; NONE :: 0; TRANSFORM_FEEDBACK_WRITE_BIT_EXT :: 33554432; TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT :: 67108864; TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT :: 134217728; CONDITIONAL_RENDERING_READ_BIT_EXT :: 1048576; COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT :: 524288; ACCELERATION_STRUCTURE_READ_BIT_KHR :: 2097152; ACCELERATION_STRUCTURE_WRITE_BIT_KHR :: 4194304; FRAGMENT_DENSITY_MAP_READ_BIT_EXT :: 16777216; FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR :: 8388608; COMMAND_PREPROCESS_READ_BIT_EXT :: 131072; COMMAND_PREPROCESS_WRITE_BIT_EXT :: 262144; SHADING_RATE_IMAGE_READ_BIT_NV :: 8388608; ACCELERATION_STRUCTURE_READ_BIT_NV :: 2097152; ACCELERATION_STRUCTURE_WRITE_BIT_NV :: 4194304; COMMAND_PREPROCESS_READ_BIT_NV :: 131072; COMMAND_PREPROCESS_WRITE_BIT_NV :: 262144; NONE_KHR :: 0; FLAG_BITS_MAX_ENUM :: 2147483647; VK_ACCESS_INDIRECT_COMMAND_READ_BIT :: INDIRECT_COMMAND_READ_BIT; VK_ACCESS_INDEX_READ_BIT :: INDEX_READ_BIT; VK_ACCESS_VERTEX_ATTRIBUTE_READ_BIT :: VERTEX_ATTRIBUTE_READ_BIT; VK_ACCESS_UNIFORM_READ_BIT :: UNIFORM_READ_BIT; VK_ACCESS_INPUT_ATTACHMENT_READ_BIT :: INPUT_ATTACHMENT_READ_BIT; VK_ACCESS_SHADER_READ_BIT :: SHADER_READ_BIT; VK_ACCESS_SHADER_WRITE_BIT :: SHADER_WRITE_BIT; VK_ACCESS_COLOR_ATTACHMENT_READ_BIT :: COLOR_ATTACHMENT_READ_BIT; VK_ACCESS_COLOR_ATTACHMENT_WRITE_BIT :: COLOR_ATTACHMENT_WRITE_BIT; VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_READ_BIT :: DEPTH_STENCIL_ATTACHMENT_READ_BIT; VK_ACCESS_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT :: DEPTH_STENCIL_ATTACHMENT_WRITE_BIT; VK_ACCESS_TRANSFER_READ_BIT :: TRANSFER_READ_BIT; VK_ACCESS_TRANSFER_WRITE_BIT :: TRANSFER_WRITE_BIT; VK_ACCESS_HOST_READ_BIT :: HOST_READ_BIT; VK_ACCESS_HOST_WRITE_BIT :: HOST_WRITE_BIT; VK_ACCESS_MEMORY_READ_BIT :: MEMORY_READ_BIT; VK_ACCESS_MEMORY_WRITE_BIT :: MEMORY_WRITE_BIT; VK_ACCESS_NONE :: NONE; VK_ACCESS_TRANSFORM_FEEDBACK_WRITE_BIT_EXT :: TRANSFORM_FEEDBACK_WRITE_BIT_EXT; VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT :: TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT; VK_ACCESS_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT :: TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT; VK_ACCESS_CONDITIONAL_RENDERING_READ_BIT_EXT :: CONDITIONAL_RENDERING_READ_BIT_EXT; VK_ACCESS_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT :: COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT; VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_KHR :: ACCELERATION_STRUCTURE_READ_BIT_KHR; VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_KHR :: ACCELERATION_STRUCTURE_WRITE_BIT_KHR; VK_ACCESS_FRAGMENT_DENSITY_MAP_READ_BIT_EXT :: FRAGMENT_DENSITY_MAP_READ_BIT_EXT; VK_ACCESS_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR; VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_EXT :: COMMAND_PREPROCESS_READ_BIT_EXT; VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_EXT :: COMMAND_PREPROCESS_WRITE_BIT_EXT; VK_ACCESS_SHADING_RATE_IMAGE_READ_BIT_NV :: SHADING_RATE_IMAGE_READ_BIT_NV; VK_ACCESS_ACCELERATION_STRUCTURE_READ_BIT_NV :: ACCELERATION_STRUCTURE_READ_BIT_NV; VK_ACCESS_ACCELERATION_STRUCTURE_WRITE_BIT_NV :: ACCELERATION_STRUCTURE_WRITE_BIT_NV; VK_ACCESS_COMMAND_PREPROCESS_READ_BIT_NV :: COMMAND_PREPROCESS_READ_BIT_NV; VK_ACCESS_COMMAND_PREPROCESS_WRITE_BIT_NV :: COMMAND_PREPROCESS_WRITE_BIT_NV; VK_ACCESS_NONE_KHR :: NONE_KHR; VK_ACCESS_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkAccessFlags :: VkFlags; VkImageAspectFlagBits :: enum u32 { COLOR_BIT :: 1; DEPTH_BIT :: 2; STENCIL_BIT :: 4; METADATA_BIT :: 8; PLANE_0_BIT :: 16; PLANE_1_BIT :: 32; PLANE_2_BIT :: 64; NONE :: 0; MEMORY_PLANE_0_BIT_EXT :: 128; MEMORY_PLANE_1_BIT_EXT :: 256; MEMORY_PLANE_2_BIT_EXT :: 512; MEMORY_PLANE_3_BIT_EXT :: 1024; PLANE_0_BIT_KHR :: 16; PLANE_1_BIT_KHR :: 32; PLANE_2_BIT_KHR :: 64; NONE_KHR :: 0; FLAG_BITS_MAX_ENUM :: 2147483647; VK_IMAGE_ASPECT_COLOR_BIT :: COLOR_BIT; VK_IMAGE_ASPECT_DEPTH_BIT :: DEPTH_BIT; VK_IMAGE_ASPECT_STENCIL_BIT :: STENCIL_BIT; VK_IMAGE_ASPECT_METADATA_BIT :: METADATA_BIT; VK_IMAGE_ASPECT_PLANE_0_BIT :: PLANE_0_BIT; VK_IMAGE_ASPECT_PLANE_1_BIT :: PLANE_1_BIT; VK_IMAGE_ASPECT_PLANE_2_BIT :: PLANE_2_BIT; VK_IMAGE_ASPECT_NONE :: NONE; VK_IMAGE_ASPECT_MEMORY_PLANE_0_BIT_EXT :: MEMORY_PLANE_0_BIT_EXT; VK_IMAGE_ASPECT_MEMORY_PLANE_1_BIT_EXT :: MEMORY_PLANE_1_BIT_EXT; VK_IMAGE_ASPECT_MEMORY_PLANE_2_BIT_EXT :: MEMORY_PLANE_2_BIT_EXT; VK_IMAGE_ASPECT_MEMORY_PLANE_3_BIT_EXT :: MEMORY_PLANE_3_BIT_EXT; VK_IMAGE_ASPECT_PLANE_0_BIT_KHR :: PLANE_0_BIT_KHR; VK_IMAGE_ASPECT_PLANE_1_BIT_KHR :: PLANE_1_BIT_KHR; VK_IMAGE_ASPECT_PLANE_2_BIT_KHR :: PLANE_2_BIT_KHR; VK_IMAGE_ASPECT_NONE_KHR :: NONE_KHR; VK_IMAGE_ASPECT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkImageAspectFlags :: VkFlags; VkFormatFeatureFlagBits :: enum u32 { SAMPLED_IMAGE_BIT :: 1; STORAGE_IMAGE_BIT :: 2; STORAGE_IMAGE_ATOMIC_BIT :: 4; UNIFORM_TEXEL_BUFFER_BIT :: 8; STORAGE_TEXEL_BUFFER_BIT :: 16; STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: 32; VERTEX_BUFFER_BIT :: 64; COLOR_ATTACHMENT_BIT :: 128; COLOR_ATTACHMENT_BLEND_BIT :: 256; DEPTH_STENCIL_ATTACHMENT_BIT :: 512; BLIT_SRC_BIT :: 1024; BLIT_DST_BIT :: 2048; SAMPLED_IMAGE_FILTER_LINEAR_BIT :: 4096; TRANSFER_SRC_BIT :: 16384; TRANSFER_DST_BIT :: 32768; MIDPOINT_CHROMA_SAMPLES_BIT :: 131072; SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: 262144; SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: 524288; SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: 1048576; SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: 2097152; DISJOINT_BIT :: 4194304; COSITED_CHROMA_SAMPLES_BIT :: 8388608; SAMPLED_IMAGE_FILTER_MINMAX_BIT :: 65536; VIDEO_DECODE_OUTPUT_BIT_KHR :: 33554432; VIDEO_DECODE_DPB_BIT_KHR :: 67108864; ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: 536870912; SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT :: 8192; FRAGMENT_DENSITY_MAP_BIT_EXT :: 16777216; FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: 1073741824; VIDEO_ENCODE_INPUT_BIT_KHR :: 134217728; VIDEO_ENCODE_DPB_BIT_KHR :: 268435456; SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: 8192; TRANSFER_SRC_BIT_KHR :: 16384; TRANSFER_DST_BIT_KHR :: 32768; SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT :: 65536; MIDPOINT_CHROMA_SAMPLES_BIT_KHR :: 131072; SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR :: 262144; SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR :: 524288; SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR :: 1048576; SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR :: 2097152; DISJOINT_BIT_KHR :: 4194304; COSITED_CHROMA_SAMPLES_BIT_KHR :: 8388608; FLAG_BITS_MAX_ENUM :: 2147483647; VK_FORMAT_FEATURE_SAMPLED_IMAGE_BIT :: SAMPLED_IMAGE_BIT; VK_FORMAT_FEATURE_STORAGE_IMAGE_BIT :: STORAGE_IMAGE_BIT; VK_FORMAT_FEATURE_STORAGE_IMAGE_ATOMIC_BIT :: STORAGE_IMAGE_ATOMIC_BIT; VK_FORMAT_FEATURE_UNIFORM_TEXEL_BUFFER_BIT :: UNIFORM_TEXEL_BUFFER_BIT; VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_BIT :: STORAGE_TEXEL_BUFFER_BIT; VK_FORMAT_FEATURE_STORAGE_TEXEL_BUFFER_ATOMIC_BIT :: STORAGE_TEXEL_BUFFER_ATOMIC_BIT; VK_FORMAT_FEATURE_VERTEX_BUFFER_BIT :: VERTEX_BUFFER_BIT; VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BIT :: COLOR_ATTACHMENT_BIT; VK_FORMAT_FEATURE_COLOR_ATTACHMENT_BLEND_BIT :: COLOR_ATTACHMENT_BLEND_BIT; VK_FORMAT_FEATURE_DEPTH_STENCIL_ATTACHMENT_BIT :: DEPTH_STENCIL_ATTACHMENT_BIT; VK_FORMAT_FEATURE_BLIT_SRC_BIT :: BLIT_SRC_BIT; VK_FORMAT_FEATURE_BLIT_DST_BIT :: BLIT_DST_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_LINEAR_BIT :: SAMPLED_IMAGE_FILTER_LINEAR_BIT; VK_FORMAT_FEATURE_TRANSFER_SRC_BIT :: TRANSFER_SRC_BIT; VK_FORMAT_FEATURE_TRANSFER_DST_BIT :: TRANSFER_DST_BIT; VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT :: MIDPOINT_CHROMA_SAMPLES_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT; VK_FORMAT_FEATURE_DISJOINT_BIT :: DISJOINT_BIT; VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT :: COSITED_CHROMA_SAMPLES_BIT; VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT :: SAMPLED_IMAGE_FILTER_MINMAX_BIT; VK_FORMAT_FEATURE_VIDEO_DECODE_OUTPUT_BIT_KHR :: VIDEO_DECODE_OUTPUT_BIT_KHR; VK_FORMAT_FEATURE_VIDEO_DECODE_DPB_BIT_KHR :: VIDEO_DECODE_DPB_BIT_KHR; VK_FORMAT_FEATURE_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR :: ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT :: SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT; VK_FORMAT_FEATURE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FRAGMENT_DENSITY_MAP_BIT_EXT; VK_FORMAT_FEATURE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; VK_FORMAT_FEATURE_VIDEO_ENCODE_INPUT_BIT_KHR :: VIDEO_ENCODE_INPUT_BIT_KHR; VK_FORMAT_FEATURE_VIDEO_ENCODE_DPB_BIT_KHR :: VIDEO_ENCODE_DPB_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG :: SAMPLED_IMAGE_FILTER_CUBIC_BIT_IMG; VK_FORMAT_FEATURE_TRANSFER_SRC_BIT_KHR :: TRANSFER_SRC_BIT_KHR; VK_FORMAT_FEATURE_TRANSFER_DST_BIT_KHR :: TRANSFER_DST_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT :: SAMPLED_IMAGE_FILTER_MINMAX_BIT_EXT; VK_FORMAT_FEATURE_MIDPOINT_CHROMA_SAMPLES_BIT_KHR :: MIDPOINT_CHROMA_SAMPLES_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR :: SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR :: SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR; VK_FORMAT_FEATURE_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR :: SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR; VK_FORMAT_FEATURE_DISJOINT_BIT_KHR :: DISJOINT_BIT_KHR; VK_FORMAT_FEATURE_COSITED_CHROMA_SAMPLES_BIT_KHR :: COSITED_CHROMA_SAMPLES_BIT_KHR; VK_FORMAT_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkFormatFeatureFlags :: VkFlags; VkImageCreateFlagBits :: enum u32 { SPARSE_BINDING_BIT :: 1; SPARSE_RESIDENCY_BIT :: 2; SPARSE_ALIASED_BIT :: 4; MUTABLE_FORMAT_BIT :: 8; CUBE_COMPATIBLE_BIT :: 16; ALIAS_BIT :: 1024; SPLIT_INSTANCE_BIND_REGIONS_BIT :: 64; _2D_ARRAY_COMPATIBLE_BIT :: 32; BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: 128; EXTENDED_USAGE_BIT :: 256; PROTECTED_BIT :: 2048; DISJOINT_BIT :: 512; CORNER_SAMPLED_BIT_NV :: 8192; SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: 4096; SUBSAMPLED_BIT_EXT :: 16384; DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: 65536; MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT :: 262144; _2D_VIEW_COMPATIBLE_BIT_EXT :: 131072; VIDEO_PROFILE_INDEPENDENT_BIT_KHR :: 1048576; FRAGMENT_DENSITY_MAP_OFFSET_BIT_EXT :: 32768; SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: 64; _2D_ARRAY_COMPATIBLE_BIT_KHR :: 32; BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR :: 128; EXTENDED_USAGE_BIT_KHR :: 256; DISJOINT_BIT_KHR :: 512; ALIAS_BIT_KHR :: 1024; FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM :: 32768; FLAG_BITS_MAX_ENUM :: 2147483647; VK_IMAGE_CREATE_SPARSE_BINDING_BIT :: SPARSE_BINDING_BIT; VK_IMAGE_CREATE_SPARSE_RESIDENCY_BIT :: SPARSE_RESIDENCY_BIT; VK_IMAGE_CREATE_SPARSE_ALIASED_BIT :: SPARSE_ALIASED_BIT; VK_IMAGE_CREATE_MUTABLE_FORMAT_BIT :: MUTABLE_FORMAT_BIT; VK_IMAGE_CREATE_CUBE_COMPATIBLE_BIT :: CUBE_COMPATIBLE_BIT; VK_IMAGE_CREATE_ALIAS_BIT :: ALIAS_BIT; VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT :: SPLIT_INSTANCE_BIND_REGIONS_BIT; VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT :: _2D_ARRAY_COMPATIBLE_BIT; VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT :: BLOCK_TEXEL_VIEW_COMPATIBLE_BIT; VK_IMAGE_CREATE_EXTENDED_USAGE_BIT :: EXTENDED_USAGE_BIT; VK_IMAGE_CREATE_PROTECTED_BIT :: PROTECTED_BIT; VK_IMAGE_CREATE_DISJOINT_BIT :: DISJOINT_BIT; VK_IMAGE_CREATE_CORNER_SAMPLED_BIT_NV :: CORNER_SAMPLED_BIT_NV; VK_IMAGE_CREATE_SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT :: SAMPLE_LOCATIONS_COMPATIBLE_DEPTH_BIT_EXT; VK_IMAGE_CREATE_SUBSAMPLED_BIT_EXT :: SUBSAMPLED_BIT_EXT; VK_IMAGE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT; VK_IMAGE_CREATE_MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT :: MULTISAMPLED_RENDER_TO_SINGLE_SAMPLED_BIT_EXT; VK_IMAGE_CREATE_2D_VIEW_COMPATIBLE_BIT_EXT :: _2D_VIEW_COMPATIBLE_BIT_EXT; VK_IMAGE_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR :: VIDEO_PROFILE_INDEPENDENT_BIT_KHR; VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_EXT :: FRAGMENT_DENSITY_MAP_OFFSET_BIT_EXT; VK_IMAGE_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR; VK_IMAGE_CREATE_2D_ARRAY_COMPATIBLE_BIT_KHR :: _2D_ARRAY_COMPATIBLE_BIT_KHR; VK_IMAGE_CREATE_BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR :: BLOCK_TEXEL_VIEW_COMPATIBLE_BIT_KHR; VK_IMAGE_CREATE_EXTENDED_USAGE_BIT_KHR :: EXTENDED_USAGE_BIT_KHR; VK_IMAGE_CREATE_DISJOINT_BIT_KHR :: DISJOINT_BIT_KHR; VK_IMAGE_CREATE_ALIAS_BIT_KHR :: ALIAS_BIT_KHR; VK_IMAGE_CREATE_FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM :: FRAGMENT_DENSITY_MAP_OFFSET_BIT_QCOM; VK_IMAGE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkImageCreateFlags :: VkFlags; VkSampleCountFlagBits :: enum u32 { _1_BIT :: 1; _2_BIT :: 2; _4_BIT :: 4; _8_BIT :: 8; _16_BIT :: 16; _32_BIT :: 32; _64_BIT :: 64; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SAMPLE_COUNT_1_BIT :: _1_BIT; VK_SAMPLE_COUNT_2_BIT :: _2_BIT; VK_SAMPLE_COUNT_4_BIT :: _4_BIT; VK_SAMPLE_COUNT_8_BIT :: _8_BIT; VK_SAMPLE_COUNT_16_BIT :: _16_BIT; VK_SAMPLE_COUNT_32_BIT :: _32_BIT; VK_SAMPLE_COUNT_64_BIT :: _64_BIT; VK_SAMPLE_COUNT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSampleCountFlags :: VkFlags; VkImageUsageFlagBits :: enum u32 { TRANSFER_SRC_BIT :: 1; TRANSFER_DST_BIT :: 2; SAMPLED_BIT :: 4; STORAGE_BIT :: 8; COLOR_ATTACHMENT_BIT :: 16; DEPTH_STENCIL_ATTACHMENT_BIT :: 32; TRANSIENT_ATTACHMENT_BIT :: 64; INPUT_ATTACHMENT_BIT :: 128; HOST_TRANSFER_BIT :: 4194304; VIDEO_DECODE_DST_BIT_KHR :: 1024; VIDEO_DECODE_SRC_BIT_KHR :: 2048; VIDEO_DECODE_DPB_BIT_KHR :: 4096; FRAGMENT_DENSITY_MAP_BIT_EXT :: 512; FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: 256; VIDEO_ENCODE_DST_BIT_KHR :: 8192; VIDEO_ENCODE_SRC_BIT_KHR :: 16384; VIDEO_ENCODE_DPB_BIT_KHR :: 32768; ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: 524288; INVOCATION_MASK_BIT_HUAWEI :: 262144; SAMPLE_WEIGHT_BIT_QCOM :: 1048576; SAMPLE_BLOCK_MATCH_BIT_QCOM :: 2097152; TILE_MEMORY_QCOM :: 134217728; VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR :: 33554432; VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR :: 67108864; SHADING_RATE_IMAGE_BIT_NV :: 256; HOST_TRANSFER_BIT_EXT :: 4194304; FLAG_BITS_MAX_ENUM :: 2147483647; VK_IMAGE_USAGE_TRANSFER_SRC_BIT :: TRANSFER_SRC_BIT; VK_IMAGE_USAGE_TRANSFER_DST_BIT :: TRANSFER_DST_BIT; VK_IMAGE_USAGE_SAMPLED_BIT :: SAMPLED_BIT; VK_IMAGE_USAGE_STORAGE_BIT :: STORAGE_BIT; VK_IMAGE_USAGE_COLOR_ATTACHMENT_BIT :: COLOR_ATTACHMENT_BIT; VK_IMAGE_USAGE_DEPTH_STENCIL_ATTACHMENT_BIT :: DEPTH_STENCIL_ATTACHMENT_BIT; VK_IMAGE_USAGE_TRANSIENT_ATTACHMENT_BIT :: TRANSIENT_ATTACHMENT_BIT; VK_IMAGE_USAGE_INPUT_ATTACHMENT_BIT :: INPUT_ATTACHMENT_BIT; VK_IMAGE_USAGE_HOST_TRANSFER_BIT :: HOST_TRANSFER_BIT; VK_IMAGE_USAGE_VIDEO_DECODE_DST_BIT_KHR :: VIDEO_DECODE_DST_BIT_KHR; VK_IMAGE_USAGE_VIDEO_DECODE_SRC_BIT_KHR :: VIDEO_DECODE_SRC_BIT_KHR; VK_IMAGE_USAGE_VIDEO_DECODE_DPB_BIT_KHR :: VIDEO_DECODE_DPB_BIT_KHR; VK_IMAGE_USAGE_FRAGMENT_DENSITY_MAP_BIT_EXT :: FRAGMENT_DENSITY_MAP_BIT_EXT; VK_IMAGE_USAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; VK_IMAGE_USAGE_VIDEO_ENCODE_DST_BIT_KHR :: VIDEO_ENCODE_DST_BIT_KHR; VK_IMAGE_USAGE_VIDEO_ENCODE_SRC_BIT_KHR :: VIDEO_ENCODE_SRC_BIT_KHR; VK_IMAGE_USAGE_VIDEO_ENCODE_DPB_BIT_KHR :: VIDEO_ENCODE_DPB_BIT_KHR; VK_IMAGE_USAGE_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: ATTACHMENT_FEEDBACK_LOOP_BIT_EXT; VK_IMAGE_USAGE_INVOCATION_MASK_BIT_HUAWEI :: INVOCATION_MASK_BIT_HUAWEI; VK_IMAGE_USAGE_SAMPLE_WEIGHT_BIT_QCOM :: SAMPLE_WEIGHT_BIT_QCOM; VK_IMAGE_USAGE_SAMPLE_BLOCK_MATCH_BIT_QCOM :: SAMPLE_BLOCK_MATCH_BIT_QCOM; VK_IMAGE_USAGE_TILE_MEMORY_QCOM :: TILE_MEMORY_QCOM; VK_IMAGE_USAGE_VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR :: VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR; VK_IMAGE_USAGE_VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR :: VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR; VK_IMAGE_USAGE_SHADING_RATE_IMAGE_BIT_NV :: SHADING_RATE_IMAGE_BIT_NV; VK_IMAGE_USAGE_HOST_TRANSFER_BIT_EXT :: HOST_TRANSFER_BIT_EXT; VK_IMAGE_USAGE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkImageUsageFlags :: VkFlags; VkInstanceCreateFlagBits :: enum u32 { ENUMERATE_PORTABILITY_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_INSTANCE_CREATE_ENUMERATE_PORTABILITY_BIT_KHR :: ENUMERATE_PORTABILITY_BIT_KHR; VK_INSTANCE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkInstanceCreateFlags :: VkFlags; VkMemoryHeapFlagBits :: enum u32 { DEVICE_LOCAL_BIT :: 1; MULTI_INSTANCE_BIT :: 2; TILE_MEMORY_BIT_QCOM :: 8; MULTI_INSTANCE_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_MEMORY_HEAP_DEVICE_LOCAL_BIT :: DEVICE_LOCAL_BIT; VK_MEMORY_HEAP_MULTI_INSTANCE_BIT :: MULTI_INSTANCE_BIT; VK_MEMORY_HEAP_TILE_MEMORY_BIT_QCOM :: TILE_MEMORY_BIT_QCOM; VK_MEMORY_HEAP_MULTI_INSTANCE_BIT_KHR :: MULTI_INSTANCE_BIT_KHR; VK_MEMORY_HEAP_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkMemoryHeapFlags :: VkFlags; VkMemoryPropertyFlagBits :: enum u32 { DEVICE_LOCAL_BIT :: 1; HOST_VISIBLE_BIT :: 2; HOST_COHERENT_BIT :: 4; HOST_CACHED_BIT :: 8; LAZILY_ALLOCATED_BIT :: 16; PROTECTED_BIT :: 32; DEVICE_COHERENT_BIT_AMD :: 64; DEVICE_UNCACHED_BIT_AMD :: 128; RDMA_CAPABLE_BIT_NV :: 256; FLAG_BITS_MAX_ENUM :: 2147483647; VK_MEMORY_PROPERTY_DEVICE_LOCAL_BIT :: DEVICE_LOCAL_BIT; VK_MEMORY_PROPERTY_HOST_VISIBLE_BIT :: HOST_VISIBLE_BIT; VK_MEMORY_PROPERTY_HOST_COHERENT_BIT :: HOST_COHERENT_BIT; VK_MEMORY_PROPERTY_HOST_CACHED_BIT :: HOST_CACHED_BIT; VK_MEMORY_PROPERTY_LAZILY_ALLOCATED_BIT :: LAZILY_ALLOCATED_BIT; VK_MEMORY_PROPERTY_PROTECTED_BIT :: PROTECTED_BIT; VK_MEMORY_PROPERTY_DEVICE_COHERENT_BIT_AMD :: DEVICE_COHERENT_BIT_AMD; VK_MEMORY_PROPERTY_DEVICE_UNCACHED_BIT_AMD :: DEVICE_UNCACHED_BIT_AMD; VK_MEMORY_PROPERTY_RDMA_CAPABLE_BIT_NV :: RDMA_CAPABLE_BIT_NV; VK_MEMORY_PROPERTY_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkMemoryPropertyFlags :: VkFlags; VkQueueFlagBits :: enum u32 { GRAPHICS_BIT :: 1; COMPUTE_BIT :: 2; TRANSFER_BIT :: 4; SPARSE_BINDING_BIT :: 8; PROTECTED_BIT :: 16; VIDEO_DECODE_BIT_KHR :: 32; VIDEO_ENCODE_BIT_KHR :: 64; OPTICAL_FLOW_BIT_NV :: 256; FLAG_BITS_MAX_ENUM :: 2147483647; VK_QUEUE_GRAPHICS_BIT :: GRAPHICS_BIT; VK_QUEUE_COMPUTE_BIT :: COMPUTE_BIT; VK_QUEUE_TRANSFER_BIT :: TRANSFER_BIT; VK_QUEUE_SPARSE_BINDING_BIT :: SPARSE_BINDING_BIT; VK_QUEUE_PROTECTED_BIT :: PROTECTED_BIT; VK_QUEUE_VIDEO_DECODE_BIT_KHR :: VIDEO_DECODE_BIT_KHR; VK_QUEUE_VIDEO_ENCODE_BIT_KHR :: VIDEO_ENCODE_BIT_KHR; VK_QUEUE_OPTICAL_FLOW_BIT_NV :: OPTICAL_FLOW_BIT_NV; VK_QUEUE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkQueueFlags :: VkFlags; VkDeviceCreateFlags :: VkFlags; VkDeviceQueueCreateFlagBits :: enum u32 { PROTECTED_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_DEVICE_QUEUE_CREATE_PROTECTED_BIT :: PROTECTED_BIT; VK_DEVICE_QUEUE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkDeviceQueueCreateFlags :: VkFlags; VkPipelineStageFlagBits :: enum u32 { TOP_OF_PIPE_BIT :: 1; DRAW_INDIRECT_BIT :: 2; VERTEX_INPUT_BIT :: 4; VERTEX_SHADER_BIT :: 8; TESSELLATION_CONTROL_SHADER_BIT :: 16; TESSELLATION_EVALUATION_SHADER_BIT :: 32; GEOMETRY_SHADER_BIT :: 64; FRAGMENT_SHADER_BIT :: 128; EARLY_FRAGMENT_TESTS_BIT :: 256; LATE_FRAGMENT_TESTS_BIT :: 512; COLOR_ATTACHMENT_OUTPUT_BIT :: 1024; COMPUTE_SHADER_BIT :: 2048; TRANSFER_BIT :: 4096; BOTTOM_OF_PIPE_BIT :: 8192; HOST_BIT :: 16384; ALL_GRAPHICS_BIT :: 32768; ALL_COMMANDS_BIT :: 65536; NONE :: 0; TRANSFORM_FEEDBACK_BIT_EXT :: 16777216; CONDITIONAL_RENDERING_BIT_EXT :: 262144; ACCELERATION_STRUCTURE_BUILD_BIT_KHR :: 33554432; RAY_TRACING_SHADER_BIT_KHR :: 2097152; FRAGMENT_DENSITY_PROCESS_BIT_EXT :: 8388608; FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: 4194304; TASK_SHADER_BIT_EXT :: 524288; MESH_SHADER_BIT_EXT :: 1048576; COMMAND_PREPROCESS_BIT_EXT :: 131072; SHADING_RATE_IMAGE_BIT_NV :: 4194304; RAY_TRACING_SHADER_BIT_NV :: 2097152; ACCELERATION_STRUCTURE_BUILD_BIT_NV :: 33554432; TASK_SHADER_BIT_NV :: 524288; MESH_SHADER_BIT_NV :: 1048576; COMMAND_PREPROCESS_BIT_NV :: 131072; NONE_KHR :: 0; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_STAGE_TOP_OF_PIPE_BIT :: TOP_OF_PIPE_BIT; VK_PIPELINE_STAGE_DRAW_INDIRECT_BIT :: DRAW_INDIRECT_BIT; VK_PIPELINE_STAGE_VERTEX_INPUT_BIT :: VERTEX_INPUT_BIT; VK_PIPELINE_STAGE_VERTEX_SHADER_BIT :: VERTEX_SHADER_BIT; VK_PIPELINE_STAGE_TESSELLATION_CONTROL_SHADER_BIT :: TESSELLATION_CONTROL_SHADER_BIT; VK_PIPELINE_STAGE_TESSELLATION_EVALUATION_SHADER_BIT :: TESSELLATION_EVALUATION_SHADER_BIT; VK_PIPELINE_STAGE_GEOMETRY_SHADER_BIT :: GEOMETRY_SHADER_BIT; VK_PIPELINE_STAGE_FRAGMENT_SHADER_BIT :: FRAGMENT_SHADER_BIT; VK_PIPELINE_STAGE_EARLY_FRAGMENT_TESTS_BIT :: EARLY_FRAGMENT_TESTS_BIT; VK_PIPELINE_STAGE_LATE_FRAGMENT_TESTS_BIT :: LATE_FRAGMENT_TESTS_BIT; VK_PIPELINE_STAGE_COLOR_ATTACHMENT_OUTPUT_BIT :: COLOR_ATTACHMENT_OUTPUT_BIT; VK_PIPELINE_STAGE_COMPUTE_SHADER_BIT :: COMPUTE_SHADER_BIT; VK_PIPELINE_STAGE_TRANSFER_BIT :: TRANSFER_BIT; VK_PIPELINE_STAGE_BOTTOM_OF_PIPE_BIT :: BOTTOM_OF_PIPE_BIT; VK_PIPELINE_STAGE_HOST_BIT :: HOST_BIT; VK_PIPELINE_STAGE_ALL_GRAPHICS_BIT :: ALL_GRAPHICS_BIT; VK_PIPELINE_STAGE_ALL_COMMANDS_BIT :: ALL_COMMANDS_BIT; VK_PIPELINE_STAGE_NONE :: NONE; VK_PIPELINE_STAGE_TRANSFORM_FEEDBACK_BIT_EXT :: TRANSFORM_FEEDBACK_BIT_EXT; VK_PIPELINE_STAGE_CONDITIONAL_RENDERING_BIT_EXT :: CONDITIONAL_RENDERING_BIT_EXT; VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_KHR :: ACCELERATION_STRUCTURE_BUILD_BIT_KHR; VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_KHR :: RAY_TRACING_SHADER_BIT_KHR; VK_PIPELINE_STAGE_FRAGMENT_DENSITY_PROCESS_BIT_EXT :: FRAGMENT_DENSITY_PROCESS_BIT_EXT; VK_PIPELINE_STAGE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; VK_PIPELINE_STAGE_TASK_SHADER_BIT_EXT :: TASK_SHADER_BIT_EXT; VK_PIPELINE_STAGE_MESH_SHADER_BIT_EXT :: MESH_SHADER_BIT_EXT; VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_EXT :: COMMAND_PREPROCESS_BIT_EXT; VK_PIPELINE_STAGE_SHADING_RATE_IMAGE_BIT_NV :: SHADING_RATE_IMAGE_BIT_NV; VK_PIPELINE_STAGE_RAY_TRACING_SHADER_BIT_NV :: RAY_TRACING_SHADER_BIT_NV; VK_PIPELINE_STAGE_ACCELERATION_STRUCTURE_BUILD_BIT_NV :: ACCELERATION_STRUCTURE_BUILD_BIT_NV; VK_PIPELINE_STAGE_TASK_SHADER_BIT_NV :: TASK_SHADER_BIT_NV; VK_PIPELINE_STAGE_MESH_SHADER_BIT_NV :: MESH_SHADER_BIT_NV; VK_PIPELINE_STAGE_COMMAND_PREPROCESS_BIT_NV :: COMMAND_PREPROCESS_BIT_NV; VK_PIPELINE_STAGE_NONE_KHR :: NONE_KHR; VK_PIPELINE_STAGE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineStageFlags :: VkFlags; VkMemoryMapFlagBits :: enum u32 { PLACED_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_MEMORY_MAP_PLACED_BIT_EXT :: PLACED_BIT_EXT; VK_MEMORY_MAP_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkMemoryMapFlags :: VkFlags; VkSparseMemoryBindFlagBits :: enum u32 { METADATA_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SPARSE_MEMORY_BIND_METADATA_BIT :: METADATA_BIT; VK_SPARSE_MEMORY_BIND_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSparseMemoryBindFlags :: VkFlags; VkSparseImageFormatFlagBits :: enum u32 { SINGLE_MIPTAIL_BIT :: 1; ALIGNED_MIP_SIZE_BIT :: 2; NONSTANDARD_BLOCK_SIZE_BIT :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SPARSE_IMAGE_FORMAT_SINGLE_MIPTAIL_BIT :: SINGLE_MIPTAIL_BIT; VK_SPARSE_IMAGE_FORMAT_ALIGNED_MIP_SIZE_BIT :: ALIGNED_MIP_SIZE_BIT; VK_SPARSE_IMAGE_FORMAT_NONSTANDARD_BLOCK_SIZE_BIT :: NONSTANDARD_BLOCK_SIZE_BIT; VK_SPARSE_IMAGE_FORMAT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSparseImageFormatFlags :: VkFlags; VkFenceCreateFlagBits :: enum u32 { SIGNALED_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_FENCE_CREATE_SIGNALED_BIT :: SIGNALED_BIT; VK_FENCE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkFenceCreateFlags :: VkFlags; VkSemaphoreCreateFlags :: VkFlags; VkEventCreateFlagBits :: enum u32 { DEVICE_ONLY_BIT :: 1; DEVICE_ONLY_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EVENT_CREATE_DEVICE_ONLY_BIT :: DEVICE_ONLY_BIT; VK_EVENT_CREATE_DEVICE_ONLY_BIT_KHR :: DEVICE_ONLY_BIT_KHR; VK_EVENT_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkEventCreateFlags :: VkFlags; VkQueryPipelineStatisticFlagBits :: enum u32 { INPUT_ASSEMBLY_VERTICES_BIT :: 1; INPUT_ASSEMBLY_PRIMITIVES_BIT :: 2; VERTEX_SHADER_INVOCATIONS_BIT :: 4; GEOMETRY_SHADER_INVOCATIONS_BIT :: 8; GEOMETRY_SHADER_PRIMITIVES_BIT :: 16; CLIPPING_INVOCATIONS_BIT :: 32; CLIPPING_PRIMITIVES_BIT :: 64; FRAGMENT_SHADER_INVOCATIONS_BIT :: 128; TESSELLATION_CONTROL_SHADER_PATCHES_BIT :: 256; TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT :: 512; COMPUTE_SHADER_INVOCATIONS_BIT :: 1024; TASK_SHADER_INVOCATIONS_BIT_EXT :: 2048; MESH_SHADER_INVOCATIONS_BIT_EXT :: 4096; CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI :: 8192; FLAG_BITS_MAX_ENUM :: 2147483647; VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_VERTICES_BIT :: INPUT_ASSEMBLY_VERTICES_BIT; VK_QUERY_PIPELINE_STATISTIC_INPUT_ASSEMBLY_PRIMITIVES_BIT :: INPUT_ASSEMBLY_PRIMITIVES_BIT; VK_QUERY_PIPELINE_STATISTIC_VERTEX_SHADER_INVOCATIONS_BIT :: VERTEX_SHADER_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_INVOCATIONS_BIT :: GEOMETRY_SHADER_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_GEOMETRY_SHADER_PRIMITIVES_BIT :: GEOMETRY_SHADER_PRIMITIVES_BIT; VK_QUERY_PIPELINE_STATISTIC_CLIPPING_INVOCATIONS_BIT :: CLIPPING_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_CLIPPING_PRIMITIVES_BIT :: CLIPPING_PRIMITIVES_BIT; VK_QUERY_PIPELINE_STATISTIC_FRAGMENT_SHADER_INVOCATIONS_BIT :: FRAGMENT_SHADER_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_CONTROL_SHADER_PATCHES_BIT :: TESSELLATION_CONTROL_SHADER_PATCHES_BIT; VK_QUERY_PIPELINE_STATISTIC_TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT :: TESSELLATION_EVALUATION_SHADER_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_COMPUTE_SHADER_INVOCATIONS_BIT :: COMPUTE_SHADER_INVOCATIONS_BIT; VK_QUERY_PIPELINE_STATISTIC_TASK_SHADER_INVOCATIONS_BIT_EXT :: TASK_SHADER_INVOCATIONS_BIT_EXT; VK_QUERY_PIPELINE_STATISTIC_MESH_SHADER_INVOCATIONS_BIT_EXT :: MESH_SHADER_INVOCATIONS_BIT_EXT; VK_QUERY_PIPELINE_STATISTIC_CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI :: CLUSTER_CULLING_SHADER_INVOCATIONS_BIT_HUAWEI; VK_QUERY_PIPELINE_STATISTIC_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkQueryPipelineStatisticFlags :: VkFlags; VkQueryPoolCreateFlags :: VkFlags; VkQueryResultFlagBits :: enum u32 { _64_BIT :: 1; WAIT_BIT :: 2; WITH_AVAILABILITY_BIT :: 4; PARTIAL_BIT :: 8; WITH_STATUS_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_QUERY_RESULT_64_BIT :: _64_BIT; VK_QUERY_RESULT_WAIT_BIT :: WAIT_BIT; VK_QUERY_RESULT_WITH_AVAILABILITY_BIT :: WITH_AVAILABILITY_BIT; VK_QUERY_RESULT_PARTIAL_BIT :: PARTIAL_BIT; VK_QUERY_RESULT_WITH_STATUS_BIT_KHR :: WITH_STATUS_BIT_KHR; VK_QUERY_RESULT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkQueryResultFlags :: VkFlags; VkBufferCreateFlagBits :: enum u32 { SPARSE_BINDING_BIT :: 1; SPARSE_RESIDENCY_BIT :: 2; SPARSE_ALIASED_BIT :: 4; PROTECTED_BIT :: 8; DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: 16; DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: 32; VIDEO_PROFILE_INDEPENDENT_BIT_KHR :: 64; DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT :: 16; DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_BUFFER_CREATE_SPARSE_BINDING_BIT :: SPARSE_BINDING_BIT; VK_BUFFER_CREATE_SPARSE_RESIDENCY_BIT :: SPARSE_RESIDENCY_BIT; VK_BUFFER_CREATE_SPARSE_ALIASED_BIT :: SPARSE_ALIASED_BIT; VK_BUFFER_CREATE_PROTECTED_BIT :: PROTECTED_BIT; VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT; VK_BUFFER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT; VK_BUFFER_CREATE_VIDEO_PROFILE_INDEPENDENT_BIT_KHR :: VIDEO_PROFILE_INDEPENDENT_BIT_KHR; VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT; VK_BUFFER_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR; VK_BUFFER_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkBufferCreateFlags :: VkFlags; VkBufferUsageFlagBits :: enum u32 { TRANSFER_SRC_BIT :: 1; TRANSFER_DST_BIT :: 2; UNIFORM_TEXEL_BUFFER_BIT :: 4; STORAGE_TEXEL_BUFFER_BIT :: 8; UNIFORM_BUFFER_BIT :: 16; STORAGE_BUFFER_BIT :: 32; INDEX_BUFFER_BIT :: 64; VERTEX_BUFFER_BIT :: 128; INDIRECT_BUFFER_BIT :: 256; SHADER_DEVICE_ADDRESS_BIT :: 131072; VIDEO_DECODE_SRC_BIT_KHR :: 8192; VIDEO_DECODE_DST_BIT_KHR :: 16384; TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: 2048; TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: 4096; CONDITIONAL_RENDERING_BIT_EXT :: 512; ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR :: 524288; ACCELERATION_STRUCTURE_STORAGE_BIT_KHR :: 1048576; SHADER_BINDING_TABLE_BIT_KHR :: 1024; VIDEO_ENCODE_DST_BIT_KHR :: 32768; VIDEO_ENCODE_SRC_BIT_KHR :: 65536; SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT :: 2097152; RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT :: 4194304; PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT :: 67108864; MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT :: 8388608; MICROMAP_STORAGE_BIT_EXT :: 16777216; TILE_MEMORY_QCOM :: 134217728; RAY_TRACING_BIT_NV :: 1024; SHADER_DEVICE_ADDRESS_BIT_EXT :: 131072; SHADER_DEVICE_ADDRESS_BIT_KHR :: 131072; FLAG_BITS_MAX_ENUM :: 2147483647; VK_BUFFER_USAGE_TRANSFER_SRC_BIT :: TRANSFER_SRC_BIT; VK_BUFFER_USAGE_TRANSFER_DST_BIT :: TRANSFER_DST_BIT; VK_BUFFER_USAGE_UNIFORM_TEXEL_BUFFER_BIT :: UNIFORM_TEXEL_BUFFER_BIT; VK_BUFFER_USAGE_STORAGE_TEXEL_BUFFER_BIT :: STORAGE_TEXEL_BUFFER_BIT; VK_BUFFER_USAGE_UNIFORM_BUFFER_BIT :: UNIFORM_BUFFER_BIT; VK_BUFFER_USAGE_STORAGE_BUFFER_BIT :: STORAGE_BUFFER_BIT; VK_BUFFER_USAGE_INDEX_BUFFER_BIT :: INDEX_BUFFER_BIT; VK_BUFFER_USAGE_VERTEX_BUFFER_BIT :: VERTEX_BUFFER_BIT; VK_BUFFER_USAGE_INDIRECT_BUFFER_BIT :: INDIRECT_BUFFER_BIT; VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT :: SHADER_DEVICE_ADDRESS_BIT; VK_BUFFER_USAGE_VIDEO_DECODE_SRC_BIT_KHR :: VIDEO_DECODE_SRC_BIT_KHR; VK_BUFFER_USAGE_VIDEO_DECODE_DST_BIT_KHR :: VIDEO_DECODE_DST_BIT_KHR; VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT :: TRANSFORM_FEEDBACK_BUFFER_BIT_EXT; VK_BUFFER_USAGE_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT :: TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT; VK_BUFFER_USAGE_CONDITIONAL_RENDERING_BIT_EXT :: CONDITIONAL_RENDERING_BIT_EXT; VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR :: ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR; VK_BUFFER_USAGE_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR :: ACCELERATION_STRUCTURE_STORAGE_BIT_KHR; VK_BUFFER_USAGE_SHADER_BINDING_TABLE_BIT_KHR :: SHADER_BINDING_TABLE_BIT_KHR; VK_BUFFER_USAGE_VIDEO_ENCODE_DST_BIT_KHR :: VIDEO_ENCODE_DST_BIT_KHR; VK_BUFFER_USAGE_VIDEO_ENCODE_SRC_BIT_KHR :: VIDEO_ENCODE_SRC_BIT_KHR; VK_BUFFER_USAGE_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT :: SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT; VK_BUFFER_USAGE_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT :: RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT; VK_BUFFER_USAGE_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT :: PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT; VK_BUFFER_USAGE_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT :: MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT; VK_BUFFER_USAGE_MICROMAP_STORAGE_BIT_EXT :: MICROMAP_STORAGE_BIT_EXT; VK_BUFFER_USAGE_TILE_MEMORY_QCOM :: TILE_MEMORY_QCOM; VK_BUFFER_USAGE_RAY_TRACING_BIT_NV :: RAY_TRACING_BIT_NV; VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_EXT :: SHADER_DEVICE_ADDRESS_BIT_EXT; VK_BUFFER_USAGE_SHADER_DEVICE_ADDRESS_BIT_KHR :: SHADER_DEVICE_ADDRESS_BIT_KHR; VK_BUFFER_USAGE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkBufferUsageFlags :: VkFlags; VkBufferViewCreateFlags :: VkFlags; VkImageViewCreateFlagBits :: enum u32 { FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT :: 1; DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: 4; FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT :: FRAGMENT_DENSITY_MAP_DYNAMIC_BIT_EXT; VK_IMAGE_VIEW_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT; VK_IMAGE_VIEW_CREATE_FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT :: FRAGMENT_DENSITY_MAP_DEFERRED_BIT_EXT; VK_IMAGE_VIEW_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkImageViewCreateFlags :: VkFlags; VkShaderModuleCreateFlags :: VkFlags; VkPipelineCacheCreateFlagBits :: enum u32 { EXTERNALLY_SYNCHRONIZED_BIT :: 1; INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR :: 8; EXTERNALLY_SYNCHRONIZED_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT :: EXTERNALLY_SYNCHRONIZED_BIT; VK_PIPELINE_CACHE_CREATE_INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR :: INTERNALLY_SYNCHRONIZED_MERGE_BIT_KHR; VK_PIPELINE_CACHE_CREATE_EXTERNALLY_SYNCHRONIZED_BIT_EXT :: EXTERNALLY_SYNCHRONIZED_BIT_EXT; VK_PIPELINE_CACHE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineCacheCreateFlags :: VkFlags; VkColorComponentFlagBits :: enum u32 { R_BIT :: 1; G_BIT :: 2; B_BIT :: 4; A_BIT :: 8; FLAG_BITS_MAX_ENUM :: 2147483647; VK_COLOR_COMPONENT_R_BIT :: R_BIT; VK_COLOR_COMPONENT_G_BIT :: G_BIT; VK_COLOR_COMPONENT_B_BIT :: B_BIT; VK_COLOR_COMPONENT_A_BIT :: A_BIT; VK_COLOR_COMPONENT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkColorComponentFlags :: VkFlags; VkPipelineCreateFlagBits :: enum u32 { CREATE_DISABLE_OPTIMIZATION_BIT :: 1; CREATE_ALLOW_DERIVATIVES_BIT :: 2; CREATE_DERIVATIVE_BIT :: 4; CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: 8; CREATE_DISPATCH_BASE_BIT :: 16; CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: 256; CREATE_EARLY_RETURN_ON_FAILURE_BIT :: 512; CREATE_NO_PROTECTED_ACCESS_BIT :: 134217728; CREATE_PROTECTED_ACCESS_ONLY_BIT :: 1073741824; CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: 16384; CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: 32768; CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: 65536; CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: 131072; CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: 4096; CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: 8192; CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: 524288; CREATE_DEFER_COMPILE_BIT_NV :: 32; CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: 4194304; CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: 2097152; CREATE_CAPTURE_STATISTICS_BIT_KHR :: 64; CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: 128; CREATE_INDIRECT_BINDABLE_BIT_NV :: 262144; CREATE_LIBRARY_BIT_KHR :: 2048; CREATE_DESCRIPTOR_BUFFER_BIT_EXT :: 536870912; CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: 8388608; CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT :: 1024; CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV :: 1048576; CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: 33554432; CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: 67108864; CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: 16777216; CREATE_DISPATCH_BASE :: 16; CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR :: 8; CREATE_DISPATCH_BASE_KHR :: 16; RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: 4194304; RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: 2097152; CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT :: 256; CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT :: 512; CREATE_NO_PROTECTED_ACCESS_BIT_EXT :: 134217728; CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT :: 1073741824; CREATE_FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_CREATE_DISABLE_OPTIMIZATION_BIT :: CREATE_DISABLE_OPTIMIZATION_BIT; VK_PIPELINE_CREATE_ALLOW_DERIVATIVES_BIT :: CREATE_ALLOW_DERIVATIVES_BIT; VK_PIPELINE_CREATE_DERIVATIVE_BIT :: CREATE_DERIVATIVE_BIT; VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT :: CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT; VK_PIPELINE_CREATE_DISPATCH_BASE_BIT :: CREATE_DISPATCH_BASE_BIT; VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT :: CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT; VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT :: CREATE_EARLY_RETURN_ON_FAILURE_BIT; VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT :: CREATE_NO_PROTECTED_ACCESS_BIT; VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT :: CREATE_PROTECTED_ACCESS_ONLY_BIT; VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR :: CREATE_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR :: CREATE_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR :: CREATE_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR :: CREATE_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR :: CREATE_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR :: CREATE_RAY_TRACING_SKIP_AABBS_BIT_KHR; VK_PIPELINE_CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR :: CREATE_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR; VK_PIPELINE_CREATE_DEFER_COMPILE_BIT_NV :: CREATE_DEFER_COMPILE_BIT_NV; VK_PIPELINE_CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: CREATE_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT; VK_PIPELINE_CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: CREATE_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; VK_PIPELINE_CREATE_CAPTURE_STATISTICS_BIT_KHR :: CREATE_CAPTURE_STATISTICS_BIT_KHR; VK_PIPELINE_CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR :: CREATE_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR; VK_PIPELINE_CREATE_INDIRECT_BINDABLE_BIT_NV :: CREATE_INDIRECT_BINDABLE_BIT_NV; VK_PIPELINE_CREATE_LIBRARY_BIT_KHR :: CREATE_LIBRARY_BIT_KHR; VK_PIPELINE_CREATE_DESCRIPTOR_BUFFER_BIT_EXT :: CREATE_DESCRIPTOR_BUFFER_BIT_EXT; VK_PIPELINE_CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT :: CREATE_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT; VK_PIPELINE_CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT :: CREATE_LINK_TIME_OPTIMIZATION_BIT_EXT; VK_PIPELINE_CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV :: CREATE_RAY_TRACING_ALLOW_MOTION_BIT_NV; VK_PIPELINE_CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: CREATE_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT; VK_PIPELINE_CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT :: CREATE_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT; VK_PIPELINE_CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT :: CREATE_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT; VK_PIPELINE_CREATE_DISPATCH_BASE :: CREATE_DISPATCH_BASE; VK_PIPELINE_CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR :: CREATE_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR; VK_PIPELINE_CREATE_DISPATCH_BASE_KHR :: CREATE_DISPATCH_BASE_KHR; VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: RASTERIZATION_STATE_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT; VK_PIPELINE_RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR :: RASTERIZATION_STATE_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR; VK_PIPELINE_CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT :: CREATE_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_EXT; VK_PIPELINE_CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT :: CREATE_EARLY_RETURN_ON_FAILURE_BIT_EXT; VK_PIPELINE_CREATE_NO_PROTECTED_ACCESS_BIT_EXT :: CREATE_NO_PROTECTED_ACCESS_BIT_EXT; VK_PIPELINE_CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT :: CREATE_PROTECTED_ACCESS_ONLY_BIT_EXT; VK_PIPELINE_CREATE_FLAG_BITS_MAX_ENUM :: CREATE_FLAG_BITS_MAX_ENUM; } VkPipelineCreateFlags :: VkFlags; VkPipelineShaderStageCreateFlagBits :: enum u32 { ALLOW_VARYING_SUBGROUP_SIZE_BIT :: 1; REQUIRE_FULL_SUBGROUPS_BIT :: 2; ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: 1; REQUIRE_FULL_SUBGROUPS_BIT_EXT :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT :: ALLOW_VARYING_SUBGROUP_SIZE_BIT; VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT :: REQUIRE_FULL_SUBGROUPS_BIT; VK_PIPELINE_SHADER_STAGE_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT; VK_PIPELINE_SHADER_STAGE_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT :: REQUIRE_FULL_SUBGROUPS_BIT_EXT; VK_PIPELINE_SHADER_STAGE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineShaderStageCreateFlags :: VkFlags; VkShaderStageFlagBits :: enum u32 { VERTEX_BIT :: 1; TESSELLATION_CONTROL_BIT :: 2; TESSELLATION_EVALUATION_BIT :: 4; GEOMETRY_BIT :: 8; FRAGMENT_BIT :: 16; COMPUTE_BIT :: 32; ALL_GRAPHICS :: 31; ALL :: 2147483647; RAYGEN_BIT_KHR :: 256; ANY_HIT_BIT_KHR :: 512; CLOSEST_HIT_BIT_KHR :: 1024; MISS_BIT_KHR :: 2048; INTERSECTION_BIT_KHR :: 4096; CALLABLE_BIT_KHR :: 8192; TASK_BIT_EXT :: 64; MESH_BIT_EXT :: 128; SUBPASS_SHADING_BIT_HUAWEI :: 16384; CLUSTER_CULLING_BIT_HUAWEI :: 524288; RAYGEN_BIT_NV :: 256; ANY_HIT_BIT_NV :: 512; CLOSEST_HIT_BIT_NV :: 1024; MISS_BIT_NV :: 2048; INTERSECTION_BIT_NV :: 4096; CALLABLE_BIT_NV :: 8192; TASK_BIT_NV :: 64; MESH_BIT_NV :: 128; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SHADER_STAGE_VERTEX_BIT :: VERTEX_BIT; VK_SHADER_STAGE_TESSELLATION_CONTROL_BIT :: TESSELLATION_CONTROL_BIT; VK_SHADER_STAGE_TESSELLATION_EVALUATION_BIT :: TESSELLATION_EVALUATION_BIT; VK_SHADER_STAGE_GEOMETRY_BIT :: GEOMETRY_BIT; VK_SHADER_STAGE_FRAGMENT_BIT :: FRAGMENT_BIT; VK_SHADER_STAGE_COMPUTE_BIT :: COMPUTE_BIT; VK_SHADER_STAGE_ALL_GRAPHICS :: ALL_GRAPHICS; VK_SHADER_STAGE_ALL :: ALL; VK_SHADER_STAGE_RAYGEN_BIT_KHR :: RAYGEN_BIT_KHR; VK_SHADER_STAGE_ANY_HIT_BIT_KHR :: ANY_HIT_BIT_KHR; VK_SHADER_STAGE_CLOSEST_HIT_BIT_KHR :: CLOSEST_HIT_BIT_KHR; VK_SHADER_STAGE_MISS_BIT_KHR :: MISS_BIT_KHR; VK_SHADER_STAGE_INTERSECTION_BIT_KHR :: INTERSECTION_BIT_KHR; VK_SHADER_STAGE_CALLABLE_BIT_KHR :: CALLABLE_BIT_KHR; VK_SHADER_STAGE_TASK_BIT_EXT :: TASK_BIT_EXT; VK_SHADER_STAGE_MESH_BIT_EXT :: MESH_BIT_EXT; VK_SHADER_STAGE_SUBPASS_SHADING_BIT_HUAWEI :: SUBPASS_SHADING_BIT_HUAWEI; VK_SHADER_STAGE_CLUSTER_CULLING_BIT_HUAWEI :: CLUSTER_CULLING_BIT_HUAWEI; VK_SHADER_STAGE_RAYGEN_BIT_NV :: RAYGEN_BIT_NV; VK_SHADER_STAGE_ANY_HIT_BIT_NV :: ANY_HIT_BIT_NV; VK_SHADER_STAGE_CLOSEST_HIT_BIT_NV :: CLOSEST_HIT_BIT_NV; VK_SHADER_STAGE_MISS_BIT_NV :: MISS_BIT_NV; VK_SHADER_STAGE_INTERSECTION_BIT_NV :: INTERSECTION_BIT_NV; VK_SHADER_STAGE_CALLABLE_BIT_NV :: CALLABLE_BIT_NV; VK_SHADER_STAGE_TASK_BIT_NV :: TASK_BIT_NV; VK_SHADER_STAGE_MESH_BIT_NV :: MESH_BIT_NV; VK_SHADER_STAGE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCullModeFlagBits :: enum u32 { NONE :: 0; FRONT_BIT :: 1; BACK_BIT :: 2; FRONT_AND_BACK :: 3; FLAG_BITS_MAX_ENUM :: 2147483647; VK_CULL_MODE_NONE :: NONE; VK_CULL_MODE_FRONT_BIT :: FRONT_BIT; VK_CULL_MODE_BACK_BIT :: BACK_BIT; VK_CULL_MODE_FRONT_AND_BACK :: FRONT_AND_BACK; VK_CULL_MODE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCullModeFlags :: VkFlags; VkPipelineVertexInputStateCreateFlags :: VkFlags; VkPipelineInputAssemblyStateCreateFlags :: VkFlags; VkPipelineTessellationStateCreateFlags :: VkFlags; VkPipelineViewportStateCreateFlags :: VkFlags; VkPipelineRasterizationStateCreateFlags :: VkFlags; VkPipelineMultisampleStateCreateFlags :: VkFlags; VkPipelineDepthStencilStateCreateFlagBits :: enum u32 { RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT :: 1; RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT :: 2; RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM :: 1; RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT; VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT; VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM; VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM; VK_PIPELINE_DEPTH_STENCIL_STATE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineDepthStencilStateCreateFlags :: VkFlags; VkPipelineColorBlendStateCreateFlagBits :: enum u32 { RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT :: 1; RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_EXT; VK_PIPELINE_COLOR_BLEND_STATE_CREATE_RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_ACCESS_BIT_ARM; VK_PIPELINE_COLOR_BLEND_STATE_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineColorBlendStateCreateFlags :: VkFlags; VkPipelineDynamicStateCreateFlags :: VkFlags; VkPipelineLayoutCreateFlagBits :: enum u32 { INDEPENDENT_SETS_BIT_EXT :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_LAYOUT_CREATE_INDEPENDENT_SETS_BIT_EXT :: INDEPENDENT_SETS_BIT_EXT; VK_PIPELINE_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineLayoutCreateFlags :: VkFlags; VkShaderStageFlags :: VkFlags; VkSamplerCreateFlagBits :: enum u32 { SUBSAMPLED_BIT_EXT :: 1; SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT :: 2; DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: 8; NON_SEAMLESS_CUBE_MAP_BIT_EXT :: 4; IMAGE_PROCESSING_BIT_QCOM :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SAMPLER_CREATE_SUBSAMPLED_BIT_EXT :: SUBSAMPLED_BIT_EXT; VK_SAMPLER_CREATE_SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT :: SUBSAMPLED_COARSE_RECONSTRUCTION_BIT_EXT; VK_SAMPLER_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT; VK_SAMPLER_CREATE_NON_SEAMLESS_CUBE_MAP_BIT_EXT :: NON_SEAMLESS_CUBE_MAP_BIT_EXT; VK_SAMPLER_CREATE_IMAGE_PROCESSING_BIT_QCOM :: IMAGE_PROCESSING_BIT_QCOM; VK_SAMPLER_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSamplerCreateFlags :: VkFlags; VkDescriptorPoolCreateFlagBits :: enum u32 { FREE_DESCRIPTOR_SET_BIT :: 1; UPDATE_AFTER_BIND_BIT :: 2; HOST_ONLY_BIT_EXT :: 4; ALLOW_OVERALLOCATION_SETS_BIT_NV :: 8; ALLOW_OVERALLOCATION_POOLS_BIT_NV :: 16; UPDATE_AFTER_BIND_BIT_EXT :: 2; HOST_ONLY_BIT_VALVE :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_DESCRIPTOR_POOL_CREATE_FREE_DESCRIPTOR_SET_BIT :: FREE_DESCRIPTOR_SET_BIT; VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT :: UPDATE_AFTER_BIND_BIT; VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_EXT :: HOST_ONLY_BIT_EXT; VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_SETS_BIT_NV :: ALLOW_OVERALLOCATION_SETS_BIT_NV; VK_DESCRIPTOR_POOL_CREATE_ALLOW_OVERALLOCATION_POOLS_BIT_NV :: ALLOW_OVERALLOCATION_POOLS_BIT_NV; VK_DESCRIPTOR_POOL_CREATE_UPDATE_AFTER_BIND_BIT_EXT :: UPDATE_AFTER_BIND_BIT_EXT; VK_DESCRIPTOR_POOL_CREATE_HOST_ONLY_BIT_VALVE :: HOST_ONLY_BIT_VALVE; VK_DESCRIPTOR_POOL_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkDescriptorPoolCreateFlags :: VkFlags; VkDescriptorPoolResetFlags :: VkFlags; VkDescriptorSetLayoutCreateFlagBits :: enum u32 { UPDATE_AFTER_BIND_POOL_BIT :: 2; PUSH_DESCRIPTOR_BIT :: 1; DESCRIPTOR_BUFFER_BIT_EXT :: 16; EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT :: 32; INDIRECT_BINDABLE_BIT_NV :: 128; HOST_ONLY_POOL_BIT_EXT :: 4; PER_STAGE_BIT_NV :: 64; PUSH_DESCRIPTOR_BIT_KHR :: 1; UPDATE_AFTER_BIND_POOL_BIT_EXT :: 2; HOST_ONLY_POOL_BIT_VALVE :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT :: UPDATE_AFTER_BIND_POOL_BIT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT :: PUSH_DESCRIPTOR_BIT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_DESCRIPTOR_BUFFER_BIT_EXT :: DESCRIPTOR_BUFFER_BIT_EXT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT :: EMBEDDED_IMMUTABLE_SAMPLERS_BIT_EXT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_INDIRECT_BINDABLE_BIT_NV :: INDIRECT_BINDABLE_BIT_NV; VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_EXT :: HOST_ONLY_POOL_BIT_EXT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_PER_STAGE_BIT_NV :: PER_STAGE_BIT_NV; VK_DESCRIPTOR_SET_LAYOUT_CREATE_PUSH_DESCRIPTOR_BIT_KHR :: PUSH_DESCRIPTOR_BIT_KHR; VK_DESCRIPTOR_SET_LAYOUT_CREATE_UPDATE_AFTER_BIND_POOL_BIT_EXT :: UPDATE_AFTER_BIND_POOL_BIT_EXT; VK_DESCRIPTOR_SET_LAYOUT_CREATE_HOST_ONLY_POOL_BIT_VALVE :: HOST_ONLY_POOL_BIT_VALVE; VK_DESCRIPTOR_SET_LAYOUT_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkDescriptorSetLayoutCreateFlags :: VkFlags; VkAttachmentDescriptionFlagBits :: enum u32 { MAY_ALIAS_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_ATTACHMENT_DESCRIPTION_MAY_ALIAS_BIT :: MAY_ALIAS_BIT; VK_ATTACHMENT_DESCRIPTION_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkAttachmentDescriptionFlags :: VkFlags; VkDependencyFlagBits :: enum u32 { BY_REGION_BIT :: 1; DEVICE_GROUP_BIT :: 4; VIEW_LOCAL_BIT :: 2; FEEDBACK_LOOP_BIT_EXT :: 8; QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_BIT_KHR :: 32; VIEW_LOCAL_BIT_KHR :: 2; DEVICE_GROUP_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_DEPENDENCY_BY_REGION_BIT :: BY_REGION_BIT; VK_DEPENDENCY_DEVICE_GROUP_BIT :: DEVICE_GROUP_BIT; VK_DEPENDENCY_VIEW_LOCAL_BIT :: VIEW_LOCAL_BIT; VK_DEPENDENCY_FEEDBACK_LOOP_BIT_EXT :: FEEDBACK_LOOP_BIT_EXT; VK_DEPENDENCY_QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_BIT_KHR :: QUEUE_FAMILY_OWNERSHIP_TRANSFER_USE_ALL_STAGES_BIT_KHR; VK_DEPENDENCY_VIEW_LOCAL_BIT_KHR :: VIEW_LOCAL_BIT_KHR; VK_DEPENDENCY_DEVICE_GROUP_BIT_KHR :: DEVICE_GROUP_BIT_KHR; VK_DEPENDENCY_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkDependencyFlags :: VkFlags; VkFramebufferCreateFlagBits :: enum u32 { IMAGELESS_BIT :: 1; IMAGELESS_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT :: IMAGELESS_BIT; VK_FRAMEBUFFER_CREATE_IMAGELESS_BIT_KHR :: IMAGELESS_BIT_KHR; VK_FRAMEBUFFER_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkFramebufferCreateFlags :: VkFlags; VkRenderPassCreateFlagBits :: enum u32 { TRANSFORM_BIT_QCOM :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_RENDER_PASS_CREATE_TRANSFORM_BIT_QCOM :: TRANSFORM_BIT_QCOM; VK_RENDER_PASS_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkRenderPassCreateFlags :: VkFlags; VkSubpassDescriptionFlagBits :: enum u32 { PER_VIEW_ATTRIBUTES_BIT_NVX :: 1; PER_VIEW_POSITION_X_ONLY_BIT_NVX :: 2; FRAGMENT_REGION_BIT_QCOM :: 4; SHADER_RESOLVE_BIT_QCOM :: 8; TILE_SHADING_APRON_BIT_QCOM :: 256; RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT :: 16; RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT :: 32; RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT :: 64; ENABLE_LEGACY_DITHERING_BIT_EXT :: 128; RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM :: 16; RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM :: 32; RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM :: 64; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SUBPASS_DESCRIPTION_PER_VIEW_ATTRIBUTES_BIT_NVX :: PER_VIEW_ATTRIBUTES_BIT_NVX; VK_SUBPASS_DESCRIPTION_PER_VIEW_POSITION_X_ONLY_BIT_NVX :: PER_VIEW_POSITION_X_ONLY_BIT_NVX; VK_SUBPASS_DESCRIPTION_FRAGMENT_REGION_BIT_QCOM :: FRAGMENT_REGION_BIT_QCOM; VK_SUBPASS_DESCRIPTION_SHADER_RESOLVE_BIT_QCOM :: SHADER_RESOLVE_BIT_QCOM; VK_SUBPASS_DESCRIPTION_TILE_SHADING_APRON_BIT_QCOM :: TILE_SHADING_APRON_BIT_QCOM; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_EXT; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_EXT; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT :: RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_EXT; VK_SUBPASS_DESCRIPTION_ENABLE_LEGACY_DITHERING_BIT_EXT :: ENABLE_LEGACY_DITHERING_BIT_EXT; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_COLOR_ACCESS_BIT_ARM; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_DEPTH_ACCESS_BIT_ARM; VK_SUBPASS_DESCRIPTION_RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM :: RASTERIZATION_ORDER_ATTACHMENT_STENCIL_ACCESS_BIT_ARM; VK_SUBPASS_DESCRIPTION_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSubpassDescriptionFlags :: VkFlags; VkCommandPoolCreateFlagBits :: enum u32 { TRANSIENT_BIT :: 1; RESET_COMMAND_BUFFER_BIT :: 2; PROTECTED_BIT :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_COMMAND_POOL_CREATE_TRANSIENT_BIT :: TRANSIENT_BIT; VK_COMMAND_POOL_CREATE_RESET_COMMAND_BUFFER_BIT :: RESET_COMMAND_BUFFER_BIT; VK_COMMAND_POOL_CREATE_PROTECTED_BIT :: PROTECTED_BIT; VK_COMMAND_POOL_CREATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCommandPoolCreateFlags :: VkFlags; VkCommandPoolResetFlagBits :: enum u32 { RELEASE_RESOURCES_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_COMMAND_POOL_RESET_RELEASE_RESOURCES_BIT :: RELEASE_RESOURCES_BIT; VK_COMMAND_POOL_RESET_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCommandPoolResetFlags :: VkFlags; VkCommandBufferUsageFlagBits :: enum u32 { ONE_TIME_SUBMIT_BIT :: 1; RENDER_PASS_CONTINUE_BIT :: 2; SIMULTANEOUS_USE_BIT :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_COMMAND_BUFFER_USAGE_ONE_TIME_SUBMIT_BIT :: ONE_TIME_SUBMIT_BIT; VK_COMMAND_BUFFER_USAGE_RENDER_PASS_CONTINUE_BIT :: RENDER_PASS_CONTINUE_BIT; VK_COMMAND_BUFFER_USAGE_SIMULTANEOUS_USE_BIT :: SIMULTANEOUS_USE_BIT; VK_COMMAND_BUFFER_USAGE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCommandBufferUsageFlags :: VkFlags; VkQueryControlFlagBits :: enum u32 { PRECISE_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_QUERY_CONTROL_PRECISE_BIT :: PRECISE_BIT; VK_QUERY_CONTROL_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkQueryControlFlags :: VkFlags; VkCommandBufferResetFlagBits :: enum u32 { RELEASE_RESOURCES_BIT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_COMMAND_BUFFER_RESET_RELEASE_RESOURCES_BIT :: RELEASE_RESOURCES_BIT; VK_COMMAND_BUFFER_RESET_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkCommandBufferResetFlags :: VkFlags; VkStencilFaceFlagBits :: enum u32 { FACE_FRONT_BIT :: 1; FACE_BACK_BIT :: 2; FACE_FRONT_AND_BACK :: 3; FRONT_AND_BACK :: 3; FACE_FLAG_BITS_MAX_ENUM :: 2147483647; VK_STENCIL_FACE_FRONT_BIT :: FACE_FRONT_BIT; VK_STENCIL_FACE_BACK_BIT :: FACE_BACK_BIT; VK_STENCIL_FACE_FRONT_AND_BACK :: FACE_FRONT_AND_BACK; VK_STENCIL_FRONT_AND_BACK :: FRONT_AND_BACK; VK_STENCIL_FACE_FLAG_BITS_MAX_ENUM :: FACE_FLAG_BITS_MAX_ENUM; } VkStencilFaceFlags :: VkFlags; VkExtent2D :: struct { width: u32; height: u32; } VkExtent3D :: struct { width: u32; height: u32; depth: u32; } VkOffset2D :: struct { x: s32; y: s32; } VkOffset3D :: struct { x: s32; y: s32; z: s32; } VkRect2D :: struct { offset: VkOffset2D; extent: VkExtent2D; } VkBaseInStructure :: struct { sType: VkStructureType; pNext: *VkBaseInStructure; } VkBaseOutStructure :: struct { sType: VkStructureType; pNext: *VkBaseOutStructure; } VkBufferMemoryBarrier :: struct { sType: VkStructureType; pNext: *void; srcAccessMask: VkAccessFlags; dstAccessMask: VkAccessFlags; srcQueueFamilyIndex: u32; dstQueueFamilyIndex: u32; buffer: VkBuffer; offset: VkDeviceSize; size: VkDeviceSize; } VkDispatchIndirectCommand :: struct { x: u32; y: u32; z: u32; } VkDrawIndexedIndirectCommand :: struct { indexCount: u32; instanceCount: u32; firstIndex: u32; vertexOffset: s32; firstInstance: u32; } VkDrawIndirectCommand :: struct { vertexCount: u32; instanceCount: u32; firstVertex: u32; firstInstance: u32; } VkImageSubresourceRange :: struct { aspectMask: VkImageAspectFlags; baseMipLevel: u32; levelCount: u32; baseArrayLayer: u32; layerCount: u32; } VkImageMemoryBarrier :: struct { sType: VkStructureType; pNext: *void; srcAccessMask: VkAccessFlags; dstAccessMask: VkAccessFlags; oldLayout: VkImageLayout; newLayout: VkImageLayout; srcQueueFamilyIndex: u32; dstQueueFamilyIndex: u32; image: VkImage; subresourceRange: VkImageSubresourceRange; } VkMemoryBarrier :: struct { sType: VkStructureType; pNext: *void; srcAccessMask: VkAccessFlags; dstAccessMask: VkAccessFlags; } VkPipelineCacheHeaderVersionOne :: struct { headerSize: u32; headerVersion: VkPipelineCacheHeaderVersion; vendorID: u32; deviceID: u32; pipelineCacheUUID: [16] u8; } PFN_vkAllocationFunction :: #type (pUserData: *void, size: u64, alignment: u64, allocationScope: VkSystemAllocationScope) -> *void #c_call; PFN_vkFreeFunction :: #type (pUserData: *void, pMemory: *void) -> void #c_call; PFN_vkInternalAllocationNotification :: #type (pUserData: *void, size: u64, allocationType: VkInternalAllocationType, allocationScope: VkSystemAllocationScope) -> void #c_call; PFN_vkInternalFreeNotification :: #type (pUserData: *void, size: u64, allocationType: VkInternalAllocationType, allocationScope: VkSystemAllocationScope) -> void #c_call; PFN_vkReallocationFunction :: #type (pUserData: *void, pOriginal: *void, size: u64, alignment: u64, allocationScope: VkSystemAllocationScope) -> *void #c_call; PFN_vkVoidFunction :: #type () -> void #c_call; VkAllocationCallbacks :: struct { pUserData: *void; pfnAllocation: PFN_vkAllocationFunction; pfnReallocation: PFN_vkReallocationFunction; pfnFree: PFN_vkFreeFunction; pfnInternalAllocation: PFN_vkInternalAllocationNotification; pfnInternalFree: PFN_vkInternalFreeNotification; } VkApplicationInfo :: struct { sType: VkStructureType; pNext: *void; pApplicationName: *u8; applicationVersion: u32; pEngineName: *u8; engineVersion: u32; apiVersion: u32; } VkFormatProperties :: struct { linearTilingFeatures: VkFormatFeatureFlags; optimalTilingFeatures: VkFormatFeatureFlags; bufferFeatures: VkFormatFeatureFlags; } VkImageFormatProperties :: struct { maxExtent: VkExtent3D; maxMipLevels: u32; maxArrayLayers: u32; sampleCounts: VkSampleCountFlags; maxResourceSize: VkDeviceSize; } VkInstanceCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkInstanceCreateFlags; pApplicationInfo: *VkApplicationInfo; enabledLayerCount: u32; ppEnabledLayerNames: **u8; enabledExtensionCount: u32; ppEnabledExtensionNames: **u8; } VkMemoryHeap :: struct { size: VkDeviceSize; flags: VkMemoryHeapFlags; } VkMemoryType :: struct { propertyFlags: VkMemoryPropertyFlags; heapIndex: u32; } VkPhysicalDeviceFeatures :: struct { robustBufferAccess: VkBool32; fullDrawIndexUint32: VkBool32; imageCubeArray: VkBool32; independentBlend: VkBool32; geometryShader: VkBool32; tessellationShader: VkBool32; sampleRateShading: VkBool32; dualSrcBlend: VkBool32; logicOp: VkBool32; multiDrawIndirect: VkBool32; drawIndirectFirstInstance: VkBool32; depthClamp: VkBool32; depthBiasClamp: VkBool32; fillModeNonSolid: VkBool32; depthBounds: VkBool32; wideLines: VkBool32; largePoints: VkBool32; alphaToOne: VkBool32; multiViewport: VkBool32; samplerAnisotropy: VkBool32; textureCompressionETC2: VkBool32; textureCompressionASTC_LDR: VkBool32; textureCompressionBC: VkBool32; occlusionQueryPrecise: VkBool32; pipelineStatisticsQuery: VkBool32; vertexPipelineStoresAndAtomics: VkBool32; fragmentStoresAndAtomics: VkBool32; shaderTessellationAndGeometryPointSize: VkBool32; shaderImageGatherExtended: VkBool32; shaderStorageImageExtendedFormats: VkBool32; shaderStorageImageMultisample: VkBool32; shaderStorageImageReadWithoutFormat: VkBool32; shaderStorageImageWriteWithoutFormat: VkBool32; shaderUniformBufferArrayDynamicIndexing: VkBool32; shaderSampledImageArrayDynamicIndexing: VkBool32; shaderStorageBufferArrayDynamicIndexing: VkBool32; shaderStorageImageArrayDynamicIndexing: VkBool32; shaderClipDistance: VkBool32; shaderCullDistance: VkBool32; shaderFloat64: VkBool32; shaderInt64: VkBool32; shaderInt16: VkBool32; shaderResourceResidency: VkBool32; shaderResourceMinLod: VkBool32; sparseBinding: VkBool32; sparseResidencyBuffer: VkBool32; sparseResidencyImage2D: VkBool32; sparseResidencyImage3D: VkBool32; sparseResidency2Samples: VkBool32; sparseResidency4Samples: VkBool32; sparseResidency8Samples: VkBool32; sparseResidency16Samples: VkBool32; sparseResidencyAliased: VkBool32; variableMultisampleRate: VkBool32; inheritedQueries: VkBool32; } VkPhysicalDeviceLimits :: struct { maxImageDimension1D: u32; maxImageDimension2D: u32; maxImageDimension3D: u32; maxImageDimensionCube: u32; maxImageArrayLayers: u32; maxTexelBufferElements: u32; maxUniformBufferRange: u32; maxStorageBufferRange: u32; maxPushConstantsSize: u32; maxMemoryAllocationCount: u32; maxSamplerAllocationCount: u32; bufferImageGranularity: VkDeviceSize; sparseAddressSpaceSize: VkDeviceSize; maxBoundDescriptorSets: u32; maxPerStageDescriptorSamplers: u32; maxPerStageDescriptorUniformBuffers: u32; maxPerStageDescriptorStorageBuffers: u32; maxPerStageDescriptorSampledImages: u32; maxPerStageDescriptorStorageImages: u32; maxPerStageDescriptorInputAttachments: u32; maxPerStageResources: u32; maxDescriptorSetSamplers: u32; maxDescriptorSetUniformBuffers: u32; maxDescriptorSetUniformBuffersDynamic: u32; maxDescriptorSetStorageBuffers: u32; maxDescriptorSetStorageBuffersDynamic: u32; maxDescriptorSetSampledImages: u32; maxDescriptorSetStorageImages: u32; maxDescriptorSetInputAttachments: u32; maxVertexInputAttributes: u32; maxVertexInputBindings: u32; maxVertexInputAttributeOffset: u32; maxVertexInputBindingStride: u32; maxVertexOutputComponents: u32; maxTessellationGenerationLevel: u32; maxTessellationPatchSize: u32; maxTessellationControlPerVertexInputComponents: u32; maxTessellationControlPerVertexOutputComponents: u32; maxTessellationControlPerPatchOutputComponents: u32; maxTessellationControlTotalOutputComponents: u32; maxTessellationEvaluationInputComponents: u32; maxTessellationEvaluationOutputComponents: u32; maxGeometryShaderInvocations: u32; maxGeometryInputComponents: u32; maxGeometryOutputComponents: u32; maxGeometryOutputVertices: u32; maxGeometryTotalOutputComponents: u32; maxFragmentInputComponents: u32; maxFragmentOutputAttachments: u32; maxFragmentDualSrcAttachments: u32; maxFragmentCombinedOutputResources: u32; maxComputeSharedMemorySize: u32; maxComputeWorkGroupCount: [3] u32; maxComputeWorkGroupInvocations: u32; maxComputeWorkGroupSize: [3] u32; subPixelPrecisionBits: u32; subTexelPrecisionBits: u32; mipmapPrecisionBits: u32; maxDrawIndexedIndexValue: u32; maxDrawIndirectCount: u32; maxSamplerLodBias: float; maxSamplerAnisotropy: float; maxViewports: u32; maxViewportDimensions: [2] u32; viewportBoundsRange: [2] float; viewportSubPixelBits: u32; minMemoryMapAlignment: u64; minTexelBufferOffsetAlignment: VkDeviceSize; minUniformBufferOffsetAlignment: VkDeviceSize; minStorageBufferOffsetAlignment: VkDeviceSize; minTexelOffset: s32; maxTexelOffset: u32; minTexelGatherOffset: s32; maxTexelGatherOffset: u32; minInterpolationOffset: float; maxInterpolationOffset: float; subPixelInterpolationOffsetBits: u32; maxFramebufferWidth: u32; maxFramebufferHeight: u32; maxFramebufferLayers: u32; framebufferColorSampleCounts: VkSampleCountFlags; framebufferDepthSampleCounts: VkSampleCountFlags; framebufferStencilSampleCounts: VkSampleCountFlags; framebufferNoAttachmentsSampleCounts: VkSampleCountFlags; maxColorAttachments: u32; sampledImageColorSampleCounts: VkSampleCountFlags; sampledImageIntegerSampleCounts: VkSampleCountFlags; sampledImageDepthSampleCounts: VkSampleCountFlags; sampledImageStencilSampleCounts: VkSampleCountFlags; storageImageSampleCounts: VkSampleCountFlags; maxSampleMaskWords: u32; timestampComputeAndGraphics: VkBool32; timestampPeriod: float; maxClipDistances: u32; maxCullDistances: u32; maxCombinedClipAndCullDistances: u32; discreteQueuePriorities: u32; pointSizeRange: [2] float; lineWidthRange: [2] float; pointSizeGranularity: float; lineWidthGranularity: float; strictLines: VkBool32; standardSampleLocations: VkBool32; optimalBufferCopyOffsetAlignment: VkDeviceSize; optimalBufferCopyRowPitchAlignment: VkDeviceSize; nonCoherentAtomSize: VkDeviceSize; } VkPhysicalDeviceMemoryProperties :: struct { memoryTypeCount: u32; memoryTypes: [32] VkMemoryType; memoryHeapCount: u32; memoryHeaps: [16] VkMemoryHeap; } VkPhysicalDeviceSparseProperties :: struct { residencyStandard2DBlockShape: VkBool32; residencyStandard2DMultisampleBlockShape: VkBool32; residencyStandard3DBlockShape: VkBool32; residencyAlignedMipSize: VkBool32; residencyNonResidentStrict: VkBool32; } VkPhysicalDeviceProperties :: struct { apiVersion: u32; driverVersion: u32; vendorID: u32; deviceID: u32; deviceType: VkPhysicalDeviceType; deviceName: [256] u8; pipelineCacheUUID: [16] u8; limits: VkPhysicalDeviceLimits; sparseProperties: VkPhysicalDeviceSparseProperties; } VkQueueFamilyProperties :: struct { queueFlags: VkQueueFlags; queueCount: u32; timestampValidBits: u32; minImageTransferGranularity: VkExtent3D; } VkDeviceQueueCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceQueueCreateFlags; queueFamilyIndex: u32; queueCount: u32; pQueuePriorities: *float; } VkDeviceCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceCreateFlags; queueCreateInfoCount: u32; pQueueCreateInfos: *VkDeviceQueueCreateInfo; // enabledLayerCount is deprecated and should not be used enabledLayerCount: u32; // ppEnabledLayerNames is deprecated and should not be used ppEnabledLayerNames: **u8; enabledExtensionCount: u32; ppEnabledExtensionNames: **u8; pEnabledFeatures: *VkPhysicalDeviceFeatures; } VkExtensionProperties :: struct { extensionName: [256] u8; specVersion: u32; } VkLayerProperties :: struct { layerName: [256] u8; specVersion: u32; implementationVersion: u32; description: [256] u8; } VkSubmitInfo :: struct { sType: VkStructureType; pNext: *void; waitSemaphoreCount: u32; pWaitSemaphores: *VkSemaphore; pWaitDstStageMask: *VkPipelineStageFlags; commandBufferCount: u32; pCommandBuffers: *VkCommandBuffer; signalSemaphoreCount: u32; pSignalSemaphores: *VkSemaphore; } VkMappedMemoryRange :: struct { sType: VkStructureType; pNext: *void; memory: VkDeviceMemory; offset: VkDeviceSize; size: VkDeviceSize; } VkMemoryAllocateInfo :: struct { sType: VkStructureType; pNext: *void; allocationSize: VkDeviceSize; memoryTypeIndex: u32; } VkMemoryRequirements :: struct { size: VkDeviceSize; alignment: VkDeviceSize; memoryTypeBits: u32; } VkSparseMemoryBind :: struct { resourceOffset: VkDeviceSize; size: VkDeviceSize; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; flags: VkSparseMemoryBindFlags; } VkSparseBufferMemoryBindInfo :: struct { buffer: VkBuffer; bindCount: u32; pBinds: *VkSparseMemoryBind; } VkSparseImageOpaqueMemoryBindInfo :: struct { image: VkImage; bindCount: u32; pBinds: *VkSparseMemoryBind; } VkImageSubresource :: struct { aspectMask: VkImageAspectFlags; mipLevel: u32; arrayLayer: u32; } VkSparseImageMemoryBind :: struct { subresource: VkImageSubresource; offset: VkOffset3D; extent: VkExtent3D; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; flags: VkSparseMemoryBindFlags; } VkSparseImageMemoryBindInfo :: struct { image: VkImage; bindCount: u32; pBinds: *VkSparseImageMemoryBind; } VkBindSparseInfo :: struct { sType: VkStructureType; pNext: *void; waitSemaphoreCount: u32; pWaitSemaphores: *VkSemaphore; bufferBindCount: u32; pBufferBinds: *VkSparseBufferMemoryBindInfo; imageOpaqueBindCount: u32; pImageOpaqueBinds: *VkSparseImageOpaqueMemoryBindInfo; imageBindCount: u32; pImageBinds: *VkSparseImageMemoryBindInfo; signalSemaphoreCount: u32; pSignalSemaphores: *VkSemaphore; } VkSparseImageFormatProperties :: struct { aspectMask: VkImageAspectFlags; imageGranularity: VkExtent3D; flags: VkSparseImageFormatFlags; } VkSparseImageMemoryRequirements :: struct { formatProperties: VkSparseImageFormatProperties; imageMipTailFirstLod: u32; imageMipTailSize: VkDeviceSize; imageMipTailOffset: VkDeviceSize; imageMipTailStride: VkDeviceSize; } VkFenceCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkFenceCreateFlags; } VkSemaphoreCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkSemaphoreCreateFlags; } VkEventCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkEventCreateFlags; } VkQueryPoolCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkQueryPoolCreateFlags; queryType: VkQueryType; queryCount: u32; pipelineStatistics: VkQueryPipelineStatisticFlags; } VkBufferCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkBufferCreateFlags; size: VkDeviceSize; usage: VkBufferUsageFlags; sharingMode: VkSharingMode; queueFamilyIndexCount: u32; pQueueFamilyIndices: *u32; } VkBufferViewCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkBufferViewCreateFlags; buffer: VkBuffer; format: VkFormat; offset: VkDeviceSize; range: VkDeviceSize; } VkImageCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkImageCreateFlags; imageType: VkImageType; format: VkFormat; extent: VkExtent3D; mipLevels: u32; arrayLayers: u32; samples: VkSampleCountFlagBits; tiling: VkImageTiling; usage: VkImageUsageFlags; sharingMode: VkSharingMode; queueFamilyIndexCount: u32; pQueueFamilyIndices: *u32; initialLayout: VkImageLayout; } VkSubresourceLayout :: struct { offset: VkDeviceSize; size: VkDeviceSize; rowPitch: VkDeviceSize; arrayPitch: VkDeviceSize; depthPitch: VkDeviceSize; } VkComponentMapping :: struct { r: VkComponentSwizzle; g: VkComponentSwizzle; b: VkComponentSwizzle; a: VkComponentSwizzle; } VkImageViewCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkImageViewCreateFlags; image: VkImage; viewType: VkImageViewType; format: VkFormat; components: VkComponentMapping; subresourceRange: VkImageSubresourceRange; } VkShaderModuleCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkShaderModuleCreateFlags; codeSize: u64; pCode: *u32; } VkPipelineCacheCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCacheCreateFlags; initialDataSize: u64; pInitialData: *void; } VkSpecializationMapEntry :: struct { constantID: u32; offset: u32; size: u64; } VkSpecializationInfo :: struct { mapEntryCount: u32; pMapEntries: *VkSpecializationMapEntry; dataSize: u64; pData: *void; } VkPipelineShaderStageCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineShaderStageCreateFlags; stage: VkShaderStageFlagBits; module: VkShaderModule; pName: *u8; pSpecializationInfo: *VkSpecializationInfo; } VkComputePipelineCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCreateFlags; stage: VkPipelineShaderStageCreateInfo; layout: VkPipelineLayout; basePipelineHandle: VkPipeline; basePipelineIndex: s32; } VkVertexInputBindingDescription :: struct { binding: u32; stride: u32; inputRate: VkVertexInputRate; } VkVertexInputAttributeDescription :: struct { location: u32; binding: u32; format: VkFormat; offset: u32; } VkPipelineVertexInputStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineVertexInputStateCreateFlags; vertexBindingDescriptionCount: u32; pVertexBindingDescriptions: *VkVertexInputBindingDescription; vertexAttributeDescriptionCount: u32; pVertexAttributeDescriptions: *VkVertexInputAttributeDescription; } VkPipelineInputAssemblyStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineInputAssemblyStateCreateFlags; topology: VkPrimitiveTopology; primitiveRestartEnable: VkBool32; } VkPipelineTessellationStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineTessellationStateCreateFlags; patchControlPoints: u32; } VkViewport :: struct { x: float; y: float; width: float; height: float; minDepth: float; maxDepth: float; } VkPipelineViewportStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineViewportStateCreateFlags; viewportCount: u32; pViewports: *VkViewport; scissorCount: u32; pScissors: *VkRect2D; } VkPipelineRasterizationStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineRasterizationStateCreateFlags; depthClampEnable: VkBool32; rasterizerDiscardEnable: VkBool32; polygonMode: VkPolygonMode; cullMode: VkCullModeFlags; frontFace: VkFrontFace; depthBiasEnable: VkBool32; depthBiasConstantFactor: float; depthBiasClamp: float; depthBiasSlopeFactor: float; lineWidth: float; } VkPipelineMultisampleStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineMultisampleStateCreateFlags; rasterizationSamples: VkSampleCountFlagBits; sampleShadingEnable: VkBool32; minSampleShading: float; pSampleMask: *VkSampleMask; alphaToCoverageEnable: VkBool32; alphaToOneEnable: VkBool32; } VkStencilOpState :: struct { failOp: VkStencilOp; passOp: VkStencilOp; depthFailOp: VkStencilOp; compareOp: VkCompareOp; compareMask: u32; writeMask: u32; reference: u32; } VkPipelineDepthStencilStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineDepthStencilStateCreateFlags; depthTestEnable: VkBool32; depthWriteEnable: VkBool32; depthCompareOp: VkCompareOp; depthBoundsTestEnable: VkBool32; stencilTestEnable: VkBool32; front: VkStencilOpState; back: VkStencilOpState; minDepthBounds: float; maxDepthBounds: float; } VkPipelineColorBlendAttachmentState :: struct { blendEnable: VkBool32; srcColorBlendFactor: VkBlendFactor; dstColorBlendFactor: VkBlendFactor; colorBlendOp: VkBlendOp; srcAlphaBlendFactor: VkBlendFactor; dstAlphaBlendFactor: VkBlendFactor; alphaBlendOp: VkBlendOp; colorWriteMask: VkColorComponentFlags; } VkPipelineColorBlendStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineColorBlendStateCreateFlags; logicOpEnable: VkBool32; logicOp: VkLogicOp; attachmentCount: u32; pAttachments: *VkPipelineColorBlendAttachmentState; blendConstants: [4] float; } VkPipelineDynamicStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineDynamicStateCreateFlags; dynamicStateCount: u32; pDynamicStates: *VkDynamicState; } VkGraphicsPipelineCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCreateFlags; stageCount: u32; pStages: *VkPipelineShaderStageCreateInfo; pVertexInputState: *VkPipelineVertexInputStateCreateInfo; pInputAssemblyState: *VkPipelineInputAssemblyStateCreateInfo; pTessellationState: *VkPipelineTessellationStateCreateInfo; pViewportState: *VkPipelineViewportStateCreateInfo; pRasterizationState: *VkPipelineRasterizationStateCreateInfo; pMultisampleState: *VkPipelineMultisampleStateCreateInfo; pDepthStencilState: *VkPipelineDepthStencilStateCreateInfo; pColorBlendState: *VkPipelineColorBlendStateCreateInfo; pDynamicState: *VkPipelineDynamicStateCreateInfo; layout: VkPipelineLayout; renderPass: VkRenderPass; subpass: u32; basePipelineHandle: VkPipeline; basePipelineIndex: s32; } VkPushConstantRange :: struct { stageFlags: VkShaderStageFlags; offset: u32; size: u32; } VkPipelineLayoutCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineLayoutCreateFlags; setLayoutCount: u32; pSetLayouts: *VkDescriptorSetLayout; pushConstantRangeCount: u32; pPushConstantRanges: *VkPushConstantRange; } VkSamplerCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkSamplerCreateFlags; magFilter: VkFilter; minFilter: VkFilter; mipmapMode: VkSamplerMipmapMode; addressModeU: VkSamplerAddressMode; addressModeV: VkSamplerAddressMode; addressModeW: VkSamplerAddressMode; mipLodBias: float; anisotropyEnable: VkBool32; maxAnisotropy: float; compareEnable: VkBool32; compareOp: VkCompareOp; minLod: float; maxLod: float; borderColor: VkBorderColor; unnormalizedCoordinates: VkBool32; } VkCopyDescriptorSet :: struct { sType: VkStructureType; pNext: *void; srcSet: VkDescriptorSet; srcBinding: u32; srcArrayElement: u32; dstSet: VkDescriptorSet; dstBinding: u32; dstArrayElement: u32; descriptorCount: u32; } VkDescriptorBufferInfo :: struct { buffer: VkBuffer; offset: VkDeviceSize; range: VkDeviceSize; } VkDescriptorImageInfo :: struct { sampler: VkSampler; imageView: VkImageView; imageLayout: VkImageLayout; } VkDescriptorPoolSize :: struct { type: VkDescriptorType; descriptorCount: u32; } VkDescriptorPoolCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkDescriptorPoolCreateFlags; maxSets: u32; poolSizeCount: u32; pPoolSizes: *VkDescriptorPoolSize; } VkDescriptorSetAllocateInfo :: struct { sType: VkStructureType; pNext: *void; descriptorPool: VkDescriptorPool; descriptorSetCount: u32; pSetLayouts: *VkDescriptorSetLayout; } VkDescriptorSetLayoutBinding :: struct { binding: u32; descriptorType: VkDescriptorType; descriptorCount: u32; stageFlags: VkShaderStageFlags; pImmutableSamplers: *VkSampler; } VkDescriptorSetLayoutCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkDescriptorSetLayoutCreateFlags; bindingCount: u32; pBindings: *VkDescriptorSetLayoutBinding; } VkWriteDescriptorSet :: struct { sType: VkStructureType; pNext: *void; dstSet: VkDescriptorSet; dstBinding: u32; dstArrayElement: u32; descriptorCount: u32; descriptorType: VkDescriptorType; pImageInfo: *VkDescriptorImageInfo; pBufferInfo: *VkDescriptorBufferInfo; pTexelBufferView: *VkBufferView; } VkAttachmentDescription :: struct { flags: VkAttachmentDescriptionFlags; format: VkFormat; samples: VkSampleCountFlagBits; loadOp: VkAttachmentLoadOp; storeOp: VkAttachmentStoreOp; stencilLoadOp: VkAttachmentLoadOp; stencilStoreOp: VkAttachmentStoreOp; initialLayout: VkImageLayout; finalLayout: VkImageLayout; } VkAttachmentReference :: struct { attachment: u32; layout: VkImageLayout; } VkFramebufferCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkFramebufferCreateFlags; renderPass: VkRenderPass; attachmentCount: u32; pAttachments: *VkImageView; width: u32; height: u32; layers: u32; } VkSubpassDescription :: struct { flags: VkSubpassDescriptionFlags; pipelineBindPoint: VkPipelineBindPoint; inputAttachmentCount: u32; pInputAttachments: *VkAttachmentReference; colorAttachmentCount: u32; pColorAttachments: *VkAttachmentReference; pResolveAttachments: *VkAttachmentReference; pDepthStencilAttachment: *VkAttachmentReference; preserveAttachmentCount: u32; pPreserveAttachments: *u32; } VkSubpassDependency :: struct { srcSubpass: u32; dstSubpass: u32; srcStageMask: VkPipelineStageFlags; dstStageMask: VkPipelineStageFlags; srcAccessMask: VkAccessFlags; dstAccessMask: VkAccessFlags; dependencyFlags: VkDependencyFlags; } VkRenderPassCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkRenderPassCreateFlags; attachmentCount: u32; pAttachments: *VkAttachmentDescription; subpassCount: u32; pSubpasses: *VkSubpassDescription; dependencyCount: u32; pDependencies: *VkSubpassDependency; } VkCommandPoolCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkCommandPoolCreateFlags; queueFamilyIndex: u32; } VkCommandBufferAllocateInfo :: struct { sType: VkStructureType; pNext: *void; commandPool: VkCommandPool; level: VkCommandBufferLevel; commandBufferCount: u32; } VkCommandBufferInheritanceInfo :: struct { sType: VkStructureType; pNext: *void; renderPass: VkRenderPass; subpass: u32; framebuffer: VkFramebuffer; occlusionQueryEnable: VkBool32; queryFlags: VkQueryControlFlags; pipelineStatistics: VkQueryPipelineStatisticFlags; } VkCommandBufferBeginInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkCommandBufferUsageFlags; pInheritanceInfo: *VkCommandBufferInheritanceInfo; } VkBufferCopy :: struct { srcOffset: VkDeviceSize; dstOffset: VkDeviceSize; size: VkDeviceSize; } VkImageSubresourceLayers :: struct { aspectMask: VkImageAspectFlags; mipLevel: u32; baseArrayLayer: u32; layerCount: u32; } VkBufferImageCopy :: struct { bufferOffset: VkDeviceSize; bufferRowLength: u32; bufferImageHeight: u32; imageSubresource: VkImageSubresourceLayers; imageOffset: VkOffset3D; imageExtent: VkExtent3D; } VkClearColorValue :: union { _float32: [4] float; int32: [4] s32; uint32: [4] u32; } VkClearDepthStencilValue :: struct { depth: float; stencil: u32; } VkClearValue :: union { color: VkClearColorValue; depthStencil: VkClearDepthStencilValue; } VkClearAttachment :: struct { aspectMask: VkImageAspectFlags; colorAttachment: u32; clearValue: VkClearValue; } VkClearRect :: struct { rect: VkRect2D; baseArrayLayer: u32; layerCount: u32; } VkImageBlit :: struct { srcSubresource: VkImageSubresourceLayers; srcOffsets: [2] VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffsets: [2] VkOffset3D; } VkImageCopy :: struct { srcSubresource: VkImageSubresourceLayers; srcOffset: VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffset: VkOffset3D; extent: VkExtent3D; } VkImageResolve :: struct { srcSubresource: VkImageSubresourceLayers; srcOffset: VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffset: VkOffset3D; extent: VkExtent3D; } VkRenderPassBeginInfo :: struct { sType: VkStructureType; pNext: *void; renderPass: VkRenderPass; framebuffer: VkFramebuffer; renderArea: VkRect2D; clearValueCount: u32; pClearValues: *VkClearValue; } PFN_vkCreateInstance :: #type (pCreateInfo: *VkInstanceCreateInfo, pAllocator: *VkAllocationCallbacks, pInstance: *VkInstance) -> VkResult #c_call; PFN_vkDestroyInstance :: #type (instance: VkInstance, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkEnumeratePhysicalDevices :: #type (instance: VkInstance, pPhysicalDeviceCount: *u32, pPhysicalDevices: *VkPhysicalDevice) -> VkResult #c_call; PFN_vkGetPhysicalDeviceFeatures :: #type (physicalDevice: VkPhysicalDevice, pFeatures: *VkPhysicalDeviceFeatures) -> void #c_call; PFN_vkGetPhysicalDeviceFormatProperties :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: *VkFormatProperties) -> void #c_call; PFN_vkGetPhysicalDeviceImageFormatProperties :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, type: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: *VkImageFormatProperties) -> VkResult #c_call; PFN_vkGetPhysicalDeviceProperties :: #type (physicalDevice: VkPhysicalDevice, pProperties: *VkPhysicalDeviceProperties) -> void #c_call; PFN_vkGetPhysicalDeviceQueueFamilyProperties :: #type (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: *u32, pQueueFamilyProperties: *VkQueueFamilyProperties) -> void #c_call; PFN_vkGetPhysicalDeviceMemoryProperties :: #type (physicalDevice: VkPhysicalDevice, pMemoryProperties: *VkPhysicalDeviceMemoryProperties) -> void #c_call; PFN_vkGetInstanceProcAddr :: #type (instance: VkInstance, pName: *u8) -> PFN_vkVoidFunction #c_call; PFN_vkGetDeviceProcAddr :: #type (device: VkDevice, pName: *u8) -> PFN_vkVoidFunction #c_call; PFN_vkCreateDevice :: #type (physicalDevice: VkPhysicalDevice, pCreateInfo: *VkDeviceCreateInfo, pAllocator: *VkAllocationCallbacks, pDevice: *VkDevice) -> VkResult #c_call; PFN_vkDestroyDevice :: #type (device: VkDevice, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkEnumerateInstanceExtensionProperties :: #type (pLayerName: *u8, pPropertyCount: *u32, pProperties: *VkExtensionProperties) -> VkResult #c_call; PFN_vkEnumerateDeviceExtensionProperties :: #type (physicalDevice: VkPhysicalDevice, pLayerName: *u8, pPropertyCount: *u32, pProperties: *VkExtensionProperties) -> VkResult #c_call; PFN_vkEnumerateInstanceLayerProperties :: #type (pPropertyCount: *u32, pProperties: *VkLayerProperties) -> VkResult #c_call; PFN_vkEnumerateDeviceLayerProperties :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkLayerProperties) -> VkResult #c_call; PFN_vkGetDeviceQueue :: #type (device: VkDevice, queueFamilyIndex: u32, queueIndex: u32, pQueue: *VkQueue) -> void #c_call; PFN_vkQueueSubmit :: #type (queue: VkQueue, submitCount: u32, pSubmits: *VkSubmitInfo, fence: VkFence) -> VkResult #c_call; PFN_vkQueueWaitIdle :: #type (queue: VkQueue) -> VkResult #c_call; PFN_vkDeviceWaitIdle :: #type (device: VkDevice) -> VkResult #c_call; PFN_vkAllocateMemory :: #type (device: VkDevice, pAllocateInfo: *VkMemoryAllocateInfo, pAllocator: *VkAllocationCallbacks, pMemory: *VkDeviceMemory) -> VkResult #c_call; PFN_vkFreeMemory :: #type (device: VkDevice, memory: VkDeviceMemory, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkMapMemory :: #type (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: **void) -> VkResult #c_call; PFN_vkUnmapMemory :: #type (device: VkDevice, memory: VkDeviceMemory) -> void #c_call; PFN_vkFlushMappedMemoryRanges :: #type (device: VkDevice, memoryRangeCount: u32, pMemoryRanges: *VkMappedMemoryRange) -> VkResult #c_call; PFN_vkInvalidateMappedMemoryRanges :: #type (device: VkDevice, memoryRangeCount: u32, pMemoryRanges: *VkMappedMemoryRange) -> VkResult #c_call; PFN_vkGetDeviceMemoryCommitment :: #type (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: *VkDeviceSize) -> void #c_call; PFN_vkBindBufferMemory :: #type (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize) -> VkResult #c_call; PFN_vkBindImageMemory :: #type (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize) -> VkResult #c_call; PFN_vkGetBufferMemoryRequirements :: #type (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: *VkMemoryRequirements) -> void #c_call; PFN_vkGetImageMemoryRequirements :: #type (device: VkDevice, image: VkImage, pMemoryRequirements: *VkMemoryRequirements) -> void #c_call; PFN_vkGetImageSparseMemoryRequirements :: #type (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements) -> void #c_call; PFN_vkGetPhysicalDeviceSparseImageFormatProperties :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, type: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: *u32, pProperties: *VkSparseImageFormatProperties) -> void #c_call; PFN_vkQueueBindSparse :: #type (queue: VkQueue, bindInfoCount: u32, pBindInfo: *VkBindSparseInfo, fence: VkFence) -> VkResult #c_call; PFN_vkCreateFence :: #type (device: VkDevice, pCreateInfo: *VkFenceCreateInfo, pAllocator: *VkAllocationCallbacks, pFence: *VkFence) -> VkResult #c_call; PFN_vkDestroyFence :: #type (device: VkDevice, fence: VkFence, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkResetFences :: #type (device: VkDevice, fenceCount: u32, pFences: *VkFence) -> VkResult #c_call; PFN_vkGetFenceStatus :: #type (device: VkDevice, fence: VkFence) -> VkResult #c_call; PFN_vkWaitForFences :: #type (device: VkDevice, fenceCount: u32, pFences: *VkFence, waitAll: VkBool32, timeout: u64) -> VkResult #c_call; PFN_vkCreateSemaphore :: #type (device: VkDevice, pCreateInfo: *VkSemaphoreCreateInfo, pAllocator: *VkAllocationCallbacks, pSemaphore: *VkSemaphore) -> VkResult #c_call; PFN_vkDestroySemaphore :: #type (device: VkDevice, semaphore: VkSemaphore, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateEvent :: #type (device: VkDevice, pCreateInfo: *VkEventCreateInfo, pAllocator: *VkAllocationCallbacks, pEvent: *VkEvent) -> VkResult #c_call; PFN_vkDestroyEvent :: #type (device: VkDevice, event: VkEvent, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetEventStatus :: #type (device: VkDevice, event: VkEvent) -> VkResult #c_call; PFN_vkSetEvent :: #type (device: VkDevice, event: VkEvent) -> VkResult #c_call; PFN_vkResetEvent :: #type (device: VkDevice, event: VkEvent) -> VkResult #c_call; PFN_vkCreateQueryPool :: #type (device: VkDevice, pCreateInfo: *VkQueryPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pQueryPool: *VkQueryPool) -> VkResult #c_call; PFN_vkDestroyQueryPool :: #type (device: VkDevice, queryPool: VkQueryPool, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetQueryPoolResults :: #type (device: VkDevice, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32, dataSize: u64, pData: *void, stride: VkDeviceSize, flags: VkQueryResultFlags) -> VkResult #c_call; PFN_vkCreateBuffer :: #type (device: VkDevice, pCreateInfo: *VkBufferCreateInfo, pAllocator: *VkAllocationCallbacks, pBuffer: *VkBuffer) -> VkResult #c_call; PFN_vkDestroyBuffer :: #type (device: VkDevice, buffer: VkBuffer, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateBufferView :: #type (device: VkDevice, pCreateInfo: *VkBufferViewCreateInfo, pAllocator: *VkAllocationCallbacks, pView: *VkBufferView) -> VkResult #c_call; PFN_vkDestroyBufferView :: #type (device: VkDevice, bufferView: VkBufferView, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateImage :: #type (device: VkDevice, pCreateInfo: *VkImageCreateInfo, pAllocator: *VkAllocationCallbacks, pImage: *VkImage) -> VkResult #c_call; PFN_vkDestroyImage :: #type (device: VkDevice, image: VkImage, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetImageSubresourceLayout :: #type (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource, pLayout: *VkSubresourceLayout) -> void #c_call; PFN_vkCreateImageView :: #type (device: VkDevice, pCreateInfo: *VkImageViewCreateInfo, pAllocator: *VkAllocationCallbacks, pView: *VkImageView) -> VkResult #c_call; PFN_vkDestroyImageView :: #type (device: VkDevice, imageView: VkImageView, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateShaderModule :: #type (device: VkDevice, pCreateInfo: *VkShaderModuleCreateInfo, pAllocator: *VkAllocationCallbacks, pShaderModule: *VkShaderModule) -> VkResult #c_call; PFN_vkDestroyShaderModule :: #type (device: VkDevice, shaderModule: VkShaderModule, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreatePipelineCache :: #type (device: VkDevice, pCreateInfo: *VkPipelineCacheCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelineCache: *VkPipelineCache) -> VkResult #c_call; PFN_vkDestroyPipelineCache :: #type (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetPipelineCacheData :: #type (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: *u64, pData: *void) -> VkResult #c_call; PFN_vkMergePipelineCaches :: #type (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: u32, pSrcCaches: *VkPipelineCache) -> VkResult #c_call; PFN_vkCreateGraphicsPipelines :: #type (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkGraphicsPipelineCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #c_call; PFN_vkCreateComputePipelines :: #type (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkComputePipelineCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #c_call; PFN_vkDestroyPipeline :: #type (device: VkDevice, pipeline: VkPipeline, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreatePipelineLayout :: #type (device: VkDevice, pCreateInfo: *VkPipelineLayoutCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelineLayout: *VkPipelineLayout) -> VkResult #c_call; PFN_vkDestroyPipelineLayout :: #type (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateSampler :: #type (device: VkDevice, pCreateInfo: *VkSamplerCreateInfo, pAllocator: *VkAllocationCallbacks, pSampler: *VkSampler) -> VkResult #c_call; PFN_vkDestroySampler :: #type (device: VkDevice, sampler: VkSampler, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateDescriptorSetLayout :: #type (device: VkDevice, pCreateInfo: *VkDescriptorSetLayoutCreateInfo, pAllocator: *VkAllocationCallbacks, pSetLayout: *VkDescriptorSetLayout) -> VkResult #c_call; PFN_vkDestroyDescriptorSetLayout :: #type (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateDescriptorPool :: #type (device: VkDevice, pCreateInfo: *VkDescriptorPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pDescriptorPool: *VkDescriptorPool) -> VkResult #c_call; PFN_vkDestroyDescriptorPool :: #type (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkResetDescriptorPool :: #type (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags) -> VkResult #c_call; PFN_vkAllocateDescriptorSets :: #type (device: VkDevice, pAllocateInfo: *VkDescriptorSetAllocateInfo, pDescriptorSets: *VkDescriptorSet) -> VkResult #c_call; PFN_vkFreeDescriptorSets :: #type (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: u32, pDescriptorSets: *VkDescriptorSet) -> VkResult #c_call; PFN_vkUpdateDescriptorSets :: #type (device: VkDevice, descriptorWriteCount: u32, pDescriptorWrites: *VkWriteDescriptorSet, descriptorCopyCount: u32, pDescriptorCopies: *VkCopyDescriptorSet) -> void #c_call; PFN_vkCreateFramebuffer :: #type (device: VkDevice, pCreateInfo: *VkFramebufferCreateInfo, pAllocator: *VkAllocationCallbacks, pFramebuffer: *VkFramebuffer) -> VkResult #c_call; PFN_vkDestroyFramebuffer :: #type (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateRenderPass :: #type (device: VkDevice, pCreateInfo: *VkRenderPassCreateInfo, pAllocator: *VkAllocationCallbacks, pRenderPass: *VkRenderPass) -> VkResult #c_call; PFN_vkDestroyRenderPass :: #type (device: VkDevice, renderPass: VkRenderPass, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetRenderAreaGranularity :: #type (device: VkDevice, renderPass: VkRenderPass, pGranularity: *VkExtent2D) -> void #c_call; PFN_vkCreateCommandPool :: #type (device: VkDevice, pCreateInfo: *VkCommandPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pCommandPool: *VkCommandPool) -> VkResult #c_call; PFN_vkDestroyCommandPool :: #type (device: VkDevice, commandPool: VkCommandPool, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkResetCommandPool :: #type (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags) -> VkResult #c_call; PFN_vkAllocateCommandBuffers :: #type (device: VkDevice, pAllocateInfo: *VkCommandBufferAllocateInfo, pCommandBuffers: *VkCommandBuffer) -> VkResult #c_call; PFN_vkFreeCommandBuffers :: #type (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: u32, pCommandBuffers: *VkCommandBuffer) -> void #c_call; PFN_vkBeginCommandBuffer :: #type (commandBuffer: VkCommandBuffer, pBeginInfo: *VkCommandBufferBeginInfo) -> VkResult #c_call; PFN_vkEndCommandBuffer :: #type (commandBuffer: VkCommandBuffer) -> VkResult #c_call; PFN_vkResetCommandBuffer :: #type (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags) -> VkResult #c_call; PFN_vkCmdBindPipeline :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) -> void #c_call; PFN_vkCmdSetViewport :: #type (commandBuffer: VkCommandBuffer, firstViewport: u32, viewportCount: u32, pViewports: *VkViewport) -> void #c_call; PFN_vkCmdSetScissor :: #type (commandBuffer: VkCommandBuffer, firstScissor: u32, scissorCount: u32, pScissors: *VkRect2D) -> void #c_call; PFN_vkCmdSetLineWidth :: #type (commandBuffer: VkCommandBuffer, lineWidth: float) -> void #c_call; PFN_vkCmdSetDepthBias :: #type (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float, depthBiasClamp: float, depthBiasSlopeFactor: float) -> void #c_call; PFN_vkCmdSetBlendConstants :: #type (commandBuffer: VkCommandBuffer, blendConstants: *[4] float) -> void #c_call; PFN_vkCmdSetDepthBounds :: #type (commandBuffer: VkCommandBuffer, minDepthBounds: float, maxDepthBounds: float) -> void #c_call; PFN_vkCmdSetStencilCompareMask :: #type (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: u32) -> void #c_call; PFN_vkCmdSetStencilWriteMask :: #type (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: u32) -> void #c_call; PFN_vkCmdSetStencilReference :: #type (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: u32) -> void #c_call; PFN_vkCmdBindDescriptorSets :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: u32, descriptorSetCount: u32, pDescriptorSets: *VkDescriptorSet, dynamicOffsetCount: u32, pDynamicOffsets: *u32) -> void #c_call; PFN_vkCmdBindIndexBuffer :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType) -> void #c_call; PFN_vkCmdBindVertexBuffers :: #type (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize) -> void #c_call; PFN_vkCmdDraw :: #type (commandBuffer: VkCommandBuffer, vertexCount: u32, instanceCount: u32, firstVertex: u32, firstInstance: u32) -> void #c_call; PFN_vkCmdDrawIndexed :: #type (commandBuffer: VkCommandBuffer, indexCount: u32, instanceCount: u32, firstIndex: u32, vertexOffset: s32, firstInstance: u32) -> void #c_call; PFN_vkCmdDrawIndirect :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawIndexedIndirect :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDispatch :: #type (commandBuffer: VkCommandBuffer, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #c_call; PFN_vkCmdDispatchIndirect :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) -> void #c_call; PFN_vkCmdCopyBuffer :: #type (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: u32, pRegions: *VkBufferCopy) -> void #c_call; PFN_vkCmdCopyImage :: #type (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageCopy) -> void #c_call; PFN_vkCmdBlitImage :: #type (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageBlit, filter: VkFilter) -> void #c_call; PFN_vkCmdCopyBufferToImage :: #type (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkBufferImageCopy) -> void #c_call; PFN_vkCmdCopyImageToBuffer :: #type (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: u32, pRegions: *VkBufferImageCopy) -> void #c_call; PFN_vkCmdUpdateBuffer :: #type (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: *void) -> void #c_call; PFN_vkCmdFillBuffer :: #type (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: u32) -> void #c_call; PFN_vkCmdClearColorImage :: #type (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: *VkClearColorValue, rangeCount: u32, pRanges: *VkImageSubresourceRange) -> void #c_call; PFN_vkCmdClearDepthStencilImage :: #type (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: *VkClearDepthStencilValue, rangeCount: u32, pRanges: *VkImageSubresourceRange) -> void #c_call; PFN_vkCmdClearAttachments :: #type (commandBuffer: VkCommandBuffer, attachmentCount: u32, pAttachments: *VkClearAttachment, rectCount: u32, pRects: *VkClearRect) -> void #c_call; PFN_vkCmdResolveImage :: #type (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageResolve) -> void #c_call; PFN_vkCmdSetEvent :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) -> void #c_call; PFN_vkCmdResetEvent :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) -> void #c_call; PFN_vkCmdWaitEvents :: #type (commandBuffer: VkCommandBuffer, eventCount: u32, pEvents: *VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: u32, pMemoryBarriers: *VkMemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: *VkBufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: *VkImageMemoryBarrier) -> void #c_call; PFN_vkCmdPipelineBarrier :: #type (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: u32, pMemoryBarriers: *VkMemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: *VkBufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: *VkImageMemoryBarrier) -> void #c_call; PFN_vkCmdBeginQuery :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32, flags: VkQueryControlFlags) -> void #c_call; PFN_vkCmdEndQuery :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32) -> void #c_call; PFN_vkCmdResetQueryPool :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32) -> void #c_call; PFN_vkCmdWriteTimestamp :: #type (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: u32) -> void #c_call; PFN_vkCmdCopyQueryPoolResults :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags) -> void #c_call; PFN_vkCmdPushConstants :: #type (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: u32, size: u32, pValues: *void) -> void #c_call; PFN_vkCmdBeginRenderPass :: #type (commandBuffer: VkCommandBuffer, pRenderPassBegin: *VkRenderPassBeginInfo, contents: VkSubpassContents) -> void #c_call; PFN_vkCmdNextSubpass :: #type (commandBuffer: VkCommandBuffer, contents: VkSubpassContents) -> void #c_call; PFN_vkCmdEndRenderPass :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdExecuteCommands :: #type (commandBuffer: VkCommandBuffer, commandBufferCount: u32, pCommandBuffers: *VkCommandBuffer) -> void #c_call; vkCreateInstance :: (pCreateInfo: *VkInstanceCreateInfo, pAllocator: *VkAllocationCallbacks, pInstance: *VkInstance) -> VkResult #foreign libvulkan; vkDestroyInstance :: (instance: VkInstance, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkEnumeratePhysicalDevices :: (instance: VkInstance, pPhysicalDeviceCount: *u32, pPhysicalDevices: *VkPhysicalDevice) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceFeatures :: (physicalDevice: VkPhysicalDevice, pFeatures: *VkPhysicalDeviceFeatures) -> void #foreign libvulkan; vkGetPhysicalDeviceFormatProperties :: (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: *VkFormatProperties) -> void #foreign libvulkan; vkGetPhysicalDeviceImageFormatProperties :: (physicalDevice: VkPhysicalDevice, format: VkFormat, type: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, pImageFormatProperties: *VkImageFormatProperties) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceProperties :: (physicalDevice: VkPhysicalDevice, pProperties: *VkPhysicalDeviceProperties) -> void #foreign libvulkan; vkGetPhysicalDeviceQueueFamilyProperties :: (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: *u32, pQueueFamilyProperties: *VkQueueFamilyProperties) -> void #foreign libvulkan; vkGetPhysicalDeviceMemoryProperties :: (physicalDevice: VkPhysicalDevice, pMemoryProperties: *VkPhysicalDeviceMemoryProperties) -> void #foreign libvulkan; vkGetInstanceProcAddr :: (instance: VkInstance, pName: *u8) -> PFN_vkVoidFunction #foreign libvulkan; vkGetDeviceProcAddr :: (device: VkDevice, pName: *u8) -> PFN_vkVoidFunction #foreign libvulkan; vkCreateDevice :: (physicalDevice: VkPhysicalDevice, pCreateInfo: *VkDeviceCreateInfo, pAllocator: *VkAllocationCallbacks, pDevice: *VkDevice) -> VkResult #foreign libvulkan; vkDestroyDevice :: (device: VkDevice, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkEnumerateInstanceExtensionProperties :: (pLayerName: *u8, pPropertyCount: *u32, pProperties: *VkExtensionProperties) -> VkResult #foreign libvulkan; vkEnumerateDeviceExtensionProperties :: (physicalDevice: VkPhysicalDevice, pLayerName: *u8, pPropertyCount: *u32, pProperties: *VkExtensionProperties) -> VkResult #foreign libvulkan; vkEnumerateInstanceLayerProperties :: (pPropertyCount: *u32, pProperties: *VkLayerProperties) -> VkResult #foreign libvulkan; vkEnumerateDeviceLayerProperties :: (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkLayerProperties) -> VkResult #foreign libvulkan; vkGetDeviceQueue :: (device: VkDevice, queueFamilyIndex: u32, queueIndex: u32, pQueue: *VkQueue) -> void #foreign libvulkan; vkQueueSubmit :: (queue: VkQueue, submitCount: u32, pSubmits: *VkSubmitInfo, fence: VkFence) -> VkResult #foreign libvulkan; vkQueueWaitIdle :: (queue: VkQueue) -> VkResult #foreign libvulkan; vkDeviceWaitIdle :: (device: VkDevice) -> VkResult #foreign libvulkan; vkAllocateMemory :: (device: VkDevice, pAllocateInfo: *VkMemoryAllocateInfo, pAllocator: *VkAllocationCallbacks, pMemory: *VkDeviceMemory) -> VkResult #foreign libvulkan; vkFreeMemory :: (device: VkDevice, memory: VkDeviceMemory, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkMapMemory :: (device: VkDevice, memory: VkDeviceMemory, offset: VkDeviceSize, size: VkDeviceSize, flags: VkMemoryMapFlags, ppData: **void) -> VkResult #foreign libvulkan; vkUnmapMemory :: (device: VkDevice, memory: VkDeviceMemory) -> void #foreign libvulkan; vkFlushMappedMemoryRanges :: (device: VkDevice, memoryRangeCount: u32, pMemoryRanges: *VkMappedMemoryRange) -> VkResult #foreign libvulkan; vkInvalidateMappedMemoryRanges :: (device: VkDevice, memoryRangeCount: u32, pMemoryRanges: *VkMappedMemoryRange) -> VkResult #foreign libvulkan; vkGetDeviceMemoryCommitment :: (device: VkDevice, memory: VkDeviceMemory, pCommittedMemoryInBytes: *VkDeviceSize) -> void #foreign libvulkan; vkBindBufferMemory :: (device: VkDevice, buffer: VkBuffer, memory: VkDeviceMemory, memoryOffset: VkDeviceSize) -> VkResult #foreign libvulkan; vkBindImageMemory :: (device: VkDevice, image: VkImage, memory: VkDeviceMemory, memoryOffset: VkDeviceSize) -> VkResult #foreign libvulkan; vkGetBufferMemoryRequirements :: (device: VkDevice, buffer: VkBuffer, pMemoryRequirements: *VkMemoryRequirements) -> void #foreign libvulkan; vkGetImageMemoryRequirements :: (device: VkDevice, image: VkImage, pMemoryRequirements: *VkMemoryRequirements) -> void #foreign libvulkan; vkGetImageSparseMemoryRequirements :: (device: VkDevice, image: VkImage, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements) -> void #foreign libvulkan; vkGetPhysicalDeviceSparseImageFormatProperties :: (physicalDevice: VkPhysicalDevice, format: VkFormat, type: VkImageType, samples: VkSampleCountFlagBits, usage: VkImageUsageFlags, tiling: VkImageTiling, pPropertyCount: *u32, pProperties: *VkSparseImageFormatProperties) -> void #foreign libvulkan; vkQueueBindSparse :: (queue: VkQueue, bindInfoCount: u32, pBindInfo: *VkBindSparseInfo, fence: VkFence) -> VkResult #foreign libvulkan; vkCreateFence :: (device: VkDevice, pCreateInfo: *VkFenceCreateInfo, pAllocator: *VkAllocationCallbacks, pFence: *VkFence) -> VkResult #foreign libvulkan; vkDestroyFence :: (device: VkDevice, fence: VkFence, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkResetFences :: (device: VkDevice, fenceCount: u32, pFences: *VkFence) -> VkResult #foreign libvulkan; vkGetFenceStatus :: (device: VkDevice, fence: VkFence) -> VkResult #foreign libvulkan; vkWaitForFences :: (device: VkDevice, fenceCount: u32, pFences: *VkFence, waitAll: VkBool32, timeout: u64) -> VkResult #foreign libvulkan; vkCreateSemaphore :: (device: VkDevice, pCreateInfo: *VkSemaphoreCreateInfo, pAllocator: *VkAllocationCallbacks, pSemaphore: *VkSemaphore) -> VkResult #foreign libvulkan; vkDestroySemaphore :: (device: VkDevice, semaphore: VkSemaphore, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateEvent :: (device: VkDevice, pCreateInfo: *VkEventCreateInfo, pAllocator: *VkAllocationCallbacks, pEvent: *VkEvent) -> VkResult #foreign libvulkan; vkDestroyEvent :: (device: VkDevice, event: VkEvent, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetEventStatus :: (device: VkDevice, event: VkEvent) -> VkResult #foreign libvulkan; vkSetEvent :: (device: VkDevice, event: VkEvent) -> VkResult #foreign libvulkan; vkResetEvent :: (device: VkDevice, event: VkEvent) -> VkResult #foreign libvulkan; vkCreateQueryPool :: (device: VkDevice, pCreateInfo: *VkQueryPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pQueryPool: *VkQueryPool) -> VkResult #foreign libvulkan; vkDestroyQueryPool :: (device: VkDevice, queryPool: VkQueryPool, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetQueryPoolResults :: (device: VkDevice, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32, dataSize: u64, pData: *void, stride: VkDeviceSize, flags: VkQueryResultFlags) -> VkResult #foreign libvulkan; vkCreateBuffer :: (device: VkDevice, pCreateInfo: *VkBufferCreateInfo, pAllocator: *VkAllocationCallbacks, pBuffer: *VkBuffer) -> VkResult #foreign libvulkan; vkDestroyBuffer :: (device: VkDevice, buffer: VkBuffer, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateBufferView :: (device: VkDevice, pCreateInfo: *VkBufferViewCreateInfo, pAllocator: *VkAllocationCallbacks, pView: *VkBufferView) -> VkResult #foreign libvulkan; vkDestroyBufferView :: (device: VkDevice, bufferView: VkBufferView, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateImage :: (device: VkDevice, pCreateInfo: *VkImageCreateInfo, pAllocator: *VkAllocationCallbacks, pImage: *VkImage) -> VkResult #foreign libvulkan; vkDestroyImage :: (device: VkDevice, image: VkImage, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetImageSubresourceLayout :: (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource, pLayout: *VkSubresourceLayout) -> void #foreign libvulkan; vkCreateImageView :: (device: VkDevice, pCreateInfo: *VkImageViewCreateInfo, pAllocator: *VkAllocationCallbacks, pView: *VkImageView) -> VkResult #foreign libvulkan; vkDestroyImageView :: (device: VkDevice, imageView: VkImageView, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateShaderModule :: (device: VkDevice, pCreateInfo: *VkShaderModuleCreateInfo, pAllocator: *VkAllocationCallbacks, pShaderModule: *VkShaderModule) -> VkResult #foreign libvulkan; vkDestroyShaderModule :: (device: VkDevice, shaderModule: VkShaderModule, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreatePipelineCache :: (device: VkDevice, pCreateInfo: *VkPipelineCacheCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelineCache: *VkPipelineCache) -> VkResult #foreign libvulkan; vkDestroyPipelineCache :: (device: VkDevice, pipelineCache: VkPipelineCache, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetPipelineCacheData :: (device: VkDevice, pipelineCache: VkPipelineCache, pDataSize: *u64, pData: *void) -> VkResult #foreign libvulkan; vkMergePipelineCaches :: (device: VkDevice, dstCache: VkPipelineCache, srcCacheCount: u32, pSrcCaches: *VkPipelineCache) -> VkResult #foreign libvulkan; vkCreateGraphicsPipelines :: (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkGraphicsPipelineCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #foreign libvulkan; vkCreateComputePipelines :: (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkComputePipelineCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #foreign libvulkan; vkDestroyPipeline :: (device: VkDevice, pipeline: VkPipeline, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreatePipelineLayout :: (device: VkDevice, pCreateInfo: *VkPipelineLayoutCreateInfo, pAllocator: *VkAllocationCallbacks, pPipelineLayout: *VkPipelineLayout) -> VkResult #foreign libvulkan; vkDestroyPipelineLayout :: (device: VkDevice, pipelineLayout: VkPipelineLayout, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateSampler :: (device: VkDevice, pCreateInfo: *VkSamplerCreateInfo, pAllocator: *VkAllocationCallbacks, pSampler: *VkSampler) -> VkResult #foreign libvulkan; vkDestroySampler :: (device: VkDevice, sampler: VkSampler, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateDescriptorSetLayout :: (device: VkDevice, pCreateInfo: *VkDescriptorSetLayoutCreateInfo, pAllocator: *VkAllocationCallbacks, pSetLayout: *VkDescriptorSetLayout) -> VkResult #foreign libvulkan; vkDestroyDescriptorSetLayout :: (device: VkDevice, descriptorSetLayout: VkDescriptorSetLayout, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateDescriptorPool :: (device: VkDevice, pCreateInfo: *VkDescriptorPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pDescriptorPool: *VkDescriptorPool) -> VkResult #foreign libvulkan; vkDestroyDescriptorPool :: (device: VkDevice, descriptorPool: VkDescriptorPool, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkResetDescriptorPool :: (device: VkDevice, descriptorPool: VkDescriptorPool, flags: VkDescriptorPoolResetFlags) -> VkResult #foreign libvulkan; vkAllocateDescriptorSets :: (device: VkDevice, pAllocateInfo: *VkDescriptorSetAllocateInfo, pDescriptorSets: *VkDescriptorSet) -> VkResult #foreign libvulkan; vkFreeDescriptorSets :: (device: VkDevice, descriptorPool: VkDescriptorPool, descriptorSetCount: u32, pDescriptorSets: *VkDescriptorSet) -> VkResult #foreign libvulkan; vkUpdateDescriptorSets :: (device: VkDevice, descriptorWriteCount: u32, pDescriptorWrites: *VkWriteDescriptorSet, descriptorCopyCount: u32, pDescriptorCopies: *VkCopyDescriptorSet) -> void #foreign libvulkan; vkCreateFramebuffer :: (device: VkDevice, pCreateInfo: *VkFramebufferCreateInfo, pAllocator: *VkAllocationCallbacks, pFramebuffer: *VkFramebuffer) -> VkResult #foreign libvulkan; vkDestroyFramebuffer :: (device: VkDevice, framebuffer: VkFramebuffer, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateRenderPass :: (device: VkDevice, pCreateInfo: *VkRenderPassCreateInfo, pAllocator: *VkAllocationCallbacks, pRenderPass: *VkRenderPass) -> VkResult #foreign libvulkan; vkDestroyRenderPass :: (device: VkDevice, renderPass: VkRenderPass, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetRenderAreaGranularity :: (device: VkDevice, renderPass: VkRenderPass, pGranularity: *VkExtent2D) -> void #foreign libvulkan; vkCreateCommandPool :: (device: VkDevice, pCreateInfo: *VkCommandPoolCreateInfo, pAllocator: *VkAllocationCallbacks, pCommandPool: *VkCommandPool) -> VkResult #foreign libvulkan; vkDestroyCommandPool :: (device: VkDevice, commandPool: VkCommandPool, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkResetCommandPool :: (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolResetFlags) -> VkResult #foreign libvulkan; vkAllocateCommandBuffers :: (device: VkDevice, pAllocateInfo: *VkCommandBufferAllocateInfo, pCommandBuffers: *VkCommandBuffer) -> VkResult #foreign libvulkan; vkFreeCommandBuffers :: (device: VkDevice, commandPool: VkCommandPool, commandBufferCount: u32, pCommandBuffers: *VkCommandBuffer) -> void #foreign libvulkan; vkBeginCommandBuffer :: (commandBuffer: VkCommandBuffer, pBeginInfo: *VkCommandBufferBeginInfo) -> VkResult #foreign libvulkan; vkEndCommandBuffer :: (commandBuffer: VkCommandBuffer) -> VkResult #foreign libvulkan; vkResetCommandBuffer :: (commandBuffer: VkCommandBuffer, flags: VkCommandBufferResetFlags) -> VkResult #foreign libvulkan; vkCmdBindPipeline :: (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) -> void #foreign libvulkan; vkCmdSetViewport :: (commandBuffer: VkCommandBuffer, firstViewport: u32, viewportCount: u32, pViewports: *VkViewport) -> void #foreign libvulkan; vkCmdSetScissor :: (commandBuffer: VkCommandBuffer, firstScissor: u32, scissorCount: u32, pScissors: *VkRect2D) -> void #foreign libvulkan; vkCmdSetLineWidth :: (commandBuffer: VkCommandBuffer, lineWidth: float) -> void #foreign libvulkan; vkCmdSetDepthBias :: (commandBuffer: VkCommandBuffer, depthBiasConstantFactor: float, depthBiasClamp: float, depthBiasSlopeFactor: float) -> void #foreign libvulkan; vkCmdSetBlendConstants :: (commandBuffer: VkCommandBuffer, blendConstants: *[4] float) -> void #foreign libvulkan; vkCmdSetDepthBounds :: (commandBuffer: VkCommandBuffer, minDepthBounds: float, maxDepthBounds: float) -> void #foreign libvulkan; vkCmdSetStencilCompareMask :: (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, compareMask: u32) -> void #foreign libvulkan; vkCmdSetStencilWriteMask :: (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, writeMask: u32) -> void #foreign libvulkan; vkCmdSetStencilReference :: (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, reference: u32) -> void #foreign libvulkan; vkCmdBindDescriptorSets :: (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: u32, descriptorSetCount: u32, pDescriptorSets: *VkDescriptorSet, dynamicOffsetCount: u32, pDynamicOffsets: *u32) -> void #foreign libvulkan; vkCmdBindIndexBuffer :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, indexType: VkIndexType) -> void #foreign libvulkan; vkCmdBindVertexBuffers :: (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize) -> void #foreign libvulkan; vkCmdDraw :: (commandBuffer: VkCommandBuffer, vertexCount: u32, instanceCount: u32, firstVertex: u32, firstInstance: u32) -> void #foreign libvulkan; vkCmdDrawIndexed :: (commandBuffer: VkCommandBuffer, indexCount: u32, instanceCount: u32, firstIndex: u32, vertexOffset: s32, firstInstance: u32) -> void #foreign libvulkan; vkCmdDrawIndirect :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #foreign libvulkan; vkCmdDrawIndexedIndirect :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #foreign libvulkan; vkCmdDispatch :: (commandBuffer: VkCommandBuffer, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #foreign libvulkan; vkCmdDispatchIndirect :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) -> void #foreign libvulkan; vkCmdCopyBuffer :: (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstBuffer: VkBuffer, regionCount: u32, pRegions: *VkBufferCopy) -> void #foreign libvulkan; vkCmdCopyImage :: (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageCopy) -> void #foreign libvulkan; vkCmdBlitImage :: (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageBlit, filter: VkFilter) -> void #foreign libvulkan; vkCmdCopyBufferToImage :: (commandBuffer: VkCommandBuffer, srcBuffer: VkBuffer, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkBufferImageCopy) -> void #foreign libvulkan; vkCmdCopyImageToBuffer :: (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstBuffer: VkBuffer, regionCount: u32, pRegions: *VkBufferImageCopy) -> void #foreign libvulkan; vkCmdUpdateBuffer :: (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, dataSize: VkDeviceSize, pData: *void) -> void #foreign libvulkan; vkCmdFillBuffer :: (commandBuffer: VkCommandBuffer, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, size: VkDeviceSize, data: u32) -> void #foreign libvulkan; vkCmdClearColorImage :: (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pColor: *VkClearColorValue, rangeCount: u32, pRanges: *VkImageSubresourceRange) -> void #foreign libvulkan; vkCmdClearDepthStencilImage :: (commandBuffer: VkCommandBuffer, image: VkImage, imageLayout: VkImageLayout, pDepthStencil: *VkClearDepthStencilValue, rangeCount: u32, pRanges: *VkImageSubresourceRange) -> void #foreign libvulkan; vkCmdClearAttachments :: (commandBuffer: VkCommandBuffer, attachmentCount: u32, pAttachments: *VkClearAttachment, rectCount: u32, pRects: *VkClearRect) -> void #foreign libvulkan; vkCmdResolveImage :: (commandBuffer: VkCommandBuffer, srcImage: VkImage, srcImageLayout: VkImageLayout, dstImage: VkImage, dstImageLayout: VkImageLayout, regionCount: u32, pRegions: *VkImageResolve) -> void #foreign libvulkan; vkCmdSetEvent :: (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) -> void #foreign libvulkan; vkCmdResetEvent :: (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags) -> void #foreign libvulkan; vkCmdWaitEvents :: (commandBuffer: VkCommandBuffer, eventCount: u32, pEvents: *VkEvent, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, memoryBarrierCount: u32, pMemoryBarriers: *VkMemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: *VkBufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: *VkImageMemoryBarrier) -> void #foreign libvulkan; vkCmdPipelineBarrier :: (commandBuffer: VkCommandBuffer, srcStageMask: VkPipelineStageFlags, dstStageMask: VkPipelineStageFlags, dependencyFlags: VkDependencyFlags, memoryBarrierCount: u32, pMemoryBarriers: *VkMemoryBarrier, bufferMemoryBarrierCount: u32, pBufferMemoryBarriers: *VkBufferMemoryBarrier, imageMemoryBarrierCount: u32, pImageMemoryBarriers: *VkImageMemoryBarrier) -> void #foreign libvulkan; vkCmdBeginQuery :: (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32, flags: VkQueryControlFlags) -> void #foreign libvulkan; vkCmdEndQuery :: (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32) -> void #foreign libvulkan; vkCmdResetQueryPool :: (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32) -> void #foreign libvulkan; vkCmdWriteTimestamp :: (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, queryPool: VkQueryPool, query: u32) -> void #foreign libvulkan; vkCmdCopyQueryPoolResults :: (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, stride: VkDeviceSize, flags: VkQueryResultFlags) -> void #foreign libvulkan; vkCmdPushConstants :: (commandBuffer: VkCommandBuffer, layout: VkPipelineLayout, stageFlags: VkShaderStageFlags, offset: u32, size: u32, pValues: *void) -> void #foreign libvulkan; vkCmdBeginRenderPass :: (commandBuffer: VkCommandBuffer, pRenderPassBegin: *VkRenderPassBeginInfo, contents: VkSubpassContents) -> void #foreign libvulkan; vkCmdNextSubpass :: (commandBuffer: VkCommandBuffer, contents: VkSubpassContents) -> void #foreign libvulkan; vkCmdEndRenderPass :: (commandBuffer: VkCommandBuffer) -> void #foreign libvulkan; vkCmdExecuteCommands :: (commandBuffer: VkCommandBuffer, commandBufferCount: u32, pCommandBuffers: *VkCommandBuffer) -> void #foreign libvulkan; VkSamplerYcbcrConversion_T :: struct {} VkSamplerYcbcrConversion :: *VkSamplerYcbcrConversion_T; VkDescriptorUpdateTemplate_T :: struct {} VkDescriptorUpdateTemplate :: *VkDescriptorUpdateTemplate_T; VkPointClippingBehavior :: enum u32 { ALL_CLIP_PLANES :: 0; USER_CLIP_PLANES_ONLY :: 1; ALL_CLIP_PLANES_KHR :: 0; USER_CLIP_PLANES_ONLY_KHR :: 1; MAX_ENUM :: 2147483647; VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES :: ALL_CLIP_PLANES; VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY :: USER_CLIP_PLANES_ONLY; VK_POINT_CLIPPING_BEHAVIOR_ALL_CLIP_PLANES_KHR :: ALL_CLIP_PLANES_KHR; VK_POINT_CLIPPING_BEHAVIOR_USER_CLIP_PLANES_ONLY_KHR :: USER_CLIP_PLANES_ONLY_KHR; VK_POINT_CLIPPING_BEHAVIOR_MAX_ENUM :: MAX_ENUM; } VkTessellationDomainOrigin :: enum u32 { UPPER_LEFT :: 0; LOWER_LEFT :: 1; UPPER_LEFT_KHR :: 0; LOWER_LEFT_KHR :: 1; MAX_ENUM :: 2147483647; VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT :: UPPER_LEFT; VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT :: LOWER_LEFT; VK_TESSELLATION_DOMAIN_ORIGIN_UPPER_LEFT_KHR :: UPPER_LEFT_KHR; VK_TESSELLATION_DOMAIN_ORIGIN_LOWER_LEFT_KHR :: LOWER_LEFT_KHR; VK_TESSELLATION_DOMAIN_ORIGIN_MAX_ENUM :: MAX_ENUM; } VkSamplerYcbcrModelConversion :: enum u32 { RGB_IDENTITY :: 0; YCBCR_IDENTITY :: 1; YCBCR_709 :: 2; YCBCR_601 :: 3; YCBCR_2020 :: 4; RGB_IDENTITY_KHR :: 0; YCBCR_IDENTITY_KHR :: 1; YCBCR_709_KHR :: 2; YCBCR_601_KHR :: 3; YCBCR_2020_KHR :: 4; MAX_ENUM :: 2147483647; VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY :: RGB_IDENTITY; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY :: YCBCR_IDENTITY; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709 :: YCBCR_709; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601 :: YCBCR_601; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020 :: YCBCR_2020; VK_SAMPLER_YCBCR_MODEL_CONVERSION_RGB_IDENTITY_KHR :: RGB_IDENTITY_KHR; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_IDENTITY_KHR :: YCBCR_IDENTITY_KHR; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_709_KHR :: YCBCR_709_KHR; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_601_KHR :: YCBCR_601_KHR; VK_SAMPLER_YCBCR_MODEL_CONVERSION_YCBCR_2020_KHR :: YCBCR_2020_KHR; VK_SAMPLER_YCBCR_MODEL_CONVERSION_MAX_ENUM :: MAX_ENUM; } VkSamplerYcbcrRange :: enum u32 { ITU_FULL :: 0; ITU_NARROW :: 1; ITU_FULL_KHR :: 0; ITU_NARROW_KHR :: 1; MAX_ENUM :: 2147483647; VK_SAMPLER_YCBCR_RANGE_ITU_FULL :: ITU_FULL; VK_SAMPLER_YCBCR_RANGE_ITU_NARROW :: ITU_NARROW; VK_SAMPLER_YCBCR_RANGE_ITU_FULL_KHR :: ITU_FULL_KHR; VK_SAMPLER_YCBCR_RANGE_ITU_NARROW_KHR :: ITU_NARROW_KHR; VK_SAMPLER_YCBCR_RANGE_MAX_ENUM :: MAX_ENUM; } VkChromaLocation :: enum u32 { COSITED_EVEN :: 0; MIDPOINT :: 1; COSITED_EVEN_KHR :: 0; MIDPOINT_KHR :: 1; MAX_ENUM :: 2147483647; VK_CHROMA_LOCATION_COSITED_EVEN :: COSITED_EVEN; VK_CHROMA_LOCATION_MIDPOINT :: MIDPOINT; VK_CHROMA_LOCATION_COSITED_EVEN_KHR :: COSITED_EVEN_KHR; VK_CHROMA_LOCATION_MIDPOINT_KHR :: MIDPOINT_KHR; VK_CHROMA_LOCATION_MAX_ENUM :: MAX_ENUM; } VkDescriptorUpdateTemplateType :: enum u32 { DESCRIPTOR_SET :: 0; PUSH_DESCRIPTORS :: 1; PUSH_DESCRIPTORS_KHR :: 1; DESCRIPTOR_SET_KHR :: 0; MAX_ENUM :: 2147483647; VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET :: DESCRIPTOR_SET; VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS :: PUSH_DESCRIPTORS; VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_PUSH_DESCRIPTORS_KHR :: PUSH_DESCRIPTORS_KHR; VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_DESCRIPTOR_SET_KHR :: DESCRIPTOR_SET_KHR; VK_DESCRIPTOR_UPDATE_TEMPLATE_TYPE_MAX_ENUM :: MAX_ENUM; } VkSubgroupFeatureFlagBits :: enum u32 { BASIC_BIT :: 1; VOTE_BIT :: 2; ARITHMETIC_BIT :: 4; BALLOT_BIT :: 8; SHUFFLE_BIT :: 16; SHUFFLE_RELATIVE_BIT :: 32; CLUSTERED_BIT :: 64; QUAD_BIT :: 128; ROTATE_BIT :: 512; ROTATE_CLUSTERED_BIT :: 1024; PARTITIONED_BIT_NV :: 256; ROTATE_BIT_KHR :: 512; ROTATE_CLUSTERED_BIT_KHR :: 1024; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SUBGROUP_FEATURE_BASIC_BIT :: BASIC_BIT; VK_SUBGROUP_FEATURE_VOTE_BIT :: VOTE_BIT; VK_SUBGROUP_FEATURE_ARITHMETIC_BIT :: ARITHMETIC_BIT; VK_SUBGROUP_FEATURE_BALLOT_BIT :: BALLOT_BIT; VK_SUBGROUP_FEATURE_SHUFFLE_BIT :: SHUFFLE_BIT; VK_SUBGROUP_FEATURE_SHUFFLE_RELATIVE_BIT :: SHUFFLE_RELATIVE_BIT; VK_SUBGROUP_FEATURE_CLUSTERED_BIT :: CLUSTERED_BIT; VK_SUBGROUP_FEATURE_QUAD_BIT :: QUAD_BIT; VK_SUBGROUP_FEATURE_ROTATE_BIT :: ROTATE_BIT; VK_SUBGROUP_FEATURE_ROTATE_CLUSTERED_BIT :: ROTATE_CLUSTERED_BIT; VK_SUBGROUP_FEATURE_PARTITIONED_BIT_NV :: PARTITIONED_BIT_NV; VK_SUBGROUP_FEATURE_ROTATE_BIT_KHR :: ROTATE_BIT_KHR; VK_SUBGROUP_FEATURE_ROTATE_CLUSTERED_BIT_KHR :: ROTATE_CLUSTERED_BIT_KHR; VK_SUBGROUP_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSubgroupFeatureFlags :: VkFlags; VkPeerMemoryFeatureFlagBits :: enum u32 { COPY_SRC_BIT :: 1; COPY_DST_BIT :: 2; GENERIC_SRC_BIT :: 4; GENERIC_DST_BIT :: 8; COPY_SRC_BIT_KHR :: 1; COPY_DST_BIT_KHR :: 2; GENERIC_SRC_BIT_KHR :: 4; GENERIC_DST_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT :: COPY_SRC_BIT; VK_PEER_MEMORY_FEATURE_COPY_DST_BIT :: COPY_DST_BIT; VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT :: GENERIC_SRC_BIT; VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT :: GENERIC_DST_BIT; VK_PEER_MEMORY_FEATURE_COPY_SRC_BIT_KHR :: COPY_SRC_BIT_KHR; VK_PEER_MEMORY_FEATURE_COPY_DST_BIT_KHR :: COPY_DST_BIT_KHR; VK_PEER_MEMORY_FEATURE_GENERIC_SRC_BIT_KHR :: GENERIC_SRC_BIT_KHR; VK_PEER_MEMORY_FEATURE_GENERIC_DST_BIT_KHR :: GENERIC_DST_BIT_KHR; VK_PEER_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPeerMemoryFeatureFlags :: VkFlags; VkMemoryAllocateFlagBits :: enum u32 { DEVICE_MASK_BIT :: 1; DEVICE_ADDRESS_BIT :: 2; DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: 4; DEVICE_MASK_BIT_KHR :: 1; DEVICE_ADDRESS_BIT_KHR :: 2; DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT :: DEVICE_MASK_BIT; VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT :: DEVICE_ADDRESS_BIT; VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT; VK_MEMORY_ALLOCATE_DEVICE_MASK_BIT_KHR :: DEVICE_MASK_BIT_KHR; VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_BIT_KHR :: DEVICE_ADDRESS_BIT_KHR; VK_MEMORY_ALLOCATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR; VK_MEMORY_ALLOCATE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkMemoryAllocateFlags :: VkFlags; VkCommandPoolTrimFlags :: VkFlags; VkDescriptorUpdateTemplateCreateFlags :: VkFlags; VkExternalMemoryHandleTypeFlagBits :: enum u32 { OPAQUE_FD_BIT :: 1; OPAQUE_WIN32_BIT :: 2; OPAQUE_WIN32_KMT_BIT :: 4; D3D11_TEXTURE_BIT :: 8; D3D11_TEXTURE_KMT_BIT :: 16; D3D12_HEAP_BIT :: 32; D3D12_RESOURCE_BIT :: 64; DMA_BUF_BIT_EXT :: 512; ANDROID_HARDWARE_BUFFER_BIT_ANDROID :: 1024; HOST_ALLOCATION_BIT_EXT :: 128; HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT :: 256; ZIRCON_VMO_BIT_FUCHSIA :: 2048; RDMA_ADDRESS_BIT_NV :: 4096; SCREEN_BUFFER_BIT_QNX :: 16384; MTLBUFFER_BIT_EXT :: 65536; MTLTEXTURE_BIT_EXT :: 131072; MTLHEAP_BIT_EXT :: 262144; OPAQUE_FD_BIT_KHR :: 1; OPAQUE_WIN32_BIT_KHR :: 2; OPAQUE_WIN32_KMT_BIT_KHR :: 4; D3D11_TEXTURE_BIT_KHR :: 8; D3D11_TEXTURE_KMT_BIT_KHR :: 16; D3D12_HEAP_BIT_KHR :: 32; D3D12_RESOURCE_BIT_KHR :: 64; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT :: OPAQUE_FD_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT :: OPAQUE_WIN32_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: OPAQUE_WIN32_KMT_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT :: D3D11_TEXTURE_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT :: D3D11_TEXTURE_KMT_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT :: D3D12_HEAP_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT :: D3D12_RESOURCE_BIT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_DMA_BUF_BIT_EXT :: DMA_BUF_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_ANDROID_HARDWARE_BUFFER_BIT_ANDROID :: ANDROID_HARDWARE_BUFFER_BIT_ANDROID; VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_ALLOCATION_BIT_EXT :: HOST_ALLOCATION_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT :: HOST_MAPPED_FOREIGN_MEMORY_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_ZIRCON_VMO_BIT_FUCHSIA :: ZIRCON_VMO_BIT_FUCHSIA; VK_EXTERNAL_MEMORY_HANDLE_TYPE_RDMA_ADDRESS_BIT_NV :: RDMA_ADDRESS_BIT_NV; VK_EXTERNAL_MEMORY_HANDLE_TYPE_SCREEN_BUFFER_BIT_QNX :: SCREEN_BUFFER_BIT_QNX; VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLBUFFER_BIT_EXT :: MTLBUFFER_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLTEXTURE_BIT_EXT :: MTLTEXTURE_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_MTLHEAP_BIT_EXT :: MTLHEAP_BIT_EXT; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: OPAQUE_FD_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: OPAQUE_WIN32_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: OPAQUE_WIN32_KMT_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT_KHR :: D3D11_TEXTURE_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_KMT_BIT_KHR :: D3D11_TEXTURE_KMT_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT_KHR :: D3D12_HEAP_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT_KHR :: D3D12_RESOURCE_BIT_KHR; VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalMemoryHandleTypeFlags :: VkFlags; VkExternalMemoryFeatureFlagBits :: enum u32 { DEDICATED_ONLY_BIT :: 1; EXPORTABLE_BIT :: 2; IMPORTABLE_BIT :: 4; DEDICATED_ONLY_BIT_KHR :: 1; EXPORTABLE_BIT_KHR :: 2; IMPORTABLE_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT :: DEDICATED_ONLY_BIT; VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT :: EXPORTABLE_BIT; VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT :: IMPORTABLE_BIT; VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_KHR :: DEDICATED_ONLY_BIT_KHR; VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_KHR :: EXPORTABLE_BIT_KHR; VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_KHR :: IMPORTABLE_BIT_KHR; VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalMemoryFeatureFlags :: VkFlags; VkExternalFenceHandleTypeFlagBits :: enum u32 { OPAQUE_FD_BIT :: 1; OPAQUE_WIN32_BIT :: 2; OPAQUE_WIN32_KMT_BIT :: 4; SYNC_FD_BIT :: 8; OPAQUE_FD_BIT_KHR :: 1; OPAQUE_WIN32_BIT_KHR :: 2; OPAQUE_WIN32_KMT_BIT_KHR :: 4; SYNC_FD_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT :: OPAQUE_FD_BIT; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: OPAQUE_WIN32_BIT; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: OPAQUE_WIN32_KMT_BIT; VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT :: SYNC_FD_BIT; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: OPAQUE_FD_BIT_KHR; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: OPAQUE_WIN32_BIT_KHR; VK_EXTERNAL_FENCE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: OPAQUE_WIN32_KMT_BIT_KHR; VK_EXTERNAL_FENCE_HANDLE_TYPE_SYNC_FD_BIT_KHR :: SYNC_FD_BIT_KHR; VK_EXTERNAL_FENCE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalFenceHandleTypeFlags :: VkFlags; VkExternalFenceFeatureFlagBits :: enum u32 { EXPORTABLE_BIT :: 1; IMPORTABLE_BIT :: 2; EXPORTABLE_BIT_KHR :: 1; IMPORTABLE_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT :: EXPORTABLE_BIT; VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT :: IMPORTABLE_BIT; VK_EXTERNAL_FENCE_FEATURE_EXPORTABLE_BIT_KHR :: EXPORTABLE_BIT_KHR; VK_EXTERNAL_FENCE_FEATURE_IMPORTABLE_BIT_KHR :: IMPORTABLE_BIT_KHR; VK_EXTERNAL_FENCE_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalFenceFeatureFlags :: VkFlags; VkFenceImportFlagBits :: enum u32 { TEMPORARY_BIT :: 1; TEMPORARY_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_FENCE_IMPORT_TEMPORARY_BIT :: TEMPORARY_BIT; VK_FENCE_IMPORT_TEMPORARY_BIT_KHR :: TEMPORARY_BIT_KHR; VK_FENCE_IMPORT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkFenceImportFlags :: VkFlags; VkSemaphoreImportFlagBits :: enum u32 { TEMPORARY_BIT :: 1; TEMPORARY_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SEMAPHORE_IMPORT_TEMPORARY_BIT :: TEMPORARY_BIT; VK_SEMAPHORE_IMPORT_TEMPORARY_BIT_KHR :: TEMPORARY_BIT_KHR; VK_SEMAPHORE_IMPORT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSemaphoreImportFlags :: VkFlags; VkExternalSemaphoreHandleTypeFlagBits :: enum u32 { OPAQUE_FD_BIT :: 1; OPAQUE_WIN32_BIT :: 2; OPAQUE_WIN32_KMT_BIT :: 4; D3D12_FENCE_BIT :: 8; SYNC_FD_BIT :: 16; ZIRCON_EVENT_BIT_FUCHSIA :: 128; D3D11_FENCE_BIT :: 8; OPAQUE_FD_BIT_KHR :: 1; OPAQUE_WIN32_BIT_KHR :: 2; OPAQUE_WIN32_KMT_BIT_KHR :: 4; D3D12_FENCE_BIT_KHR :: 8; SYNC_FD_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT :: OPAQUE_FD_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT :: OPAQUE_WIN32_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT :: OPAQUE_WIN32_KMT_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT :: D3D12_FENCE_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT :: SYNC_FD_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_ZIRCON_EVENT_BIT_FUCHSIA :: ZIRCON_EVENT_BIT_FUCHSIA; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D11_FENCE_BIT :: D3D11_FENCE_BIT; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_FD_BIT_KHR :: OPAQUE_FD_BIT_KHR; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_BIT_KHR :: OPAQUE_WIN32_BIT_KHR; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_KHR :: OPAQUE_WIN32_KMT_BIT_KHR; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_D3D12_FENCE_BIT_KHR :: D3D12_FENCE_BIT_KHR; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_SYNC_FD_BIT_KHR :: SYNC_FD_BIT_KHR; VK_EXTERNAL_SEMAPHORE_HANDLE_TYPE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalSemaphoreHandleTypeFlags :: VkFlags; VkExternalSemaphoreFeatureFlagBits :: enum u32 { EXPORTABLE_BIT :: 1; IMPORTABLE_BIT :: 2; EXPORTABLE_BIT_KHR :: 1; IMPORTABLE_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM :: 2147483647; VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT :: EXPORTABLE_BIT; VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT :: IMPORTABLE_BIT; VK_EXTERNAL_SEMAPHORE_FEATURE_EXPORTABLE_BIT_KHR :: EXPORTABLE_BIT_KHR; VK_EXTERNAL_SEMAPHORE_FEATURE_IMPORTABLE_BIT_KHR :: IMPORTABLE_BIT_KHR; VK_EXTERNAL_SEMAPHORE_FEATURE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkExternalSemaphoreFeatureFlags :: VkFlags; VkPhysicalDeviceSubgroupProperties :: struct { sType: VkStructureType; pNext: *void; subgroupSize: u32; supportedStages: VkShaderStageFlags; supportedOperations: VkSubgroupFeatureFlags; quadOperationsInAllStages: VkBool32; } VkBindBufferMemoryInfo :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; } VkBindImageMemoryInfo :: struct { sType: VkStructureType; pNext: *void; image: VkImage; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; } VkPhysicalDevice16BitStorageFeatures :: struct { sType: VkStructureType; pNext: *void; storageBuffer16BitAccess: VkBool32; uniformAndStorageBuffer16BitAccess: VkBool32; storagePushConstant16: VkBool32; storageInputOutput16: VkBool32; } VkMemoryDedicatedRequirements :: struct { sType: VkStructureType; pNext: *void; prefersDedicatedAllocation: VkBool32; requiresDedicatedAllocation: VkBool32; } VkMemoryDedicatedAllocateInfo :: struct { sType: VkStructureType; pNext: *void; image: VkImage; buffer: VkBuffer; } VkMemoryAllocateFlagsInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkMemoryAllocateFlags; deviceMask: u32; } VkDeviceGroupRenderPassBeginInfo :: struct { sType: VkStructureType; pNext: *void; deviceMask: u32; deviceRenderAreaCount: u32; pDeviceRenderAreas: *VkRect2D; } VkDeviceGroupCommandBufferBeginInfo :: struct { sType: VkStructureType; pNext: *void; deviceMask: u32; } VkDeviceGroupSubmitInfo :: struct { sType: VkStructureType; pNext: *void; waitSemaphoreCount: u32; pWaitSemaphoreDeviceIndices: *u32; commandBufferCount: u32; pCommandBufferDeviceMasks: *u32; signalSemaphoreCount: u32; pSignalSemaphoreDeviceIndices: *u32; } VkDeviceGroupBindSparseInfo :: struct { sType: VkStructureType; pNext: *void; resourceDeviceIndex: u32; memoryDeviceIndex: u32; } VkBindBufferMemoryDeviceGroupInfo :: struct { sType: VkStructureType; pNext: *void; deviceIndexCount: u32; pDeviceIndices: *u32; } VkBindImageMemoryDeviceGroupInfo :: struct { sType: VkStructureType; pNext: *void; deviceIndexCount: u32; pDeviceIndices: *u32; splitInstanceBindRegionCount: u32; pSplitInstanceBindRegions: *VkRect2D; } VkPhysicalDeviceGroupProperties :: struct { sType: VkStructureType; pNext: *void; physicalDeviceCount: u32; physicalDevices: [32] VkPhysicalDevice; subsetAllocation: VkBool32; } VkDeviceGroupDeviceCreateInfo :: struct { sType: VkStructureType; pNext: *void; physicalDeviceCount: u32; pPhysicalDevices: *VkPhysicalDevice; } VkBufferMemoryRequirementsInfo2 :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; } VkImageMemoryRequirementsInfo2 :: struct { sType: VkStructureType; pNext: *void; image: VkImage; } VkImageSparseMemoryRequirementsInfo2 :: struct { sType: VkStructureType; pNext: *void; image: VkImage; } VkMemoryRequirements2 :: struct { sType: VkStructureType; pNext: *void; memoryRequirements: VkMemoryRequirements; } VkSparseImageMemoryRequirements2 :: struct { sType: VkStructureType; pNext: *void; memoryRequirements: VkSparseImageMemoryRequirements; } VkPhysicalDeviceFeatures2 :: struct { sType: VkStructureType; pNext: *void; features: VkPhysicalDeviceFeatures; } VkPhysicalDeviceProperties2 :: struct { sType: VkStructureType; pNext: *void; properties: VkPhysicalDeviceProperties; } VkFormatProperties2 :: struct { sType: VkStructureType; pNext: *void; formatProperties: VkFormatProperties; } VkImageFormatProperties2 :: struct { sType: VkStructureType; pNext: *void; imageFormatProperties: VkImageFormatProperties; } VkPhysicalDeviceImageFormatInfo2 :: struct { sType: VkStructureType; pNext: *void; format: VkFormat; type: VkImageType; tiling: VkImageTiling; usage: VkImageUsageFlags; flags: VkImageCreateFlags; } VkQueueFamilyProperties2 :: struct { sType: VkStructureType; pNext: *void; queueFamilyProperties: VkQueueFamilyProperties; } VkPhysicalDeviceMemoryProperties2 :: struct { sType: VkStructureType; pNext: *void; memoryProperties: VkPhysicalDeviceMemoryProperties; } VkSparseImageFormatProperties2 :: struct { sType: VkStructureType; pNext: *void; properties: VkSparseImageFormatProperties; } VkPhysicalDeviceSparseImageFormatInfo2 :: struct { sType: VkStructureType; pNext: *void; format: VkFormat; type: VkImageType; samples: VkSampleCountFlagBits; usage: VkImageUsageFlags; tiling: VkImageTiling; } VkPhysicalDevicePointClippingProperties :: struct { sType: VkStructureType; pNext: *void; pointClippingBehavior: VkPointClippingBehavior; } VkInputAttachmentAspectReference :: struct { subpass: u32; inputAttachmentIndex: u32; aspectMask: VkImageAspectFlags; } VkRenderPassInputAttachmentAspectCreateInfo :: struct { sType: VkStructureType; pNext: *void; aspectReferenceCount: u32; pAspectReferences: *VkInputAttachmentAspectReference; } VkImageViewUsageCreateInfo :: struct { sType: VkStructureType; pNext: *void; usage: VkImageUsageFlags; } VkPipelineTessellationDomainOriginStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; domainOrigin: VkTessellationDomainOrigin; } VkRenderPassMultiviewCreateInfo :: struct { sType: VkStructureType; pNext: *void; subpassCount: u32; pViewMasks: *u32; dependencyCount: u32; pViewOffsets: *s32; correlationMaskCount: u32; pCorrelationMasks: *u32; } VkPhysicalDeviceMultiviewFeatures :: struct { sType: VkStructureType; pNext: *void; multiview: VkBool32; multiviewGeometryShader: VkBool32; multiviewTessellationShader: VkBool32; } VkPhysicalDeviceMultiviewProperties :: struct { sType: VkStructureType; pNext: *void; maxMultiviewViewCount: u32; maxMultiviewInstanceIndex: u32; } VkPhysicalDeviceVariablePointersFeatures :: struct { sType: VkStructureType; pNext: *void; variablePointersStorageBuffer: VkBool32; variablePointers: VkBool32; } VkPhysicalDeviceVariablePointerFeatures :: VkPhysicalDeviceVariablePointersFeatures; VkPhysicalDeviceProtectedMemoryFeatures :: struct { sType: VkStructureType; pNext: *void; protectedMemory: VkBool32; } VkPhysicalDeviceProtectedMemoryProperties :: struct { sType: VkStructureType; pNext: *void; protectedNoFault: VkBool32; } VkDeviceQueueInfo2 :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceQueueCreateFlags; queueFamilyIndex: u32; queueIndex: u32; } VkProtectedSubmitInfo :: struct { sType: VkStructureType; pNext: *void; protectedSubmit: VkBool32; } VkSamplerYcbcrConversionCreateInfo :: struct { sType: VkStructureType; pNext: *void; format: VkFormat; ycbcrModel: VkSamplerYcbcrModelConversion; ycbcrRange: VkSamplerYcbcrRange; components: VkComponentMapping; xChromaOffset: VkChromaLocation; yChromaOffset: VkChromaLocation; chromaFilter: VkFilter; forceExplicitReconstruction: VkBool32; } VkSamplerYcbcrConversionInfo :: struct { sType: VkStructureType; pNext: *void; conversion: VkSamplerYcbcrConversion; } VkBindImagePlaneMemoryInfo :: struct { sType: VkStructureType; pNext: *void; planeAspect: VkImageAspectFlagBits; } VkImagePlaneMemoryRequirementsInfo :: struct { sType: VkStructureType; pNext: *void; planeAspect: VkImageAspectFlagBits; } VkPhysicalDeviceSamplerYcbcrConversionFeatures :: struct { sType: VkStructureType; pNext: *void; samplerYcbcrConversion: VkBool32; } VkSamplerYcbcrConversionImageFormatProperties :: struct { sType: VkStructureType; pNext: *void; combinedImageSamplerDescriptorCount: u32; } VkDescriptorUpdateTemplateEntry :: struct { dstBinding: u32; dstArrayElement: u32; descriptorCount: u32; descriptorType: VkDescriptorType; offset: u64; stride: u64; } VkDescriptorUpdateTemplateCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkDescriptorUpdateTemplateCreateFlags; descriptorUpdateEntryCount: u32; pDescriptorUpdateEntries: *VkDescriptorUpdateTemplateEntry; templateType: VkDescriptorUpdateTemplateType; descriptorSetLayout: VkDescriptorSetLayout; pipelineBindPoint: VkPipelineBindPoint; pipelineLayout: VkPipelineLayout; set: u32; } VkExternalMemoryProperties :: struct { externalMemoryFeatures: VkExternalMemoryFeatureFlags; exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlags; compatibleHandleTypes: VkExternalMemoryHandleTypeFlags; } VkPhysicalDeviceExternalImageFormatInfo :: struct { sType: VkStructureType; pNext: *void; handleType: VkExternalMemoryHandleTypeFlagBits; } VkExternalImageFormatProperties :: struct { sType: VkStructureType; pNext: *void; externalMemoryProperties: VkExternalMemoryProperties; } VkPhysicalDeviceExternalBufferInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkBufferCreateFlags; usage: VkBufferUsageFlags; handleType: VkExternalMemoryHandleTypeFlagBits; } VkExternalBufferProperties :: struct { sType: VkStructureType; pNext: *void; externalMemoryProperties: VkExternalMemoryProperties; } VkPhysicalDeviceIDProperties :: struct { sType: VkStructureType; pNext: *void; deviceUUID: [16] u8; driverUUID: [16] u8; deviceLUID: [8] u8; deviceNodeMask: u32; deviceLUIDValid: VkBool32; } VkExternalMemoryImageCreateInfo :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalMemoryHandleTypeFlags; } VkExternalMemoryBufferCreateInfo :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalMemoryHandleTypeFlags; } VkExportMemoryAllocateInfo :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalMemoryHandleTypeFlags; } VkPhysicalDeviceExternalFenceInfo :: struct { sType: VkStructureType; pNext: *void; handleType: VkExternalFenceHandleTypeFlagBits; } VkExternalFenceProperties :: struct { sType: VkStructureType; pNext: *void; exportFromImportedHandleTypes: VkExternalFenceHandleTypeFlags; compatibleHandleTypes: VkExternalFenceHandleTypeFlags; externalFenceFeatures: VkExternalFenceFeatureFlags; } VkExportFenceCreateInfo :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalFenceHandleTypeFlags; } VkExportSemaphoreCreateInfo :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalSemaphoreHandleTypeFlags; } VkPhysicalDeviceExternalSemaphoreInfo :: struct { sType: VkStructureType; pNext: *void; handleType: VkExternalSemaphoreHandleTypeFlagBits; } VkExternalSemaphoreProperties :: struct { sType: VkStructureType; pNext: *void; exportFromImportedHandleTypes: VkExternalSemaphoreHandleTypeFlags; compatibleHandleTypes: VkExternalSemaphoreHandleTypeFlags; externalSemaphoreFeatures: VkExternalSemaphoreFeatureFlags; } VkPhysicalDeviceMaintenance3Properties :: struct { sType: VkStructureType; pNext: *void; maxPerSetDescriptors: u32; maxMemoryAllocationSize: VkDeviceSize; } VkDescriptorSetLayoutSupport :: struct { sType: VkStructureType; pNext: *void; supported: VkBool32; } VkPhysicalDeviceShaderDrawParametersFeatures :: struct { sType: VkStructureType; pNext: *void; shaderDrawParameters: VkBool32; } VkPhysicalDeviceShaderDrawParameterFeatures :: VkPhysicalDeviceShaderDrawParametersFeatures; PFN_vkEnumerateInstanceVersion :: #type (pApiVersion: *u32) -> VkResult #c_call; PFN_vkBindBufferMemory2 :: #type (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindBufferMemoryInfo) -> VkResult #c_call; PFN_vkBindImageMemory2 :: #type (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindImageMemoryInfo) -> VkResult #c_call; PFN_vkGetDeviceGroupPeerMemoryFeatures :: #type (device: VkDevice, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: *VkPeerMemoryFeatureFlags) -> void #c_call; PFN_vkCmdSetDeviceMask :: #type (commandBuffer: VkCommandBuffer, deviceMask: u32) -> void #c_call; PFN_vkCmdDispatchBase :: #type (commandBuffer: VkCommandBuffer, baseGroupX: u32, baseGroupY: u32, baseGroupZ: u32, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #c_call; PFN_vkEnumeratePhysicalDeviceGroups :: #type (instance: VkInstance, pPhysicalDeviceGroupCount: *u32, pPhysicalDeviceGroupProperties: *VkPhysicalDeviceGroupProperties) -> VkResult #c_call; PFN_vkGetImageMemoryRequirements2 :: #type (device: VkDevice, pInfo: *VkImageMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetBufferMemoryRequirements2 :: #type (device: VkDevice, pInfo: *VkBufferMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetImageSparseMemoryRequirements2 :: #type (device: VkDevice, pInfo: *VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #c_call; PFN_vkGetPhysicalDeviceFeatures2 :: #type (physicalDevice: VkPhysicalDevice, pFeatures: *VkPhysicalDeviceFeatures2) -> void #c_call; PFN_vkGetPhysicalDeviceProperties2 :: #type (physicalDevice: VkPhysicalDevice, pProperties: *VkPhysicalDeviceProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceFormatProperties2 :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: *VkFormatProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceImageFormatProperties2 :: #type (physicalDevice: VkPhysicalDevice, pImageFormatInfo: *VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: *VkImageFormatProperties2) -> VkResult #c_call; PFN_vkGetPhysicalDeviceQueueFamilyProperties2 :: #type (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: *u32, pQueueFamilyProperties: *VkQueueFamilyProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceMemoryProperties2 :: #type (physicalDevice: VkPhysicalDevice, pMemoryProperties: *VkPhysicalDeviceMemoryProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceSparseImageFormatProperties2 :: #type (physicalDevice: VkPhysicalDevice, pFormatInfo: *VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: *u32, pProperties: *VkSparseImageFormatProperties2) -> void #c_call; PFN_vkTrimCommandPool :: #type (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags) -> void #c_call; PFN_vkGetDeviceQueue2 :: #type (device: VkDevice, pQueueInfo: *VkDeviceQueueInfo2, pQueue: *VkQueue) -> void #c_call; PFN_vkCreateSamplerYcbcrConversion :: #type (device: VkDevice, pCreateInfo: *VkSamplerYcbcrConversionCreateInfo, pAllocator: *VkAllocationCallbacks, pYcbcrConversion: *VkSamplerYcbcrConversion) -> VkResult #c_call; PFN_vkDestroySamplerYcbcrConversion :: #type (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateDescriptorUpdateTemplate :: #type (device: VkDevice, pCreateInfo: *VkDescriptorUpdateTemplateCreateInfo, pAllocator: *VkAllocationCallbacks, pDescriptorUpdateTemplate: *VkDescriptorUpdateTemplate) -> VkResult #c_call; PFN_vkDestroyDescriptorUpdateTemplate :: #type (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkUpdateDescriptorSetWithTemplate :: #type (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: *void) -> void #c_call; PFN_vkGetPhysicalDeviceExternalBufferProperties :: #type (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: *VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: *VkExternalBufferProperties) -> void #c_call; PFN_vkGetPhysicalDeviceExternalFenceProperties :: #type (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: *VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: *VkExternalFenceProperties) -> void #c_call; PFN_vkGetPhysicalDeviceExternalSemaphoreProperties :: #type (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: *VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: *VkExternalSemaphoreProperties) -> void #c_call; PFN_vkGetDescriptorSetLayoutSupport :: #type (device: VkDevice, pCreateInfo: *VkDescriptorSetLayoutCreateInfo, pSupport: *VkDescriptorSetLayoutSupport) -> void #c_call; vkEnumerateInstanceVersion :: (pApiVersion: *u32) -> VkResult #foreign libvulkan; vkBindBufferMemory2 :: (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindBufferMemoryInfo) -> VkResult #foreign libvulkan; vkBindImageMemory2 :: (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindImageMemoryInfo) -> VkResult #foreign libvulkan; vkGetDeviceGroupPeerMemoryFeatures :: (device: VkDevice, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: *VkPeerMemoryFeatureFlags) -> void #foreign libvulkan; vkCmdSetDeviceMask :: (commandBuffer: VkCommandBuffer, deviceMask: u32) -> void #foreign libvulkan; vkCmdDispatchBase :: (commandBuffer: VkCommandBuffer, baseGroupX: u32, baseGroupY: u32, baseGroupZ: u32, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #foreign libvulkan; vkEnumeratePhysicalDeviceGroups :: (instance: VkInstance, pPhysicalDeviceGroupCount: *u32, pPhysicalDeviceGroupProperties: *VkPhysicalDeviceGroupProperties) -> VkResult #foreign libvulkan; vkGetImageMemoryRequirements2 :: (device: VkDevice, pInfo: *VkImageMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #foreign libvulkan; vkGetBufferMemoryRequirements2 :: (device: VkDevice, pInfo: *VkBufferMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #foreign libvulkan; vkGetImageSparseMemoryRequirements2 :: (device: VkDevice, pInfo: *VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #foreign libvulkan; vkGetPhysicalDeviceFeatures2 :: (physicalDevice: VkPhysicalDevice, pFeatures: *VkPhysicalDeviceFeatures2) -> void #foreign libvulkan; vkGetPhysicalDeviceProperties2 :: (physicalDevice: VkPhysicalDevice, pProperties: *VkPhysicalDeviceProperties2) -> void #foreign libvulkan; vkGetPhysicalDeviceFormatProperties2 :: (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: *VkFormatProperties2) -> void #foreign libvulkan; vkGetPhysicalDeviceImageFormatProperties2 :: (physicalDevice: VkPhysicalDevice, pImageFormatInfo: *VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: *VkImageFormatProperties2) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceQueueFamilyProperties2 :: (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: *u32, pQueueFamilyProperties: *VkQueueFamilyProperties2) -> void #foreign libvulkan; vkGetPhysicalDeviceMemoryProperties2 :: (physicalDevice: VkPhysicalDevice, pMemoryProperties: *VkPhysicalDeviceMemoryProperties2) -> void #foreign libvulkan; vkGetPhysicalDeviceSparseImageFormatProperties2 :: (physicalDevice: VkPhysicalDevice, pFormatInfo: *VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: *u32, pProperties: *VkSparseImageFormatProperties2) -> void #foreign libvulkan; vkTrimCommandPool :: (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags) -> void #foreign libvulkan; vkGetDeviceQueue2 :: (device: VkDevice, pQueueInfo: *VkDeviceQueueInfo2, pQueue: *VkQueue) -> void #foreign libvulkan; vkCreateSamplerYcbcrConversion :: (device: VkDevice, pCreateInfo: *VkSamplerYcbcrConversionCreateInfo, pAllocator: *VkAllocationCallbacks, pYcbcrConversion: *VkSamplerYcbcrConversion) -> VkResult #foreign libvulkan; vkDestroySamplerYcbcrConversion :: (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkCreateDescriptorUpdateTemplate :: (device: VkDevice, pCreateInfo: *VkDescriptorUpdateTemplateCreateInfo, pAllocator: *VkAllocationCallbacks, pDescriptorUpdateTemplate: *VkDescriptorUpdateTemplate) -> VkResult #foreign libvulkan; vkDestroyDescriptorUpdateTemplate :: (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkUpdateDescriptorSetWithTemplate :: (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: *void) -> void #foreign libvulkan; vkGetPhysicalDeviceExternalBufferProperties :: (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: *VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: *VkExternalBufferProperties) -> void #foreign libvulkan; vkGetPhysicalDeviceExternalFenceProperties :: (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: *VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: *VkExternalFenceProperties) -> void #foreign libvulkan; vkGetPhysicalDeviceExternalSemaphoreProperties :: (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: *VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: *VkExternalSemaphoreProperties) -> void #foreign libvulkan; vkGetDescriptorSetLayoutSupport :: (device: VkDevice, pCreateInfo: *VkDescriptorSetLayoutCreateInfo, pSupport: *VkDescriptorSetLayoutSupport) -> void #foreign libvulkan; VkDriverId :: enum u32 { AMD_PROPRIETARY :: 1; AMD_OPEN_SOURCE :: 2; MESA_RADV :: 3; NVIDIA_PROPRIETARY :: 4; INTEL_PROPRIETARY_WINDOWS :: 5; INTEL_OPEN_SOURCE_MESA :: 6; IMAGINATION_PROPRIETARY :: 7; QUALCOMM_PROPRIETARY :: 8; ARM_PROPRIETARY :: 9; GOOGLE_SWIFTSHADER :: 10; GGP_PROPRIETARY :: 11; BROADCOM_PROPRIETARY :: 12; MESA_LLVMPIPE :: 13; MOLTENVK :: 14; COREAVI_PROPRIETARY :: 15; JUICE_PROPRIETARY :: 16; VERISILICON_PROPRIETARY :: 17; MESA_TURNIP :: 18; MESA_V3DV :: 19; MESA_PANVK :: 20; SAMSUNG_PROPRIETARY :: 21; MESA_VENUS :: 22; MESA_DOZEN :: 23; MESA_NVK :: 24; IMAGINATION_OPEN_SOURCE_MESA :: 25; MESA_HONEYKRISP :: 26; VULKAN_SC_EMULATION_ON_VULKAN :: 27; AMD_PROPRIETARY_KHR :: 1; AMD_OPEN_SOURCE_KHR :: 2; MESA_RADV_KHR :: 3; NVIDIA_PROPRIETARY_KHR :: 4; INTEL_PROPRIETARY_WINDOWS_KHR :: 5; INTEL_OPEN_SOURCE_MESA_KHR :: 6; IMAGINATION_PROPRIETARY_KHR :: 7; QUALCOMM_PROPRIETARY_KHR :: 8; ARM_PROPRIETARY_KHR :: 9; GOOGLE_SWIFTSHADER_KHR :: 10; GGP_PROPRIETARY_KHR :: 11; BROADCOM_PROPRIETARY_KHR :: 12; MAX_ENUM :: 2147483647; VK_DRIVER_ID_AMD_PROPRIETARY :: AMD_PROPRIETARY; VK_DRIVER_ID_AMD_OPEN_SOURCE :: AMD_OPEN_SOURCE; VK_DRIVER_ID_MESA_RADV :: MESA_RADV; VK_DRIVER_ID_NVIDIA_PROPRIETARY :: NVIDIA_PROPRIETARY; VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS :: INTEL_PROPRIETARY_WINDOWS; VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA :: INTEL_OPEN_SOURCE_MESA; VK_DRIVER_ID_IMAGINATION_PROPRIETARY :: IMAGINATION_PROPRIETARY; VK_DRIVER_ID_QUALCOMM_PROPRIETARY :: QUALCOMM_PROPRIETARY; VK_DRIVER_ID_ARM_PROPRIETARY :: ARM_PROPRIETARY; VK_DRIVER_ID_GOOGLE_SWIFTSHADER :: GOOGLE_SWIFTSHADER; VK_DRIVER_ID_GGP_PROPRIETARY :: GGP_PROPRIETARY; VK_DRIVER_ID_BROADCOM_PROPRIETARY :: BROADCOM_PROPRIETARY; VK_DRIVER_ID_MESA_LLVMPIPE :: MESA_LLVMPIPE; VK_DRIVER_ID_MOLTENVK :: MOLTENVK; VK_DRIVER_ID_COREAVI_PROPRIETARY :: COREAVI_PROPRIETARY; VK_DRIVER_ID_JUICE_PROPRIETARY :: JUICE_PROPRIETARY; VK_DRIVER_ID_VERISILICON_PROPRIETARY :: VERISILICON_PROPRIETARY; VK_DRIVER_ID_MESA_TURNIP :: MESA_TURNIP; VK_DRIVER_ID_MESA_V3DV :: MESA_V3DV; VK_DRIVER_ID_MESA_PANVK :: MESA_PANVK; VK_DRIVER_ID_SAMSUNG_PROPRIETARY :: SAMSUNG_PROPRIETARY; VK_DRIVER_ID_MESA_VENUS :: MESA_VENUS; VK_DRIVER_ID_MESA_DOZEN :: MESA_DOZEN; VK_DRIVER_ID_MESA_NVK :: MESA_NVK; VK_DRIVER_ID_IMAGINATION_OPEN_SOURCE_MESA :: IMAGINATION_OPEN_SOURCE_MESA; VK_DRIVER_ID_MESA_HONEYKRISP :: MESA_HONEYKRISP; VK_DRIVER_ID_VULKAN_SC_EMULATION_ON_VULKAN :: VULKAN_SC_EMULATION_ON_VULKAN; VK_DRIVER_ID_AMD_PROPRIETARY_KHR :: AMD_PROPRIETARY_KHR; VK_DRIVER_ID_AMD_OPEN_SOURCE_KHR :: AMD_OPEN_SOURCE_KHR; VK_DRIVER_ID_MESA_RADV_KHR :: MESA_RADV_KHR; VK_DRIVER_ID_NVIDIA_PROPRIETARY_KHR :: NVIDIA_PROPRIETARY_KHR; VK_DRIVER_ID_INTEL_PROPRIETARY_WINDOWS_KHR :: INTEL_PROPRIETARY_WINDOWS_KHR; VK_DRIVER_ID_INTEL_OPEN_SOURCE_MESA_KHR :: INTEL_OPEN_SOURCE_MESA_KHR; VK_DRIVER_ID_IMAGINATION_PROPRIETARY_KHR :: IMAGINATION_PROPRIETARY_KHR; VK_DRIVER_ID_QUALCOMM_PROPRIETARY_KHR :: QUALCOMM_PROPRIETARY_KHR; VK_DRIVER_ID_ARM_PROPRIETARY_KHR :: ARM_PROPRIETARY_KHR; VK_DRIVER_ID_GOOGLE_SWIFTSHADER_KHR :: GOOGLE_SWIFTSHADER_KHR; VK_DRIVER_ID_GGP_PROPRIETARY_KHR :: GGP_PROPRIETARY_KHR; VK_DRIVER_ID_BROADCOM_PROPRIETARY_KHR :: BROADCOM_PROPRIETARY_KHR; VK_DRIVER_ID_MAX_ENUM :: MAX_ENUM; } VkShaderFloatControlsIndependence :: enum u32 { _32_BIT_ONLY :: 0; ALL :: 1; NONE :: 2; _32_BIT_ONLY_KHR :: 0; ALL_KHR :: 1; NONE_KHR :: 2; MAX_ENUM :: 2147483647; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY :: _32_BIT_ONLY; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL :: ALL; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE :: NONE; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_32_BIT_ONLY_KHR :: _32_BIT_ONLY_KHR; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_ALL_KHR :: ALL_KHR; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_NONE_KHR :: NONE_KHR; VK_SHADER_FLOAT_CONTROLS_INDEPENDENCE_MAX_ENUM :: MAX_ENUM; } VkSamplerReductionMode :: enum u32 { WEIGHTED_AVERAGE :: 0; MIN :: 1; MAX :: 2; WEIGHTED_AVERAGE_RANGECLAMP_QCOM :: 1000521000; WEIGHTED_AVERAGE_EXT :: 0; MIN_EXT :: 1; MAX_EXT :: 2; MAX_ENUM :: 2147483647; VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE :: WEIGHTED_AVERAGE; VK_SAMPLER_REDUCTION_MODE_MIN :: MIN; VK_SAMPLER_REDUCTION_MODE_MAX :: MAX; VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_RANGECLAMP_QCOM :: WEIGHTED_AVERAGE_RANGECLAMP_QCOM; VK_SAMPLER_REDUCTION_MODE_WEIGHTED_AVERAGE_EXT :: WEIGHTED_AVERAGE_EXT; VK_SAMPLER_REDUCTION_MODE_MIN_EXT :: MIN_EXT; VK_SAMPLER_REDUCTION_MODE_MAX_EXT :: MAX_EXT; VK_SAMPLER_REDUCTION_MODE_MAX_ENUM :: MAX_ENUM; } VkSemaphoreType :: enum u32 { BINARY :: 0; TIMELINE :: 1; BINARY_KHR :: 0; TIMELINE_KHR :: 1; MAX_ENUM :: 2147483647; VK_SEMAPHORE_TYPE_BINARY :: BINARY; VK_SEMAPHORE_TYPE_TIMELINE :: TIMELINE; VK_SEMAPHORE_TYPE_BINARY_KHR :: BINARY_KHR; VK_SEMAPHORE_TYPE_TIMELINE_KHR :: TIMELINE_KHR; VK_SEMAPHORE_TYPE_MAX_ENUM :: MAX_ENUM; } VkResolveModeFlagBits :: enum u32 { NONE :: 0; SAMPLE_ZERO_BIT :: 1; AVERAGE_BIT :: 2; MIN_BIT :: 4; MAX_BIT :: 8; EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID :: 16; NONE_KHR :: 0; SAMPLE_ZERO_BIT_KHR :: 1; AVERAGE_BIT_KHR :: 2; MIN_BIT_KHR :: 4; MAX_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM :: 2147483647; VK_RESOLVE_MODE_NONE :: NONE; VK_RESOLVE_MODE_SAMPLE_ZERO_BIT :: SAMPLE_ZERO_BIT; VK_RESOLVE_MODE_AVERAGE_BIT :: AVERAGE_BIT; VK_RESOLVE_MODE_MIN_BIT :: MIN_BIT; VK_RESOLVE_MODE_MAX_BIT :: MAX_BIT; VK_RESOLVE_MODE_EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID :: EXTERNAL_FORMAT_DOWNSAMPLE_ANDROID; VK_RESOLVE_MODE_NONE_KHR :: NONE_KHR; VK_RESOLVE_MODE_SAMPLE_ZERO_BIT_KHR :: SAMPLE_ZERO_BIT_KHR; VK_RESOLVE_MODE_AVERAGE_BIT_KHR :: AVERAGE_BIT_KHR; VK_RESOLVE_MODE_MIN_BIT_KHR :: MIN_BIT_KHR; VK_RESOLVE_MODE_MAX_BIT_KHR :: MAX_BIT_KHR; VK_RESOLVE_MODE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkResolveModeFlags :: VkFlags; VkDescriptorBindingFlagBits :: enum u32 { UPDATE_AFTER_BIND_BIT :: 1; UPDATE_UNUSED_WHILE_PENDING_BIT :: 2; PARTIALLY_BOUND_BIT :: 4; VARIABLE_DESCRIPTOR_COUNT_BIT :: 8; UPDATE_AFTER_BIND_BIT_EXT :: 1; UPDATE_UNUSED_WHILE_PENDING_BIT_EXT :: 2; PARTIALLY_BOUND_BIT_EXT :: 4; VARIABLE_DESCRIPTOR_COUNT_BIT_EXT :: 8; FLAG_BITS_MAX_ENUM :: 2147483647; VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT :: UPDATE_AFTER_BIND_BIT; VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT :: UPDATE_UNUSED_WHILE_PENDING_BIT; VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT :: PARTIALLY_BOUND_BIT; VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT :: VARIABLE_DESCRIPTOR_COUNT_BIT; VK_DESCRIPTOR_BINDING_UPDATE_AFTER_BIND_BIT_EXT :: UPDATE_AFTER_BIND_BIT_EXT; VK_DESCRIPTOR_BINDING_UPDATE_UNUSED_WHILE_PENDING_BIT_EXT :: UPDATE_UNUSED_WHILE_PENDING_BIT_EXT; VK_DESCRIPTOR_BINDING_PARTIALLY_BOUND_BIT_EXT :: PARTIALLY_BOUND_BIT_EXT; VK_DESCRIPTOR_BINDING_VARIABLE_DESCRIPTOR_COUNT_BIT_EXT :: VARIABLE_DESCRIPTOR_COUNT_BIT_EXT; VK_DESCRIPTOR_BINDING_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkDescriptorBindingFlags :: VkFlags; VkSemaphoreWaitFlagBits :: enum u32 { ANY_BIT :: 1; ANY_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SEMAPHORE_WAIT_ANY_BIT :: ANY_BIT; VK_SEMAPHORE_WAIT_ANY_BIT_KHR :: ANY_BIT_KHR; VK_SEMAPHORE_WAIT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSemaphoreWaitFlags :: VkFlags; VkPhysicalDeviceVulkan11Features :: struct { sType: VkStructureType; pNext: *void; storageBuffer16BitAccess: VkBool32; uniformAndStorageBuffer16BitAccess: VkBool32; storagePushConstant16: VkBool32; storageInputOutput16: VkBool32; multiview: VkBool32; multiviewGeometryShader: VkBool32; multiviewTessellationShader: VkBool32; variablePointersStorageBuffer: VkBool32; variablePointers: VkBool32; protectedMemory: VkBool32; samplerYcbcrConversion: VkBool32; shaderDrawParameters: VkBool32; } VkPhysicalDeviceVulkan11Properties :: struct { sType: VkStructureType; pNext: *void; deviceUUID: [16] u8; driverUUID: [16] u8; deviceLUID: [8] u8; deviceNodeMask: u32; deviceLUIDValid: VkBool32; subgroupSize: u32; subgroupSupportedStages: VkShaderStageFlags; subgroupSupportedOperations: VkSubgroupFeatureFlags; subgroupQuadOperationsInAllStages: VkBool32; pointClippingBehavior: VkPointClippingBehavior; maxMultiviewViewCount: u32; maxMultiviewInstanceIndex: u32; protectedNoFault: VkBool32; maxPerSetDescriptors: u32; maxMemoryAllocationSize: VkDeviceSize; } VkPhysicalDeviceVulkan12Features :: struct { sType: VkStructureType; pNext: *void; samplerMirrorClampToEdge: VkBool32; drawIndirectCount: VkBool32; storageBuffer8BitAccess: VkBool32; uniformAndStorageBuffer8BitAccess: VkBool32; storagePushConstant8: VkBool32; shaderBufferInt64Atomics: VkBool32; shaderSharedInt64Atomics: VkBool32; shaderFloat16: VkBool32; shaderInt8: VkBool32; descriptorIndexing: VkBool32; shaderInputAttachmentArrayDynamicIndexing: VkBool32; shaderUniformTexelBufferArrayDynamicIndexing: VkBool32; shaderStorageTexelBufferArrayDynamicIndexing: VkBool32; shaderUniformBufferArrayNonUniformIndexing: VkBool32; shaderSampledImageArrayNonUniformIndexing: VkBool32; shaderStorageBufferArrayNonUniformIndexing: VkBool32; shaderStorageImageArrayNonUniformIndexing: VkBool32; shaderInputAttachmentArrayNonUniformIndexing: VkBool32; shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32; shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32; descriptorBindingUniformBufferUpdateAfterBind: VkBool32; descriptorBindingSampledImageUpdateAfterBind: VkBool32; descriptorBindingStorageImageUpdateAfterBind: VkBool32; descriptorBindingStorageBufferUpdateAfterBind: VkBool32; descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32; descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32; descriptorBindingUpdateUnusedWhilePending: VkBool32; descriptorBindingPartiallyBound: VkBool32; descriptorBindingVariableDescriptorCount: VkBool32; runtimeDescriptorArray: VkBool32; samplerFilterMinmax: VkBool32; scalarBlockLayout: VkBool32; imagelessFramebuffer: VkBool32; uniformBufferStandardLayout: VkBool32; shaderSubgroupExtendedTypes: VkBool32; separateDepthStencilLayouts: VkBool32; hostQueryReset: VkBool32; timelineSemaphore: VkBool32; bufferDeviceAddress: VkBool32; bufferDeviceAddressCaptureReplay: VkBool32; bufferDeviceAddressMultiDevice: VkBool32; vulkanMemoryModel: VkBool32; vulkanMemoryModelDeviceScope: VkBool32; vulkanMemoryModelAvailabilityVisibilityChains: VkBool32; shaderOutputViewportIndex: VkBool32; shaderOutputLayer: VkBool32; subgroupBroadcastDynamicId: VkBool32; } VkConformanceVersion :: struct { major: u8; minor: u8; subminor: u8; patch: u8; } VkPhysicalDeviceVulkan12Properties :: struct { sType: VkStructureType; pNext: *void; driverID: VkDriverId; driverName: [256] u8; driverInfo: [256] u8; conformanceVersion: VkConformanceVersion; denormBehaviorIndependence: VkShaderFloatControlsIndependence; roundingModeIndependence: VkShaderFloatControlsIndependence; shaderSignedZeroInfNanPreserveFloat16: VkBool32; shaderSignedZeroInfNanPreserveFloat32: VkBool32; shaderSignedZeroInfNanPreserveFloat64: VkBool32; shaderDenormPreserveFloat16: VkBool32; shaderDenormPreserveFloat32: VkBool32; shaderDenormPreserveFloat64: VkBool32; shaderDenormFlushToZeroFloat16: VkBool32; shaderDenormFlushToZeroFloat32: VkBool32; shaderDenormFlushToZeroFloat64: VkBool32; shaderRoundingModeRTEFloat16: VkBool32; shaderRoundingModeRTEFloat32: VkBool32; shaderRoundingModeRTEFloat64: VkBool32; shaderRoundingModeRTZFloat16: VkBool32; shaderRoundingModeRTZFloat32: VkBool32; shaderRoundingModeRTZFloat64: VkBool32; maxUpdateAfterBindDescriptorsInAllPools: u32; shaderUniformBufferArrayNonUniformIndexingNative: VkBool32; shaderSampledImageArrayNonUniformIndexingNative: VkBool32; shaderStorageBufferArrayNonUniformIndexingNative: VkBool32; shaderStorageImageArrayNonUniformIndexingNative: VkBool32; shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32; robustBufferAccessUpdateAfterBind: VkBool32; quadDivergentImplicitLod: VkBool32; maxPerStageDescriptorUpdateAfterBindSamplers: u32; maxPerStageDescriptorUpdateAfterBindUniformBuffers: u32; maxPerStageDescriptorUpdateAfterBindStorageBuffers: u32; maxPerStageDescriptorUpdateAfterBindSampledImages: u32; maxPerStageDescriptorUpdateAfterBindStorageImages: u32; maxPerStageDescriptorUpdateAfterBindInputAttachments: u32; maxPerStageUpdateAfterBindResources: u32; maxDescriptorSetUpdateAfterBindSamplers: u32; maxDescriptorSetUpdateAfterBindUniformBuffers: u32; maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindStorageBuffers: u32; maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindSampledImages: u32; maxDescriptorSetUpdateAfterBindStorageImages: u32; maxDescriptorSetUpdateAfterBindInputAttachments: u32; supportedDepthResolveModes: VkResolveModeFlags; supportedStencilResolveModes: VkResolveModeFlags; independentResolveNone: VkBool32; independentResolve: VkBool32; filterMinmaxSingleComponentFormats: VkBool32; filterMinmaxImageComponentMapping: VkBool32; maxTimelineSemaphoreValueDifference: u64; framebufferIntegerColorSampleCounts: VkSampleCountFlags; } VkImageFormatListCreateInfo :: struct { sType: VkStructureType; pNext: *void; viewFormatCount: u32; pViewFormats: *VkFormat; } VkAttachmentDescription2 :: struct { sType: VkStructureType; pNext: *void; flags: VkAttachmentDescriptionFlags; format: VkFormat; samples: VkSampleCountFlagBits; loadOp: VkAttachmentLoadOp; storeOp: VkAttachmentStoreOp; stencilLoadOp: VkAttachmentLoadOp; stencilStoreOp: VkAttachmentStoreOp; initialLayout: VkImageLayout; finalLayout: VkImageLayout; } VkAttachmentReference2 :: struct { sType: VkStructureType; pNext: *void; attachment: u32; layout: VkImageLayout; aspectMask: VkImageAspectFlags; } VkSubpassDescription2 :: struct { sType: VkStructureType; pNext: *void; flags: VkSubpassDescriptionFlags; pipelineBindPoint: VkPipelineBindPoint; viewMask: u32; inputAttachmentCount: u32; pInputAttachments: *VkAttachmentReference2; colorAttachmentCount: u32; pColorAttachments: *VkAttachmentReference2; pResolveAttachments: *VkAttachmentReference2; pDepthStencilAttachment: *VkAttachmentReference2; preserveAttachmentCount: u32; pPreserveAttachments: *u32; } VkSubpassDependency2 :: struct { sType: VkStructureType; pNext: *void; srcSubpass: u32; dstSubpass: u32; srcStageMask: VkPipelineStageFlags; dstStageMask: VkPipelineStageFlags; srcAccessMask: VkAccessFlags; dstAccessMask: VkAccessFlags; dependencyFlags: VkDependencyFlags; viewOffset: s32; } VkRenderPassCreateInfo2 :: struct { sType: VkStructureType; pNext: *void; flags: VkRenderPassCreateFlags; attachmentCount: u32; pAttachments: *VkAttachmentDescription2; subpassCount: u32; pSubpasses: *VkSubpassDescription2; dependencyCount: u32; pDependencies: *VkSubpassDependency2; correlatedViewMaskCount: u32; pCorrelatedViewMasks: *u32; } VkSubpassBeginInfo :: struct { sType: VkStructureType; pNext: *void; contents: VkSubpassContents; } VkSubpassEndInfo :: struct { sType: VkStructureType; pNext: *void; } VkPhysicalDevice8BitStorageFeatures :: struct { sType: VkStructureType; pNext: *void; storageBuffer8BitAccess: VkBool32; uniformAndStorageBuffer8BitAccess: VkBool32; storagePushConstant8: VkBool32; } VkPhysicalDeviceDriverProperties :: struct { sType: VkStructureType; pNext: *void; driverID: VkDriverId; driverName: [256] u8; driverInfo: [256] u8; conformanceVersion: VkConformanceVersion; } VkPhysicalDeviceShaderAtomicInt64Features :: struct { sType: VkStructureType; pNext: *void; shaderBufferInt64Atomics: VkBool32; shaderSharedInt64Atomics: VkBool32; } VkPhysicalDeviceShaderFloat16Int8Features :: struct { sType: VkStructureType; pNext: *void; shaderFloat16: VkBool32; shaderInt8: VkBool32; } VkPhysicalDeviceFloatControlsProperties :: struct { sType: VkStructureType; pNext: *void; denormBehaviorIndependence: VkShaderFloatControlsIndependence; roundingModeIndependence: VkShaderFloatControlsIndependence; shaderSignedZeroInfNanPreserveFloat16: VkBool32; shaderSignedZeroInfNanPreserveFloat32: VkBool32; shaderSignedZeroInfNanPreserveFloat64: VkBool32; shaderDenormPreserveFloat16: VkBool32; shaderDenormPreserveFloat32: VkBool32; shaderDenormPreserveFloat64: VkBool32; shaderDenormFlushToZeroFloat16: VkBool32; shaderDenormFlushToZeroFloat32: VkBool32; shaderDenormFlushToZeroFloat64: VkBool32; shaderRoundingModeRTEFloat16: VkBool32; shaderRoundingModeRTEFloat32: VkBool32; shaderRoundingModeRTEFloat64: VkBool32; shaderRoundingModeRTZFloat16: VkBool32; shaderRoundingModeRTZFloat32: VkBool32; shaderRoundingModeRTZFloat64: VkBool32; } VkDescriptorSetLayoutBindingFlagsCreateInfo :: struct { sType: VkStructureType; pNext: *void; bindingCount: u32; pBindingFlags: *VkDescriptorBindingFlags; } VkPhysicalDeviceDescriptorIndexingFeatures :: struct { sType: VkStructureType; pNext: *void; shaderInputAttachmentArrayDynamicIndexing: VkBool32; shaderUniformTexelBufferArrayDynamicIndexing: VkBool32; shaderStorageTexelBufferArrayDynamicIndexing: VkBool32; shaderUniformBufferArrayNonUniformIndexing: VkBool32; shaderSampledImageArrayNonUniformIndexing: VkBool32; shaderStorageBufferArrayNonUniformIndexing: VkBool32; shaderStorageImageArrayNonUniformIndexing: VkBool32; shaderInputAttachmentArrayNonUniformIndexing: VkBool32; shaderUniformTexelBufferArrayNonUniformIndexing: VkBool32; shaderStorageTexelBufferArrayNonUniformIndexing: VkBool32; descriptorBindingUniformBufferUpdateAfterBind: VkBool32; descriptorBindingSampledImageUpdateAfterBind: VkBool32; descriptorBindingStorageImageUpdateAfterBind: VkBool32; descriptorBindingStorageBufferUpdateAfterBind: VkBool32; descriptorBindingUniformTexelBufferUpdateAfterBind: VkBool32; descriptorBindingStorageTexelBufferUpdateAfterBind: VkBool32; descriptorBindingUpdateUnusedWhilePending: VkBool32; descriptorBindingPartiallyBound: VkBool32; descriptorBindingVariableDescriptorCount: VkBool32; runtimeDescriptorArray: VkBool32; } VkPhysicalDeviceDescriptorIndexingProperties :: struct { sType: VkStructureType; pNext: *void; maxUpdateAfterBindDescriptorsInAllPools: u32; shaderUniformBufferArrayNonUniformIndexingNative: VkBool32; shaderSampledImageArrayNonUniformIndexingNative: VkBool32; shaderStorageBufferArrayNonUniformIndexingNative: VkBool32; shaderStorageImageArrayNonUniformIndexingNative: VkBool32; shaderInputAttachmentArrayNonUniformIndexingNative: VkBool32; robustBufferAccessUpdateAfterBind: VkBool32; quadDivergentImplicitLod: VkBool32; maxPerStageDescriptorUpdateAfterBindSamplers: u32; maxPerStageDescriptorUpdateAfterBindUniformBuffers: u32; maxPerStageDescriptorUpdateAfterBindStorageBuffers: u32; maxPerStageDescriptorUpdateAfterBindSampledImages: u32; maxPerStageDescriptorUpdateAfterBindStorageImages: u32; maxPerStageDescriptorUpdateAfterBindInputAttachments: u32; maxPerStageUpdateAfterBindResources: u32; maxDescriptorSetUpdateAfterBindSamplers: u32; maxDescriptorSetUpdateAfterBindUniformBuffers: u32; maxDescriptorSetUpdateAfterBindUniformBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindStorageBuffers: u32; maxDescriptorSetUpdateAfterBindStorageBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindSampledImages: u32; maxDescriptorSetUpdateAfterBindStorageImages: u32; maxDescriptorSetUpdateAfterBindInputAttachments: u32; } VkDescriptorSetVariableDescriptorCountAllocateInfo :: struct { sType: VkStructureType; pNext: *void; descriptorSetCount: u32; pDescriptorCounts: *u32; } VkDescriptorSetVariableDescriptorCountLayoutSupport :: struct { sType: VkStructureType; pNext: *void; maxVariableDescriptorCount: u32; } VkSubpassDescriptionDepthStencilResolve :: struct { sType: VkStructureType; pNext: *void; depthResolveMode: VkResolveModeFlagBits; stencilResolveMode: VkResolveModeFlagBits; pDepthStencilResolveAttachment: *VkAttachmentReference2; } VkPhysicalDeviceDepthStencilResolveProperties :: struct { sType: VkStructureType; pNext: *void; supportedDepthResolveModes: VkResolveModeFlags; supportedStencilResolveModes: VkResolveModeFlags; independentResolveNone: VkBool32; independentResolve: VkBool32; } VkPhysicalDeviceScalarBlockLayoutFeatures :: struct { sType: VkStructureType; pNext: *void; scalarBlockLayout: VkBool32; } VkImageStencilUsageCreateInfo :: struct { sType: VkStructureType; pNext: *void; stencilUsage: VkImageUsageFlags; } VkSamplerReductionModeCreateInfo :: struct { sType: VkStructureType; pNext: *void; reductionMode: VkSamplerReductionMode; } VkPhysicalDeviceSamplerFilterMinmaxProperties :: struct { sType: VkStructureType; pNext: *void; filterMinmaxSingleComponentFormats: VkBool32; filterMinmaxImageComponentMapping: VkBool32; } VkPhysicalDeviceVulkanMemoryModelFeatures :: struct { sType: VkStructureType; pNext: *void; vulkanMemoryModel: VkBool32; vulkanMemoryModelDeviceScope: VkBool32; vulkanMemoryModelAvailabilityVisibilityChains: VkBool32; } VkPhysicalDeviceImagelessFramebufferFeatures :: struct { sType: VkStructureType; pNext: *void; imagelessFramebuffer: VkBool32; } VkFramebufferAttachmentImageInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkImageCreateFlags; usage: VkImageUsageFlags; width: u32; height: u32; layerCount: u32; viewFormatCount: u32; pViewFormats: *VkFormat; } VkFramebufferAttachmentsCreateInfo :: struct { sType: VkStructureType; pNext: *void; attachmentImageInfoCount: u32; pAttachmentImageInfos: *VkFramebufferAttachmentImageInfo; } VkRenderPassAttachmentBeginInfo :: struct { sType: VkStructureType; pNext: *void; attachmentCount: u32; pAttachments: *VkImageView; } VkPhysicalDeviceUniformBufferStandardLayoutFeatures :: struct { sType: VkStructureType; pNext: *void; uniformBufferStandardLayout: VkBool32; } VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures :: struct { sType: VkStructureType; pNext: *void; shaderSubgroupExtendedTypes: VkBool32; } VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures :: struct { sType: VkStructureType; pNext: *void; separateDepthStencilLayouts: VkBool32; } VkAttachmentReferenceStencilLayout :: struct { sType: VkStructureType; pNext: *void; stencilLayout: VkImageLayout; } VkAttachmentDescriptionStencilLayout :: struct { sType: VkStructureType; pNext: *void; stencilInitialLayout: VkImageLayout; stencilFinalLayout: VkImageLayout; } VkPhysicalDeviceHostQueryResetFeatures :: struct { sType: VkStructureType; pNext: *void; hostQueryReset: VkBool32; } VkPhysicalDeviceTimelineSemaphoreFeatures :: struct { sType: VkStructureType; pNext: *void; timelineSemaphore: VkBool32; } VkPhysicalDeviceTimelineSemaphoreProperties :: struct { sType: VkStructureType; pNext: *void; maxTimelineSemaphoreValueDifference: u64; } VkSemaphoreTypeCreateInfo :: struct { sType: VkStructureType; pNext: *void; semaphoreType: VkSemaphoreType; initialValue: u64; } VkTimelineSemaphoreSubmitInfo :: struct { sType: VkStructureType; pNext: *void; waitSemaphoreValueCount: u32; pWaitSemaphoreValues: *u64; signalSemaphoreValueCount: u32; pSignalSemaphoreValues: *u64; } VkSemaphoreWaitInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkSemaphoreWaitFlags; semaphoreCount: u32; pSemaphores: *VkSemaphore; pValues: *u64; } VkSemaphoreSignalInfo :: struct { sType: VkStructureType; pNext: *void; semaphore: VkSemaphore; value: u64; } VkPhysicalDeviceBufferDeviceAddressFeatures :: struct { sType: VkStructureType; pNext: *void; bufferDeviceAddress: VkBool32; bufferDeviceAddressCaptureReplay: VkBool32; bufferDeviceAddressMultiDevice: VkBool32; } VkBufferDeviceAddressInfo :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; } VkBufferOpaqueCaptureAddressCreateInfo :: struct { sType: VkStructureType; pNext: *void; opaqueCaptureAddress: u64; } VkMemoryOpaqueCaptureAddressAllocateInfo :: struct { sType: VkStructureType; pNext: *void; opaqueCaptureAddress: u64; } VkDeviceMemoryOpaqueCaptureAddressInfo :: struct { sType: VkStructureType; pNext: *void; memory: VkDeviceMemory; } PFN_vkCmdDrawIndirectCount :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawIndexedIndirectCount :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; PFN_vkCreateRenderPass2 :: #type (device: VkDevice, pCreateInfo: *VkRenderPassCreateInfo2, pAllocator: *VkAllocationCallbacks, pRenderPass: *VkRenderPass) -> VkResult #c_call; PFN_vkCmdBeginRenderPass2 :: #type (commandBuffer: VkCommandBuffer, pRenderPassBegin: *VkRenderPassBeginInfo, pSubpassBeginInfo: *VkSubpassBeginInfo) -> void #c_call; PFN_vkCmdNextSubpass2 :: #type (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: *VkSubpassBeginInfo, pSubpassEndInfo: *VkSubpassEndInfo) -> void #c_call; PFN_vkCmdEndRenderPass2 :: #type (commandBuffer: VkCommandBuffer, pSubpassEndInfo: *VkSubpassEndInfo) -> void #c_call; PFN_vkResetQueryPool :: #type (device: VkDevice, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32) -> void #c_call; PFN_vkGetSemaphoreCounterValue :: #type (device: VkDevice, semaphore: VkSemaphore, pValue: *u64) -> VkResult #c_call; PFN_vkWaitSemaphores :: #type (device: VkDevice, pWaitInfo: *VkSemaphoreWaitInfo, timeout: u64) -> VkResult #c_call; PFN_vkSignalSemaphore :: #type (device: VkDevice, pSignalInfo: *VkSemaphoreSignalInfo) -> VkResult #c_call; PFN_vkGetBufferDeviceAddress :: #type (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> VkDeviceAddress #c_call; PFN_vkGetBufferOpaqueCaptureAddress :: #type (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> u64 #c_call; PFN_vkGetDeviceMemoryOpaqueCaptureAddress :: #type (device: VkDevice, pInfo: *VkDeviceMemoryOpaqueCaptureAddressInfo) -> u64 #c_call; vkCmdDrawIndirectCount :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #foreign libvulkan; vkCmdDrawIndexedIndirectCount :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #foreign libvulkan; vkCreateRenderPass2 :: (device: VkDevice, pCreateInfo: *VkRenderPassCreateInfo2, pAllocator: *VkAllocationCallbacks, pRenderPass: *VkRenderPass) -> VkResult #foreign libvulkan; vkCmdBeginRenderPass2 :: (commandBuffer: VkCommandBuffer, pRenderPassBegin: *VkRenderPassBeginInfo, pSubpassBeginInfo: *VkSubpassBeginInfo) -> void #foreign libvulkan; vkCmdNextSubpass2 :: (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: *VkSubpassBeginInfo, pSubpassEndInfo: *VkSubpassEndInfo) -> void #foreign libvulkan; vkCmdEndRenderPass2 :: (commandBuffer: VkCommandBuffer, pSubpassEndInfo: *VkSubpassEndInfo) -> void #foreign libvulkan; vkResetQueryPool :: (device: VkDevice, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32) -> void #foreign libvulkan; vkGetSemaphoreCounterValue :: (device: VkDevice, semaphore: VkSemaphore, pValue: *u64) -> VkResult #foreign libvulkan; vkWaitSemaphores :: (device: VkDevice, pWaitInfo: *VkSemaphoreWaitInfo, timeout: u64) -> VkResult #foreign libvulkan; vkSignalSemaphore :: (device: VkDevice, pSignalInfo: *VkSemaphoreSignalInfo) -> VkResult #foreign libvulkan; vkGetBufferDeviceAddress :: (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> VkDeviceAddress #foreign libvulkan; vkGetBufferOpaqueCaptureAddress :: (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> u64 #foreign libvulkan; vkGetDeviceMemoryOpaqueCaptureAddress :: (device: VkDevice, pInfo: *VkDeviceMemoryOpaqueCaptureAddressInfo) -> u64 #foreign libvulkan; VkFlags64 :: u64; VkPrivateDataSlot_T :: struct {} VkPrivateDataSlot :: *VkPrivateDataSlot_T; VkPipelineCreationFeedbackFlagBits :: enum u32 { VALID_BIT :: 1; APPLICATION_PIPELINE_CACHE_HIT_BIT :: 2; BASE_PIPELINE_ACCELERATION_BIT :: 4; VALID_BIT_EXT :: 1; APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT :: 2; BASE_PIPELINE_ACCELERATION_BIT_EXT :: 4; FLAG_BITS_MAX_ENUM :: 2147483647; VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT :: VALID_BIT; VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT :: APPLICATION_PIPELINE_CACHE_HIT_BIT; VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT :: BASE_PIPELINE_ACCELERATION_BIT; VK_PIPELINE_CREATION_FEEDBACK_VALID_BIT_EXT :: VALID_BIT_EXT; VK_PIPELINE_CREATION_FEEDBACK_APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT :: APPLICATION_PIPELINE_CACHE_HIT_BIT_EXT; VK_PIPELINE_CREATION_FEEDBACK_BASE_PIPELINE_ACCELERATION_BIT_EXT :: BASE_PIPELINE_ACCELERATION_BIT_EXT; VK_PIPELINE_CREATION_FEEDBACK_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkPipelineCreationFeedbackFlags :: VkFlags; VkToolPurposeFlagBits :: enum u32 { VALIDATION_BIT :: 1; PROFILING_BIT :: 2; TRACING_BIT :: 4; ADDITIONAL_FEATURES_BIT :: 8; MODIFYING_FEATURES_BIT :: 16; DEBUG_REPORTING_BIT_EXT :: 32; DEBUG_MARKERS_BIT_EXT :: 64; VALIDATION_BIT_EXT :: 1; PROFILING_BIT_EXT :: 2; TRACING_BIT_EXT :: 4; ADDITIONAL_FEATURES_BIT_EXT :: 8; MODIFYING_FEATURES_BIT_EXT :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_TOOL_PURPOSE_VALIDATION_BIT :: VALIDATION_BIT; VK_TOOL_PURPOSE_PROFILING_BIT :: PROFILING_BIT; VK_TOOL_PURPOSE_TRACING_BIT :: TRACING_BIT; VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT :: ADDITIONAL_FEATURES_BIT; VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT :: MODIFYING_FEATURES_BIT; VK_TOOL_PURPOSE_DEBUG_REPORTING_BIT_EXT :: DEBUG_REPORTING_BIT_EXT; VK_TOOL_PURPOSE_DEBUG_MARKERS_BIT_EXT :: DEBUG_MARKERS_BIT_EXT; VK_TOOL_PURPOSE_VALIDATION_BIT_EXT :: VALIDATION_BIT_EXT; VK_TOOL_PURPOSE_PROFILING_BIT_EXT :: PROFILING_BIT_EXT; VK_TOOL_PURPOSE_TRACING_BIT_EXT :: TRACING_BIT_EXT; VK_TOOL_PURPOSE_ADDITIONAL_FEATURES_BIT_EXT :: ADDITIONAL_FEATURES_BIT_EXT; VK_TOOL_PURPOSE_MODIFYING_FEATURES_BIT_EXT :: MODIFYING_FEATURES_BIT_EXT; VK_TOOL_PURPOSE_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkToolPurposeFlags :: VkFlags; VkPrivateDataSlotCreateFlags :: VkFlags; VkPipelineStageFlags2 :: VkFlags64; // Flag bits for VkPipelineStageFlagBits2 VkPipelineStageFlagBits2 :: VkFlags64; VK_PIPELINE_STAGE_2_NONE: VkPipelineStageFlagBits2 : 0; VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT: VkPipelineStageFlagBits2 : 1; VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT: VkPipelineStageFlagBits2 : 2; VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT: VkPipelineStageFlagBits2 : 4; VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT: VkPipelineStageFlagBits2 : 8; VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT: VkPipelineStageFlagBits2 : 16; VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT: VkPipelineStageFlagBits2 : 32; VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT: VkPipelineStageFlagBits2 : 64; VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT: VkPipelineStageFlagBits2 : 128; VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT: VkPipelineStageFlagBits2 : 256; VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT: VkPipelineStageFlagBits2 : 512; VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT: VkPipelineStageFlagBits2 : 1024; VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT: VkPipelineStageFlagBits2 : 2048; VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT: VkPipelineStageFlagBits2 : 4096; VK_PIPELINE_STAGE_2_TRANSFER_BIT: VkPipelineStageFlagBits2 : 4096; VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT: VkPipelineStageFlagBits2 : 8192; VK_PIPELINE_STAGE_2_HOST_BIT: VkPipelineStageFlagBits2 : 16384; VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT: VkPipelineStageFlagBits2 : 32768; VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT: VkPipelineStageFlagBits2 : 65536; VK_PIPELINE_STAGE_2_COPY_BIT: VkPipelineStageFlagBits2 : 4294967296; VK_PIPELINE_STAGE_2_RESOLVE_BIT: VkPipelineStageFlagBits2 : 8589934592; VK_PIPELINE_STAGE_2_BLIT_BIT: VkPipelineStageFlagBits2 : 17179869184; VK_PIPELINE_STAGE_2_CLEAR_BIT: VkPipelineStageFlagBits2 : 34359738368; VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT: VkPipelineStageFlagBits2 : 68719476736; VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT: VkPipelineStageFlagBits2 : 137438953472; VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT: VkPipelineStageFlagBits2 : 274877906944; VK_PIPELINE_STAGE_2_VIDEO_DECODE_BIT_KHR: VkPipelineStageFlagBits2 : 67108864; VK_PIPELINE_STAGE_2_VIDEO_ENCODE_BIT_KHR: VkPipelineStageFlagBits2 : 134217728; VK_PIPELINE_STAGE_2_NONE_KHR: VkPipelineStageFlagBits2 : 0; VK_PIPELINE_STAGE_2_TOP_OF_PIPE_BIT_KHR: VkPipelineStageFlagBits2 : 1; VK_PIPELINE_STAGE_2_DRAW_INDIRECT_BIT_KHR: VkPipelineStageFlagBits2 : 2; VK_PIPELINE_STAGE_2_VERTEX_INPUT_BIT_KHR: VkPipelineStageFlagBits2 : 4; VK_PIPELINE_STAGE_2_VERTEX_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 8; VK_PIPELINE_STAGE_2_TESSELLATION_CONTROL_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 16; VK_PIPELINE_STAGE_2_TESSELLATION_EVALUATION_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 32; VK_PIPELINE_STAGE_2_GEOMETRY_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 64; VK_PIPELINE_STAGE_2_FRAGMENT_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 128; VK_PIPELINE_STAGE_2_EARLY_FRAGMENT_TESTS_BIT_KHR: VkPipelineStageFlagBits2 : 256; VK_PIPELINE_STAGE_2_LATE_FRAGMENT_TESTS_BIT_KHR: VkPipelineStageFlagBits2 : 512; VK_PIPELINE_STAGE_2_COLOR_ATTACHMENT_OUTPUT_BIT_KHR: VkPipelineStageFlagBits2 : 1024; VK_PIPELINE_STAGE_2_COMPUTE_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 2048; VK_PIPELINE_STAGE_2_ALL_TRANSFER_BIT_KHR: VkPipelineStageFlagBits2 : 4096; VK_PIPELINE_STAGE_2_TRANSFER_BIT_KHR: VkPipelineStageFlagBits2 : 4096; VK_PIPELINE_STAGE_2_BOTTOM_OF_PIPE_BIT_KHR: VkPipelineStageFlagBits2 : 8192; VK_PIPELINE_STAGE_2_HOST_BIT_KHR: VkPipelineStageFlagBits2 : 16384; VK_PIPELINE_STAGE_2_ALL_GRAPHICS_BIT_KHR: VkPipelineStageFlagBits2 : 32768; VK_PIPELINE_STAGE_2_ALL_COMMANDS_BIT_KHR: VkPipelineStageFlagBits2 : 65536; VK_PIPELINE_STAGE_2_COPY_BIT_KHR: VkPipelineStageFlagBits2 : 4294967296; VK_PIPELINE_STAGE_2_RESOLVE_BIT_KHR: VkPipelineStageFlagBits2 : 8589934592; VK_PIPELINE_STAGE_2_BLIT_BIT_KHR: VkPipelineStageFlagBits2 : 17179869184; VK_PIPELINE_STAGE_2_CLEAR_BIT_KHR: VkPipelineStageFlagBits2 : 34359738368; VK_PIPELINE_STAGE_2_INDEX_INPUT_BIT_KHR: VkPipelineStageFlagBits2 : 68719476736; VK_PIPELINE_STAGE_2_VERTEX_ATTRIBUTE_INPUT_BIT_KHR: VkPipelineStageFlagBits2 : 137438953472; VK_PIPELINE_STAGE_2_PRE_RASTERIZATION_SHADERS_BIT_KHR: VkPipelineStageFlagBits2 : 274877906944; VK_PIPELINE_STAGE_2_TRANSFORM_FEEDBACK_BIT_EXT: VkPipelineStageFlagBits2 : 16777216; VK_PIPELINE_STAGE_2_CONDITIONAL_RENDERING_BIT_EXT: VkPipelineStageFlagBits2 : 262144; VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_NV: VkPipelineStageFlagBits2 : 131072; VK_PIPELINE_STAGE_2_COMMAND_PREPROCESS_BIT_EXT: VkPipelineStageFlagBits2 : 131072; VK_PIPELINE_STAGE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR: VkPipelineStageFlagBits2 : 4194304; VK_PIPELINE_STAGE_2_SHADING_RATE_IMAGE_BIT_NV: VkPipelineStageFlagBits2 : 4194304; VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_KHR: VkPipelineStageFlagBits2 : 33554432; VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_KHR: VkPipelineStageFlagBits2 : 2097152; VK_PIPELINE_STAGE_2_RAY_TRACING_SHADER_BIT_NV: VkPipelineStageFlagBits2 : 2097152; VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_BUILD_BIT_NV: VkPipelineStageFlagBits2 : 33554432; VK_PIPELINE_STAGE_2_FRAGMENT_DENSITY_PROCESS_BIT_EXT: VkPipelineStageFlagBits2 : 8388608; VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_NV: VkPipelineStageFlagBits2 : 524288; VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_NV: VkPipelineStageFlagBits2 : 1048576; VK_PIPELINE_STAGE_2_TASK_SHADER_BIT_EXT: VkPipelineStageFlagBits2 : 524288; VK_PIPELINE_STAGE_2_MESH_SHADER_BIT_EXT: VkPipelineStageFlagBits2 : 1048576; VK_PIPELINE_STAGE_2_SUBPASS_SHADER_BIT_HUAWEI: VkPipelineStageFlagBits2 : 549755813888; // VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI is a deprecated alias VK_PIPELINE_STAGE_2_SUBPASS_SHADING_BIT_HUAWEI: VkPipelineStageFlagBits2 : 549755813888; VK_PIPELINE_STAGE_2_INVOCATION_MASK_BIT_HUAWEI: VkPipelineStageFlagBits2 : 1099511627776; VK_PIPELINE_STAGE_2_ACCELERATION_STRUCTURE_COPY_BIT_KHR: VkPipelineStageFlagBits2 : 268435456; VK_PIPELINE_STAGE_2_MICROMAP_BUILD_BIT_EXT: VkPipelineStageFlagBits2 : 1073741824; VK_PIPELINE_STAGE_2_CLUSTER_CULLING_SHADER_BIT_HUAWEI: VkPipelineStageFlagBits2 : 2199023255552; VK_PIPELINE_STAGE_2_OPTICAL_FLOW_BIT_NV: VkPipelineStageFlagBits2 : 536870912; VK_PIPELINE_STAGE_2_CONVERT_COOPERATIVE_VECTOR_MATRIX_BIT_NV: VkPipelineStageFlagBits2 : 17592186044416; VkAccessFlags2 :: VkFlags64; // Flag bits for VkAccessFlagBits2 VkAccessFlagBits2 :: VkFlags64; VK_ACCESS_2_NONE: VkAccessFlagBits2 : 0; VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT: VkAccessFlagBits2 : 1; VK_ACCESS_2_INDEX_READ_BIT: VkAccessFlagBits2 : 2; VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT: VkAccessFlagBits2 : 4; VK_ACCESS_2_UNIFORM_READ_BIT: VkAccessFlagBits2 : 8; VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT: VkAccessFlagBits2 : 16; VK_ACCESS_2_SHADER_READ_BIT: VkAccessFlagBits2 : 32; VK_ACCESS_2_SHADER_WRITE_BIT: VkAccessFlagBits2 : 64; VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT: VkAccessFlagBits2 : 128; VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT: VkAccessFlagBits2 : 256; VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT: VkAccessFlagBits2 : 512; VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT: VkAccessFlagBits2 : 1024; VK_ACCESS_2_TRANSFER_READ_BIT: VkAccessFlagBits2 : 2048; VK_ACCESS_2_TRANSFER_WRITE_BIT: VkAccessFlagBits2 : 4096; VK_ACCESS_2_HOST_READ_BIT: VkAccessFlagBits2 : 8192; VK_ACCESS_2_HOST_WRITE_BIT: VkAccessFlagBits2 : 16384; VK_ACCESS_2_MEMORY_READ_BIT: VkAccessFlagBits2 : 32768; VK_ACCESS_2_MEMORY_WRITE_BIT: VkAccessFlagBits2 : 65536; VK_ACCESS_2_SHADER_SAMPLED_READ_BIT: VkAccessFlagBits2 : 4294967296; VK_ACCESS_2_SHADER_STORAGE_READ_BIT: VkAccessFlagBits2 : 8589934592; VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT: VkAccessFlagBits2 : 17179869184; VK_ACCESS_2_VIDEO_DECODE_READ_BIT_KHR: VkAccessFlagBits2 : 34359738368; VK_ACCESS_2_VIDEO_DECODE_WRITE_BIT_KHR: VkAccessFlagBits2 : 68719476736; VK_ACCESS_2_VIDEO_ENCODE_READ_BIT_KHR: VkAccessFlagBits2 : 137438953472; VK_ACCESS_2_VIDEO_ENCODE_WRITE_BIT_KHR: VkAccessFlagBits2 : 274877906944; VK_ACCESS_2_SHADER_TILE_ATTACHMENT_READ_BIT_QCOM: VkAccessFlagBits2 : 2251799813685248; VK_ACCESS_2_SHADER_TILE_ATTACHMENT_WRITE_BIT_QCOM: VkAccessFlagBits2 : 4503599627370496; VK_ACCESS_2_NONE_KHR: VkAccessFlagBits2 : 0; VK_ACCESS_2_INDIRECT_COMMAND_READ_BIT_KHR: VkAccessFlagBits2 : 1; VK_ACCESS_2_INDEX_READ_BIT_KHR: VkAccessFlagBits2 : 2; VK_ACCESS_2_VERTEX_ATTRIBUTE_READ_BIT_KHR: VkAccessFlagBits2 : 4; VK_ACCESS_2_UNIFORM_READ_BIT_KHR: VkAccessFlagBits2 : 8; VK_ACCESS_2_INPUT_ATTACHMENT_READ_BIT_KHR: VkAccessFlagBits2 : 16; VK_ACCESS_2_SHADER_READ_BIT_KHR: VkAccessFlagBits2 : 32; VK_ACCESS_2_SHADER_WRITE_BIT_KHR: VkAccessFlagBits2 : 64; VK_ACCESS_2_COLOR_ATTACHMENT_READ_BIT_KHR: VkAccessFlagBits2 : 128; VK_ACCESS_2_COLOR_ATTACHMENT_WRITE_BIT_KHR: VkAccessFlagBits2 : 256; VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_READ_BIT_KHR: VkAccessFlagBits2 : 512; VK_ACCESS_2_DEPTH_STENCIL_ATTACHMENT_WRITE_BIT_KHR: VkAccessFlagBits2 : 1024; VK_ACCESS_2_TRANSFER_READ_BIT_KHR: VkAccessFlagBits2 : 2048; VK_ACCESS_2_TRANSFER_WRITE_BIT_KHR: VkAccessFlagBits2 : 4096; VK_ACCESS_2_HOST_READ_BIT_KHR: VkAccessFlagBits2 : 8192; VK_ACCESS_2_HOST_WRITE_BIT_KHR: VkAccessFlagBits2 : 16384; VK_ACCESS_2_MEMORY_READ_BIT_KHR: VkAccessFlagBits2 : 32768; VK_ACCESS_2_MEMORY_WRITE_BIT_KHR: VkAccessFlagBits2 : 65536; VK_ACCESS_2_SHADER_SAMPLED_READ_BIT_KHR: VkAccessFlagBits2 : 4294967296; VK_ACCESS_2_SHADER_STORAGE_READ_BIT_KHR: VkAccessFlagBits2 : 8589934592; VK_ACCESS_2_SHADER_STORAGE_WRITE_BIT_KHR: VkAccessFlagBits2 : 17179869184; VK_ACCESS_2_TRANSFORM_FEEDBACK_WRITE_BIT_EXT: VkAccessFlagBits2 : 33554432; VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_READ_BIT_EXT: VkAccessFlagBits2 : 67108864; VK_ACCESS_2_TRANSFORM_FEEDBACK_COUNTER_WRITE_BIT_EXT: VkAccessFlagBits2 : 134217728; VK_ACCESS_2_CONDITIONAL_RENDERING_READ_BIT_EXT: VkAccessFlagBits2 : 1048576; VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_NV: VkAccessFlagBits2 : 131072; VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_NV: VkAccessFlagBits2 : 262144; VK_ACCESS_2_COMMAND_PREPROCESS_READ_BIT_EXT: VkAccessFlagBits2 : 131072; VK_ACCESS_2_COMMAND_PREPROCESS_WRITE_BIT_EXT: VkAccessFlagBits2 : 262144; VK_ACCESS_2_FRAGMENT_SHADING_RATE_ATTACHMENT_READ_BIT_KHR: VkAccessFlagBits2 : 8388608; VK_ACCESS_2_SHADING_RATE_IMAGE_READ_BIT_NV: VkAccessFlagBits2 : 8388608; VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_KHR: VkAccessFlagBits2 : 2097152; VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_KHR: VkAccessFlagBits2 : 4194304; VK_ACCESS_2_ACCELERATION_STRUCTURE_READ_BIT_NV: VkAccessFlagBits2 : 2097152; VK_ACCESS_2_ACCELERATION_STRUCTURE_WRITE_BIT_NV: VkAccessFlagBits2 : 4194304; VK_ACCESS_2_FRAGMENT_DENSITY_MAP_READ_BIT_EXT: VkAccessFlagBits2 : 16777216; VK_ACCESS_2_COLOR_ATTACHMENT_READ_NONCOHERENT_BIT_EXT: VkAccessFlagBits2 : 524288; VK_ACCESS_2_DESCRIPTOR_BUFFER_READ_BIT_EXT: VkAccessFlagBits2 : 2199023255552; VK_ACCESS_2_INVOCATION_MASK_READ_BIT_HUAWEI: VkAccessFlagBits2 : 549755813888; VK_ACCESS_2_SHADER_BINDING_TABLE_READ_BIT_KHR: VkAccessFlagBits2 : 1099511627776; VK_ACCESS_2_MICROMAP_READ_BIT_EXT: VkAccessFlagBits2 : 17592186044416; VK_ACCESS_2_MICROMAP_WRITE_BIT_EXT: VkAccessFlagBits2 : 35184372088832; VK_ACCESS_2_OPTICAL_FLOW_READ_BIT_NV: VkAccessFlagBits2 : 4398046511104; VK_ACCESS_2_OPTICAL_FLOW_WRITE_BIT_NV: VkAccessFlagBits2 : 8796093022208; VkSubmitFlagBits :: enum u32 { PROTECTED_BIT :: 1; PROTECTED_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_SUBMIT_PROTECTED_BIT :: PROTECTED_BIT; VK_SUBMIT_PROTECTED_BIT_KHR :: PROTECTED_BIT_KHR; VK_SUBMIT_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkSubmitFlags :: VkFlags; VkRenderingFlagBits :: enum u32 { CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT :: 1; SUSPENDING_BIT :: 2; RESUMING_BIT :: 4; ENABLE_LEGACY_DITHERING_BIT_EXT :: 8; CONTENTS_INLINE_BIT_KHR :: 16; CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR :: 1; SUSPENDING_BIT_KHR :: 2; RESUMING_BIT_KHR :: 4; CONTENTS_INLINE_BIT_EXT :: 16; FLAG_BITS_MAX_ENUM :: 2147483647; VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT :: CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT; VK_RENDERING_SUSPENDING_BIT :: SUSPENDING_BIT; VK_RENDERING_RESUMING_BIT :: RESUMING_BIT; VK_RENDERING_ENABLE_LEGACY_DITHERING_BIT_EXT :: ENABLE_LEGACY_DITHERING_BIT_EXT; VK_RENDERING_CONTENTS_INLINE_BIT_KHR :: CONTENTS_INLINE_BIT_KHR; VK_RENDERING_CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR :: CONTENTS_SECONDARY_COMMAND_BUFFERS_BIT_KHR; VK_RENDERING_SUSPENDING_BIT_KHR :: SUSPENDING_BIT_KHR; VK_RENDERING_RESUMING_BIT_KHR :: RESUMING_BIT_KHR; VK_RENDERING_CONTENTS_INLINE_BIT_EXT :: CONTENTS_INLINE_BIT_EXT; VK_RENDERING_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkRenderingFlags :: VkFlags; VkFormatFeatureFlags2 :: VkFlags64; // Flag bits for VkFormatFeatureFlagBits2 VkFormatFeatureFlagBits2 :: VkFlags64; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT: VkFormatFeatureFlagBits2 : 1; VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT: VkFormatFeatureFlagBits2 : 2; VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT: VkFormatFeatureFlagBits2 : 4; VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT: VkFormatFeatureFlagBits2 : 8; VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT: VkFormatFeatureFlagBits2 : 16; VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT: VkFormatFeatureFlagBits2 : 32; VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT: VkFormatFeatureFlagBits2 : 64; VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT: VkFormatFeatureFlagBits2 : 128; VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT: VkFormatFeatureFlagBits2 : 256; VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT: VkFormatFeatureFlagBits2 : 512; VK_FORMAT_FEATURE_2_BLIT_SRC_BIT: VkFormatFeatureFlagBits2 : 1024; VK_FORMAT_FEATURE_2_BLIT_DST_BIT: VkFormatFeatureFlagBits2 : 2048; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT: VkFormatFeatureFlagBits2 : 4096; VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT: VkFormatFeatureFlagBits2 : 16384; VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT: VkFormatFeatureFlagBits2 : 32768; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT: VkFormatFeatureFlagBits2 : 65536; VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT: VkFormatFeatureFlagBits2 : 131072; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT: VkFormatFeatureFlagBits2 : 262144; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT: VkFormatFeatureFlagBits2 : 524288; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT: VkFormatFeatureFlagBits2 : 1048576; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT: VkFormatFeatureFlagBits2 : 2097152; VK_FORMAT_FEATURE_2_DISJOINT_BIT: VkFormatFeatureFlagBits2 : 4194304; VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT: VkFormatFeatureFlagBits2 : 8388608; VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT: VkFormatFeatureFlagBits2 : 2147483648; VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT: VkFormatFeatureFlagBits2 : 4294967296; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT: VkFormatFeatureFlagBits2 : 8589934592; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT: VkFormatFeatureFlagBits2 : 8192; VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT: VkFormatFeatureFlagBits2 : 70368744177664; VK_FORMAT_FEATURE_2_VIDEO_DECODE_OUTPUT_BIT_KHR: VkFormatFeatureFlagBits2 : 33554432; VK_FORMAT_FEATURE_2_VIDEO_DECODE_DPB_BIT_KHR: VkFormatFeatureFlagBits2 : 67108864; VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_VERTEX_BUFFER_BIT_KHR: VkFormatFeatureFlagBits2 : 536870912; VK_FORMAT_FEATURE_2_FRAGMENT_DENSITY_MAP_BIT_EXT: VkFormatFeatureFlagBits2 : 16777216; VK_FORMAT_FEATURE_2_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR: VkFormatFeatureFlagBits2 : 1073741824; VK_FORMAT_FEATURE_2_HOST_IMAGE_TRANSFER_BIT_EXT: VkFormatFeatureFlagBits2 : 70368744177664; VK_FORMAT_FEATURE_2_VIDEO_ENCODE_INPUT_BIT_KHR: VkFormatFeatureFlagBits2 : 134217728; VK_FORMAT_FEATURE_2_VIDEO_ENCODE_DPB_BIT_KHR: VkFormatFeatureFlagBits2 : 268435456; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_BIT_KHR: VkFormatFeatureFlagBits2 : 1; VK_FORMAT_FEATURE_2_STORAGE_IMAGE_BIT_KHR: VkFormatFeatureFlagBits2 : 2; VK_FORMAT_FEATURE_2_STORAGE_IMAGE_ATOMIC_BIT_KHR: VkFormatFeatureFlagBits2 : 4; VK_FORMAT_FEATURE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR: VkFormatFeatureFlagBits2 : 8; VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_BIT_KHR: VkFormatFeatureFlagBits2 : 16; VK_FORMAT_FEATURE_2_STORAGE_TEXEL_BUFFER_ATOMIC_BIT_KHR: VkFormatFeatureFlagBits2 : 32; VK_FORMAT_FEATURE_2_VERTEX_BUFFER_BIT_KHR: VkFormatFeatureFlagBits2 : 64; VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BIT_KHR: VkFormatFeatureFlagBits2 : 128; VK_FORMAT_FEATURE_2_COLOR_ATTACHMENT_BLEND_BIT_KHR: VkFormatFeatureFlagBits2 : 256; VK_FORMAT_FEATURE_2_DEPTH_STENCIL_ATTACHMENT_BIT_KHR: VkFormatFeatureFlagBits2 : 512; VK_FORMAT_FEATURE_2_BLIT_SRC_BIT_KHR: VkFormatFeatureFlagBits2 : 1024; VK_FORMAT_FEATURE_2_BLIT_DST_BIT_KHR: VkFormatFeatureFlagBits2 : 2048; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_LINEAR_BIT_KHR: VkFormatFeatureFlagBits2 : 4096; VK_FORMAT_FEATURE_2_TRANSFER_SRC_BIT_KHR: VkFormatFeatureFlagBits2 : 16384; VK_FORMAT_FEATURE_2_TRANSFER_DST_BIT_KHR: VkFormatFeatureFlagBits2 : 32768; VK_FORMAT_FEATURE_2_MIDPOINT_CHROMA_SAMPLES_BIT_KHR: VkFormatFeatureFlagBits2 : 131072; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_LINEAR_FILTER_BIT_KHR: VkFormatFeatureFlagBits2 : 262144; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_SEPARATE_RECONSTRUCTION_FILTER_BIT_KHR: VkFormatFeatureFlagBits2 : 524288; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_BIT_KHR: VkFormatFeatureFlagBits2 : 1048576; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_YCBCR_CONVERSION_CHROMA_RECONSTRUCTION_EXPLICIT_FORCEABLE_BIT_KHR: VkFormatFeatureFlagBits2 : 2097152; VK_FORMAT_FEATURE_2_DISJOINT_BIT_KHR: VkFormatFeatureFlagBits2 : 4194304; VK_FORMAT_FEATURE_2_COSITED_CHROMA_SAMPLES_BIT_KHR: VkFormatFeatureFlagBits2 : 8388608; VK_FORMAT_FEATURE_2_STORAGE_READ_WITHOUT_FORMAT_BIT_KHR: VkFormatFeatureFlagBits2 : 2147483648; VK_FORMAT_FEATURE_2_STORAGE_WRITE_WITHOUT_FORMAT_BIT_KHR: VkFormatFeatureFlagBits2 : 4294967296; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_DEPTH_COMPARISON_BIT_KHR: VkFormatFeatureFlagBits2 : 8589934592; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_MINMAX_BIT_KHR: VkFormatFeatureFlagBits2 : 65536; VK_FORMAT_FEATURE_2_SAMPLED_IMAGE_FILTER_CUBIC_BIT_EXT: VkFormatFeatureFlagBits2 : 8192; VK_FORMAT_FEATURE_2_ACCELERATION_STRUCTURE_RADIUS_BUFFER_BIT_NV: VkFormatFeatureFlagBits2 : 2251799813685248; VK_FORMAT_FEATURE_2_LINEAR_COLOR_ATTACHMENT_BIT_NV: VkFormatFeatureFlagBits2 : 274877906944; VK_FORMAT_FEATURE_2_WEIGHT_IMAGE_BIT_QCOM: VkFormatFeatureFlagBits2 : 17179869184; VK_FORMAT_FEATURE_2_WEIGHT_SAMPLED_IMAGE_BIT_QCOM: VkFormatFeatureFlagBits2 : 34359738368; VK_FORMAT_FEATURE_2_BLOCK_MATCHING_BIT_QCOM: VkFormatFeatureFlagBits2 : 68719476736; VK_FORMAT_FEATURE_2_BOX_FILTER_SAMPLED_BIT_QCOM: VkFormatFeatureFlagBits2 : 137438953472; VK_FORMAT_FEATURE_2_OPTICAL_FLOW_IMAGE_BIT_NV: VkFormatFeatureFlagBits2 : 1099511627776; VK_FORMAT_FEATURE_2_OPTICAL_FLOW_VECTOR_BIT_NV: VkFormatFeatureFlagBits2 : 2199023255552; VK_FORMAT_FEATURE_2_OPTICAL_FLOW_COST_BIT_NV: VkFormatFeatureFlagBits2 : 4398046511104; VK_FORMAT_FEATURE_2_VIDEO_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR: VkFormatFeatureFlagBits2 : 562949953421312; VK_FORMAT_FEATURE_2_VIDEO_ENCODE_EMPHASIS_MAP_BIT_KHR: VkFormatFeatureFlagBits2 : 1125899906842624; VkPhysicalDeviceVulkan13Features :: struct { sType: VkStructureType; pNext: *void; robustImageAccess: VkBool32; inlineUniformBlock: VkBool32; descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32; pipelineCreationCacheControl: VkBool32; privateData: VkBool32; shaderDemoteToHelperInvocation: VkBool32; shaderTerminateInvocation: VkBool32; subgroupSizeControl: VkBool32; computeFullSubgroups: VkBool32; synchronization2: VkBool32; textureCompressionASTC_HDR: VkBool32; shaderZeroInitializeWorkgroupMemory: VkBool32; dynamicRendering: VkBool32; shaderIntegerDotProduct: VkBool32; maintenance4: VkBool32; } VkPhysicalDeviceVulkan13Properties :: struct { sType: VkStructureType; pNext: *void; minSubgroupSize: u32; maxSubgroupSize: u32; maxComputeWorkgroupSubgroups: u32; requiredSubgroupSizeStages: VkShaderStageFlags; maxInlineUniformBlockSize: u32; maxPerStageDescriptorInlineUniformBlocks: u32; maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: u32; maxDescriptorSetInlineUniformBlocks: u32; maxDescriptorSetUpdateAfterBindInlineUniformBlocks: u32; maxInlineUniformTotalSize: u32; integerDotProduct8BitUnsignedAccelerated: VkBool32; integerDotProduct8BitSignedAccelerated: VkBool32; integerDotProduct8BitMixedSignednessAccelerated: VkBool32; integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32; integerDotProduct4x8BitPackedSignedAccelerated: VkBool32; integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32; integerDotProduct16BitUnsignedAccelerated: VkBool32; integerDotProduct16BitSignedAccelerated: VkBool32; integerDotProduct16BitMixedSignednessAccelerated: VkBool32; integerDotProduct32BitUnsignedAccelerated: VkBool32; integerDotProduct32BitSignedAccelerated: VkBool32; integerDotProduct32BitMixedSignednessAccelerated: VkBool32; integerDotProduct64BitUnsignedAccelerated: VkBool32; integerDotProduct64BitSignedAccelerated: VkBool32; integerDotProduct64BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32; storageTexelBufferOffsetAlignmentBytes: VkDeviceSize; storageTexelBufferOffsetSingleTexelAlignment: VkBool32; uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize; uniformTexelBufferOffsetSingleTexelAlignment: VkBool32; maxBufferSize: VkDeviceSize; } VkPipelineCreationFeedback :: struct { flags: VkPipelineCreationFeedbackFlags; duration: u64; } VkPipelineCreationFeedbackCreateInfo :: struct { sType: VkStructureType; pNext: *void; pPipelineCreationFeedback: *VkPipelineCreationFeedback; pipelineStageCreationFeedbackCount: u32; pPipelineStageCreationFeedbacks: *VkPipelineCreationFeedback; } VkPhysicalDeviceShaderTerminateInvocationFeatures :: struct { sType: VkStructureType; pNext: *void; shaderTerminateInvocation: VkBool32; } VkPhysicalDeviceToolProperties :: struct { sType: VkStructureType; pNext: *void; name: [256] u8; version: [256] u8; purposes: VkToolPurposeFlags; description: [256] u8; layer: [256] u8; } VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures :: struct { sType: VkStructureType; pNext: *void; shaderDemoteToHelperInvocation: VkBool32; } VkPhysicalDevicePrivateDataFeatures :: struct { sType: VkStructureType; pNext: *void; privateData: VkBool32; } VkDevicePrivateDataCreateInfo :: struct { sType: VkStructureType; pNext: *void; privateDataSlotRequestCount: u32; } VkPrivateDataSlotCreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPrivateDataSlotCreateFlags; } VkPhysicalDevicePipelineCreationCacheControlFeatures :: struct { sType: VkStructureType; pNext: *void; pipelineCreationCacheControl: VkBool32; } VkMemoryBarrier2 :: struct { sType: VkStructureType; pNext: *void; srcStageMask: VkPipelineStageFlags2; srcAccessMask: VkAccessFlags2; dstStageMask: VkPipelineStageFlags2; dstAccessMask: VkAccessFlags2; } VkBufferMemoryBarrier2 :: struct { sType: VkStructureType; pNext: *void; srcStageMask: VkPipelineStageFlags2; srcAccessMask: VkAccessFlags2; dstStageMask: VkPipelineStageFlags2; dstAccessMask: VkAccessFlags2; srcQueueFamilyIndex: u32; dstQueueFamilyIndex: u32; buffer: VkBuffer; offset: VkDeviceSize; size: VkDeviceSize; } VkImageMemoryBarrier2 :: struct { sType: VkStructureType; pNext: *void; srcStageMask: VkPipelineStageFlags2; srcAccessMask: VkAccessFlags2; dstStageMask: VkPipelineStageFlags2; dstAccessMask: VkAccessFlags2; oldLayout: VkImageLayout; newLayout: VkImageLayout; srcQueueFamilyIndex: u32; dstQueueFamilyIndex: u32; image: VkImage; subresourceRange: VkImageSubresourceRange; } VkDependencyInfo :: struct { sType: VkStructureType; pNext: *void; dependencyFlags: VkDependencyFlags; memoryBarrierCount: u32; pMemoryBarriers: *VkMemoryBarrier2; bufferMemoryBarrierCount: u32; pBufferMemoryBarriers: *VkBufferMemoryBarrier2; imageMemoryBarrierCount: u32; pImageMemoryBarriers: *VkImageMemoryBarrier2; } VkSemaphoreSubmitInfo :: struct { sType: VkStructureType; pNext: *void; semaphore: VkSemaphore; value: u64; stageMask: VkPipelineStageFlags2; deviceIndex: u32; } VkCommandBufferSubmitInfo :: struct { sType: VkStructureType; pNext: *void; commandBuffer: VkCommandBuffer; deviceMask: u32; } VkSubmitInfo2 :: struct { sType: VkStructureType; pNext: *void; flags: VkSubmitFlags; waitSemaphoreInfoCount: u32; pWaitSemaphoreInfos: *VkSemaphoreSubmitInfo; commandBufferInfoCount: u32; pCommandBufferInfos: *VkCommandBufferSubmitInfo; signalSemaphoreInfoCount: u32; pSignalSemaphoreInfos: *VkSemaphoreSubmitInfo; } VkPhysicalDeviceSynchronization2Features :: struct { sType: VkStructureType; pNext: *void; synchronization2: VkBool32; } VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures :: struct { sType: VkStructureType; pNext: *void; shaderZeroInitializeWorkgroupMemory: VkBool32; } VkPhysicalDeviceImageRobustnessFeatures :: struct { sType: VkStructureType; pNext: *void; robustImageAccess: VkBool32; } VkBufferCopy2 :: struct { sType: VkStructureType; pNext: *void; srcOffset: VkDeviceSize; dstOffset: VkDeviceSize; size: VkDeviceSize; } VkCopyBufferInfo2 :: struct { sType: VkStructureType; pNext: *void; srcBuffer: VkBuffer; dstBuffer: VkBuffer; regionCount: u32; pRegions: *VkBufferCopy2; } VkImageCopy2 :: struct { sType: VkStructureType; pNext: *void; srcSubresource: VkImageSubresourceLayers; srcOffset: VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffset: VkOffset3D; extent: VkExtent3D; } VkCopyImageInfo2 :: struct { sType: VkStructureType; pNext: *void; srcImage: VkImage; srcImageLayout: VkImageLayout; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkImageCopy2; } VkBufferImageCopy2 :: struct { sType: VkStructureType; pNext: *void; bufferOffset: VkDeviceSize; bufferRowLength: u32; bufferImageHeight: u32; imageSubresource: VkImageSubresourceLayers; imageOffset: VkOffset3D; imageExtent: VkExtent3D; } VkCopyBufferToImageInfo2 :: struct { sType: VkStructureType; pNext: *void; srcBuffer: VkBuffer; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkBufferImageCopy2; } VkCopyImageToBufferInfo2 :: struct { sType: VkStructureType; pNext: *void; srcImage: VkImage; srcImageLayout: VkImageLayout; dstBuffer: VkBuffer; regionCount: u32; pRegions: *VkBufferImageCopy2; } VkImageBlit2 :: struct { sType: VkStructureType; pNext: *void; srcSubresource: VkImageSubresourceLayers; srcOffsets: [2] VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffsets: [2] VkOffset3D; } VkBlitImageInfo2 :: struct { sType: VkStructureType; pNext: *void; srcImage: VkImage; srcImageLayout: VkImageLayout; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkImageBlit2; filter: VkFilter; } VkImageResolve2 :: struct { sType: VkStructureType; pNext: *void; srcSubresource: VkImageSubresourceLayers; srcOffset: VkOffset3D; dstSubresource: VkImageSubresourceLayers; dstOffset: VkOffset3D; extent: VkExtent3D; } VkResolveImageInfo2 :: struct { sType: VkStructureType; pNext: *void; srcImage: VkImage; srcImageLayout: VkImageLayout; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkImageResolve2; } VkPhysicalDeviceSubgroupSizeControlFeatures :: struct { sType: VkStructureType; pNext: *void; subgroupSizeControl: VkBool32; computeFullSubgroups: VkBool32; } VkPhysicalDeviceSubgroupSizeControlProperties :: struct { sType: VkStructureType; pNext: *void; minSubgroupSize: u32; maxSubgroupSize: u32; maxComputeWorkgroupSubgroups: u32; requiredSubgroupSizeStages: VkShaderStageFlags; } VkPipelineShaderStageRequiredSubgroupSizeCreateInfo :: struct { sType: VkStructureType; pNext: *void; requiredSubgroupSize: u32; } VkPhysicalDeviceInlineUniformBlockFeatures :: struct { sType: VkStructureType; pNext: *void; inlineUniformBlock: VkBool32; descriptorBindingInlineUniformBlockUpdateAfterBind: VkBool32; } VkPhysicalDeviceInlineUniformBlockProperties :: struct { sType: VkStructureType; pNext: *void; maxInlineUniformBlockSize: u32; maxPerStageDescriptorInlineUniformBlocks: u32; maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks: u32; maxDescriptorSetInlineUniformBlocks: u32; maxDescriptorSetUpdateAfterBindInlineUniformBlocks: u32; } VkWriteDescriptorSetInlineUniformBlock :: struct { sType: VkStructureType; pNext: *void; dataSize: u32; pData: *void; } VkDescriptorPoolInlineUniformBlockCreateInfo :: struct { sType: VkStructureType; pNext: *void; maxInlineUniformBlockBindings: u32; } VkPhysicalDeviceTextureCompressionASTCHDRFeatures :: struct { sType: VkStructureType; pNext: *void; textureCompressionASTC_HDR: VkBool32; } VkRenderingAttachmentInfo :: struct { sType: VkStructureType; pNext: *void; imageView: VkImageView; imageLayout: VkImageLayout; resolveMode: VkResolveModeFlagBits; resolveImageView: VkImageView; resolveImageLayout: VkImageLayout; loadOp: VkAttachmentLoadOp; storeOp: VkAttachmentStoreOp; clearValue: VkClearValue; } VkRenderingInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkRenderingFlags; renderArea: VkRect2D; layerCount: u32; viewMask: u32; colorAttachmentCount: u32; pColorAttachments: *VkRenderingAttachmentInfo; pDepthAttachment: *VkRenderingAttachmentInfo; pStencilAttachment: *VkRenderingAttachmentInfo; } VkPipelineRenderingCreateInfo :: struct { sType: VkStructureType; pNext: *void; viewMask: u32; colorAttachmentCount: u32; pColorAttachmentFormats: *VkFormat; depthAttachmentFormat: VkFormat; stencilAttachmentFormat: VkFormat; } VkPhysicalDeviceDynamicRenderingFeatures :: struct { sType: VkStructureType; pNext: *void; dynamicRendering: VkBool32; } VkCommandBufferInheritanceRenderingInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkRenderingFlags; viewMask: u32; colorAttachmentCount: u32; pColorAttachmentFormats: *VkFormat; depthAttachmentFormat: VkFormat; stencilAttachmentFormat: VkFormat; rasterizationSamples: VkSampleCountFlagBits; } VkPhysicalDeviceShaderIntegerDotProductFeatures :: struct { sType: VkStructureType; pNext: *void; shaderIntegerDotProduct: VkBool32; } VkPhysicalDeviceShaderIntegerDotProductProperties :: struct { sType: VkStructureType; pNext: *void; integerDotProduct8BitUnsignedAccelerated: VkBool32; integerDotProduct8BitSignedAccelerated: VkBool32; integerDotProduct8BitMixedSignednessAccelerated: VkBool32; integerDotProduct4x8BitPackedUnsignedAccelerated: VkBool32; integerDotProduct4x8BitPackedSignedAccelerated: VkBool32; integerDotProduct4x8BitPackedMixedSignednessAccelerated: VkBool32; integerDotProduct16BitUnsignedAccelerated: VkBool32; integerDotProduct16BitSignedAccelerated: VkBool32; integerDotProduct16BitMixedSignednessAccelerated: VkBool32; integerDotProduct32BitUnsignedAccelerated: VkBool32; integerDotProduct32BitSignedAccelerated: VkBool32; integerDotProduct32BitMixedSignednessAccelerated: VkBool32; integerDotProduct64BitUnsignedAccelerated: VkBool32; integerDotProduct64BitSignedAccelerated: VkBool32; integerDotProduct64BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitUnsignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitSignedAccelerated: VkBool32; integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated: VkBool32; } VkPhysicalDeviceTexelBufferAlignmentProperties :: struct { sType: VkStructureType; pNext: *void; storageTexelBufferOffsetAlignmentBytes: VkDeviceSize; storageTexelBufferOffsetSingleTexelAlignment: VkBool32; uniformTexelBufferOffsetAlignmentBytes: VkDeviceSize; uniformTexelBufferOffsetSingleTexelAlignment: VkBool32; } VkFormatProperties3 :: struct { sType: VkStructureType; pNext: *void; linearTilingFeatures: VkFormatFeatureFlags2; optimalTilingFeatures: VkFormatFeatureFlags2; bufferFeatures: VkFormatFeatureFlags2; } VkPhysicalDeviceMaintenance4Features :: struct { sType: VkStructureType; pNext: *void; maintenance4: VkBool32; } VkPhysicalDeviceMaintenance4Properties :: struct { sType: VkStructureType; pNext: *void; maxBufferSize: VkDeviceSize; } VkDeviceBufferMemoryRequirements :: struct { sType: VkStructureType; pNext: *void; pCreateInfo: *VkBufferCreateInfo; } VkDeviceImageMemoryRequirements :: struct { sType: VkStructureType; pNext: *void; pCreateInfo: *VkImageCreateInfo; planeAspect: VkImageAspectFlagBits; } PFN_vkGetPhysicalDeviceToolProperties :: #type (physicalDevice: VkPhysicalDevice, pToolCount: *u32, pToolProperties: *VkPhysicalDeviceToolProperties) -> VkResult #c_call; PFN_vkCreatePrivateDataSlot :: #type (device: VkDevice, pCreateInfo: *VkPrivateDataSlotCreateInfo, pAllocator: *VkAllocationCallbacks, pPrivateDataSlot: *VkPrivateDataSlot) -> VkResult #c_call; PFN_vkDestroyPrivateDataSlot :: #type (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkSetPrivateData :: #type (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, data: u64) -> VkResult #c_call; PFN_vkGetPrivateData :: #type (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, pData: *u64) -> void #c_call; PFN_vkCmdSetEvent2 :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: *VkDependencyInfo) -> void #c_call; PFN_vkCmdResetEvent2 :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2) -> void #c_call; PFN_vkCmdWaitEvents2 :: #type (commandBuffer: VkCommandBuffer, eventCount: u32, pEvents: *VkEvent, pDependencyInfos: *VkDependencyInfo) -> void #c_call; PFN_vkCmdPipelineBarrier2 :: #type (commandBuffer: VkCommandBuffer, pDependencyInfo: *VkDependencyInfo) -> void #c_call; PFN_vkCmdWriteTimestamp2 :: #type (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: u32) -> void #c_call; PFN_vkQueueSubmit2 :: #type (queue: VkQueue, submitCount: u32, pSubmits: *VkSubmitInfo2, fence: VkFence) -> VkResult #c_call; PFN_vkCmdCopyBuffer2 :: #type (commandBuffer: VkCommandBuffer, pCopyBufferInfo: *VkCopyBufferInfo2) -> void #c_call; PFN_vkCmdCopyImage2 :: #type (commandBuffer: VkCommandBuffer, pCopyImageInfo: *VkCopyImageInfo2) -> void #c_call; PFN_vkCmdCopyBufferToImage2 :: #type (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: *VkCopyBufferToImageInfo2) -> void #c_call; PFN_vkCmdCopyImageToBuffer2 :: #type (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: *VkCopyImageToBufferInfo2) -> void #c_call; PFN_vkCmdBlitImage2 :: #type (commandBuffer: VkCommandBuffer, pBlitImageInfo: *VkBlitImageInfo2) -> void #c_call; PFN_vkCmdResolveImage2 :: #type (commandBuffer: VkCommandBuffer, pResolveImageInfo: *VkResolveImageInfo2) -> void #c_call; PFN_vkCmdBeginRendering :: #type (commandBuffer: VkCommandBuffer, pRenderingInfo: *VkRenderingInfo) -> void #c_call; PFN_vkCmdEndRendering :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdSetCullMode :: #type (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) -> void #c_call; PFN_vkCmdSetFrontFace :: #type (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) -> void #c_call; PFN_vkCmdSetPrimitiveTopology :: #type (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) -> void #c_call; PFN_vkCmdSetViewportWithCount :: #type (commandBuffer: VkCommandBuffer, viewportCount: u32, pViewports: *VkViewport) -> void #c_call; PFN_vkCmdSetScissorWithCount :: #type (commandBuffer: VkCommandBuffer, scissorCount: u32, pScissors: *VkRect2D) -> void #c_call; PFN_vkCmdBindVertexBuffers2 :: #type (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize, pSizes: *VkDeviceSize, pStrides: *VkDeviceSize) -> void #c_call; PFN_vkCmdSetDepthTestEnable :: #type (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthWriteEnable :: #type (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthCompareOp :: #type (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp) -> void #c_call; PFN_vkCmdSetDepthBoundsTestEnable :: #type (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetStencilTestEnable :: #type (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetStencilOp :: #type (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp) -> void #c_call; PFN_vkCmdSetRasterizerDiscardEnable :: #type (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthBiasEnable :: #type (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32) -> void #c_call; PFN_vkCmdSetPrimitiveRestartEnable :: #type (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32) -> void #c_call; PFN_vkGetDeviceBufferMemoryRequirements :: #type (device: VkDevice, pInfo: *VkDeviceBufferMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetDeviceImageMemoryRequirements :: #type (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetDeviceImageSparseMemoryRequirements :: #type (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #c_call; vkGetPhysicalDeviceToolProperties :: (physicalDevice: VkPhysicalDevice, pToolCount: *u32, pToolProperties: *VkPhysicalDeviceToolProperties) -> VkResult #foreign libvulkan; vkCreatePrivateDataSlot :: (device: VkDevice, pCreateInfo: *VkPrivateDataSlotCreateInfo, pAllocator: *VkAllocationCallbacks, pPrivateDataSlot: *VkPrivateDataSlot) -> VkResult #foreign libvulkan; vkDestroyPrivateDataSlot :: (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkSetPrivateData :: (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, data: u64) -> VkResult #foreign libvulkan; vkGetPrivateData :: (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, pData: *u64) -> void #foreign libvulkan; vkCmdSetEvent2 :: (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: *VkDependencyInfo) -> void #foreign libvulkan; vkCmdResetEvent2 :: (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2) -> void #foreign libvulkan; vkCmdWaitEvents2 :: (commandBuffer: VkCommandBuffer, eventCount: u32, pEvents: *VkEvent, pDependencyInfos: *VkDependencyInfo) -> void #foreign libvulkan; vkCmdPipelineBarrier2 :: (commandBuffer: VkCommandBuffer, pDependencyInfo: *VkDependencyInfo) -> void #foreign libvulkan; vkCmdWriteTimestamp2 :: (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: u32) -> void #foreign libvulkan; vkQueueSubmit2 :: (queue: VkQueue, submitCount: u32, pSubmits: *VkSubmitInfo2, fence: VkFence) -> VkResult #foreign libvulkan; vkCmdCopyBuffer2 :: (commandBuffer: VkCommandBuffer, pCopyBufferInfo: *VkCopyBufferInfo2) -> void #foreign libvulkan; vkCmdCopyImage2 :: (commandBuffer: VkCommandBuffer, pCopyImageInfo: *VkCopyImageInfo2) -> void #foreign libvulkan; vkCmdCopyBufferToImage2 :: (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: *VkCopyBufferToImageInfo2) -> void #foreign libvulkan; vkCmdCopyImageToBuffer2 :: (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: *VkCopyImageToBufferInfo2) -> void #foreign libvulkan; vkCmdBlitImage2 :: (commandBuffer: VkCommandBuffer, pBlitImageInfo: *VkBlitImageInfo2) -> void #foreign libvulkan; vkCmdResolveImage2 :: (commandBuffer: VkCommandBuffer, pResolveImageInfo: *VkResolveImageInfo2) -> void #foreign libvulkan; vkCmdBeginRendering :: (commandBuffer: VkCommandBuffer, pRenderingInfo: *VkRenderingInfo) -> void #foreign libvulkan; vkCmdEndRendering :: (commandBuffer: VkCommandBuffer) -> void #foreign libvulkan; vkCmdSetCullMode :: (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) -> void #foreign libvulkan; vkCmdSetFrontFace :: (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) -> void #foreign libvulkan; vkCmdSetPrimitiveTopology :: (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) -> void #foreign libvulkan; vkCmdSetViewportWithCount :: (commandBuffer: VkCommandBuffer, viewportCount: u32, pViewports: *VkViewport) -> void #foreign libvulkan; vkCmdSetScissorWithCount :: (commandBuffer: VkCommandBuffer, scissorCount: u32, pScissors: *VkRect2D) -> void #foreign libvulkan; vkCmdBindVertexBuffers2 :: (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize, pSizes: *VkDeviceSize, pStrides: *VkDeviceSize) -> void #foreign libvulkan; vkCmdSetDepthTestEnable :: (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetDepthWriteEnable :: (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetDepthCompareOp :: (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp) -> void #foreign libvulkan; vkCmdSetDepthBoundsTestEnable :: (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetStencilTestEnable :: (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetStencilOp :: (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp) -> void #foreign libvulkan; vkCmdSetRasterizerDiscardEnable :: (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetDepthBiasEnable :: (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32) -> void #foreign libvulkan; vkCmdSetPrimitiveRestartEnable :: (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32) -> void #foreign libvulkan; vkGetDeviceBufferMemoryRequirements :: (device: VkDevice, pInfo: *VkDeviceBufferMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #foreign libvulkan; vkGetDeviceImageMemoryRequirements :: (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #foreign libvulkan; vkGetDeviceImageSparseMemoryRequirements :: (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #foreign libvulkan; VkPipelineRobustnessBufferBehavior :: enum u32 { DEVICE_DEFAULT :: 0; DISABLED :: 1; ROBUST_BUFFER_ACCESS :: 2; ROBUST_BUFFER_ACCESS_2 :: 3; DEVICE_DEFAULT_EXT :: 0; DISABLED_EXT :: 1; ROBUST_BUFFER_ACCESS_EXT :: 2; ROBUST_BUFFER_ACCESS_2_EXT :: 3; MAX_ENUM :: 2147483647; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT :: DEVICE_DEFAULT; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED :: DISABLED; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS :: ROBUST_BUFFER_ACCESS; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2 :: ROBUST_BUFFER_ACCESS_2; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DEVICE_DEFAULT_EXT :: DEVICE_DEFAULT_EXT; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_DISABLED_EXT :: DISABLED_EXT; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_EXT :: ROBUST_BUFFER_ACCESS_EXT; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_ROBUST_BUFFER_ACCESS_2_EXT :: ROBUST_BUFFER_ACCESS_2_EXT; VK_PIPELINE_ROBUSTNESS_BUFFER_BEHAVIOR_MAX_ENUM :: MAX_ENUM; } VkPipelineRobustnessImageBehavior :: enum u32 { DEVICE_DEFAULT :: 0; DISABLED :: 1; ROBUST_IMAGE_ACCESS :: 2; ROBUST_IMAGE_ACCESS_2 :: 3; DEVICE_DEFAULT_EXT :: 0; DISABLED_EXT :: 1; ROBUST_IMAGE_ACCESS_EXT :: 2; ROBUST_IMAGE_ACCESS_2_EXT :: 3; MAX_ENUM :: 2147483647; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT :: DEVICE_DEFAULT; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED :: DISABLED; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS :: ROBUST_IMAGE_ACCESS; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2 :: ROBUST_IMAGE_ACCESS_2; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DEVICE_DEFAULT_EXT :: DEVICE_DEFAULT_EXT; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_DISABLED_EXT :: DISABLED_EXT; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_EXT :: ROBUST_IMAGE_ACCESS_EXT; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_ROBUST_IMAGE_ACCESS_2_EXT :: ROBUST_IMAGE_ACCESS_2_EXT; VK_PIPELINE_ROBUSTNESS_IMAGE_BEHAVIOR_MAX_ENUM :: MAX_ENUM; } VkQueueGlobalPriority :: enum u32 { LOW :: 128; MEDIUM :: 256; HIGH :: 512; REALTIME :: 1024; LOW_EXT :: 128; MEDIUM_EXT :: 256; HIGH_EXT :: 512; REALTIME_EXT :: 1024; LOW_KHR :: 128; MEDIUM_KHR :: 256; HIGH_KHR :: 512; REALTIME_KHR :: 1024; MAX_ENUM :: 2147483647; VK_QUEUE_GLOBAL_PRIORITY_LOW :: LOW; VK_QUEUE_GLOBAL_PRIORITY_MEDIUM :: MEDIUM; VK_QUEUE_GLOBAL_PRIORITY_HIGH :: HIGH; VK_QUEUE_GLOBAL_PRIORITY_REALTIME :: REALTIME; VK_QUEUE_GLOBAL_PRIORITY_LOW_EXT :: LOW_EXT; VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_EXT :: MEDIUM_EXT; VK_QUEUE_GLOBAL_PRIORITY_HIGH_EXT :: HIGH_EXT; VK_QUEUE_GLOBAL_PRIORITY_REALTIME_EXT :: REALTIME_EXT; VK_QUEUE_GLOBAL_PRIORITY_LOW_KHR :: LOW_KHR; VK_QUEUE_GLOBAL_PRIORITY_MEDIUM_KHR :: MEDIUM_KHR; VK_QUEUE_GLOBAL_PRIORITY_HIGH_KHR :: HIGH_KHR; VK_QUEUE_GLOBAL_PRIORITY_REALTIME_KHR :: REALTIME_KHR; VK_QUEUE_GLOBAL_PRIORITY_MAX_ENUM :: MAX_ENUM; } VkLineRasterizationMode :: enum u32 { DEFAULT :: 0; RECTANGULAR :: 1; BRESENHAM :: 2; RECTANGULAR_SMOOTH :: 3; DEFAULT_EXT :: 0; RECTANGULAR_EXT :: 1; BRESENHAM_EXT :: 2; RECTANGULAR_SMOOTH_EXT :: 3; DEFAULT_KHR :: 0; RECTANGULAR_KHR :: 1; BRESENHAM_KHR :: 2; RECTANGULAR_SMOOTH_KHR :: 3; MAX_ENUM :: 2147483647; VK_LINE_RASTERIZATION_MODE_DEFAULT :: DEFAULT; VK_LINE_RASTERIZATION_MODE_RECTANGULAR :: RECTANGULAR; VK_LINE_RASTERIZATION_MODE_BRESENHAM :: BRESENHAM; VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH :: RECTANGULAR_SMOOTH; VK_LINE_RASTERIZATION_MODE_DEFAULT_EXT :: DEFAULT_EXT; VK_LINE_RASTERIZATION_MODE_RECTANGULAR_EXT :: RECTANGULAR_EXT; VK_LINE_RASTERIZATION_MODE_BRESENHAM_EXT :: BRESENHAM_EXT; VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_EXT :: RECTANGULAR_SMOOTH_EXT; VK_LINE_RASTERIZATION_MODE_DEFAULT_KHR :: DEFAULT_KHR; VK_LINE_RASTERIZATION_MODE_RECTANGULAR_KHR :: RECTANGULAR_KHR; VK_LINE_RASTERIZATION_MODE_BRESENHAM_KHR :: BRESENHAM_KHR; VK_LINE_RASTERIZATION_MODE_RECTANGULAR_SMOOTH_KHR :: RECTANGULAR_SMOOTH_KHR; VK_LINE_RASTERIZATION_MODE_MAX_ENUM :: MAX_ENUM; } VkMemoryUnmapFlagBits :: enum u32 { RESERVE_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_MEMORY_UNMAP_RESERVE_BIT_EXT :: RESERVE_BIT_EXT; VK_MEMORY_UNMAP_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkMemoryUnmapFlags :: VkFlags; VkPipelineCreateFlags2 :: VkFlags64; // Flag bits for VkPipelineCreateFlagBits2 VkPipelineCreateFlagBits2 :: VkFlags64; VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT: VkPipelineCreateFlagBits2 : 1; VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT: VkPipelineCreateFlagBits2 : 2; VK_PIPELINE_CREATE_2_DERIVATIVE_BIT: VkPipelineCreateFlagBits2 : 4; VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT: VkPipelineCreateFlagBits2 : 8; VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT: VkPipelineCreateFlagBits2 : 16; VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT: VkPipelineCreateFlagBits2 : 256; VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT: VkPipelineCreateFlagBits2 : 512; VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT: VkPipelineCreateFlagBits2 : 134217728; VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT: VkPipelineCreateFlagBits2 : 1073741824; VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_BUILT_IN_PRIMITIVES_BIT_KHR: VkPipelineCreateFlagBits2 : 4096; VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_SPHERES_AND_LINEAR_SWEPT_SPHERES_BIT_NV: VkPipelineCreateFlagBits2 : 8589934592; VK_PIPELINE_CREATE_2_ENABLE_LEGACY_DITHERING_BIT_EXT: VkPipelineCreateFlagBits2 : 17179869184; VK_PIPELINE_CREATE_2_DISABLE_OPTIMIZATION_BIT_KHR: VkPipelineCreateFlagBits2 : 1; VK_PIPELINE_CREATE_2_ALLOW_DERIVATIVES_BIT_KHR: VkPipelineCreateFlagBits2 : 2; VK_PIPELINE_CREATE_2_DERIVATIVE_BIT_KHR: VkPipelineCreateFlagBits2 : 4; VK_PIPELINE_CREATE_2_VIEW_INDEX_FROM_DEVICE_INDEX_BIT_KHR: VkPipelineCreateFlagBits2 : 8; VK_PIPELINE_CREATE_2_DISPATCH_BASE_BIT_KHR: VkPipelineCreateFlagBits2 : 16; VK_PIPELINE_CREATE_2_DEFER_COMPILE_BIT_NV: VkPipelineCreateFlagBits2 : 32; VK_PIPELINE_CREATE_2_CAPTURE_STATISTICS_BIT_KHR: VkPipelineCreateFlagBits2 : 64; VK_PIPELINE_CREATE_2_CAPTURE_INTERNAL_REPRESENTATIONS_BIT_KHR: VkPipelineCreateFlagBits2 : 128; VK_PIPELINE_CREATE_2_FAIL_ON_PIPELINE_COMPILE_REQUIRED_BIT_KHR: VkPipelineCreateFlagBits2 : 256; VK_PIPELINE_CREATE_2_EARLY_RETURN_ON_FAILURE_BIT_KHR: VkPipelineCreateFlagBits2 : 512; VK_PIPELINE_CREATE_2_LINK_TIME_OPTIMIZATION_BIT_EXT: VkPipelineCreateFlagBits2 : 1024; VK_PIPELINE_CREATE_2_RETAIN_LINK_TIME_OPTIMIZATION_INFO_BIT_EXT: VkPipelineCreateFlagBits2 : 8388608; VK_PIPELINE_CREATE_2_LIBRARY_BIT_KHR: VkPipelineCreateFlagBits2 : 2048; VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_TRIANGLES_BIT_KHR: VkPipelineCreateFlagBits2 : 4096; VK_PIPELINE_CREATE_2_RAY_TRACING_SKIP_AABBS_BIT_KHR: VkPipelineCreateFlagBits2 : 8192; VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_ANY_HIT_SHADERS_BIT_KHR: VkPipelineCreateFlagBits2 : 16384; VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_CLOSEST_HIT_SHADERS_BIT_KHR: VkPipelineCreateFlagBits2 : 32768; VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_MISS_SHADERS_BIT_KHR: VkPipelineCreateFlagBits2 : 65536; VK_PIPELINE_CREATE_2_RAY_TRACING_NO_NULL_INTERSECTION_SHADERS_BIT_KHR: VkPipelineCreateFlagBits2 : 131072; VK_PIPELINE_CREATE_2_RAY_TRACING_SHADER_GROUP_HANDLE_CAPTURE_REPLAY_BIT_KHR: VkPipelineCreateFlagBits2 : 524288; VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_NV: VkPipelineCreateFlagBits2 : 262144; VK_PIPELINE_CREATE_2_RAY_TRACING_ALLOW_MOTION_BIT_NV: VkPipelineCreateFlagBits2 : 1048576; VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_KHR: VkPipelineCreateFlagBits2 : 2097152; VK_PIPELINE_CREATE_2_RENDERING_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT: VkPipelineCreateFlagBits2 : 4194304; VK_PIPELINE_CREATE_2_RAY_TRACING_OPACITY_MICROMAP_BIT_EXT: VkPipelineCreateFlagBits2 : 16777216; VK_PIPELINE_CREATE_2_COLOR_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT: VkPipelineCreateFlagBits2 : 33554432; VK_PIPELINE_CREATE_2_DEPTH_STENCIL_ATTACHMENT_FEEDBACK_LOOP_BIT_EXT: VkPipelineCreateFlagBits2 : 67108864; VK_PIPELINE_CREATE_2_NO_PROTECTED_ACCESS_BIT_EXT: VkPipelineCreateFlagBits2 : 134217728; VK_PIPELINE_CREATE_2_PROTECTED_ACCESS_ONLY_BIT_EXT: VkPipelineCreateFlagBits2 : 1073741824; VK_PIPELINE_CREATE_2_RAY_TRACING_DISPLACEMENT_MICROMAP_BIT_NV: VkPipelineCreateFlagBits2 : 268435456; VK_PIPELINE_CREATE_2_DESCRIPTOR_BUFFER_BIT_EXT: VkPipelineCreateFlagBits2 : 536870912; VK_PIPELINE_CREATE_2_DISALLOW_OPACITY_MICROMAP_BIT_ARM: VkPipelineCreateFlagBits2 : 137438953472; VK_PIPELINE_CREATE_2_CAPTURE_DATA_BIT_KHR: VkPipelineCreateFlagBits2 : 2147483648; VK_PIPELINE_CREATE_2_INDIRECT_BINDABLE_BIT_EXT: VkPipelineCreateFlagBits2 : 274877906944; VkBufferUsageFlags2 :: VkFlags64; // Flag bits for VkBufferUsageFlagBits2 VkBufferUsageFlagBits2 :: VkFlags64; VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT: VkBufferUsageFlagBits2 : 1; VK_BUFFER_USAGE_2_TRANSFER_DST_BIT: VkBufferUsageFlagBits2 : 2; VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT: VkBufferUsageFlagBits2 : 4; VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT: VkBufferUsageFlagBits2 : 8; VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT: VkBufferUsageFlagBits2 : 16; VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT: VkBufferUsageFlagBits2 : 32; VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT: VkBufferUsageFlagBits2 : 64; VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT: VkBufferUsageFlagBits2 : 128; VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT: VkBufferUsageFlagBits2 : 256; VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT: VkBufferUsageFlagBits2 : 131072; VK_BUFFER_USAGE_2_TRANSFER_SRC_BIT_KHR: VkBufferUsageFlagBits2 : 1; VK_BUFFER_USAGE_2_TRANSFER_DST_BIT_KHR: VkBufferUsageFlagBits2 : 2; VK_BUFFER_USAGE_2_UNIFORM_TEXEL_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 4; VK_BUFFER_USAGE_2_STORAGE_TEXEL_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 8; VK_BUFFER_USAGE_2_UNIFORM_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 16; VK_BUFFER_USAGE_2_STORAGE_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 32; VK_BUFFER_USAGE_2_INDEX_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 64; VK_BUFFER_USAGE_2_VERTEX_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 128; VK_BUFFER_USAGE_2_INDIRECT_BUFFER_BIT_KHR: VkBufferUsageFlagBits2 : 256; VK_BUFFER_USAGE_2_CONDITIONAL_RENDERING_BIT_EXT: VkBufferUsageFlagBits2 : 512; VK_BUFFER_USAGE_2_SHADER_BINDING_TABLE_BIT_KHR: VkBufferUsageFlagBits2 : 1024; VK_BUFFER_USAGE_2_RAY_TRACING_BIT_NV: VkBufferUsageFlagBits2 : 1024; VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 2048; VK_BUFFER_USAGE_2_TRANSFORM_FEEDBACK_COUNTER_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 4096; VK_BUFFER_USAGE_2_VIDEO_DECODE_SRC_BIT_KHR: VkBufferUsageFlagBits2 : 8192; VK_BUFFER_USAGE_2_VIDEO_DECODE_DST_BIT_KHR: VkBufferUsageFlagBits2 : 16384; VK_BUFFER_USAGE_2_VIDEO_ENCODE_DST_BIT_KHR: VkBufferUsageFlagBits2 : 32768; VK_BUFFER_USAGE_2_VIDEO_ENCODE_SRC_BIT_KHR: VkBufferUsageFlagBits2 : 65536; VK_BUFFER_USAGE_2_SHADER_DEVICE_ADDRESS_BIT_KHR: VkBufferUsageFlagBits2 : 131072; VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT_KHR: VkBufferUsageFlagBits2 : 524288; VK_BUFFER_USAGE_2_ACCELERATION_STRUCTURE_STORAGE_BIT_KHR: VkBufferUsageFlagBits2 : 1048576; VK_BUFFER_USAGE_2_SAMPLER_DESCRIPTOR_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 2097152; VK_BUFFER_USAGE_2_RESOURCE_DESCRIPTOR_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 4194304; VK_BUFFER_USAGE_2_PUSH_DESCRIPTORS_DESCRIPTOR_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 67108864; VK_BUFFER_USAGE_2_MICROMAP_BUILD_INPUT_READ_ONLY_BIT_EXT: VkBufferUsageFlagBits2 : 8388608; VK_BUFFER_USAGE_2_MICROMAP_STORAGE_BIT_EXT: VkBufferUsageFlagBits2 : 16777216; VK_BUFFER_USAGE_2_TILE_MEMORY_QCOM: VkBufferUsageFlagBits2 : 134217728; VK_BUFFER_USAGE_2_PREPROCESS_BUFFER_BIT_EXT: VkBufferUsageFlagBits2 : 2147483648; VkHostImageCopyFlagBits :: enum u32 { MEMCPY :: 1; MEMCPY_EXT :: 1; FLAG_BITS_MAX_ENUM :: 2147483647; VK_HOST_IMAGE_COPY_MEMCPY :: MEMCPY; VK_HOST_IMAGE_COPY_MEMCPY_EXT :: MEMCPY_EXT; VK_HOST_IMAGE_COPY_FLAG_BITS_MAX_ENUM :: FLAG_BITS_MAX_ENUM; } VkHostImageCopyFlags :: VkFlags; VkPhysicalDeviceVulkan14Features :: struct { sType: VkStructureType; pNext: *void; globalPriorityQuery: VkBool32; shaderSubgroupRotate: VkBool32; shaderSubgroupRotateClustered: VkBool32; shaderFloatControls2: VkBool32; shaderExpectAssume: VkBool32; rectangularLines: VkBool32; bresenhamLines: VkBool32; smoothLines: VkBool32; stippledRectangularLines: VkBool32; stippledBresenhamLines: VkBool32; stippledSmoothLines: VkBool32; vertexAttributeInstanceRateDivisor: VkBool32; vertexAttributeInstanceRateZeroDivisor: VkBool32; indexTypeUint8: VkBool32; dynamicRenderingLocalRead: VkBool32; maintenance5: VkBool32; maintenance6: VkBool32; pipelineProtectedAccess: VkBool32; pipelineRobustness: VkBool32; hostImageCopy: VkBool32; pushDescriptor: VkBool32; } VkPhysicalDeviceVulkan14Properties :: struct { sType: VkStructureType; pNext: *void; lineSubPixelPrecisionBits: u32; maxVertexAttribDivisor: u32; supportsNonZeroFirstInstance: VkBool32; maxPushDescriptors: u32; dynamicRenderingLocalReadDepthStencilAttachments: VkBool32; dynamicRenderingLocalReadMultisampledAttachments: VkBool32; earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32; earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32; depthStencilSwizzleOneSupport: VkBool32; polygonModePointSize: VkBool32; nonStrictSinglePixelWideLinesUseParallelogram: VkBool32; nonStrictWideLinesUseParallelogram: VkBool32; blockTexelViewCompatibleMultipleLayers: VkBool32; maxCombinedImageSamplerDescriptorCount: u32; fragmentShadingRateClampCombinerInputs: VkBool32; defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehavior; defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehavior; defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehavior; defaultRobustnessImages: VkPipelineRobustnessImageBehavior; copySrcLayoutCount: u32; pCopySrcLayouts: *VkImageLayout; copyDstLayoutCount: u32; pCopyDstLayouts: *VkImageLayout; optimalTilingLayoutUUID: [16] u8; identicalMemoryTypeRequirements: VkBool32; } VkDeviceQueueGlobalPriorityCreateInfo :: struct { sType: VkStructureType; pNext: *void; globalPriority: VkQueueGlobalPriority; } VkPhysicalDeviceGlobalPriorityQueryFeatures :: struct { sType: VkStructureType; pNext: *void; globalPriorityQuery: VkBool32; } VkQueueFamilyGlobalPriorityProperties :: struct { sType: VkStructureType; pNext: *void; priorityCount: u32; priorities: [16] VkQueueGlobalPriority; } VkPhysicalDeviceShaderSubgroupRotateFeatures :: struct { sType: VkStructureType; pNext: *void; shaderSubgroupRotate: VkBool32; shaderSubgroupRotateClustered: VkBool32; } VkPhysicalDeviceShaderFloatControls2Features :: struct { sType: VkStructureType; pNext: *void; shaderFloatControls2: VkBool32; } VkPhysicalDeviceShaderExpectAssumeFeatures :: struct { sType: VkStructureType; pNext: *void; shaderExpectAssume: VkBool32; } VkPhysicalDeviceLineRasterizationFeatures :: struct { sType: VkStructureType; pNext: *void; rectangularLines: VkBool32; bresenhamLines: VkBool32; smoothLines: VkBool32; stippledRectangularLines: VkBool32; stippledBresenhamLines: VkBool32; stippledSmoothLines: VkBool32; } VkPhysicalDeviceLineRasterizationProperties :: struct { sType: VkStructureType; pNext: *void; lineSubPixelPrecisionBits: u32; } VkPipelineRasterizationLineStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; lineRasterizationMode: VkLineRasterizationMode; stippledLineEnable: VkBool32; lineStippleFactor: u32; lineStipplePattern: u16; } VkPhysicalDeviceVertexAttributeDivisorProperties :: struct { sType: VkStructureType; pNext: *void; maxVertexAttribDivisor: u32; supportsNonZeroFirstInstance: VkBool32; } VkVertexInputBindingDivisorDescription :: struct { binding: u32; divisor: u32; } VkPipelineVertexInputDivisorStateCreateInfo :: struct { sType: VkStructureType; pNext: *void; vertexBindingDivisorCount: u32; pVertexBindingDivisors: *VkVertexInputBindingDivisorDescription; } VkPhysicalDeviceVertexAttributeDivisorFeatures :: struct { sType: VkStructureType; pNext: *void; vertexAttributeInstanceRateDivisor: VkBool32; vertexAttributeInstanceRateZeroDivisor: VkBool32; } VkPhysicalDeviceIndexTypeUint8Features :: struct { sType: VkStructureType; pNext: *void; indexTypeUint8: VkBool32; } VkMemoryMapInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkMemoryMapFlags; memory: VkDeviceMemory; offset: VkDeviceSize; size: VkDeviceSize; } VkMemoryUnmapInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkMemoryUnmapFlags; memory: VkDeviceMemory; } VkPhysicalDeviceMaintenance5Features :: struct { sType: VkStructureType; pNext: *void; maintenance5: VkBool32; } VkPhysicalDeviceMaintenance5Properties :: struct { sType: VkStructureType; pNext: *void; earlyFragmentMultisampleCoverageAfterSampleCounting: VkBool32; earlyFragmentSampleMaskTestBeforeSampleCounting: VkBool32; depthStencilSwizzleOneSupport: VkBool32; polygonModePointSize: VkBool32; nonStrictSinglePixelWideLinesUseParallelogram: VkBool32; nonStrictWideLinesUseParallelogram: VkBool32; } VkRenderingAreaInfo :: struct { sType: VkStructureType; pNext: *void; viewMask: u32; colorAttachmentCount: u32; pColorAttachmentFormats: *VkFormat; depthAttachmentFormat: VkFormat; stencilAttachmentFormat: VkFormat; } VkImageSubresource2 :: struct { sType: VkStructureType; pNext: *void; imageSubresource: VkImageSubresource; } VkDeviceImageSubresourceInfo :: struct { sType: VkStructureType; pNext: *void; pCreateInfo: *VkImageCreateInfo; pSubresource: *VkImageSubresource2; } VkSubresourceLayout2 :: struct { sType: VkStructureType; pNext: *void; subresourceLayout: VkSubresourceLayout; } VkPipelineCreateFlags2CreateInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCreateFlags2; } VkBufferUsageFlags2CreateInfo :: struct { sType: VkStructureType; pNext: *void; usage: VkBufferUsageFlags2; } VkPhysicalDevicePushDescriptorProperties :: struct { sType: VkStructureType; pNext: *void; maxPushDescriptors: u32; } VkPhysicalDeviceDynamicRenderingLocalReadFeatures :: struct { sType: VkStructureType; pNext: *void; dynamicRenderingLocalRead: VkBool32; } VkRenderingAttachmentLocationInfo :: struct { sType: VkStructureType; pNext: *void; colorAttachmentCount: u32; pColorAttachmentLocations: *u32; } VkRenderingInputAttachmentIndexInfo :: struct { sType: VkStructureType; pNext: *void; colorAttachmentCount: u32; pColorAttachmentInputIndices: *u32; pDepthInputAttachmentIndex: *u32; pStencilInputAttachmentIndex: *u32; } VkPhysicalDeviceMaintenance6Features :: struct { sType: VkStructureType; pNext: *void; maintenance6: VkBool32; } VkPhysicalDeviceMaintenance6Properties :: struct { sType: VkStructureType; pNext: *void; blockTexelViewCompatibleMultipleLayers: VkBool32; maxCombinedImageSamplerDescriptorCount: u32; fragmentShadingRateClampCombinerInputs: VkBool32; } VkBindMemoryStatus :: struct { sType: VkStructureType; pNext: *void; pResult: *VkResult; } VkBindDescriptorSetsInfo :: struct { sType: VkStructureType; pNext: *void; stageFlags: VkShaderStageFlags; layout: VkPipelineLayout; firstSet: u32; descriptorSetCount: u32; pDescriptorSets: *VkDescriptorSet; dynamicOffsetCount: u32; pDynamicOffsets: *u32; } VkPushConstantsInfo :: struct { sType: VkStructureType; pNext: *void; layout: VkPipelineLayout; stageFlags: VkShaderStageFlags; offset: u32; size: u32; pValues: *void; } VkPushDescriptorSetInfo :: struct { sType: VkStructureType; pNext: *void; stageFlags: VkShaderStageFlags; layout: VkPipelineLayout; set: u32; descriptorWriteCount: u32; pDescriptorWrites: *VkWriteDescriptorSet; } VkPushDescriptorSetWithTemplateInfo :: struct { sType: VkStructureType; pNext: *void; descriptorUpdateTemplate: VkDescriptorUpdateTemplate; layout: VkPipelineLayout; set: u32; pData: *void; } VkPhysicalDevicePipelineProtectedAccessFeatures :: struct { sType: VkStructureType; pNext: *void; pipelineProtectedAccess: VkBool32; } VkPhysicalDevicePipelineRobustnessFeatures :: struct { sType: VkStructureType; pNext: *void; pipelineRobustness: VkBool32; } VkPhysicalDevicePipelineRobustnessProperties :: struct { sType: VkStructureType; pNext: *void; defaultRobustnessStorageBuffers: VkPipelineRobustnessBufferBehavior; defaultRobustnessUniformBuffers: VkPipelineRobustnessBufferBehavior; defaultRobustnessVertexInputs: VkPipelineRobustnessBufferBehavior; defaultRobustnessImages: VkPipelineRobustnessImageBehavior; } VkPipelineRobustnessCreateInfo :: struct { sType: VkStructureType; pNext: *void; storageBuffers: VkPipelineRobustnessBufferBehavior; uniformBuffers: VkPipelineRobustnessBufferBehavior; vertexInputs: VkPipelineRobustnessBufferBehavior; images: VkPipelineRobustnessImageBehavior; } VkPhysicalDeviceHostImageCopyFeatures :: struct { sType: VkStructureType; pNext: *void; hostImageCopy: VkBool32; } VkPhysicalDeviceHostImageCopyProperties :: struct { sType: VkStructureType; pNext: *void; copySrcLayoutCount: u32; pCopySrcLayouts: *VkImageLayout; copyDstLayoutCount: u32; pCopyDstLayouts: *VkImageLayout; optimalTilingLayoutUUID: [16] u8; identicalMemoryTypeRequirements: VkBool32; } VkMemoryToImageCopy :: struct { sType: VkStructureType; pNext: *void; pHostPointer: *void; memoryRowLength: u32; memoryImageHeight: u32; imageSubresource: VkImageSubresourceLayers; imageOffset: VkOffset3D; imageExtent: VkExtent3D; } VkImageToMemoryCopy :: struct { sType: VkStructureType; pNext: *void; pHostPointer: *void; memoryRowLength: u32; memoryImageHeight: u32; imageSubresource: VkImageSubresourceLayers; imageOffset: VkOffset3D; imageExtent: VkExtent3D; } VkCopyMemoryToImageInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkHostImageCopyFlags; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkMemoryToImageCopy; } VkCopyImageToMemoryInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkHostImageCopyFlags; srcImage: VkImage; srcImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkImageToMemoryCopy; } VkCopyImageToImageInfo :: struct { sType: VkStructureType; pNext: *void; flags: VkHostImageCopyFlags; srcImage: VkImage; srcImageLayout: VkImageLayout; dstImage: VkImage; dstImageLayout: VkImageLayout; regionCount: u32; pRegions: *VkImageCopy2; } VkHostImageLayoutTransitionInfo :: struct { sType: VkStructureType; pNext: *void; image: VkImage; oldLayout: VkImageLayout; newLayout: VkImageLayout; subresourceRange: VkImageSubresourceRange; } VkSubresourceHostMemcpySize :: struct { sType: VkStructureType; pNext: *void; size: VkDeviceSize; } VkHostImageCopyDevicePerformanceQuery :: struct { sType: VkStructureType; pNext: *void; optimalDeviceAccess: VkBool32; identicalMemoryLayout: VkBool32; } PFN_vkCmdSetLineStipple :: #type (commandBuffer: VkCommandBuffer, lineStippleFactor: u32, lineStipplePattern: u16) -> void #c_call; PFN_vkMapMemory2 :: #type (device: VkDevice, pMemoryMapInfo: *VkMemoryMapInfo, ppData: **void) -> VkResult #c_call; PFN_vkUnmapMemory2 :: #type (device: VkDevice, pMemoryUnmapInfo: *VkMemoryUnmapInfo) -> VkResult #c_call; PFN_vkCmdBindIndexBuffer2 :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType) -> void #c_call; PFN_vkGetRenderingAreaGranularity :: #type (device: VkDevice, pRenderingAreaInfo: *VkRenderingAreaInfo, pGranularity: *VkExtent2D) -> void #c_call; PFN_vkGetDeviceImageSubresourceLayout :: #type (device: VkDevice, pInfo: *VkDeviceImageSubresourceInfo, pLayout: *VkSubresourceLayout2) -> void #c_call; PFN_vkGetImageSubresourceLayout2 :: #type (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource2, pLayout: *VkSubresourceLayout2) -> void #c_call; PFN_vkCmdPushDescriptorSet :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: u32, descriptorWriteCount: u32, pDescriptorWrites: *VkWriteDescriptorSet) -> void #c_call; PFN_vkCmdPushDescriptorSetWithTemplate :: #type (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: u32, pData: *void) -> void #c_call; PFN_vkCmdSetRenderingAttachmentLocations :: #type (commandBuffer: VkCommandBuffer, pLocationInfo: *VkRenderingAttachmentLocationInfo) -> void #c_call; PFN_vkCmdSetRenderingInputAttachmentIndices :: #type (commandBuffer: VkCommandBuffer, pInputAttachmentIndexInfo: *VkRenderingInputAttachmentIndexInfo) -> void #c_call; PFN_vkCmdBindDescriptorSets2 :: #type (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: *VkBindDescriptorSetsInfo) -> void #c_call; PFN_vkCmdPushConstants2 :: #type (commandBuffer: VkCommandBuffer, pPushConstantsInfo: *VkPushConstantsInfo) -> void #c_call; PFN_vkCmdPushDescriptorSet2 :: #type (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: *VkPushDescriptorSetInfo) -> void #c_call; PFN_vkCmdPushDescriptorSetWithTemplate2 :: #type (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: *VkPushDescriptorSetWithTemplateInfo) -> void #c_call; PFN_vkCopyMemoryToImage :: #type (device: VkDevice, pCopyMemoryToImageInfo: *VkCopyMemoryToImageInfo) -> VkResult #c_call; PFN_vkCopyImageToMemory :: #type (device: VkDevice, pCopyImageToMemoryInfo: *VkCopyImageToMemoryInfo) -> VkResult #c_call; PFN_vkCopyImageToImage :: #type (device: VkDevice, pCopyImageToImageInfo: *VkCopyImageToImageInfo) -> VkResult #c_call; PFN_vkTransitionImageLayout :: #type (device: VkDevice, transitionCount: u32, pTransitions: *VkHostImageLayoutTransitionInfo) -> VkResult #c_call; vkCmdSetLineStipple :: (commandBuffer: VkCommandBuffer, lineStippleFactor: u32, lineStipplePattern: u16) -> void #foreign libvulkan; vkMapMemory2 :: (device: VkDevice, pMemoryMapInfo: *VkMemoryMapInfo, ppData: **void) -> VkResult #foreign libvulkan; vkUnmapMemory2 :: (device: VkDevice, pMemoryUnmapInfo: *VkMemoryUnmapInfo) -> VkResult #foreign libvulkan; vkCmdBindIndexBuffer2 :: (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType) -> void #foreign libvulkan; vkGetRenderingAreaGranularity :: (device: VkDevice, pRenderingAreaInfo: *VkRenderingAreaInfo, pGranularity: *VkExtent2D) -> void #foreign libvulkan; vkGetDeviceImageSubresourceLayout :: (device: VkDevice, pInfo: *VkDeviceImageSubresourceInfo, pLayout: *VkSubresourceLayout2) -> void #foreign libvulkan; vkGetImageSubresourceLayout2 :: (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource2, pLayout: *VkSubresourceLayout2) -> void #foreign libvulkan; vkCmdPushDescriptorSet :: (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: u32, descriptorWriteCount: u32, pDescriptorWrites: *VkWriteDescriptorSet) -> void #foreign libvulkan; vkCmdPushDescriptorSetWithTemplate :: (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: u32, pData: *void) -> void #foreign libvulkan; vkCmdSetRenderingAttachmentLocations :: (commandBuffer: VkCommandBuffer, pLocationInfo: *VkRenderingAttachmentLocationInfo) -> void #foreign libvulkan; vkCmdSetRenderingInputAttachmentIndices :: (commandBuffer: VkCommandBuffer, pInputAttachmentIndexInfo: *VkRenderingInputAttachmentIndexInfo) -> void #foreign libvulkan; vkCmdBindDescriptorSets2 :: (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: *VkBindDescriptorSetsInfo) -> void #foreign libvulkan; vkCmdPushConstants2 :: (commandBuffer: VkCommandBuffer, pPushConstantsInfo: *VkPushConstantsInfo) -> void #foreign libvulkan; vkCmdPushDescriptorSet2 :: (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: *VkPushDescriptorSetInfo) -> void #foreign libvulkan; vkCmdPushDescriptorSetWithTemplate2 :: (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: *VkPushDescriptorSetWithTemplateInfo) -> void #foreign libvulkan; vkCopyMemoryToImage :: (device: VkDevice, pCopyMemoryToImageInfo: *VkCopyMemoryToImageInfo) -> VkResult #foreign libvulkan; vkCopyImageToMemory :: (device: VkDevice, pCopyImageToMemoryInfo: *VkCopyImageToMemoryInfo) -> VkResult #foreign libvulkan; vkCopyImageToImage :: (device: VkDevice, pCopyImageToImageInfo: *VkCopyImageToImageInfo) -> VkResult #foreign libvulkan; vkTransitionImageLayout :: (device: VkDevice, transitionCount: u32, pTransitions: *VkHostImageLayoutTransitionInfo) -> VkResult #foreign libvulkan; VkSurfaceKHR_T :: struct {} VkSurfaceKHR :: *VkSurfaceKHR_T; VkPresentModeKHR :: enum u32 { IMMEDIATE_KHR :: 0; MAILBOX_KHR :: 1; FIFO_KHR :: 2; FIFO_RELAXED_KHR :: 3; SHARED_DEMAND_REFRESH_KHR :: 1000111000; SHARED_CONTINUOUS_REFRESH_KHR :: 1000111001; FIFO_LATEST_READY_EXT :: 1000361000; MAX_ENUM_KHR :: 2147483647; VK_PRESENT_MODE_IMMEDIATE_KHR :: IMMEDIATE_KHR; VK_PRESENT_MODE_MAILBOX_KHR :: MAILBOX_KHR; VK_PRESENT_MODE_FIFO_KHR :: FIFO_KHR; VK_PRESENT_MODE_FIFO_RELAXED_KHR :: FIFO_RELAXED_KHR; VK_PRESENT_MODE_SHARED_DEMAND_REFRESH_KHR :: SHARED_DEMAND_REFRESH_KHR; VK_PRESENT_MODE_SHARED_CONTINUOUS_REFRESH_KHR :: SHARED_CONTINUOUS_REFRESH_KHR; VK_PRESENT_MODE_FIFO_LATEST_READY_EXT :: FIFO_LATEST_READY_EXT; VK_PRESENT_MODE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkColorSpaceKHR :: enum u32 { COLOR_SPACE_SRGB_NONLINEAR_KHR :: 0; COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: 1000104001; COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: 1000104002; COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: 1000104003; COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: 1000104004; COLOR_SPACE_BT709_LINEAR_EXT :: 1000104005; COLOR_SPACE_BT709_NONLINEAR_EXT :: 1000104006; COLOR_SPACE_BT2020_LINEAR_EXT :: 1000104007; COLOR_SPACE_HDR10_ST2084_EXT :: 1000104008; COLOR_SPACE_DOLBYVISION_EXT :: 1000104009; COLOR_SPACE_HDR10_HLG_EXT :: 1000104010; COLOR_SPACE_ADOBERGB_LINEAR_EXT :: 1000104011; COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: 1000104012; COLOR_SPACE_PASS_THROUGH_EXT :: 1000104013; COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: 1000104014; COLOR_SPACE_DISPLAY_NATIVE_AMD :: 1000213000; COLORSPACE_SRGB_NONLINEAR_KHR :: 0; COLOR_SPACE_DCI_P3_LINEAR_EXT :: 1000104003; COLOR_SPACE_MAX_ENUM_KHR :: 2147483647; VK_COLOR_SPACE_SRGB_NONLINEAR_KHR :: COLOR_SPACE_SRGB_NONLINEAR_KHR; VK_COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT :: COLOR_SPACE_DISPLAY_P3_NONLINEAR_EXT; VK_COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT :: COLOR_SPACE_EXTENDED_SRGB_LINEAR_EXT; VK_COLOR_SPACE_DISPLAY_P3_LINEAR_EXT :: COLOR_SPACE_DISPLAY_P3_LINEAR_EXT; VK_COLOR_SPACE_DCI_P3_NONLINEAR_EXT :: COLOR_SPACE_DCI_P3_NONLINEAR_EXT; VK_COLOR_SPACE_BT709_LINEAR_EXT :: COLOR_SPACE_BT709_LINEAR_EXT; VK_COLOR_SPACE_BT709_NONLINEAR_EXT :: COLOR_SPACE_BT709_NONLINEAR_EXT; VK_COLOR_SPACE_BT2020_LINEAR_EXT :: COLOR_SPACE_BT2020_LINEAR_EXT; VK_COLOR_SPACE_HDR10_ST2084_EXT :: COLOR_SPACE_HDR10_ST2084_EXT; VK_COLOR_SPACE_DOLBYVISION_EXT :: COLOR_SPACE_DOLBYVISION_EXT; VK_COLOR_SPACE_HDR10_HLG_EXT :: COLOR_SPACE_HDR10_HLG_EXT; VK_COLOR_SPACE_ADOBERGB_LINEAR_EXT :: COLOR_SPACE_ADOBERGB_LINEAR_EXT; VK_COLOR_SPACE_ADOBERGB_NONLINEAR_EXT :: COLOR_SPACE_ADOBERGB_NONLINEAR_EXT; VK_COLOR_SPACE_PASS_THROUGH_EXT :: COLOR_SPACE_PASS_THROUGH_EXT; VK_COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT :: COLOR_SPACE_EXTENDED_SRGB_NONLINEAR_EXT; VK_COLOR_SPACE_DISPLAY_NATIVE_AMD :: COLOR_SPACE_DISPLAY_NATIVE_AMD; VK_COLORSPACE_SRGB_NONLINEAR_KHR :: COLORSPACE_SRGB_NONLINEAR_KHR; VK_COLOR_SPACE_DCI_P3_LINEAR_EXT :: COLOR_SPACE_DCI_P3_LINEAR_EXT; VK_COLOR_SPACE_MAX_ENUM_KHR :: COLOR_SPACE_MAX_ENUM_KHR; } VkSurfaceTransformFlagBitsKHR :: enum u32 { IDENTITY_BIT_KHR :: 1; ROTATE_90_BIT_KHR :: 2; ROTATE_180_BIT_KHR :: 4; ROTATE_270_BIT_KHR :: 8; HORIZONTAL_MIRROR_BIT_KHR :: 16; HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: 32; HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: 64; HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: 128; INHERIT_BIT_KHR :: 256; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_SURFACE_TRANSFORM_IDENTITY_BIT_KHR :: IDENTITY_BIT_KHR; VK_SURFACE_TRANSFORM_ROTATE_90_BIT_KHR :: ROTATE_90_BIT_KHR; VK_SURFACE_TRANSFORM_ROTATE_180_BIT_KHR :: ROTATE_180_BIT_KHR; VK_SURFACE_TRANSFORM_ROTATE_270_BIT_KHR :: ROTATE_270_BIT_KHR; VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_BIT_KHR :: HORIZONTAL_MIRROR_BIT_KHR; VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR :: HORIZONTAL_MIRROR_ROTATE_90_BIT_KHR; VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR :: HORIZONTAL_MIRROR_ROTATE_180_BIT_KHR; VK_SURFACE_TRANSFORM_HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR :: HORIZONTAL_MIRROR_ROTATE_270_BIT_KHR; VK_SURFACE_TRANSFORM_INHERIT_BIT_KHR :: INHERIT_BIT_KHR; VK_SURFACE_TRANSFORM_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkCompositeAlphaFlagBitsKHR :: enum u32 { OPAQUE_BIT_KHR :: 1; PRE_MULTIPLIED_BIT_KHR :: 2; POST_MULTIPLIED_BIT_KHR :: 4; INHERIT_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_COMPOSITE_ALPHA_OPAQUE_BIT_KHR :: OPAQUE_BIT_KHR; VK_COMPOSITE_ALPHA_PRE_MULTIPLIED_BIT_KHR :: PRE_MULTIPLIED_BIT_KHR; VK_COMPOSITE_ALPHA_POST_MULTIPLIED_BIT_KHR :: POST_MULTIPLIED_BIT_KHR; VK_COMPOSITE_ALPHA_INHERIT_BIT_KHR :: INHERIT_BIT_KHR; VK_COMPOSITE_ALPHA_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkCompositeAlphaFlagsKHR :: VkFlags; VkSurfaceTransformFlagsKHR :: VkFlags; VkSurfaceCapabilitiesKHR :: struct { minImageCount: u32; maxImageCount: u32; currentExtent: VkExtent2D; minImageExtent: VkExtent2D; maxImageExtent: VkExtent2D; maxImageArrayLayers: u32; supportedTransforms: VkSurfaceTransformFlagsKHR; currentTransform: VkSurfaceTransformFlagBitsKHR; supportedCompositeAlpha: VkCompositeAlphaFlagsKHR; supportedUsageFlags: VkImageUsageFlags; } VkSurfaceFormatKHR :: struct { format: VkFormat; colorSpace: VkColorSpaceKHR; } PFN_vkDestroySurfaceKHR :: #type (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetPhysicalDeviceSurfaceSupportKHR :: #type (physicalDevice: VkPhysicalDevice, queueFamilyIndex: u32, surface: VkSurfaceKHR, pSupported: *VkBool32) -> VkResult #c_call; PFN_vkGetPhysicalDeviceSurfaceCapabilitiesKHR :: #type (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: *VkSurfaceCapabilitiesKHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceSurfaceFormatsKHR :: #type (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: *u32, pSurfaceFormats: *VkSurfaceFormatKHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceSurfacePresentModesKHR :: #type (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: *u32, pPresentModes: *VkPresentModeKHR) -> VkResult #c_call; vkDestroySurfaceKHR :: (instance: VkInstance, surface: VkSurfaceKHR, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetPhysicalDeviceSurfaceSupportKHR :: (physicalDevice: VkPhysicalDevice, queueFamilyIndex: u32, surface: VkSurfaceKHR, pSupported: *VkBool32) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceSurfaceCapabilitiesKHR :: (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: *VkSurfaceCapabilitiesKHR) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceSurfaceFormatsKHR :: (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceFormatCount: *u32, pSurfaceFormats: *VkSurfaceFormatKHR) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceSurfacePresentModesKHR :: (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pPresentModeCount: *u32, pPresentModes: *VkPresentModeKHR) -> VkResult #foreign libvulkan; VkSwapchainKHR_T :: struct {} VkSwapchainKHR :: *VkSwapchainKHR_T; VkSwapchainCreateFlagBitsKHR :: enum u32 { SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: 1; PROTECTED_BIT_KHR :: 2; MUTABLE_FORMAT_BIT_KHR :: 4; DEFERRED_MEMORY_ALLOCATION_BIT_EXT :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_SWAPCHAIN_CREATE_SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR :: SPLIT_INSTANCE_BIND_REGIONS_BIT_KHR; VK_SWAPCHAIN_CREATE_PROTECTED_BIT_KHR :: PROTECTED_BIT_KHR; VK_SWAPCHAIN_CREATE_MUTABLE_FORMAT_BIT_KHR :: MUTABLE_FORMAT_BIT_KHR; VK_SWAPCHAIN_CREATE_DEFERRED_MEMORY_ALLOCATION_BIT_EXT :: DEFERRED_MEMORY_ALLOCATION_BIT_EXT; VK_SWAPCHAIN_CREATE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkSwapchainCreateFlagsKHR :: VkFlags; VkDeviceGroupPresentModeFlagBitsKHR :: enum u32 { LOCAL_BIT_KHR :: 1; REMOTE_BIT_KHR :: 2; SUM_BIT_KHR :: 4; LOCAL_MULTI_DEVICE_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_BIT_KHR :: LOCAL_BIT_KHR; VK_DEVICE_GROUP_PRESENT_MODE_REMOTE_BIT_KHR :: REMOTE_BIT_KHR; VK_DEVICE_GROUP_PRESENT_MODE_SUM_BIT_KHR :: SUM_BIT_KHR; VK_DEVICE_GROUP_PRESENT_MODE_LOCAL_MULTI_DEVICE_BIT_KHR :: LOCAL_MULTI_DEVICE_BIT_KHR; VK_DEVICE_GROUP_PRESENT_MODE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkDeviceGroupPresentModeFlagsKHR :: VkFlags; VkSwapchainCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkSwapchainCreateFlagsKHR; surface: VkSurfaceKHR; minImageCount: u32; imageFormat: VkFormat; imageColorSpace: VkColorSpaceKHR; imageExtent: VkExtent2D; imageArrayLayers: u32; imageUsage: VkImageUsageFlags; imageSharingMode: VkSharingMode; queueFamilyIndexCount: u32; pQueueFamilyIndices: *u32; preTransform: VkSurfaceTransformFlagBitsKHR; compositeAlpha: VkCompositeAlphaFlagBitsKHR; presentMode: VkPresentModeKHR; clipped: VkBool32; oldSwapchain: VkSwapchainKHR; } VkPresentInfoKHR :: struct { sType: VkStructureType; pNext: *void; waitSemaphoreCount: u32; pWaitSemaphores: *VkSemaphore; swapchainCount: u32; pSwapchains: *VkSwapchainKHR; pImageIndices: *u32; pResults: *VkResult; } VkImageSwapchainCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; swapchain: VkSwapchainKHR; } VkBindImageMemorySwapchainInfoKHR :: struct { sType: VkStructureType; pNext: *void; swapchain: VkSwapchainKHR; imageIndex: u32; } VkAcquireNextImageInfoKHR :: struct { sType: VkStructureType; pNext: *void; swapchain: VkSwapchainKHR; timeout: u64; semaphore: VkSemaphore; fence: VkFence; deviceMask: u32; } VkDeviceGroupPresentCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; presentMask: [32] u32; modes: VkDeviceGroupPresentModeFlagsKHR; } VkDeviceGroupPresentInfoKHR :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pDeviceMasks: *u32; mode: VkDeviceGroupPresentModeFlagBitsKHR; } VkDeviceGroupSwapchainCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; modes: VkDeviceGroupPresentModeFlagsKHR; } PFN_vkCreateSwapchainKHR :: #type (device: VkDevice, pCreateInfo: *VkSwapchainCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSwapchain: *VkSwapchainKHR) -> VkResult #c_call; PFN_vkDestroySwapchainKHR :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetSwapchainImagesKHR :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: *u32, pSwapchainImages: *VkImage) -> VkResult #c_call; PFN_vkAcquireNextImageKHR :: #type (device: VkDevice, swapchain: VkSwapchainKHR, timeout: u64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: *u32) -> VkResult #c_call; PFN_vkQueuePresentKHR :: #type (queue: VkQueue, pPresentInfo: *VkPresentInfoKHR) -> VkResult #c_call; PFN_vkGetDeviceGroupPresentCapabilitiesKHR :: #type (device: VkDevice, pDeviceGroupPresentCapabilities: *VkDeviceGroupPresentCapabilitiesKHR) -> VkResult #c_call; PFN_vkGetDeviceGroupSurfacePresentModesKHR :: #type (device: VkDevice, surface: VkSurfaceKHR, pModes: *VkDeviceGroupPresentModeFlagsKHR) -> VkResult #c_call; PFN_vkGetPhysicalDevicePresentRectanglesKHR :: #type (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: *u32, pRects: *VkRect2D) -> VkResult #c_call; PFN_vkAcquireNextImage2KHR :: #type (device: VkDevice, pAcquireInfo: *VkAcquireNextImageInfoKHR, pImageIndex: *u32) -> VkResult #c_call; vkCreateSwapchainKHR :: (device: VkDevice, pCreateInfo: *VkSwapchainCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSwapchain: *VkSwapchainKHR) -> VkResult #foreign libvulkan; vkDestroySwapchainKHR :: (device: VkDevice, swapchain: VkSwapchainKHR, pAllocator: *VkAllocationCallbacks) -> void #foreign libvulkan; vkGetSwapchainImagesKHR :: (device: VkDevice, swapchain: VkSwapchainKHR, pSwapchainImageCount: *u32, pSwapchainImages: *VkImage) -> VkResult #foreign libvulkan; vkAcquireNextImageKHR :: (device: VkDevice, swapchain: VkSwapchainKHR, timeout: u64, semaphore: VkSemaphore, fence: VkFence, pImageIndex: *u32) -> VkResult #foreign libvulkan; vkQueuePresentKHR :: (queue: VkQueue, pPresentInfo: *VkPresentInfoKHR) -> VkResult #foreign libvulkan; vkGetDeviceGroupPresentCapabilitiesKHR :: (device: VkDevice, pDeviceGroupPresentCapabilities: *VkDeviceGroupPresentCapabilitiesKHR) -> VkResult #foreign libvulkan; vkGetDeviceGroupSurfacePresentModesKHR :: (device: VkDevice, surface: VkSurfaceKHR, pModes: *VkDeviceGroupPresentModeFlagsKHR) -> VkResult #foreign libvulkan; vkGetPhysicalDevicePresentRectanglesKHR :: (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pRectCount: *u32, pRects: *VkRect2D) -> VkResult #foreign libvulkan; vkAcquireNextImage2KHR :: (device: VkDevice, pAcquireInfo: *VkAcquireNextImageInfoKHR, pImageIndex: *u32) -> VkResult #foreign libvulkan; VkDisplayKHR_T :: struct {} VkDisplayKHR :: *VkDisplayKHR_T; VkDisplayModeKHR_T :: struct {} VkDisplayModeKHR :: *VkDisplayModeKHR_T; VkDisplayModeCreateFlagsKHR :: VkFlags; VkDisplayPlaneAlphaFlagBitsKHR :: enum u32 { OPAQUE_BIT_KHR :: 1; GLOBAL_BIT_KHR :: 2; PER_PIXEL_BIT_KHR :: 4; PER_PIXEL_PREMULTIPLIED_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_DISPLAY_PLANE_ALPHA_OPAQUE_BIT_KHR :: OPAQUE_BIT_KHR; VK_DISPLAY_PLANE_ALPHA_GLOBAL_BIT_KHR :: GLOBAL_BIT_KHR; VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_BIT_KHR :: PER_PIXEL_BIT_KHR; VK_DISPLAY_PLANE_ALPHA_PER_PIXEL_PREMULTIPLIED_BIT_KHR :: PER_PIXEL_PREMULTIPLIED_BIT_KHR; VK_DISPLAY_PLANE_ALPHA_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkDisplayPlaneAlphaFlagsKHR :: VkFlags; VkDisplaySurfaceCreateFlagsKHR :: VkFlags; VkDisplayModeParametersKHR :: struct { visibleRegion: VkExtent2D; refreshRate: u32; } VkDisplayModeCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkDisplayModeCreateFlagsKHR; parameters: VkDisplayModeParametersKHR; } VkDisplayModePropertiesKHR :: struct { displayMode: VkDisplayModeKHR; parameters: VkDisplayModeParametersKHR; } VkDisplayPlaneCapabilitiesKHR :: struct { supportedAlpha: VkDisplayPlaneAlphaFlagsKHR; minSrcPosition: VkOffset2D; maxSrcPosition: VkOffset2D; minSrcExtent: VkExtent2D; maxSrcExtent: VkExtent2D; minDstPosition: VkOffset2D; maxDstPosition: VkOffset2D; minDstExtent: VkExtent2D; maxDstExtent: VkExtent2D; } VkDisplayPlanePropertiesKHR :: struct { currentDisplay: VkDisplayKHR; currentStackIndex: u32; } VkDisplayPropertiesKHR :: struct { display: VkDisplayKHR; displayName: *u8; physicalDimensions: VkExtent2D; physicalResolution: VkExtent2D; supportedTransforms: VkSurfaceTransformFlagsKHR; planeReorderPossible: VkBool32; persistentContent: VkBool32; } VkDisplaySurfaceCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkDisplaySurfaceCreateFlagsKHR; displayMode: VkDisplayModeKHR; planeIndex: u32; planeStackIndex: u32; transform: VkSurfaceTransformFlagBitsKHR; globalAlpha: float; alphaMode: VkDisplayPlaneAlphaFlagBitsKHR; imageExtent: VkExtent2D; } PFN_vkGetPhysicalDeviceDisplayPropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPropertiesKHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceDisplayPlanePropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPlanePropertiesKHR) -> VkResult #c_call; PFN_vkGetDisplayPlaneSupportedDisplaysKHR :: #type (physicalDevice: VkPhysicalDevice, planeIndex: u32, pDisplayCount: *u32, pDisplays: *VkDisplayKHR) -> VkResult #c_call; PFN_vkGetDisplayModePropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: *u32, pProperties: *VkDisplayModePropertiesKHR) -> VkResult #c_call; PFN_vkCreateDisplayModeKHR :: #type (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: *VkDisplayModeCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pMode: *VkDisplayModeKHR) -> VkResult #c_call; PFN_vkGetDisplayPlaneCapabilitiesKHR :: #type (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: u32, pCapabilities: *VkDisplayPlaneCapabilitiesKHR) -> VkResult #c_call; PFN_vkCreateDisplayPlaneSurfaceKHR :: #type (instance: VkInstance, pCreateInfo: *VkDisplaySurfaceCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSurface: *VkSurfaceKHR) -> VkResult #c_call; vkGetPhysicalDeviceDisplayPropertiesKHR :: (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPropertiesKHR) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceDisplayPlanePropertiesKHR :: (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPlanePropertiesKHR) -> VkResult #foreign libvulkan; vkGetDisplayPlaneSupportedDisplaysKHR :: (physicalDevice: VkPhysicalDevice, planeIndex: u32, pDisplayCount: *u32, pDisplays: *VkDisplayKHR) -> VkResult #foreign libvulkan; vkGetDisplayModePropertiesKHR :: (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: *u32, pProperties: *VkDisplayModePropertiesKHR) -> VkResult #foreign libvulkan; vkCreateDisplayModeKHR :: (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pCreateInfo: *VkDisplayModeCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pMode: *VkDisplayModeKHR) -> VkResult #foreign libvulkan; vkGetDisplayPlaneCapabilitiesKHR :: (physicalDevice: VkPhysicalDevice, mode: VkDisplayModeKHR, planeIndex: u32, pCapabilities: *VkDisplayPlaneCapabilitiesKHR) -> VkResult #foreign libvulkan; vkCreateDisplayPlaneSurfaceKHR :: (instance: VkInstance, pCreateInfo: *VkDisplaySurfaceCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSurface: *VkSurfaceKHR) -> VkResult #foreign libvulkan; VkDisplayPresentInfoKHR :: struct { sType: VkStructureType; pNext: *void; srcRect: VkRect2D; dstRect: VkRect2D; persistent: VkBool32; } PFN_vkCreateSharedSwapchainsKHR :: #type (device: VkDevice, swapchainCount: u32, pCreateInfos: *VkSwapchainCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSwapchains: *VkSwapchainKHR) -> VkResult #c_call; vkCreateSharedSwapchainsKHR :: (device: VkDevice, swapchainCount: u32, pCreateInfos: *VkSwapchainCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pSwapchains: *VkSwapchainKHR) -> VkResult #foreign libvulkan; VkVideoSessionKHR_T :: struct {} VkVideoSessionKHR :: *VkVideoSessionKHR_T; VkVideoSessionParametersKHR_T :: struct {} VkVideoSessionParametersKHR :: *VkVideoSessionParametersKHR_T; VkQueryResultStatusKHR :: enum s32 { ERROR_KHR :: -1; NOT_READY_KHR :: 0; COMPLETE_KHR :: 1; INSUFFICIENT_BITSTREAM_BUFFER_RANGE_KHR :: -1000299000; MAX_ENUM_KHR :: 2147483647; VK_QUERY_RESULT_STATUS_ERROR_KHR :: ERROR_KHR; VK_QUERY_RESULT_STATUS_NOT_READY_KHR :: NOT_READY_KHR; VK_QUERY_RESULT_STATUS_COMPLETE_KHR :: COMPLETE_KHR; VK_QUERY_RESULT_STATUS_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_KHR :: INSUFFICIENT_BITSTREAM_BUFFER_RANGE_KHR; VK_QUERY_RESULT_STATUS_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkVideoCodecOperationFlagBitsKHR :: enum u32 { NONE_KHR :: 0; ENCODE_H264_BIT_KHR :: 65536; ENCODE_H265_BIT_KHR :: 131072; DECODE_H264_BIT_KHR :: 1; DECODE_H265_BIT_KHR :: 2; DECODE_AV1_BIT_KHR :: 4; ENCODE_AV1_BIT_KHR :: 262144; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_CODEC_OPERATION_NONE_KHR :: NONE_KHR; VK_VIDEO_CODEC_OPERATION_ENCODE_H264_BIT_KHR :: ENCODE_H264_BIT_KHR; VK_VIDEO_CODEC_OPERATION_ENCODE_H265_BIT_KHR :: ENCODE_H265_BIT_KHR; VK_VIDEO_CODEC_OPERATION_DECODE_H264_BIT_KHR :: DECODE_H264_BIT_KHR; VK_VIDEO_CODEC_OPERATION_DECODE_H265_BIT_KHR :: DECODE_H265_BIT_KHR; VK_VIDEO_CODEC_OPERATION_DECODE_AV1_BIT_KHR :: DECODE_AV1_BIT_KHR; VK_VIDEO_CODEC_OPERATION_ENCODE_AV1_BIT_KHR :: ENCODE_AV1_BIT_KHR; VK_VIDEO_CODEC_OPERATION_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoCodecOperationFlagsKHR :: VkFlags; VkVideoChromaSubsamplingFlagBitsKHR :: enum u32 { INVALID_KHR :: 0; MONOCHROME_BIT_KHR :: 1; _420_BIT_KHR :: 2; _422_BIT_KHR :: 4; _444_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_CHROMA_SUBSAMPLING_INVALID_KHR :: INVALID_KHR; VK_VIDEO_CHROMA_SUBSAMPLING_MONOCHROME_BIT_KHR :: MONOCHROME_BIT_KHR; VK_VIDEO_CHROMA_SUBSAMPLING_420_BIT_KHR :: _420_BIT_KHR; VK_VIDEO_CHROMA_SUBSAMPLING_422_BIT_KHR :: _422_BIT_KHR; VK_VIDEO_CHROMA_SUBSAMPLING_444_BIT_KHR :: _444_BIT_KHR; VK_VIDEO_CHROMA_SUBSAMPLING_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoChromaSubsamplingFlagsKHR :: VkFlags; VkVideoComponentBitDepthFlagBitsKHR :: enum u32 { INVALID_KHR :: 0; _8_BIT_KHR :: 1; _10_BIT_KHR :: 4; _12_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_COMPONENT_BIT_DEPTH_INVALID_KHR :: INVALID_KHR; VK_VIDEO_COMPONENT_BIT_DEPTH_8_BIT_KHR :: _8_BIT_KHR; VK_VIDEO_COMPONENT_BIT_DEPTH_10_BIT_KHR :: _10_BIT_KHR; VK_VIDEO_COMPONENT_BIT_DEPTH_12_BIT_KHR :: _12_BIT_KHR; VK_VIDEO_COMPONENT_BIT_DEPTH_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoComponentBitDepthFlagsKHR :: VkFlags; VkVideoCapabilityFlagBitsKHR :: enum u32 { PROTECTED_CONTENT_BIT_KHR :: 1; SEPARATE_REFERENCE_IMAGES_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_CAPABILITY_PROTECTED_CONTENT_BIT_KHR :: PROTECTED_CONTENT_BIT_KHR; VK_VIDEO_CAPABILITY_SEPARATE_REFERENCE_IMAGES_BIT_KHR :: SEPARATE_REFERENCE_IMAGES_BIT_KHR; VK_VIDEO_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoCapabilityFlagsKHR :: VkFlags; VkVideoSessionCreateFlagBitsKHR :: enum u32 { PROTECTED_CONTENT_BIT_KHR :: 1; ALLOW_ENCODE_PARAMETER_OPTIMIZATIONS_BIT_KHR :: 2; INLINE_QUERIES_BIT_KHR :: 4; ALLOW_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR :: 8; ALLOW_ENCODE_EMPHASIS_MAP_BIT_KHR :: 16; INLINE_SESSION_PARAMETERS_BIT_KHR :: 32; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_SESSION_CREATE_PROTECTED_CONTENT_BIT_KHR :: PROTECTED_CONTENT_BIT_KHR; VK_VIDEO_SESSION_CREATE_ALLOW_ENCODE_PARAMETER_OPTIMIZATIONS_BIT_KHR :: ALLOW_ENCODE_PARAMETER_OPTIMIZATIONS_BIT_KHR; VK_VIDEO_SESSION_CREATE_INLINE_QUERIES_BIT_KHR :: INLINE_QUERIES_BIT_KHR; VK_VIDEO_SESSION_CREATE_ALLOW_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR :: ALLOW_ENCODE_QUANTIZATION_DELTA_MAP_BIT_KHR; VK_VIDEO_SESSION_CREATE_ALLOW_ENCODE_EMPHASIS_MAP_BIT_KHR :: ALLOW_ENCODE_EMPHASIS_MAP_BIT_KHR; VK_VIDEO_SESSION_CREATE_INLINE_SESSION_PARAMETERS_BIT_KHR :: INLINE_SESSION_PARAMETERS_BIT_KHR; VK_VIDEO_SESSION_CREATE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoSessionCreateFlagsKHR :: VkFlags; VkVideoSessionParametersCreateFlagBitsKHR :: enum u32 { QUANTIZATION_MAP_COMPATIBLE_BIT_KHR :: 1; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_SESSION_PARAMETERS_CREATE_QUANTIZATION_MAP_COMPATIBLE_BIT_KHR :: QUANTIZATION_MAP_COMPATIBLE_BIT_KHR; VK_VIDEO_SESSION_PARAMETERS_CREATE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoSessionParametersCreateFlagsKHR :: VkFlags; VkVideoBeginCodingFlagsKHR :: VkFlags; VkVideoEndCodingFlagsKHR :: VkFlags; VkVideoCodingControlFlagBitsKHR :: enum u32 { RESET_BIT_KHR :: 1; ENCODE_RATE_CONTROL_BIT_KHR :: 2; ENCODE_QUALITY_LEVEL_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_CODING_CONTROL_RESET_BIT_KHR :: RESET_BIT_KHR; VK_VIDEO_CODING_CONTROL_ENCODE_RATE_CONTROL_BIT_KHR :: ENCODE_RATE_CONTROL_BIT_KHR; VK_VIDEO_CODING_CONTROL_ENCODE_QUALITY_LEVEL_BIT_KHR :: ENCODE_QUALITY_LEVEL_BIT_KHR; VK_VIDEO_CODING_CONTROL_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoCodingControlFlagsKHR :: VkFlags; VkQueueFamilyQueryResultStatusPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; queryResultStatusSupport: VkBool32; } VkQueueFamilyVideoPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; videoCodecOperations: VkVideoCodecOperationFlagsKHR; } VkVideoProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; videoCodecOperation: VkVideoCodecOperationFlagBitsKHR; chromaSubsampling: VkVideoChromaSubsamplingFlagsKHR; lumaBitDepth: VkVideoComponentBitDepthFlagsKHR; chromaBitDepth: VkVideoComponentBitDepthFlagsKHR; } VkVideoProfileListInfoKHR :: struct { sType: VkStructureType; pNext: *void; profileCount: u32; pProfiles: *VkVideoProfileInfoKHR; } VkVideoCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoCapabilityFlagsKHR; minBitstreamBufferOffsetAlignment: VkDeviceSize; minBitstreamBufferSizeAlignment: VkDeviceSize; pictureAccessGranularity: VkExtent2D; minCodedExtent: VkExtent2D; maxCodedExtent: VkExtent2D; maxDpbSlots: u32; maxActiveReferencePictures: u32; stdHeaderVersion: VkExtensionProperties; } VkPhysicalDeviceVideoFormatInfoKHR :: struct { sType: VkStructureType; pNext: *void; imageUsage: VkImageUsageFlags; } VkVideoFormatPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; format: VkFormat; componentMapping: VkComponentMapping; imageCreateFlags: VkImageCreateFlags; imageType: VkImageType; imageTiling: VkImageTiling; imageUsageFlags: VkImageUsageFlags; } VkVideoPictureResourceInfoKHR :: struct { sType: VkStructureType; pNext: *void; codedOffset: VkOffset2D; codedExtent: VkExtent2D; baseArrayLayer: u32; imageViewBinding: VkImageView; } VkVideoReferenceSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; slotIndex: s32; pPictureResource: *VkVideoPictureResourceInfoKHR; } VkVideoSessionMemoryRequirementsKHR :: struct { sType: VkStructureType; pNext: *void; memoryBindIndex: u32; memoryRequirements: VkMemoryRequirements; } VkBindVideoSessionMemoryInfoKHR :: struct { sType: VkStructureType; pNext: *void; memoryBindIndex: u32; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; memorySize: VkDeviceSize; } VkVideoSessionCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; queueFamilyIndex: u32; flags: VkVideoSessionCreateFlagsKHR; pVideoProfile: *VkVideoProfileInfoKHR; pictureFormat: VkFormat; maxCodedExtent: VkExtent2D; referencePictureFormat: VkFormat; maxDpbSlots: u32; maxActiveReferencePictures: u32; pStdHeaderVersion: *VkExtensionProperties; } VkVideoSessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoSessionParametersCreateFlagsKHR; videoSessionParametersTemplate: VkVideoSessionParametersKHR; videoSession: VkVideoSessionKHR; } VkVideoSessionParametersUpdateInfoKHR :: struct { sType: VkStructureType; pNext: *void; updateSequenceCount: u32; } VkVideoBeginCodingInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoBeginCodingFlagsKHR; videoSession: VkVideoSessionKHR; videoSessionParameters: VkVideoSessionParametersKHR; referenceSlotCount: u32; pReferenceSlots: *VkVideoReferenceSlotInfoKHR; } VkVideoEndCodingInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEndCodingFlagsKHR; } VkVideoCodingControlInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoCodingControlFlagsKHR; } PFN_vkGetPhysicalDeviceVideoCapabilitiesKHR :: #type (physicalDevice: VkPhysicalDevice, pVideoProfile: *VkVideoProfileInfoKHR, pCapabilities: *VkVideoCapabilitiesKHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceVideoFormatPropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pVideoFormatInfo: *VkPhysicalDeviceVideoFormatInfoKHR, pVideoFormatPropertyCount: *u32, pVideoFormatProperties: *VkVideoFormatPropertiesKHR) -> VkResult #c_call; PFN_vkCreateVideoSessionKHR :: #type (device: VkDevice, pCreateInfo: *VkVideoSessionCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pVideoSession: *VkVideoSessionKHR) -> VkResult #c_call; PFN_vkDestroyVideoSessionKHR :: #type (device: VkDevice, videoSession: VkVideoSessionKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetVideoSessionMemoryRequirementsKHR :: #type (device: VkDevice, videoSession: VkVideoSessionKHR, pMemoryRequirementsCount: *u32, pMemoryRequirements: *VkVideoSessionMemoryRequirementsKHR) -> VkResult #c_call; PFN_vkBindVideoSessionMemoryKHR :: #type (device: VkDevice, videoSession: VkVideoSessionKHR, bindSessionMemoryInfoCount: u32, pBindSessionMemoryInfos: *VkBindVideoSessionMemoryInfoKHR) -> VkResult #c_call; PFN_vkCreateVideoSessionParametersKHR :: #type (device: VkDevice, pCreateInfo: *VkVideoSessionParametersCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pVideoSessionParameters: *VkVideoSessionParametersKHR) -> VkResult #c_call; PFN_vkUpdateVideoSessionParametersKHR :: #type (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pUpdateInfo: *VkVideoSessionParametersUpdateInfoKHR) -> VkResult #c_call; PFN_vkDestroyVideoSessionParametersKHR :: #type (device: VkDevice, videoSessionParameters: VkVideoSessionParametersKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCmdBeginVideoCodingKHR :: #type (commandBuffer: VkCommandBuffer, pBeginInfo: *VkVideoBeginCodingInfoKHR) -> void #c_call; PFN_vkCmdEndVideoCodingKHR :: #type (commandBuffer: VkCommandBuffer, pEndCodingInfo: *VkVideoEndCodingInfoKHR) -> void #c_call; PFN_vkCmdControlVideoCodingKHR :: #type (commandBuffer: VkCommandBuffer, pCodingControlInfo: *VkVideoCodingControlInfoKHR) -> void #c_call; VkVideoDecodeCapabilityFlagBitsKHR :: enum u32 { DPB_AND_OUTPUT_COINCIDE_BIT_KHR :: 1; DPB_AND_OUTPUT_DISTINCT_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_COINCIDE_BIT_KHR :: DPB_AND_OUTPUT_COINCIDE_BIT_KHR; VK_VIDEO_DECODE_CAPABILITY_DPB_AND_OUTPUT_DISTINCT_BIT_KHR :: DPB_AND_OUTPUT_DISTINCT_BIT_KHR; VK_VIDEO_DECODE_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoDecodeCapabilityFlagsKHR :: VkFlags; VkVideoDecodeUsageFlagBitsKHR :: enum u32 { DEFAULT_KHR :: 0; TRANSCODING_BIT_KHR :: 1; OFFLINE_BIT_KHR :: 2; STREAMING_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_DECODE_USAGE_DEFAULT_KHR :: DEFAULT_KHR; VK_VIDEO_DECODE_USAGE_TRANSCODING_BIT_KHR :: TRANSCODING_BIT_KHR; VK_VIDEO_DECODE_USAGE_OFFLINE_BIT_KHR :: OFFLINE_BIT_KHR; VK_VIDEO_DECODE_USAGE_STREAMING_BIT_KHR :: STREAMING_BIT_KHR; VK_VIDEO_DECODE_USAGE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoDecodeUsageFlagsKHR :: VkFlags; VkVideoDecodeFlagsKHR :: VkFlags; VkVideoDecodeCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoDecodeCapabilityFlagsKHR; } VkVideoDecodeUsageInfoKHR :: struct { sType: VkStructureType; pNext: *void; videoUsageHints: VkVideoDecodeUsageFlagsKHR; } VkVideoDecodeInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoDecodeFlagsKHR; srcBuffer: VkBuffer; srcBufferOffset: VkDeviceSize; srcBufferRange: VkDeviceSize; dstPictureResource: VkVideoPictureResourceInfoKHR; pSetupReferenceSlot: *VkVideoReferenceSlotInfoKHR; referenceSlotCount: u32; pReferenceSlots: *VkVideoReferenceSlotInfoKHR; } PFN_vkCmdDecodeVideoKHR :: #type (commandBuffer: VkCommandBuffer, pDecodeInfo: *VkVideoDecodeInfoKHR) -> void #c_call; StdVideoH264ChromaFormatIdc :: enum u32 { MONOCHROME :: 0; _420 :: 1; _422 :: 2; _444 :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_CHROMA_FORMAT_IDC_MONOCHROME :: MONOCHROME; STD_VIDEO_H264_CHROMA_FORMAT_IDC_420 :: _420; STD_VIDEO_H264_CHROMA_FORMAT_IDC_422 :: _422; STD_VIDEO_H264_CHROMA_FORMAT_IDC_444 :: _444; STD_VIDEO_H264_CHROMA_FORMAT_IDC_INVALID :: INVALID; STD_VIDEO_H264_CHROMA_FORMAT_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264ProfileIdc :: enum u32 { BASELINE :: 66; MAIN :: 77; HIGH :: 100; HIGH_444_PREDICTIVE :: 244; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_PROFILE_IDC_BASELINE :: BASELINE; STD_VIDEO_H264_PROFILE_IDC_MAIN :: MAIN; STD_VIDEO_H264_PROFILE_IDC_HIGH :: HIGH; STD_VIDEO_H264_PROFILE_IDC_HIGH_444_PREDICTIVE :: HIGH_444_PREDICTIVE; STD_VIDEO_H264_PROFILE_IDC_INVALID :: INVALID; STD_VIDEO_H264_PROFILE_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264LevelIdc :: enum u32 { _1_0 :: 0; _1_1 :: 1; _1_2 :: 2; _1_3 :: 3; _2_0 :: 4; _2_1 :: 5; _2_2 :: 6; _3_0 :: 7; _3_1 :: 8; _3_2 :: 9; _4_0 :: 10; _4_1 :: 11; _4_2 :: 12; _5_0 :: 13; _5_1 :: 14; _5_2 :: 15; _6_0 :: 16; _6_1 :: 17; _6_2 :: 18; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_LEVEL_IDC_1_0 :: _1_0; STD_VIDEO_H264_LEVEL_IDC_1_1 :: _1_1; STD_VIDEO_H264_LEVEL_IDC_1_2 :: _1_2; STD_VIDEO_H264_LEVEL_IDC_1_3 :: _1_3; STD_VIDEO_H264_LEVEL_IDC_2_0 :: _2_0; STD_VIDEO_H264_LEVEL_IDC_2_1 :: _2_1; STD_VIDEO_H264_LEVEL_IDC_2_2 :: _2_2; STD_VIDEO_H264_LEVEL_IDC_3_0 :: _3_0; STD_VIDEO_H264_LEVEL_IDC_3_1 :: _3_1; STD_VIDEO_H264_LEVEL_IDC_3_2 :: _3_2; STD_VIDEO_H264_LEVEL_IDC_4_0 :: _4_0; STD_VIDEO_H264_LEVEL_IDC_4_1 :: _4_1; STD_VIDEO_H264_LEVEL_IDC_4_2 :: _4_2; STD_VIDEO_H264_LEVEL_IDC_5_0 :: _5_0; STD_VIDEO_H264_LEVEL_IDC_5_1 :: _5_1; STD_VIDEO_H264_LEVEL_IDC_5_2 :: _5_2; STD_VIDEO_H264_LEVEL_IDC_6_0 :: _6_0; STD_VIDEO_H264_LEVEL_IDC_6_1 :: _6_1; STD_VIDEO_H264_LEVEL_IDC_6_2 :: _6_2; STD_VIDEO_H264_LEVEL_IDC_INVALID :: INVALID; STD_VIDEO_H264_LEVEL_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264PocType :: enum u32 { _0 :: 0; _1 :: 1; _2 :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_POC_TYPE_0 :: _0; STD_VIDEO_H264_POC_TYPE_1 :: _1; STD_VIDEO_H264_POC_TYPE_2 :: _2; STD_VIDEO_H264_POC_TYPE_INVALID :: INVALID; STD_VIDEO_H264_POC_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH264AspectRatioIdc :: enum u32 { UNSPECIFIED :: 0; SQUARE :: 1; _12_11 :: 2; _10_11 :: 3; _16_11 :: 4; _40_33 :: 5; _24_11 :: 6; _20_11 :: 7; _32_11 :: 8; _80_33 :: 9; _18_11 :: 10; _15_11 :: 11; _64_33 :: 12; _160_99 :: 13; _4_3 :: 14; _3_2 :: 15; _2_1 :: 16; EXTENDED_SAR :: 255; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_ASPECT_RATIO_IDC_UNSPECIFIED :: UNSPECIFIED; STD_VIDEO_H264_ASPECT_RATIO_IDC_SQUARE :: SQUARE; STD_VIDEO_H264_ASPECT_RATIO_IDC_12_11 :: _12_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_10_11 :: _10_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_16_11 :: _16_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_40_33 :: _40_33; STD_VIDEO_H264_ASPECT_RATIO_IDC_24_11 :: _24_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_20_11 :: _20_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_32_11 :: _32_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_80_33 :: _80_33; STD_VIDEO_H264_ASPECT_RATIO_IDC_18_11 :: _18_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_15_11 :: _15_11; STD_VIDEO_H264_ASPECT_RATIO_IDC_64_33 :: _64_33; STD_VIDEO_H264_ASPECT_RATIO_IDC_160_99 :: _160_99; STD_VIDEO_H264_ASPECT_RATIO_IDC_4_3 :: _4_3; STD_VIDEO_H264_ASPECT_RATIO_IDC_3_2 :: _3_2; STD_VIDEO_H264_ASPECT_RATIO_IDC_2_1 :: _2_1; STD_VIDEO_H264_ASPECT_RATIO_IDC_EXTENDED_SAR :: EXTENDED_SAR; STD_VIDEO_H264_ASPECT_RATIO_IDC_INVALID :: INVALID; STD_VIDEO_H264_ASPECT_RATIO_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264WeightedBipredIdc :: enum u32 { DEFAULT :: 0; EXPLICIT :: 1; IMPLICIT :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_DEFAULT :: DEFAULT; STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_EXPLICIT :: EXPLICIT; STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_IMPLICIT :: IMPLICIT; STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_INVALID :: INVALID; STD_VIDEO_H264_WEIGHTED_BIPRED_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264ModificationOfPicNumsIdc :: enum u32 { SHORT_TERM_SUBTRACT :: 0; SHORT_TERM_ADD :: 1; LONG_TERM :: 2; END :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_SUBTRACT :: SHORT_TERM_SUBTRACT; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_SHORT_TERM_ADD :: SHORT_TERM_ADD; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_LONG_TERM :: LONG_TERM; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_END :: END; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_INVALID :: INVALID; STD_VIDEO_H264_MODIFICATION_OF_PIC_NUMS_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264MemMgmtControlOp :: enum u32 { END :: 0; UNMARK_SHORT_TERM :: 1; UNMARK_LONG_TERM :: 2; MARK_LONG_TERM :: 3; SET_MAX_LONG_TERM_INDEX :: 4; UNMARK_ALL :: 5; MARK_CURRENT_AS_LONG_TERM :: 6; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_END :: END; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_SHORT_TERM :: UNMARK_SHORT_TERM; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_LONG_TERM :: UNMARK_LONG_TERM; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_LONG_TERM :: MARK_LONG_TERM; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_SET_MAX_LONG_TERM_INDEX :: SET_MAX_LONG_TERM_INDEX; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_UNMARK_ALL :: UNMARK_ALL; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MARK_CURRENT_AS_LONG_TERM :: MARK_CURRENT_AS_LONG_TERM; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_INVALID :: INVALID; STD_VIDEO_H264_MEM_MGMT_CONTROL_OP_MAX_ENUM :: MAX_ENUM; } StdVideoH264CabacInitIdc :: enum u32 { _0 :: 0; _1 :: 1; _2 :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_CABAC_INIT_IDC_0 :: _0; STD_VIDEO_H264_CABAC_INIT_IDC_1 :: _1; STD_VIDEO_H264_CABAC_INIT_IDC_2 :: _2; STD_VIDEO_H264_CABAC_INIT_IDC_INVALID :: INVALID; STD_VIDEO_H264_CABAC_INIT_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264DisableDeblockingFilterIdc :: enum u32 { DISABLED :: 0; ENABLED :: 1; PARTIAL :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_DISABLED :: DISABLED; STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_ENABLED :: ENABLED; STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_PARTIAL :: PARTIAL; STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_INVALID :: INVALID; STD_VIDEO_H264_DISABLE_DEBLOCKING_FILTER_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH264SliceType :: enum u32 { P :: 0; B :: 1; I :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_SLICE_TYPE_P :: P; STD_VIDEO_H264_SLICE_TYPE_B :: B; STD_VIDEO_H264_SLICE_TYPE_I :: I; STD_VIDEO_H264_SLICE_TYPE_INVALID :: INVALID; STD_VIDEO_H264_SLICE_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH264PictureType :: enum u32 { P :: 0; B :: 1; I :: 2; IDR :: 5; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_PICTURE_TYPE_P :: P; STD_VIDEO_H264_PICTURE_TYPE_B :: B; STD_VIDEO_H264_PICTURE_TYPE_I :: I; STD_VIDEO_H264_PICTURE_TYPE_IDR :: IDR; STD_VIDEO_H264_PICTURE_TYPE_INVALID :: INVALID; STD_VIDEO_H264_PICTURE_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH264NonVclNaluType :: enum u32 { SPS :: 0; PPS :: 1; AUD :: 2; PREFIX :: 3; END_OF_SEQUENCE :: 4; END_OF_STREAM :: 5; PRECODED :: 6; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H264_NON_VCL_NALU_TYPE_SPS :: SPS; STD_VIDEO_H264_NON_VCL_NALU_TYPE_PPS :: PPS; STD_VIDEO_H264_NON_VCL_NALU_TYPE_AUD :: AUD; STD_VIDEO_H264_NON_VCL_NALU_TYPE_PREFIX :: PREFIX; STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_SEQUENCE :: END_OF_SEQUENCE; STD_VIDEO_H264_NON_VCL_NALU_TYPE_END_OF_STREAM :: END_OF_STREAM; STD_VIDEO_H264_NON_VCL_NALU_TYPE_PRECODED :: PRECODED; STD_VIDEO_H264_NON_VCL_NALU_TYPE_INVALID :: INVALID; STD_VIDEO_H264_NON_VCL_NALU_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH264SpsVuiFlags :: struct { __bitfield: u16; /* aspect_ratio_info_present_flag: u32; /* 1 bits */ overscan_info_present_flag: u32; /* 1 bits */ overscan_appropriate_flag: u32; /* 1 bits */ video_signal_type_present_flag: u32; /* 1 bits */ video_full_range_flag: u32; /* 1 bits */ color_description_present_flag: u32; /* 1 bits */ chroma_loc_info_present_flag: u32; /* 1 bits */ timing_info_present_flag: u32; /* 1 bits */ fixed_frame_rate_flag: u32; /* 1 bits */ bitstream_restriction_flag: u32; /* 1 bits */ nal_hrd_parameters_present_flag: u32; /* 1 bits */ vcl_hrd_parameters_present_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoH264SpsVuiFlags_alignment: u32; } StdVideoH264HrdParameters :: struct { cpb_cnt_minus1: u8; bit_rate_scale: u8; cpb_size_scale: u8; reserved1: u8; bit_rate_value_minus1: [32] u32; cpb_size_value_minus1: [32] u32; cbr_flag: [32] u8; initial_cpb_removal_delay_length_minus1: u32; cpb_removal_delay_length_minus1: u32; dpb_output_delay_length_minus1: u32; time_offset_length: u32; } StdVideoH264SequenceParameterSetVui :: struct { flags: StdVideoH264SpsVuiFlags; aspect_ratio_idc: StdVideoH264AspectRatioIdc; sar_width: u16; sar_height: u16; video_format: u8; colour_primaries: u8; transfer_characteristics: u8; matrix_coefficients: u8; num_units_in_tick: u32; time_scale: u32; max_num_reorder_frames: u8; max_dec_frame_buffering: u8; chroma_sample_loc_type_top_field: u8; chroma_sample_loc_type_bottom_field: u8; reserved1: u32; pHrdParameters: *StdVideoH264HrdParameters; } StdVideoH264SpsFlags :: struct { __bitfield: u16; /* constraint_set0_flag: u32; /* 1 bits */ constraint_set1_flag: u32; /* 1 bits */ constraint_set2_flag: u32; /* 1 bits */ constraint_set3_flag: u32; /* 1 bits */ constraint_set4_flag: u32; /* 1 bits */ constraint_set5_flag: u32; /* 1 bits */ direct_8x8_inference_flag: u32; /* 1 bits */ mb_adaptive_frame_field_flag: u32; /* 1 bits */ frame_mbs_only_flag: u32; /* 1 bits */ delta_pic_order_always_zero_flag: u32; /* 1 bits */ separate_colour_plane_flag: u32; /* 1 bits */ gaps_in_frame_num_value_allowed_flag: u32; /* 1 bits */ qpprime_y_zero_transform_bypass_flag: u32; /* 1 bits */ frame_cropping_flag: u32; /* 1 bits */ seq_scaling_matrix_present_flag: u32; /* 1 bits */ vui_parameters_present_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoH264SpsFlags_alignment: u32; } StdVideoH264ScalingLists :: struct { scaling_list_present_mask: u16; use_default_scaling_matrix_mask: u16; ScalingList4x4: [6] [16] u8; ScalingList8x8: [6] [64] u8; } StdVideoH264SequenceParameterSet :: struct { flags: StdVideoH264SpsFlags; profile_idc: StdVideoH264ProfileIdc; level_idc: StdVideoH264LevelIdc; chroma_format_idc: StdVideoH264ChromaFormatIdc; seq_parameter_set_id: u8; bit_depth_luma_minus8: u8; bit_depth_chroma_minus8: u8; log2_max_frame_num_minus4: u8; pic_order_cnt_type: StdVideoH264PocType; offset_for_non_ref_pic: s32; offset_for_top_to_bottom_field: s32; log2_max_pic_order_cnt_lsb_minus4: u8; num_ref_frames_in_pic_order_cnt_cycle: u8; max_num_ref_frames: u8; reserved1: u8; pic_width_in_mbs_minus1: u32; pic_height_in_map_units_minus1: u32; frame_crop_left_offset: u32; frame_crop_right_offset: u32; frame_crop_top_offset: u32; frame_crop_bottom_offset: u32; reserved2: u32; pOffsetForRefFrame: *s32; pScalingLists: *StdVideoH264ScalingLists; pSequenceParameterSetVui: *StdVideoH264SequenceParameterSetVui; } StdVideoH264PpsFlags :: struct { __bitfield: u8; /* transform_8x8_mode_flag: u32; /* 1 bits */ redundant_pic_cnt_present_flag: u32; /* 1 bits */ constrained_intra_pred_flag: u32; /* 1 bits */ deblocking_filter_control_present_flag: u32; /* 1 bits */ weighted_pred_flag: u32; /* 1 bits */ bottom_field_pic_order_in_frame_present_flag: u32; /* 1 bits */ entropy_coding_mode_flag: u32; /* 1 bits */ pic_scaling_matrix_present_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoH264PpsFlags_alignment: u32; } StdVideoH264PictureParameterSet :: struct { flags: StdVideoH264PpsFlags; seq_parameter_set_id: u8; pic_parameter_set_id: u8; num_ref_idx_l0_default_active_minus1: u8; num_ref_idx_l1_default_active_minus1: u8; weighted_bipred_idc: StdVideoH264WeightedBipredIdc; pic_init_qp_minus26: s8; pic_init_qs_minus26: s8; chroma_qp_index_offset: s8; second_chroma_qp_index_offset: s8; pScalingLists: *StdVideoH264ScalingLists; } StdVideoEncodeH264WeightTableFlags :: struct { luma_weight_l0_flag: u32; chroma_weight_l0_flag: u32; luma_weight_l1_flag: u32; chroma_weight_l1_flag: u32; } StdVideoEncodeH264WeightTable :: struct { flags: StdVideoEncodeH264WeightTableFlags; luma_log2_weight_denom: u8; chroma_log2_weight_denom: u8; luma_weight_l0: [32] s8; luma_offset_l0: [32] s8; chroma_weight_l0: [32] [2] s8; chroma_offset_l0: [32] [2] s8; luma_weight_l1: [32] s8; luma_offset_l1: [32] s8; chroma_weight_l1: [32] [2] s8; chroma_offset_l1: [32] [2] s8; } StdVideoEncodeH264SliceHeaderFlags :: struct { __bitfield: u32; /* direct_spatial_mv_pred_flag: u32; /* 1 bits */ num_ref_idx_active_override_flag: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoEncodeH264PictureInfoFlags :: struct { __bitfield: u32; /* IdrPicFlag: u32; /* 1 bits */ is_reference: u32; /* 1 bits */ no_output_of_prior_pics_flag: u32; /* 1 bits */ long_term_reference_flag: u32; /* 1 bits */ adaptive_ref_pic_marking_mode_flag: u32; /* 1 bits */ reserved: u32; /* 27 bits */; */ } StdVideoEncodeH264ReferenceInfoFlags :: struct { __bitfield: u32; /* used_for_long_term_reference: u32; /* 1 bits */ reserved: u32; /* 31 bits */; */ } StdVideoEncodeH264ReferenceListsInfoFlags :: struct { __bitfield: u32; /* ref_pic_list_modification_flag_l0: u32; /* 1 bits */ ref_pic_list_modification_flag_l1: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoEncodeH264RefListModEntry :: struct { modification_of_pic_nums_idc: StdVideoH264ModificationOfPicNumsIdc; abs_diff_pic_num_minus1: u16; long_term_pic_num: u16; } StdVideoEncodeH264RefPicMarkingEntry :: struct { memory_management_control_operation: StdVideoH264MemMgmtControlOp; difference_of_pic_nums_minus1: u16; long_term_pic_num: u16; long_term_frame_idx: u16; max_long_term_frame_idx_plus1: u16; } StdVideoEncodeH264ReferenceListsInfo :: struct { flags: StdVideoEncodeH264ReferenceListsInfoFlags; num_ref_idx_l0_active_minus1: u8; num_ref_idx_l1_active_minus1: u8; RefPicList0: [32] u8; RefPicList1: [32] u8; refList0ModOpCount: u8; refList1ModOpCount: u8; refPicMarkingOpCount: u8; reserved1: [7] u8; pRefList0ModOperations: *StdVideoEncodeH264RefListModEntry; pRefList1ModOperations: *StdVideoEncodeH264RefListModEntry; pRefPicMarkingOperations: *StdVideoEncodeH264RefPicMarkingEntry; } StdVideoEncodeH264PictureInfo :: struct { flags: StdVideoEncodeH264PictureInfoFlags; seq_parameter_set_id: u8; pic_parameter_set_id: u8; idr_pic_id: u16; primary_pic_type: StdVideoH264PictureType; frame_num: u32; PicOrderCnt: s32; temporal_id: u8; reserved1: [3] u8; pRefLists: *StdVideoEncodeH264ReferenceListsInfo; } StdVideoEncodeH264ReferenceInfo :: struct { flags: StdVideoEncodeH264ReferenceInfoFlags; primary_pic_type: StdVideoH264PictureType; FrameNum: u32; PicOrderCnt: s32; long_term_pic_num: u16; long_term_frame_idx: u16; temporal_id: u8; } StdVideoEncodeH264SliceHeader :: struct { flags: StdVideoEncodeH264SliceHeaderFlags; first_mb_in_slice: u32; slice_type: StdVideoH264SliceType; slice_alpha_c0_offset_div2: s8; slice_beta_offset_div2: s8; slice_qp_delta: s8; reserved1: u8; cabac_init_idc: StdVideoH264CabacInitIdc; disable_deblocking_filter_idc: StdVideoH264DisableDeblockingFilterIdc; pWeightTable: *StdVideoEncodeH264WeightTable; } VkVideoEncodeH264CapabilityFlagBitsKHR :: enum u32 { HRD_COMPLIANCE_BIT_KHR :: 1; PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR :: 2; ROW_UNALIGNED_SLICE_BIT_KHR :: 4; DIFFERENT_SLICE_TYPE_BIT_KHR :: 8; B_FRAME_IN_L0_LIST_BIT_KHR :: 16; B_FRAME_IN_L1_LIST_BIT_KHR :: 32; PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR :: 64; PER_SLICE_CONSTANT_QP_BIT_KHR :: 128; GENERATE_PREFIX_NALU_BIT_KHR :: 256; MB_QP_DIFF_WRAPAROUND_BIT_KHR :: 512; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H264_CAPABILITY_HRD_COMPLIANCE_BIT_KHR :: HRD_COMPLIANCE_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR :: PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_ROW_UNALIGNED_SLICE_BIT_KHR :: ROW_UNALIGNED_SLICE_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_DIFFERENT_SLICE_TYPE_BIT_KHR :: DIFFERENT_SLICE_TYPE_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR :: B_FRAME_IN_L0_LIST_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR :: B_FRAME_IN_L1_LIST_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR :: PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_PER_SLICE_CONSTANT_QP_BIT_KHR :: PER_SLICE_CONSTANT_QP_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_GENERATE_PREFIX_NALU_BIT_KHR :: GENERATE_PREFIX_NALU_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_MB_QP_DIFF_WRAPAROUND_BIT_KHR :: MB_QP_DIFF_WRAPAROUND_BIT_KHR; VK_VIDEO_ENCODE_H264_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH264CapabilityFlagsKHR :: VkFlags; VkVideoEncodeH264StdFlagBitsKHR :: enum u32 { SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR :: 1; QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_KHR :: 2; SCALING_MATRIX_PRESENT_FLAG_SET_BIT_KHR :: 4; CHROMA_QP_INDEX_OFFSET_BIT_KHR :: 8; SECOND_CHROMA_QP_INDEX_OFFSET_BIT_KHR :: 16; PIC_INIT_QP_MINUS26_BIT_KHR :: 32; WEIGHTED_PRED_FLAG_SET_BIT_KHR :: 64; WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_KHR :: 128; WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_KHR :: 256; TRANSFORM_8X8_MODE_FLAG_SET_BIT_KHR :: 512; DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_KHR :: 1024; ENTROPY_CODING_MODE_FLAG_UNSET_BIT_KHR :: 2048; ENTROPY_CODING_MODE_FLAG_SET_BIT_KHR :: 4096; DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_KHR :: 8192; CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR :: 16384; DEBLOCKING_FILTER_DISABLED_BIT_KHR :: 32768; DEBLOCKING_FILTER_ENABLED_BIT_KHR :: 65536; DEBLOCKING_FILTER_PARTIAL_BIT_KHR :: 131072; SLICE_QP_DELTA_BIT_KHR :: 524288; DIFFERENT_SLICE_QP_DELTA_BIT_KHR :: 1048576; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H264_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR :: SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_KHR :: QPPRIME_Y_ZERO_TRANSFORM_BYPASS_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_SCALING_MATRIX_PRESENT_FLAG_SET_BIT_KHR :: SCALING_MATRIX_PRESENT_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_CHROMA_QP_INDEX_OFFSET_BIT_KHR :: CHROMA_QP_INDEX_OFFSET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_SECOND_CHROMA_QP_INDEX_OFFSET_BIT_KHR :: SECOND_CHROMA_QP_INDEX_OFFSET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_PIC_INIT_QP_MINUS26_BIT_KHR :: PIC_INIT_QP_MINUS26_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR :: WEIGHTED_PRED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_KHR :: WEIGHTED_BIPRED_IDC_EXPLICIT_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_KHR :: WEIGHTED_BIPRED_IDC_IMPLICIT_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_TRANSFORM_8X8_MODE_FLAG_SET_BIT_KHR :: TRANSFORM_8X8_MODE_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_KHR :: DIRECT_SPATIAL_MV_PRED_FLAG_UNSET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_UNSET_BIT_KHR :: ENTROPY_CODING_MODE_FLAG_UNSET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_ENTROPY_CODING_MODE_FLAG_SET_BIT_KHR :: ENTROPY_CODING_MODE_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_KHR :: DIRECT_8X8_INFERENCE_FLAG_UNSET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR :: CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_DISABLED_BIT_KHR :: DEBLOCKING_FILTER_DISABLED_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_ENABLED_BIT_KHR :: DEBLOCKING_FILTER_ENABLED_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DEBLOCKING_FILTER_PARTIAL_BIT_KHR :: DEBLOCKING_FILTER_PARTIAL_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_SLICE_QP_DELTA_BIT_KHR :: SLICE_QP_DELTA_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR :: DIFFERENT_SLICE_QP_DELTA_BIT_KHR; VK_VIDEO_ENCODE_H264_STD_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH264StdFlagsKHR :: VkFlags; VkVideoEncodeH264RateControlFlagBitsKHR :: enum u32 { ATTEMPT_HRD_COMPLIANCE_BIT_KHR :: 1; REGULAR_GOP_BIT_KHR :: 2; REFERENCE_PATTERN_FLAT_BIT_KHR :: 4; REFERENCE_PATTERN_DYADIC_BIT_KHR :: 8; TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H264_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR :: ATTEMPT_HRD_COMPLIANCE_BIT_KHR; VK_VIDEO_ENCODE_H264_RATE_CONTROL_REGULAR_GOP_BIT_KHR :: REGULAR_GOP_BIT_KHR; VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR :: REFERENCE_PATTERN_FLAT_BIT_KHR; VK_VIDEO_ENCODE_H264_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR :: REFERENCE_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_H264_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR :: TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_H264_RATE_CONTROL_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH264RateControlFlagsKHR :: VkFlags; VkVideoEncodeH264CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeH264CapabilityFlagsKHR; maxLevelIdc: StdVideoH264LevelIdc; maxSliceCount: u32; maxPPictureL0ReferenceCount: u32; maxBPictureL0ReferenceCount: u32; maxL1ReferenceCount: u32; maxTemporalLayerCount: u32; expectDyadicTemporalLayerPattern: VkBool32; minQp: s32; maxQp: s32; prefersGopRemainingFrames: VkBool32; requiresGopRemainingFrames: VkBool32; stdSyntaxFlags: VkVideoEncodeH264StdFlagsKHR; } VkVideoEncodeH264QpKHR :: struct { qpI: s32; qpP: s32; qpB: s32; } VkVideoEncodeH264QualityLevelPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; preferredRateControlFlags: VkVideoEncodeH264RateControlFlagsKHR; preferredGopFrameCount: u32; preferredIdrPeriod: u32; preferredConsecutiveBFrameCount: u32; preferredTemporalLayerCount: u32; preferredConstantQp: VkVideoEncodeH264QpKHR; preferredMaxL0ReferenceCount: u32; preferredMaxL1ReferenceCount: u32; preferredStdEntropyCodingModeFlag: VkBool32; } VkVideoEncodeH264SessionCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMaxLevelIdc: VkBool32; maxLevelIdc: StdVideoH264LevelIdc; } VkVideoEncodeH264SessionParametersAddInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdSPSCount: u32; pStdSPSs: *StdVideoH264SequenceParameterSet; stdPPSCount: u32; pStdPPSs: *StdVideoH264PictureParameterSet; } VkVideoEncodeH264SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; maxStdSPSCount: u32; maxStdPPSCount: u32; pParametersAddInfo: *VkVideoEncodeH264SessionParametersAddInfoKHR; } VkVideoEncodeH264SessionParametersGetInfoKHR :: struct { sType: VkStructureType; pNext: *void; writeStdSPS: VkBool32; writeStdPPS: VkBool32; stdSPSId: u32; stdPPSId: u32; } VkVideoEncodeH264SessionParametersFeedbackInfoKHR :: struct { sType: VkStructureType; pNext: *void; hasStdSPSOverrides: VkBool32; hasStdPPSOverrides: VkBool32; } VkVideoEncodeH264NaluSliceInfoKHR :: struct { sType: VkStructureType; pNext: *void; constantQp: s32; pStdSliceHeader: *StdVideoEncodeH264SliceHeader; } VkVideoEncodeH264PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; naluSliceEntryCount: u32; pNaluSliceEntries: *VkVideoEncodeH264NaluSliceInfoKHR; pStdPictureInfo: *StdVideoEncodeH264PictureInfo; generatePrefixNalu: VkBool32; } VkVideoEncodeH264DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoEncodeH264ReferenceInfo; } VkVideoEncodeH264ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfileIdc: StdVideoH264ProfileIdc; } VkVideoEncodeH264RateControlInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeH264RateControlFlagsKHR; gopFrameCount: u32; idrPeriod: u32; consecutiveBFrameCount: u32; temporalLayerCount: u32; } VkVideoEncodeH264FrameSizeKHR :: struct { frameISize: u32; framePSize: u32; frameBSize: u32; } VkVideoEncodeH264RateControlLayerInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMinQp: VkBool32; minQp: VkVideoEncodeH264QpKHR; useMaxQp: VkBool32; maxQp: VkVideoEncodeH264QpKHR; useMaxFrameSize: VkBool32; maxFrameSize: VkVideoEncodeH264FrameSizeKHR; } VkVideoEncodeH264GopRemainingFrameInfoKHR :: struct { sType: VkStructureType; pNext: *void; useGopRemainingFrames: VkBool32; gopRemainingI: u32; gopRemainingP: u32; gopRemainingB: u32; } StdVideoH265ChromaFormatIdc :: enum u32 { MONOCHROME :: 0; _420 :: 1; _422 :: 2; _444 :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_CHROMA_FORMAT_IDC_MONOCHROME :: MONOCHROME; STD_VIDEO_H265_CHROMA_FORMAT_IDC_420 :: _420; STD_VIDEO_H265_CHROMA_FORMAT_IDC_422 :: _422; STD_VIDEO_H265_CHROMA_FORMAT_IDC_444 :: _444; STD_VIDEO_H265_CHROMA_FORMAT_IDC_INVALID :: INVALID; STD_VIDEO_H265_CHROMA_FORMAT_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH265ProfileIdc :: enum u32 { MAIN :: 1; MAIN_10 :: 2; MAIN_STILL_PICTURE :: 3; FORMAT_RANGE_EXTENSIONS :: 4; SCC_EXTENSIONS :: 9; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_PROFILE_IDC_MAIN :: MAIN; STD_VIDEO_H265_PROFILE_IDC_MAIN_10 :: MAIN_10; STD_VIDEO_H265_PROFILE_IDC_MAIN_STILL_PICTURE :: MAIN_STILL_PICTURE; STD_VIDEO_H265_PROFILE_IDC_FORMAT_RANGE_EXTENSIONS :: FORMAT_RANGE_EXTENSIONS; STD_VIDEO_H265_PROFILE_IDC_SCC_EXTENSIONS :: SCC_EXTENSIONS; STD_VIDEO_H265_PROFILE_IDC_INVALID :: INVALID; STD_VIDEO_H265_PROFILE_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH265LevelIdc :: enum u32 { _1_0 :: 0; _2_0 :: 1; _2_1 :: 2; _3_0 :: 3; _3_1 :: 4; _4_0 :: 5; _4_1 :: 6; _5_0 :: 7; _5_1 :: 8; _5_2 :: 9; _6_0 :: 10; _6_1 :: 11; _6_2 :: 12; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_LEVEL_IDC_1_0 :: _1_0; STD_VIDEO_H265_LEVEL_IDC_2_0 :: _2_0; STD_VIDEO_H265_LEVEL_IDC_2_1 :: _2_1; STD_VIDEO_H265_LEVEL_IDC_3_0 :: _3_0; STD_VIDEO_H265_LEVEL_IDC_3_1 :: _3_1; STD_VIDEO_H265_LEVEL_IDC_4_0 :: _4_0; STD_VIDEO_H265_LEVEL_IDC_4_1 :: _4_1; STD_VIDEO_H265_LEVEL_IDC_5_0 :: _5_0; STD_VIDEO_H265_LEVEL_IDC_5_1 :: _5_1; STD_VIDEO_H265_LEVEL_IDC_5_2 :: _5_2; STD_VIDEO_H265_LEVEL_IDC_6_0 :: _6_0; STD_VIDEO_H265_LEVEL_IDC_6_1 :: _6_1; STD_VIDEO_H265_LEVEL_IDC_6_2 :: _6_2; STD_VIDEO_H265_LEVEL_IDC_INVALID :: INVALID; STD_VIDEO_H265_LEVEL_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH265SliceType :: enum u32 { B :: 0; P :: 1; I :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_SLICE_TYPE_B :: B; STD_VIDEO_H265_SLICE_TYPE_P :: P; STD_VIDEO_H265_SLICE_TYPE_I :: I; STD_VIDEO_H265_SLICE_TYPE_INVALID :: INVALID; STD_VIDEO_H265_SLICE_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH265PictureType :: enum u32 { P :: 0; B :: 1; I :: 2; IDR :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_PICTURE_TYPE_P :: P; STD_VIDEO_H265_PICTURE_TYPE_B :: B; STD_VIDEO_H265_PICTURE_TYPE_I :: I; STD_VIDEO_H265_PICTURE_TYPE_IDR :: IDR; STD_VIDEO_H265_PICTURE_TYPE_INVALID :: INVALID; STD_VIDEO_H265_PICTURE_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoH265AspectRatioIdc :: enum u32 { UNSPECIFIED :: 0; SQUARE :: 1; _12_11 :: 2; _10_11 :: 3; _16_11 :: 4; _40_33 :: 5; _24_11 :: 6; _20_11 :: 7; _32_11 :: 8; _80_33 :: 9; _18_11 :: 10; _15_11 :: 11; _64_33 :: 12; _160_99 :: 13; _4_3 :: 14; _3_2 :: 15; _2_1 :: 16; EXTENDED_SAR :: 255; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_H265_ASPECT_RATIO_IDC_UNSPECIFIED :: UNSPECIFIED; STD_VIDEO_H265_ASPECT_RATIO_IDC_SQUARE :: SQUARE; STD_VIDEO_H265_ASPECT_RATIO_IDC_12_11 :: _12_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_10_11 :: _10_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_16_11 :: _16_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_40_33 :: _40_33; STD_VIDEO_H265_ASPECT_RATIO_IDC_24_11 :: _24_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_20_11 :: _20_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_32_11 :: _32_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_80_33 :: _80_33; STD_VIDEO_H265_ASPECT_RATIO_IDC_18_11 :: _18_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_15_11 :: _15_11; STD_VIDEO_H265_ASPECT_RATIO_IDC_64_33 :: _64_33; STD_VIDEO_H265_ASPECT_RATIO_IDC_160_99 :: _160_99; STD_VIDEO_H265_ASPECT_RATIO_IDC_4_3 :: _4_3; STD_VIDEO_H265_ASPECT_RATIO_IDC_3_2 :: _3_2; STD_VIDEO_H265_ASPECT_RATIO_IDC_2_1 :: _2_1; STD_VIDEO_H265_ASPECT_RATIO_IDC_EXTENDED_SAR :: EXTENDED_SAR; STD_VIDEO_H265_ASPECT_RATIO_IDC_INVALID :: INVALID; STD_VIDEO_H265_ASPECT_RATIO_IDC_MAX_ENUM :: MAX_ENUM; } StdVideoH265DecPicBufMgr :: struct { max_latency_increase_plus1: [7] u32; max_dec_pic_buffering_minus1: [7] u8; max_num_reorder_pics: [7] u8; } StdVideoH265SubLayerHrdParameters :: struct { bit_rate_value_minus1: [32] u32; cpb_size_value_minus1: [32] u32; cpb_size_du_value_minus1: [32] u32; bit_rate_du_value_minus1: [32] u32; cbr_flag: u32; } StdVideoH265HrdFlags :: struct { __bitfield: u32; /* nal_hrd_parameters_present_flag: u32; /* 1 bits */ vcl_hrd_parameters_present_flag: u32; /* 1 bits */ sub_pic_hrd_params_present_flag: u32; /* 1 bits */ sub_pic_cpb_params_in_pic_timing_sei_flag: u32; /* 1 bits */ fixed_pic_rate_general_flag: u32; /* 8 bits */ fixed_pic_rate_within_cvs_flag: u32; /* 8 bits */ low_delay_hrd_flag: u32; /* 8 bits */; */ } StdVideoH265HrdParameters :: struct { flags: StdVideoH265HrdFlags; tick_divisor_minus2: u8; du_cpb_removal_delay_increment_length_minus1: u8; dpb_output_delay_du_length_minus1: u8; bit_rate_scale: u8; cpb_size_scale: u8; cpb_size_du_scale: u8; initial_cpb_removal_delay_length_minus1: u8; au_cpb_removal_delay_length_minus1: u8; dpb_output_delay_length_minus1: u8; cpb_cnt_minus1: [7] u8; elemental_duration_in_tc_minus1: [7] u16; reserved: [3] u16; pSubLayerHrdParametersNal: *StdVideoH265SubLayerHrdParameters; pSubLayerHrdParametersVcl: *StdVideoH265SubLayerHrdParameters; } StdVideoH265VpsFlags :: struct { __bitfield: u8; /* vps_temporal_id_nesting_flag: u32; /* 1 bits */ vps_sub_layer_ordering_info_present_flag: u32; /* 1 bits */ vps_timing_info_present_flag: u32; /* 1 bits */ vps_poc_proportional_to_timing_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoH265VpsFlags_alignment: u32; } StdVideoH265ProfileTierLevelFlags :: struct { __bitfield: u8; /* general_tier_flag: u32; /* 1 bits */ general_progressive_source_flag: u32; /* 1 bits */ general_interlaced_source_flag: u32; /* 1 bits */ general_non_packed_constraint_flag: u32; /* 1 bits */ general_frame_only_constraint_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoH265ProfileTierLevelFlags_alignment: u32; } StdVideoH265ProfileTierLevel :: struct { flags: StdVideoH265ProfileTierLevelFlags; general_profile_idc: StdVideoH265ProfileIdc; general_level_idc: StdVideoH265LevelIdc; } StdVideoH265VideoParameterSet :: struct { flags: StdVideoH265VpsFlags; vps_video_parameter_set_id: u8; vps_max_sub_layers_minus1: u8; reserved1: u8; reserved2: u8; vps_num_units_in_tick: u32; vps_time_scale: u32; vps_num_ticks_poc_diff_one_minus1: u32; reserved3: u32; pDecPicBufMgr: *StdVideoH265DecPicBufMgr; pHrdParameters: *StdVideoH265HrdParameters; pProfileTierLevel: *StdVideoH265ProfileTierLevel; } StdVideoH265ScalingLists :: struct { ScalingList4x4: [6] [16] u8; ScalingList8x8: [6] [64] u8; ScalingList16x16: [6] [64] u8; ScalingList32x32: [2] [64] u8; ScalingListDCCoef16x16: [6] u8; ScalingListDCCoef32x32: [2] u8; } StdVideoH265SpsVuiFlags :: struct { __bitfield: u32; /* aspect_ratio_info_present_flag: u32; /* 1 bits */ overscan_info_present_flag: u32; /* 1 bits */ overscan_appropriate_flag: u32; /* 1 bits */ video_signal_type_present_flag: u32; /* 1 bits */ video_full_range_flag: u32; /* 1 bits */ colour_description_present_flag: u32; /* 1 bits */ chroma_loc_info_present_flag: u32; /* 1 bits */ neutral_chroma_indication_flag: u32; /* 1 bits */ field_seq_flag: u32; /* 1 bits */ frame_field_info_present_flag: u32; /* 1 bits */ default_display_window_flag: u32; /* 1 bits */ vui_timing_info_present_flag: u32; /* 1 bits */ vui_poc_proportional_to_timing_flag: u32; /* 1 bits */ vui_hrd_parameters_present_flag: u32; /* 1 bits */ bitstream_restriction_flag: u32; /* 1 bits */ tiles_fixed_structure_flag: u32; /* 1 bits */ motion_vectors_over_pic_boundaries_flag: u32; /* 1 bits */ restricted_ref_pic_lists_flag: u32; /* 1 bits */; */ } StdVideoH265SequenceParameterSetVui :: struct { flags: StdVideoH265SpsVuiFlags; aspect_ratio_idc: StdVideoH265AspectRatioIdc; sar_width: u16; sar_height: u16; video_format: u8; colour_primaries: u8; transfer_characteristics: u8; matrix_coeffs: u8; chroma_sample_loc_type_top_field: u8; chroma_sample_loc_type_bottom_field: u8; reserved1: u8; reserved2: u8; def_disp_win_left_offset: u16; def_disp_win_right_offset: u16; def_disp_win_top_offset: u16; def_disp_win_bottom_offset: u16; vui_num_units_in_tick: u32; vui_time_scale: u32; vui_num_ticks_poc_diff_one_minus1: u32; min_spatial_segmentation_idc: u16; reserved3: u16; max_bytes_per_pic_denom: u8; max_bits_per_min_cu_denom: u8; log2_max_mv_length_horizontal: u8; log2_max_mv_length_vertical: u8; pHrdParameters: *StdVideoH265HrdParameters; } StdVideoH265PredictorPaletteEntries :: struct { PredictorPaletteEntries: [3] [128] u16; } StdVideoH265SpsFlags :: struct { __bitfield: u32; /* sps_temporal_id_nesting_flag: u32; /* 1 bits */ separate_colour_plane_flag: u32; /* 1 bits */ conformance_window_flag: u32; /* 1 bits */ sps_sub_layer_ordering_info_present_flag: u32; /* 1 bits */ scaling_list_enabled_flag: u32; /* 1 bits */ sps_scaling_list_data_present_flag: u32; /* 1 bits */ amp_enabled_flag: u32; /* 1 bits */ sample_adaptive_offset_enabled_flag: u32; /* 1 bits */ pcm_enabled_flag: u32; /* 1 bits */ pcm_loop_filter_disabled_flag: u32; /* 1 bits */ long_term_ref_pics_present_flag: u32; /* 1 bits */ sps_temporal_mvp_enabled_flag: u32; /* 1 bits */ strong_intra_smoothing_enabled_flag: u32; /* 1 bits */ vui_parameters_present_flag: u32; /* 1 bits */ sps_extension_present_flag: u32; /* 1 bits */ sps_range_extension_flag: u32; /* 1 bits */ transform_skip_rotation_enabled_flag: u32; /* 1 bits */ transform_skip_context_enabled_flag: u32; /* 1 bits */ implicit_rdpcm_enabled_flag: u32; /* 1 bits */ explicit_rdpcm_enabled_flag: u32; /* 1 bits */ extended_precision_processing_flag: u32; /* 1 bits */ intra_smoothing_disabled_flag: u32; /* 1 bits */ high_precision_offsets_enabled_flag: u32; /* 1 bits */ persistent_rice_adaptation_enabled_flag: u32; /* 1 bits */ cabac_bypass_alignment_enabled_flag: u32; /* 1 bits */ sps_scc_extension_flag: u32; /* 1 bits */ sps_curr_pic_ref_enabled_flag: u32; /* 1 bits */ palette_mode_enabled_flag: u32; /* 1 bits */ sps_palette_predictor_initializers_present_flag: u32; /* 1 bits */ intra_boundary_filtering_disabled_flag: u32; /* 1 bits */; */ } StdVideoH265ShortTermRefPicSetFlags :: struct { __bitfield: u8; /* inter_ref_pic_set_prediction_flag: u32; /* 1 bits */ delta_rps_sign: u32; /* 1 bits */; */ #place __bitfield; StdVideoH265ShortTermRefPicSetFlags_alignment: u32; } StdVideoH265ShortTermRefPicSet :: struct { flags: StdVideoH265ShortTermRefPicSetFlags; delta_idx_minus1: u32; use_delta_flag: u16; abs_delta_rps_minus1: u16; used_by_curr_pic_flag: u16; used_by_curr_pic_s0_flag: u16; used_by_curr_pic_s1_flag: u16; reserved1: u16; reserved2: u8; reserved3: u8; num_negative_pics: u8; num_positive_pics: u8; delta_poc_s0_minus1: [16] u16; delta_poc_s1_minus1: [16] u16; } StdVideoH265LongTermRefPicsSps :: struct { used_by_curr_pic_lt_sps_flag: u32; lt_ref_pic_poc_lsb_sps: [32] u32; } StdVideoH265SequenceParameterSet :: struct { flags: StdVideoH265SpsFlags; chroma_format_idc: StdVideoH265ChromaFormatIdc; pic_width_in_luma_samples: u32; pic_height_in_luma_samples: u32; sps_video_parameter_set_id: u8; sps_max_sub_layers_minus1: u8; sps_seq_parameter_set_id: u8; bit_depth_luma_minus8: u8; bit_depth_chroma_minus8: u8; log2_max_pic_order_cnt_lsb_minus4: u8; log2_min_luma_coding_block_size_minus3: u8; log2_diff_max_min_luma_coding_block_size: u8; log2_min_luma_transform_block_size_minus2: u8; log2_diff_max_min_luma_transform_block_size: u8; max_transform_hierarchy_depth_inter: u8; max_transform_hierarchy_depth_intra: u8; num_short_term_ref_pic_sets: u8; num_long_term_ref_pics_sps: u8; pcm_sample_bit_depth_luma_minus1: u8; pcm_sample_bit_depth_chroma_minus1: u8; log2_min_pcm_luma_coding_block_size_minus3: u8; log2_diff_max_min_pcm_luma_coding_block_size: u8; reserved1: u8; reserved2: u8; palette_max_size: u8; delta_palette_max_predictor_size: u8; motion_vector_resolution_control_idc: u8; sps_num_palette_predictor_initializers_minus1: u8; conf_win_left_offset: u32; conf_win_right_offset: u32; conf_win_top_offset: u32; conf_win_bottom_offset: u32; pProfileTierLevel: *StdVideoH265ProfileTierLevel; pDecPicBufMgr: *StdVideoH265DecPicBufMgr; pScalingLists: *StdVideoH265ScalingLists; pShortTermRefPicSet: *StdVideoH265ShortTermRefPicSet; pLongTermRefPicsSps: *StdVideoH265LongTermRefPicsSps; pSequenceParameterSetVui: *StdVideoH265SequenceParameterSetVui; pPredictorPaletteEntries: *StdVideoH265PredictorPaletteEntries; } StdVideoH265PpsFlags :: struct { __bitfield: u32; /* dependent_slice_segments_enabled_flag: u32; /* 1 bits */ output_flag_present_flag: u32; /* 1 bits */ sign_data_hiding_enabled_flag: u32; /* 1 bits */ cabac_init_present_flag: u32; /* 1 bits */ constrained_intra_pred_flag: u32; /* 1 bits */ transform_skip_enabled_flag: u32; /* 1 bits */ cu_qp_delta_enabled_flag: u32; /* 1 bits */ pps_slice_chroma_qp_offsets_present_flag: u32; /* 1 bits */ weighted_pred_flag: u32; /* 1 bits */ weighted_bipred_flag: u32; /* 1 bits */ transquant_bypass_enabled_flag: u32; /* 1 bits */ tiles_enabled_flag: u32; /* 1 bits */ entropy_coding_sync_enabled_flag: u32; /* 1 bits */ uniform_spacing_flag: u32; /* 1 bits */ loop_filter_across_tiles_enabled_flag: u32; /* 1 bits */ pps_loop_filter_across_slices_enabled_flag: u32; /* 1 bits */ deblocking_filter_control_present_flag: u32; /* 1 bits */ deblocking_filter_override_enabled_flag: u32; /* 1 bits */ pps_deblocking_filter_disabled_flag: u32; /* 1 bits */ pps_scaling_list_data_present_flag: u32; /* 1 bits */ lists_modification_present_flag: u32; /* 1 bits */ slice_segment_header_extension_present_flag: u32; /* 1 bits */ pps_extension_present_flag: u32; /* 1 bits */ cross_component_prediction_enabled_flag: u32; /* 1 bits */ chroma_qp_offset_list_enabled_flag: u32; /* 1 bits */ pps_curr_pic_ref_enabled_flag: u32; /* 1 bits */ residual_adaptive_colour_transform_enabled_flag: u32; /* 1 bits */ pps_slice_act_qp_offsets_present_flag: u32; /* 1 bits */ pps_palette_predictor_initializers_present_flag: u32; /* 1 bits */ monochrome_palette_flag: u32; /* 1 bits */ pps_range_extension_flag: u32; /* 1 bits */; */ } StdVideoH265PictureParameterSet :: struct { flags: StdVideoH265PpsFlags; pps_pic_parameter_set_id: u8; pps_seq_parameter_set_id: u8; sps_video_parameter_set_id: u8; num_extra_slice_header_bits: u8; num_ref_idx_l0_default_active_minus1: u8; num_ref_idx_l1_default_active_minus1: u8; init_qp_minus26: s8; diff_cu_qp_delta_depth: u8; pps_cb_qp_offset: s8; pps_cr_qp_offset: s8; pps_beta_offset_div2: s8; pps_tc_offset_div2: s8; log2_parallel_merge_level_minus2: u8; log2_max_transform_skip_block_size_minus2: u8; diff_cu_chroma_qp_offset_depth: u8; chroma_qp_offset_list_len_minus1: u8; cb_qp_offset_list: [6] s8; cr_qp_offset_list: [6] s8; log2_sao_offset_scale_luma: u8; log2_sao_offset_scale_chroma: u8; pps_act_y_qp_offset_plus5: s8; pps_act_cb_qp_offset_plus5: s8; pps_act_cr_qp_offset_plus3: s8; pps_num_palette_predictor_initializers: u8; luma_bit_depth_entry_minus8: u8; chroma_bit_depth_entry_minus8: u8; num_tile_columns_minus1: u8; num_tile_rows_minus1: u8; reserved1: u8; reserved2: u8; column_width_minus1: [19] u16; row_height_minus1: [21] u16; reserved3: u32; pScalingLists: *StdVideoH265ScalingLists; pPredictorPaletteEntries: *StdVideoH265PredictorPaletteEntries; } StdVideoEncodeH265WeightTableFlags :: struct { luma_weight_l0_flag: u16; chroma_weight_l0_flag: u16; luma_weight_l1_flag: u16; chroma_weight_l1_flag: u16; } StdVideoEncodeH265WeightTable :: struct { flags: StdVideoEncodeH265WeightTableFlags; luma_log2_weight_denom: u8; delta_chroma_log2_weight_denom: s8; delta_luma_weight_l0: [15] s8; luma_offset_l0: [15] s8; delta_chroma_weight_l0: [15] [2] s8; delta_chroma_offset_l0: [15] [2] s8; delta_luma_weight_l1: [15] s8; luma_offset_l1: [15] s8; delta_chroma_weight_l1: [15] [2] s8; delta_chroma_offset_l1: [15] [2] s8; } StdVideoEncodeH265SliceSegmentHeaderFlags :: struct { __bitfield: u32; /* first_slice_segment_in_pic_flag: u32; /* 1 bits */ dependent_slice_segment_flag: u32; /* 1 bits */ slice_sao_luma_flag: u32; /* 1 bits */ slice_sao_chroma_flag: u32; /* 1 bits */ num_ref_idx_active_override_flag: u32; /* 1 bits */ mvd_l1_zero_flag: u32; /* 1 bits */ cabac_init_flag: u32; /* 1 bits */ cu_chroma_qp_offset_enabled_flag: u32; /* 1 bits */ deblocking_filter_override_flag: u32; /* 1 bits */ slice_deblocking_filter_disabled_flag: u32; /* 1 bits */ collocated_from_l0_flag: u32; /* 1 bits */ slice_loop_filter_across_slices_enabled_flag: u32; /* 1 bits */ reserved: u32; /* 20 bits */; */ } StdVideoEncodeH265SliceSegmentHeader :: struct { flags: StdVideoEncodeH265SliceSegmentHeaderFlags; slice_type: StdVideoH265SliceType; slice_segment_address: u32; collocated_ref_idx: u8; MaxNumMergeCand: u8; slice_cb_qp_offset: s8; slice_cr_qp_offset: s8; slice_beta_offset_div2: s8; slice_tc_offset_div2: s8; slice_act_y_qp_offset: s8; slice_act_cb_qp_offset: s8; slice_act_cr_qp_offset: s8; slice_qp_delta: s8; reserved1: u16; pWeightTable: *StdVideoEncodeH265WeightTable; } StdVideoEncodeH265ReferenceListsInfoFlags :: struct { __bitfield: u32; /* ref_pic_list_modification_flag_l0: u32; /* 1 bits */ ref_pic_list_modification_flag_l1: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoEncodeH265ReferenceListsInfo :: struct { flags: StdVideoEncodeH265ReferenceListsInfoFlags; num_ref_idx_l0_active_minus1: u8; num_ref_idx_l1_active_minus1: u8; RefPicList0: [15] u8; RefPicList1: [15] u8; list_entry_l0: [15] u8; list_entry_l1: [15] u8; } StdVideoEncodeH265PictureInfoFlags :: struct { __bitfield: u32; /* is_reference: u32; /* 1 bits */ IrapPicFlag: u32; /* 1 bits */ used_for_long_term_reference: u32; /* 1 bits */ discardable_flag: u32; /* 1 bits */ cross_layer_bla_flag: u32; /* 1 bits */ pic_output_flag: u32; /* 1 bits */ no_output_of_prior_pics_flag: u32; /* 1 bits */ short_term_ref_pic_set_sps_flag: u32; /* 1 bits */ slice_temporal_mvp_enabled_flag: u32; /* 1 bits */ reserved: u32; /* 23 bits */; */ } StdVideoEncodeH265LongTermRefPics :: struct { num_long_term_sps: u8; num_long_term_pics: u8; lt_idx_sps: [32] u8; poc_lsb_lt: [16] u8; used_by_curr_pic_lt_flag: u16; delta_poc_msb_present_flag: [48] u8; delta_poc_msb_cycle_lt: [48] u8; } StdVideoEncodeH265PictureInfo :: struct { flags: StdVideoEncodeH265PictureInfoFlags; pic_type: StdVideoH265PictureType; sps_video_parameter_set_id: u8; pps_seq_parameter_set_id: u8; pps_pic_parameter_set_id: u8; short_term_ref_pic_set_idx: u8; PicOrderCntVal: s32; TemporalId: u8; reserved1: [7] u8; pRefLists: *StdVideoEncodeH265ReferenceListsInfo; pShortTermRefPicSet: *StdVideoH265ShortTermRefPicSet; pLongTermRefPics: *StdVideoEncodeH265LongTermRefPics; } StdVideoEncodeH265ReferenceInfoFlags :: struct { __bitfield: u32; /* used_for_long_term_reference: u32; /* 1 bits */ unused_for_reference: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoEncodeH265ReferenceInfo :: struct { flags: StdVideoEncodeH265ReferenceInfoFlags; pic_type: StdVideoH265PictureType; PicOrderCntVal: s32; TemporalId: u8; } VkVideoEncodeH265CapabilityFlagBitsKHR :: enum u32 { HRD_COMPLIANCE_BIT_KHR :: 1; PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR :: 2; ROW_UNALIGNED_SLICE_SEGMENT_BIT_KHR :: 4; DIFFERENT_SLICE_SEGMENT_TYPE_BIT_KHR :: 8; B_FRAME_IN_L0_LIST_BIT_KHR :: 16; B_FRAME_IN_L1_LIST_BIT_KHR :: 32; PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR :: 64; PER_SLICE_SEGMENT_CONSTANT_QP_BIT_KHR :: 128; MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_KHR :: 256; MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_KHR :: 512; CU_QP_DIFF_WRAPAROUND_BIT_KHR :: 1024; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H265_CAPABILITY_HRD_COMPLIANCE_BIT_KHR :: HRD_COMPLIANCE_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR :: PREDICTION_WEIGHT_TABLE_GENERATED_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_ROW_UNALIGNED_SLICE_SEGMENT_BIT_KHR :: ROW_UNALIGNED_SLICE_SEGMENT_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_DIFFERENT_SLICE_SEGMENT_TYPE_BIT_KHR :: DIFFERENT_SLICE_SEGMENT_TYPE_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L0_LIST_BIT_KHR :: B_FRAME_IN_L0_LIST_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_B_FRAME_IN_L1_LIST_BIT_KHR :: B_FRAME_IN_L1_LIST_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR :: PER_PICTURE_TYPE_MIN_MAX_QP_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_PER_SLICE_SEGMENT_CONSTANT_QP_BIT_KHR :: PER_SLICE_SEGMENT_CONSTANT_QP_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_KHR :: MULTIPLE_TILES_PER_SLICE_SEGMENT_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_KHR :: MULTIPLE_SLICE_SEGMENTS_PER_TILE_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_CU_QP_DIFF_WRAPAROUND_BIT_KHR :: CU_QP_DIFF_WRAPAROUND_BIT_KHR; VK_VIDEO_ENCODE_H265_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH265CapabilityFlagsKHR :: VkFlags; VkVideoEncodeH265StdFlagBitsKHR :: enum u32 { SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR :: 1; SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_KHR :: 2; SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_KHR :: 4; PCM_ENABLED_FLAG_SET_BIT_KHR :: 8; SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_KHR :: 16; INIT_QP_MINUS26_BIT_KHR :: 32; WEIGHTED_PRED_FLAG_SET_BIT_KHR :: 64; WEIGHTED_BIPRED_FLAG_SET_BIT_KHR :: 128; LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_KHR :: 256; SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_KHR :: 512; TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_KHR :: 1024; TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_KHR :: 2048; PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_KHR :: 4096; TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_KHR :: 8192; CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR :: 16384; ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_KHR :: 32768; DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_KHR :: 65536; DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_KHR :: 131072; DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_KHR :: 262144; SLICE_QP_DELTA_BIT_KHR :: 524288; DIFFERENT_SLICE_QP_DELTA_BIT_KHR :: 1048576; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H265_STD_SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR :: SEPARATE_COLOR_PLANE_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_KHR :: SAMPLE_ADAPTIVE_OFFSET_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_KHR :: SCALING_LIST_DATA_PRESENT_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_PCM_ENABLED_FLAG_SET_BIT_KHR :: PCM_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_KHR :: SPS_TEMPORAL_MVP_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_INIT_QP_MINUS26_BIT_KHR :: INIT_QP_MINUS26_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_WEIGHTED_PRED_FLAG_SET_BIT_KHR :: WEIGHTED_PRED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_WEIGHTED_BIPRED_FLAG_SET_BIT_KHR :: WEIGHTED_BIPRED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_KHR :: LOG2_PARALLEL_MERGE_LEVEL_MINUS2_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_KHR :: SIGN_DATA_HIDING_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_KHR :: TRANSFORM_SKIP_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_KHR :: TRANSFORM_SKIP_ENABLED_FLAG_UNSET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_KHR :: PPS_SLICE_CHROMA_QP_OFFSETS_PRESENT_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_KHR :: TRANSQUANT_BYPASS_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR :: CONSTRAINED_INTRA_PRED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_KHR :: ENTROPY_CODING_SYNC_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_KHR :: DEBLOCKING_FILTER_OVERRIDE_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_KHR :: DEPENDENT_SLICE_SEGMENTS_ENABLED_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_KHR :: DEPENDENT_SLICE_SEGMENT_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_SLICE_QP_DELTA_BIT_KHR :: SLICE_QP_DELTA_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_DIFFERENT_SLICE_QP_DELTA_BIT_KHR :: DIFFERENT_SLICE_QP_DELTA_BIT_KHR; VK_VIDEO_ENCODE_H265_STD_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH265StdFlagsKHR :: VkFlags; VkVideoEncodeH265CtbSizeFlagBitsKHR :: enum u32 { _16_BIT_KHR :: 1; _32_BIT_KHR :: 2; _64_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H265_CTB_SIZE_16_BIT_KHR :: _16_BIT_KHR; VK_VIDEO_ENCODE_H265_CTB_SIZE_32_BIT_KHR :: _32_BIT_KHR; VK_VIDEO_ENCODE_H265_CTB_SIZE_64_BIT_KHR :: _64_BIT_KHR; VK_VIDEO_ENCODE_H265_CTB_SIZE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH265CtbSizeFlagsKHR :: VkFlags; VkVideoEncodeH265TransformBlockSizeFlagBitsKHR :: enum u32 { _4_BIT_KHR :: 1; _8_BIT_KHR :: 2; _16_BIT_KHR :: 4; _32_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_4_BIT_KHR :: _4_BIT_KHR; VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_8_BIT_KHR :: _8_BIT_KHR; VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_16_BIT_KHR :: _16_BIT_KHR; VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_32_BIT_KHR :: _32_BIT_KHR; VK_VIDEO_ENCODE_H265_TRANSFORM_BLOCK_SIZE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH265TransformBlockSizeFlagsKHR :: VkFlags; VkVideoEncodeH265RateControlFlagBitsKHR :: enum u32 { ATTEMPT_HRD_COMPLIANCE_BIT_KHR :: 1; REGULAR_GOP_BIT_KHR :: 2; REFERENCE_PATTERN_FLAT_BIT_KHR :: 4; REFERENCE_PATTERN_DYADIC_BIT_KHR :: 8; TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_H265_RATE_CONTROL_ATTEMPT_HRD_COMPLIANCE_BIT_KHR :: ATTEMPT_HRD_COMPLIANCE_BIT_KHR; VK_VIDEO_ENCODE_H265_RATE_CONTROL_REGULAR_GOP_BIT_KHR :: REGULAR_GOP_BIT_KHR; VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR :: REFERENCE_PATTERN_FLAT_BIT_KHR; VK_VIDEO_ENCODE_H265_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR :: REFERENCE_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_H265_RATE_CONTROL_TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_KHR :: TEMPORAL_SUB_LAYER_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_H265_RATE_CONTROL_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeH265RateControlFlagsKHR :: VkFlags; VkVideoEncodeH265CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeH265CapabilityFlagsKHR; maxLevelIdc: StdVideoH265LevelIdc; maxSliceSegmentCount: u32; maxTiles: VkExtent2D; ctbSizes: VkVideoEncodeH265CtbSizeFlagsKHR; transformBlockSizes: VkVideoEncodeH265TransformBlockSizeFlagsKHR; maxPPictureL0ReferenceCount: u32; maxBPictureL0ReferenceCount: u32; maxL1ReferenceCount: u32; maxSubLayerCount: u32; expectDyadicTemporalSubLayerPattern: VkBool32; minQp: s32; maxQp: s32; prefersGopRemainingFrames: VkBool32; requiresGopRemainingFrames: VkBool32; stdSyntaxFlags: VkVideoEncodeH265StdFlagsKHR; } VkVideoEncodeH265SessionCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMaxLevelIdc: VkBool32; maxLevelIdc: StdVideoH265LevelIdc; } VkVideoEncodeH265QpKHR :: struct { qpI: s32; qpP: s32; qpB: s32; } VkVideoEncodeH265QualityLevelPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; preferredRateControlFlags: VkVideoEncodeH265RateControlFlagsKHR; preferredGopFrameCount: u32; preferredIdrPeriod: u32; preferredConsecutiveBFrameCount: u32; preferredSubLayerCount: u32; preferredConstantQp: VkVideoEncodeH265QpKHR; preferredMaxL0ReferenceCount: u32; preferredMaxL1ReferenceCount: u32; } VkVideoEncodeH265SessionParametersAddInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdVPSCount: u32; pStdVPSs: *StdVideoH265VideoParameterSet; stdSPSCount: u32; pStdSPSs: *StdVideoH265SequenceParameterSet; stdPPSCount: u32; pStdPPSs: *StdVideoH265PictureParameterSet; } VkVideoEncodeH265SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; maxStdVPSCount: u32; maxStdSPSCount: u32; maxStdPPSCount: u32; pParametersAddInfo: *VkVideoEncodeH265SessionParametersAddInfoKHR; } VkVideoEncodeH265SessionParametersGetInfoKHR :: struct { sType: VkStructureType; pNext: *void; writeStdVPS: VkBool32; writeStdSPS: VkBool32; writeStdPPS: VkBool32; stdVPSId: u32; stdSPSId: u32; stdPPSId: u32; } VkVideoEncodeH265SessionParametersFeedbackInfoKHR :: struct { sType: VkStructureType; pNext: *void; hasStdVPSOverrides: VkBool32; hasStdSPSOverrides: VkBool32; hasStdPPSOverrides: VkBool32; } VkVideoEncodeH265NaluSliceSegmentInfoKHR :: struct { sType: VkStructureType; pNext: *void; constantQp: s32; pStdSliceSegmentHeader: *StdVideoEncodeH265SliceSegmentHeader; } VkVideoEncodeH265PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; naluSliceSegmentEntryCount: u32; pNaluSliceSegmentEntries: *VkVideoEncodeH265NaluSliceSegmentInfoKHR; pStdPictureInfo: *StdVideoEncodeH265PictureInfo; } VkVideoEncodeH265DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoEncodeH265ReferenceInfo; } VkVideoEncodeH265ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfileIdc: StdVideoH265ProfileIdc; } VkVideoEncodeH265RateControlInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeH265RateControlFlagsKHR; gopFrameCount: u32; idrPeriod: u32; consecutiveBFrameCount: u32; subLayerCount: u32; } VkVideoEncodeH265FrameSizeKHR :: struct { frameISize: u32; framePSize: u32; frameBSize: u32; } VkVideoEncodeH265RateControlLayerInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMinQp: VkBool32; minQp: VkVideoEncodeH265QpKHR; useMaxQp: VkBool32; maxQp: VkVideoEncodeH265QpKHR; useMaxFrameSize: VkBool32; maxFrameSize: VkVideoEncodeH265FrameSizeKHR; } VkVideoEncodeH265GopRemainingFrameInfoKHR :: struct { sType: VkStructureType; pNext: *void; useGopRemainingFrames: VkBool32; gopRemainingI: u32; gopRemainingP: u32; gopRemainingB: u32; } StdVideoDecodeH264FieldOrderCount :: enum u32 { TOP :: 0; BOTTOM :: 1; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_TOP :: TOP; STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_BOTTOM :: BOTTOM; STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_INVALID :: INVALID; STD_VIDEO_DECODE_H264_FIELD_ORDER_COUNT_MAX_ENUM :: MAX_ENUM; } StdVideoDecodeH264PictureInfoFlags :: struct { __bitfield: u8; /* field_pic_flag: u32; /* 1 bits */ is_intra: u32; /* 1 bits */ IdrPicFlag: u32; /* 1 bits */ bottom_field_flag: u32; /* 1 bits */ is_reference: u32; /* 1 bits */ complementary_field_pair: u32; /* 1 bits */; */ #place __bitfield; StdVideoDecodeH264PictureInfoFlags_alignment: u32; } StdVideoDecodeH264PictureInfo :: struct { flags: StdVideoDecodeH264PictureInfoFlags; seq_parameter_set_id: u8; pic_parameter_set_id: u8; reserved1: u8; reserved2: u8; frame_num: u16; idr_pic_id: u16; PicOrderCnt: [2] s32; } StdVideoDecodeH264ReferenceInfoFlags :: struct { __bitfield: u8; /* top_field_flag: u32; /* 1 bits */ bottom_field_flag: u32; /* 1 bits */ used_for_long_term_reference: u32; /* 1 bits */ is_non_existing: u32; /* 1 bits */; */ #place __bitfield; StdVideoDecodeH264ReferenceInfoFlags_alignment: u32; } StdVideoDecodeH264ReferenceInfo :: struct { flags: StdVideoDecodeH264ReferenceInfoFlags; FrameNum: u16; reserved: u16; PicOrderCnt: [2] s32; } VkVideoDecodeH264PictureLayoutFlagBitsKHR :: enum u32 { PROGRESSIVE_KHR :: 0; INTERLACED_INTERLEAVED_LINES_BIT_KHR :: 1; INTERLACED_SEPARATE_PLANES_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_PROGRESSIVE_KHR :: PROGRESSIVE_KHR; VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_INTERLEAVED_LINES_BIT_KHR :: INTERLACED_INTERLEAVED_LINES_BIT_KHR; VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_INTERLACED_SEPARATE_PLANES_BIT_KHR :: INTERLACED_SEPARATE_PLANES_BIT_KHR; VK_VIDEO_DECODE_H264_PICTURE_LAYOUT_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoDecodeH264PictureLayoutFlagsKHR :: VkFlags; VkVideoDecodeH264ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfileIdc: StdVideoH264ProfileIdc; pictureLayout: VkVideoDecodeH264PictureLayoutFlagBitsKHR; } VkVideoDecodeH264CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; maxLevelIdc: StdVideoH264LevelIdc; fieldOffsetGranularity: VkOffset2D; } VkVideoDecodeH264SessionParametersAddInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdSPSCount: u32; pStdSPSs: *StdVideoH264SequenceParameterSet; stdPPSCount: u32; pStdPPSs: *StdVideoH264PictureParameterSet; } VkVideoDecodeH264SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; maxStdSPSCount: u32; maxStdPPSCount: u32; pParametersAddInfo: *VkVideoDecodeH264SessionParametersAddInfoKHR; } VkVideoDecodeH264PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdPictureInfo: *StdVideoDecodeH264PictureInfo; sliceCount: u32; pSliceOffsets: *u32; } VkVideoDecodeH264DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoDecodeH264ReferenceInfo; } VkRenderingFlagsKHR :: VkRenderingFlags; VkRenderingFlagBitsKHR :: VkRenderingFlagBits; VkRenderingInfoKHR :: VkRenderingInfo; VkRenderingAttachmentInfoKHR :: VkRenderingAttachmentInfo; VkPipelineRenderingCreateInfoKHR :: VkPipelineRenderingCreateInfo; VkPhysicalDeviceDynamicRenderingFeaturesKHR :: VkPhysicalDeviceDynamicRenderingFeatures; VkCommandBufferInheritanceRenderingInfoKHR :: VkCommandBufferInheritanceRenderingInfo; PFN_vkCmdBeginRenderingKHR :: #type (commandBuffer: VkCommandBuffer, pRenderingInfo: *VkRenderingInfo) -> void #c_call; PFN_vkCmdEndRenderingKHR :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; VkRenderPassMultiviewCreateInfoKHR :: VkRenderPassMultiviewCreateInfo; VkPhysicalDeviceMultiviewFeaturesKHR :: VkPhysicalDeviceMultiviewFeatures; VkPhysicalDeviceMultiviewPropertiesKHR :: VkPhysicalDeviceMultiviewProperties; VkPhysicalDeviceFeatures2KHR :: VkPhysicalDeviceFeatures2; VkPhysicalDeviceProperties2KHR :: VkPhysicalDeviceProperties2; VkFormatProperties2KHR :: VkFormatProperties2; VkImageFormatProperties2KHR :: VkImageFormatProperties2; VkPhysicalDeviceImageFormatInfo2KHR :: VkPhysicalDeviceImageFormatInfo2; VkQueueFamilyProperties2KHR :: VkQueueFamilyProperties2; VkPhysicalDeviceMemoryProperties2KHR :: VkPhysicalDeviceMemoryProperties2; VkSparseImageFormatProperties2KHR :: VkSparseImageFormatProperties2; VkPhysicalDeviceSparseImageFormatInfo2KHR :: VkPhysicalDeviceSparseImageFormatInfo2; PFN_vkGetPhysicalDeviceFeatures2KHR :: #type (physicalDevice: VkPhysicalDevice, pFeatures: *VkPhysicalDeviceFeatures2) -> void #c_call; PFN_vkGetPhysicalDeviceProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pProperties: *VkPhysicalDeviceProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceFormatProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, pFormatProperties: *VkFormatProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceImageFormatProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pImageFormatInfo: *VkPhysicalDeviceImageFormatInfo2, pImageFormatProperties: *VkImageFormatProperties2) -> VkResult #c_call; PFN_vkGetPhysicalDeviceQueueFamilyProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pQueueFamilyPropertyCount: *u32, pQueueFamilyProperties: *VkQueueFamilyProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceMemoryProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pMemoryProperties: *VkPhysicalDeviceMemoryProperties2) -> void #c_call; PFN_vkGetPhysicalDeviceSparseImageFormatProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pFormatInfo: *VkPhysicalDeviceSparseImageFormatInfo2, pPropertyCount: *u32, pProperties: *VkSparseImageFormatProperties2) -> void #c_call; VkPeerMemoryFeatureFlagsKHR :: VkPeerMemoryFeatureFlags; VkPeerMemoryFeatureFlagBitsKHR :: VkPeerMemoryFeatureFlagBits; VkMemoryAllocateFlagsKHR :: VkMemoryAllocateFlags; VkMemoryAllocateFlagBitsKHR :: VkMemoryAllocateFlagBits; VkMemoryAllocateFlagsInfoKHR :: VkMemoryAllocateFlagsInfo; VkDeviceGroupRenderPassBeginInfoKHR :: VkDeviceGroupRenderPassBeginInfo; VkDeviceGroupCommandBufferBeginInfoKHR :: VkDeviceGroupCommandBufferBeginInfo; VkDeviceGroupSubmitInfoKHR :: VkDeviceGroupSubmitInfo; VkDeviceGroupBindSparseInfoKHR :: VkDeviceGroupBindSparseInfo; VkBindBufferMemoryDeviceGroupInfoKHR :: VkBindBufferMemoryDeviceGroupInfo; VkBindImageMemoryDeviceGroupInfoKHR :: VkBindImageMemoryDeviceGroupInfo; PFN_vkGetDeviceGroupPeerMemoryFeaturesKHR :: #type (device: VkDevice, heapIndex: u32, localDeviceIndex: u32, remoteDeviceIndex: u32, pPeerMemoryFeatures: *VkPeerMemoryFeatureFlags) -> void #c_call; PFN_vkCmdSetDeviceMaskKHR :: #type (commandBuffer: VkCommandBuffer, deviceMask: u32) -> void #c_call; PFN_vkCmdDispatchBaseKHR :: #type (commandBuffer: VkCommandBuffer, baseGroupX: u32, baseGroupY: u32, baseGroupZ: u32, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #c_call; VkCommandPoolTrimFlagsKHR :: VkCommandPoolTrimFlags; PFN_vkTrimCommandPoolKHR :: #type (device: VkDevice, commandPool: VkCommandPool, flags: VkCommandPoolTrimFlags) -> void #c_call; VkPhysicalDeviceGroupPropertiesKHR :: VkPhysicalDeviceGroupProperties; VkDeviceGroupDeviceCreateInfoKHR :: VkDeviceGroupDeviceCreateInfo; PFN_vkEnumeratePhysicalDeviceGroupsKHR :: #type (instance: VkInstance, pPhysicalDeviceGroupCount: *u32, pPhysicalDeviceGroupProperties: *VkPhysicalDeviceGroupProperties) -> VkResult #c_call; VkExternalMemoryHandleTypeFlagsKHR :: VkExternalMemoryHandleTypeFlags; VkExternalMemoryHandleTypeFlagBitsKHR :: VkExternalMemoryHandleTypeFlagBits; VkExternalMemoryFeatureFlagsKHR :: VkExternalMemoryFeatureFlags; VkExternalMemoryFeatureFlagBitsKHR :: VkExternalMemoryFeatureFlagBits; VkExternalMemoryPropertiesKHR :: VkExternalMemoryProperties; VkPhysicalDeviceExternalImageFormatInfoKHR :: VkPhysicalDeviceExternalImageFormatInfo; VkExternalImageFormatPropertiesKHR :: VkExternalImageFormatProperties; VkPhysicalDeviceExternalBufferInfoKHR :: VkPhysicalDeviceExternalBufferInfo; VkExternalBufferPropertiesKHR :: VkExternalBufferProperties; VkPhysicalDeviceIDPropertiesKHR :: VkPhysicalDeviceIDProperties; PFN_vkGetPhysicalDeviceExternalBufferPropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pExternalBufferInfo: *VkPhysicalDeviceExternalBufferInfo, pExternalBufferProperties: *VkExternalBufferProperties) -> void #c_call; VkExternalMemoryImageCreateInfoKHR :: VkExternalMemoryImageCreateInfo; VkExternalMemoryBufferCreateInfoKHR :: VkExternalMemoryBufferCreateInfo; VkExportMemoryAllocateInfoKHR :: VkExportMemoryAllocateInfo; VkImportMemoryFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; handleType: VkExternalMemoryHandleTypeFlagBits; fd: s32; } VkMemoryFdPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; memoryTypeBits: u32; } VkMemoryGetFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; memory: VkDeviceMemory; handleType: VkExternalMemoryHandleTypeFlagBits; } PFN_vkGetMemoryFdKHR :: #type (device: VkDevice, pGetFdInfo: *VkMemoryGetFdInfoKHR, pFd: *s32) -> VkResult #c_call; PFN_vkGetMemoryFdPropertiesKHR :: #type (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, fd: s32, pMemoryFdProperties: *VkMemoryFdPropertiesKHR) -> VkResult #c_call; VkExternalSemaphoreHandleTypeFlagsKHR :: VkExternalSemaphoreHandleTypeFlags; VkExternalSemaphoreHandleTypeFlagBitsKHR :: VkExternalSemaphoreHandleTypeFlagBits; VkExternalSemaphoreFeatureFlagsKHR :: VkExternalSemaphoreFeatureFlags; VkExternalSemaphoreFeatureFlagBitsKHR :: VkExternalSemaphoreFeatureFlagBits; VkPhysicalDeviceExternalSemaphoreInfoKHR :: VkPhysicalDeviceExternalSemaphoreInfo; VkExternalSemaphorePropertiesKHR :: VkExternalSemaphoreProperties; PFN_vkGetPhysicalDeviceExternalSemaphorePropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pExternalSemaphoreInfo: *VkPhysicalDeviceExternalSemaphoreInfo, pExternalSemaphoreProperties: *VkExternalSemaphoreProperties) -> void #c_call; VkSemaphoreImportFlagsKHR :: VkSemaphoreImportFlags; VkSemaphoreImportFlagBitsKHR :: VkSemaphoreImportFlagBits; VkExportSemaphoreCreateInfoKHR :: VkExportSemaphoreCreateInfo; VkImportSemaphoreFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; semaphore: VkSemaphore; flags: VkSemaphoreImportFlags; handleType: VkExternalSemaphoreHandleTypeFlagBits; fd: s32; } VkSemaphoreGetFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; semaphore: VkSemaphore; handleType: VkExternalSemaphoreHandleTypeFlagBits; } PFN_vkImportSemaphoreFdKHR :: #type (device: VkDevice, pImportSemaphoreFdInfo: *VkImportSemaphoreFdInfoKHR) -> VkResult #c_call; PFN_vkGetSemaphoreFdKHR :: #type (device: VkDevice, pGetFdInfo: *VkSemaphoreGetFdInfoKHR, pFd: *s32) -> VkResult #c_call; VkPhysicalDevicePushDescriptorPropertiesKHR :: VkPhysicalDevicePushDescriptorProperties; PFN_vkCmdPushDescriptorSetKHR :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: u32, descriptorWriteCount: u32, pDescriptorWrites: *VkWriteDescriptorSet) -> void #c_call; PFN_vkCmdPushDescriptorSetWithTemplateKHR :: #type (commandBuffer: VkCommandBuffer, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, layout: VkPipelineLayout, set: u32, pData: *void) -> void #c_call; VkPhysicalDeviceShaderFloat16Int8FeaturesKHR :: VkPhysicalDeviceShaderFloat16Int8Features; VkPhysicalDeviceFloat16Int8FeaturesKHR :: VkPhysicalDeviceShaderFloat16Int8Features; VkPhysicalDevice16BitStorageFeaturesKHR :: VkPhysicalDevice16BitStorageFeatures; VkRectLayerKHR :: struct { offset: VkOffset2D; extent: VkExtent2D; layer: u32; } VkPresentRegionKHR :: struct { rectangleCount: u32; pRectangles: *VkRectLayerKHR; } VkPresentRegionsKHR :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pRegions: *VkPresentRegionKHR; } VkDescriptorUpdateTemplateKHR :: VkDescriptorUpdateTemplate; VkDescriptorUpdateTemplateTypeKHR :: VkDescriptorUpdateTemplateType; VkDescriptorUpdateTemplateCreateFlagsKHR :: VkDescriptorUpdateTemplateCreateFlags; VkDescriptorUpdateTemplateEntryKHR :: VkDescriptorUpdateTemplateEntry; VkDescriptorUpdateTemplateCreateInfoKHR :: VkDescriptorUpdateTemplateCreateInfo; PFN_vkCreateDescriptorUpdateTemplateKHR :: #type (device: VkDevice, pCreateInfo: *VkDescriptorUpdateTemplateCreateInfo, pAllocator: *VkAllocationCallbacks, pDescriptorUpdateTemplate: *VkDescriptorUpdateTemplate) -> VkResult #c_call; PFN_vkDestroyDescriptorUpdateTemplateKHR :: #type (device: VkDevice, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkUpdateDescriptorSetWithTemplateKHR :: #type (device: VkDevice, descriptorSet: VkDescriptorSet, descriptorUpdateTemplate: VkDescriptorUpdateTemplate, pData: *void) -> void #c_call; VkPhysicalDeviceImagelessFramebufferFeaturesKHR :: VkPhysicalDeviceImagelessFramebufferFeatures; VkFramebufferAttachmentsCreateInfoKHR :: VkFramebufferAttachmentsCreateInfo; VkFramebufferAttachmentImageInfoKHR :: VkFramebufferAttachmentImageInfo; VkRenderPassAttachmentBeginInfoKHR :: VkRenderPassAttachmentBeginInfo; VkRenderPassCreateInfo2KHR :: VkRenderPassCreateInfo2; VkAttachmentDescription2KHR :: VkAttachmentDescription2; VkAttachmentReference2KHR :: VkAttachmentReference2; VkSubpassDescription2KHR :: VkSubpassDescription2; VkSubpassDependency2KHR :: VkSubpassDependency2; VkSubpassBeginInfoKHR :: VkSubpassBeginInfo; VkSubpassEndInfoKHR :: VkSubpassEndInfo; PFN_vkCreateRenderPass2KHR :: #type (device: VkDevice, pCreateInfo: *VkRenderPassCreateInfo2, pAllocator: *VkAllocationCallbacks, pRenderPass: *VkRenderPass) -> VkResult #c_call; PFN_vkCmdBeginRenderPass2KHR :: #type (commandBuffer: VkCommandBuffer, pRenderPassBegin: *VkRenderPassBeginInfo, pSubpassBeginInfo: *VkSubpassBeginInfo) -> void #c_call; PFN_vkCmdNextSubpass2KHR :: #type (commandBuffer: VkCommandBuffer, pSubpassBeginInfo: *VkSubpassBeginInfo, pSubpassEndInfo: *VkSubpassEndInfo) -> void #c_call; PFN_vkCmdEndRenderPass2KHR :: #type (commandBuffer: VkCommandBuffer, pSubpassEndInfo: *VkSubpassEndInfo) -> void #c_call; VkSharedPresentSurfaceCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; sharedPresentSupportedUsageFlags: VkImageUsageFlags; } PFN_vkGetSwapchainStatusKHR :: #type (device: VkDevice, swapchain: VkSwapchainKHR) -> VkResult #c_call; VkExternalFenceHandleTypeFlagsKHR :: VkExternalFenceHandleTypeFlags; VkExternalFenceHandleTypeFlagBitsKHR :: VkExternalFenceHandleTypeFlagBits; VkExternalFenceFeatureFlagsKHR :: VkExternalFenceFeatureFlags; VkExternalFenceFeatureFlagBitsKHR :: VkExternalFenceFeatureFlagBits; VkPhysicalDeviceExternalFenceInfoKHR :: VkPhysicalDeviceExternalFenceInfo; VkExternalFencePropertiesKHR :: VkExternalFenceProperties; PFN_vkGetPhysicalDeviceExternalFencePropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pExternalFenceInfo: *VkPhysicalDeviceExternalFenceInfo, pExternalFenceProperties: *VkExternalFenceProperties) -> void #c_call; VkFenceImportFlagsKHR :: VkFenceImportFlags; VkFenceImportFlagBitsKHR :: VkFenceImportFlagBits; VkExportFenceCreateInfoKHR :: VkExportFenceCreateInfo; VkImportFenceFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; fence: VkFence; flags: VkFenceImportFlags; handleType: VkExternalFenceHandleTypeFlagBits; fd: s32; } VkFenceGetFdInfoKHR :: struct { sType: VkStructureType; pNext: *void; fence: VkFence; handleType: VkExternalFenceHandleTypeFlagBits; } PFN_vkImportFenceFdKHR :: #type (device: VkDevice, pImportFenceFdInfo: *VkImportFenceFdInfoKHR) -> VkResult #c_call; PFN_vkGetFenceFdKHR :: #type (device: VkDevice, pGetFdInfo: *VkFenceGetFdInfoKHR, pFd: *s32) -> VkResult #c_call; VkPerformanceCounterUnitKHR :: enum u32 { GENERIC_KHR :: 0; PERCENTAGE_KHR :: 1; NANOSECONDS_KHR :: 2; BYTES_KHR :: 3; BYTES_PER_SECOND_KHR :: 4; KELVIN_KHR :: 5; WATTS_KHR :: 6; VOLTS_KHR :: 7; AMPS_KHR :: 8; HERTZ_KHR :: 9; CYCLES_KHR :: 10; MAX_ENUM_KHR :: 2147483647; VK_PERFORMANCE_COUNTER_UNIT_GENERIC_KHR :: GENERIC_KHR; VK_PERFORMANCE_COUNTER_UNIT_PERCENTAGE_KHR :: PERCENTAGE_KHR; VK_PERFORMANCE_COUNTER_UNIT_NANOSECONDS_KHR :: NANOSECONDS_KHR; VK_PERFORMANCE_COUNTER_UNIT_BYTES_KHR :: BYTES_KHR; VK_PERFORMANCE_COUNTER_UNIT_BYTES_PER_SECOND_KHR :: BYTES_PER_SECOND_KHR; VK_PERFORMANCE_COUNTER_UNIT_KELVIN_KHR :: KELVIN_KHR; VK_PERFORMANCE_COUNTER_UNIT_WATTS_KHR :: WATTS_KHR; VK_PERFORMANCE_COUNTER_UNIT_VOLTS_KHR :: VOLTS_KHR; VK_PERFORMANCE_COUNTER_UNIT_AMPS_KHR :: AMPS_KHR; VK_PERFORMANCE_COUNTER_UNIT_HERTZ_KHR :: HERTZ_KHR; VK_PERFORMANCE_COUNTER_UNIT_CYCLES_KHR :: CYCLES_KHR; VK_PERFORMANCE_COUNTER_UNIT_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkPerformanceCounterScopeKHR :: enum u32 { PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR :: 0; PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR :: 1; PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR :: 2; QUERY_SCOPE_COMMAND_BUFFER_KHR :: 0; QUERY_SCOPE_RENDER_PASS_KHR :: 1; QUERY_SCOPE_COMMAND_KHR :: 2; PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR :: 2147483647; VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR :: PERFORMANCE_COUNTER_SCOPE_COMMAND_BUFFER_KHR; VK_PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR :: PERFORMANCE_COUNTER_SCOPE_RENDER_PASS_KHR; VK_PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR :: PERFORMANCE_COUNTER_SCOPE_COMMAND_KHR; VK_QUERY_SCOPE_COMMAND_BUFFER_KHR :: QUERY_SCOPE_COMMAND_BUFFER_KHR; VK_QUERY_SCOPE_RENDER_PASS_KHR :: QUERY_SCOPE_RENDER_PASS_KHR; VK_QUERY_SCOPE_COMMAND_KHR :: QUERY_SCOPE_COMMAND_KHR; VK_PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR :: PERFORMANCE_COUNTER_SCOPE_MAX_ENUM_KHR; } VkPerformanceCounterStorageKHR :: enum u32 { INT32_KHR :: 0; INT64_KHR :: 1; UINT32_KHR :: 2; UINT64_KHR :: 3; FLOAT32_KHR :: 4; FLOAT64_KHR :: 5; MAX_ENUM_KHR :: 2147483647; VK_PERFORMANCE_COUNTER_STORAGE_INT32_KHR :: INT32_KHR; VK_PERFORMANCE_COUNTER_STORAGE_INT64_KHR :: INT64_KHR; VK_PERFORMANCE_COUNTER_STORAGE_UINT32_KHR :: UINT32_KHR; VK_PERFORMANCE_COUNTER_STORAGE_UINT64_KHR :: UINT64_KHR; VK_PERFORMANCE_COUNTER_STORAGE_FLOAT32_KHR :: FLOAT32_KHR; VK_PERFORMANCE_COUNTER_STORAGE_FLOAT64_KHR :: FLOAT64_KHR; VK_PERFORMANCE_COUNTER_STORAGE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkPerformanceCounterDescriptionFlagBitsKHR :: enum u32 { PERFORMANCE_IMPACTING_BIT_KHR :: 1; CONCURRENTLY_IMPACTED_BIT_KHR :: 2; PERFORMANCE_IMPACTING_KHR :: 1; CONCURRENTLY_IMPACTED_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_BIT_KHR :: PERFORMANCE_IMPACTING_BIT_KHR; VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_BIT_KHR :: CONCURRENTLY_IMPACTED_BIT_KHR; VK_PERFORMANCE_COUNTER_DESCRIPTION_PERFORMANCE_IMPACTING_KHR :: PERFORMANCE_IMPACTING_KHR; VK_PERFORMANCE_COUNTER_DESCRIPTION_CONCURRENTLY_IMPACTED_KHR :: CONCURRENTLY_IMPACTED_KHR; VK_PERFORMANCE_COUNTER_DESCRIPTION_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkPerformanceCounterDescriptionFlagsKHR :: VkFlags; VkAcquireProfilingLockFlagBitsKHR :: enum u32 { VK_ACQUIRE_PROFILING_LOCK_FLAG_BITS_MAX_ENUM_KHR :: 2147483647; } VkAcquireProfilingLockFlagsKHR :: VkFlags; VkPhysicalDevicePerformanceQueryFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; performanceCounterQueryPools: VkBool32; performanceCounterMultipleQueryPools: VkBool32; } VkPhysicalDevicePerformanceQueryPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; allowCommandBufferQueryCopies: VkBool32; } VkPerformanceCounterKHR :: struct { sType: VkStructureType; pNext: *void; unit: VkPerformanceCounterUnitKHR; scope: VkPerformanceCounterScopeKHR; storage: VkPerformanceCounterStorageKHR; uuid: [16] u8; } VkPerformanceCounterDescriptionKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkPerformanceCounterDescriptionFlagsKHR; name: [256] u8; category: [256] u8; description: [256] u8; } VkQueryPoolPerformanceCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; queueFamilyIndex: u32; counterIndexCount: u32; pCounterIndices: *u32; } VkPerformanceCounterResultKHR :: union { int32: s32; int64: s64; uint32: u32; uint64: u64; _float32: float; _float64: float64; } VkAcquireProfilingLockInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkAcquireProfilingLockFlagsKHR; timeout: u64; } VkPerformanceQuerySubmitInfoKHR :: struct { sType: VkStructureType; pNext: *void; counterPassIndex: u32; } PFN_vkEnumeratePhysicalDeviceQueueFamilyPerformanceQueryCountersKHR :: #type (physicalDevice: VkPhysicalDevice, queueFamilyIndex: u32, pCounterCount: *u32, pCounters: *VkPerformanceCounterKHR, pCounterDescriptions: *VkPerformanceCounterDescriptionKHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceQueueFamilyPerformanceQueryPassesKHR :: #type (physicalDevice: VkPhysicalDevice, pPerformanceQueryCreateInfo: *VkQueryPoolPerformanceCreateInfoKHR, pNumPasses: *u32) -> void #c_call; PFN_vkAcquireProfilingLockKHR :: #type (device: VkDevice, pInfo: *VkAcquireProfilingLockInfoKHR) -> VkResult #c_call; PFN_vkReleaseProfilingLockKHR :: #type (device: VkDevice) -> void #c_call; VkPointClippingBehaviorKHR :: VkPointClippingBehavior; VkTessellationDomainOriginKHR :: VkTessellationDomainOrigin; VkPhysicalDevicePointClippingPropertiesKHR :: VkPhysicalDevicePointClippingProperties; VkRenderPassInputAttachmentAspectCreateInfoKHR :: VkRenderPassInputAttachmentAspectCreateInfo; VkInputAttachmentAspectReferenceKHR :: VkInputAttachmentAspectReference; VkImageViewUsageCreateInfoKHR :: VkImageViewUsageCreateInfo; VkPipelineTessellationDomainOriginStateCreateInfoKHR :: VkPipelineTessellationDomainOriginStateCreateInfo; VkPhysicalDeviceSurfaceInfo2KHR :: struct { sType: VkStructureType; pNext: *void; surface: VkSurfaceKHR; } VkSurfaceCapabilities2KHR :: struct { sType: VkStructureType; pNext: *void; surfaceCapabilities: VkSurfaceCapabilitiesKHR; } VkSurfaceFormat2KHR :: struct { sType: VkStructureType; pNext: *void; surfaceFormat: VkSurfaceFormatKHR; } PFN_vkGetPhysicalDeviceSurfaceCapabilities2KHR :: #type (physicalDevice: VkPhysicalDevice, pSurfaceInfo: *VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: *VkSurfaceCapabilities2KHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceSurfaceFormats2KHR :: #type (physicalDevice: VkPhysicalDevice, pSurfaceInfo: *VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: *u32, pSurfaceFormats: *VkSurfaceFormat2KHR) -> VkResult #c_call; vkGetPhysicalDeviceSurfaceCapabilities2KHR :: (physicalDevice: VkPhysicalDevice, pSurfaceInfo: *VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceCapabilities: *VkSurfaceCapabilities2KHR) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceSurfaceFormats2KHR :: (physicalDevice: VkPhysicalDevice, pSurfaceInfo: *VkPhysicalDeviceSurfaceInfo2KHR, pSurfaceFormatCount: *u32, pSurfaceFormats: *VkSurfaceFormat2KHR) -> VkResult #foreign libvulkan; VkPhysicalDeviceVariablePointerFeaturesKHR :: VkPhysicalDeviceVariablePointersFeatures; VkPhysicalDeviceVariablePointersFeaturesKHR :: VkPhysicalDeviceVariablePointersFeatures; VkDisplayProperties2KHR :: struct { sType: VkStructureType; pNext: *void; displayProperties: VkDisplayPropertiesKHR; } VkDisplayPlaneProperties2KHR :: struct { sType: VkStructureType; pNext: *void; displayPlaneProperties: VkDisplayPlanePropertiesKHR; } VkDisplayModeProperties2KHR :: struct { sType: VkStructureType; pNext: *void; displayModeProperties: VkDisplayModePropertiesKHR; } VkDisplayPlaneInfo2KHR :: struct { sType: VkStructureType; pNext: *void; mode: VkDisplayModeKHR; planeIndex: u32; } VkDisplayPlaneCapabilities2KHR :: struct { sType: VkStructureType; pNext: *void; capabilities: VkDisplayPlaneCapabilitiesKHR; } PFN_vkGetPhysicalDeviceDisplayProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayProperties2KHR) -> VkResult #c_call; PFN_vkGetPhysicalDeviceDisplayPlaneProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPlaneProperties2KHR) -> VkResult #c_call; PFN_vkGetDisplayModeProperties2KHR :: #type (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: *u32, pProperties: *VkDisplayModeProperties2KHR) -> VkResult #c_call; PFN_vkGetDisplayPlaneCapabilities2KHR :: #type (physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: *VkDisplayPlaneInfo2KHR, pCapabilities: *VkDisplayPlaneCapabilities2KHR) -> VkResult #c_call; vkGetPhysicalDeviceDisplayProperties2KHR :: (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayProperties2KHR) -> VkResult #foreign libvulkan; vkGetPhysicalDeviceDisplayPlaneProperties2KHR :: (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkDisplayPlaneProperties2KHR) -> VkResult #foreign libvulkan; vkGetDisplayModeProperties2KHR :: (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR, pPropertyCount: *u32, pProperties: *VkDisplayModeProperties2KHR) -> VkResult #foreign libvulkan; vkGetDisplayPlaneCapabilities2KHR :: (physicalDevice: VkPhysicalDevice, pDisplayPlaneInfo: *VkDisplayPlaneInfo2KHR, pCapabilities: *VkDisplayPlaneCapabilities2KHR) -> VkResult #foreign libvulkan; VkMemoryDedicatedRequirementsKHR :: VkMemoryDedicatedRequirements; VkMemoryDedicatedAllocateInfoKHR :: VkMemoryDedicatedAllocateInfo; VkPhysicalDeviceShaderBfloat16FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderBFloat16Type: VkBool32; shaderBFloat16DotProduct: VkBool32; shaderBFloat16CooperativeMatrix: VkBool32; } VkBufferMemoryRequirementsInfo2KHR :: VkBufferMemoryRequirementsInfo2; VkImageMemoryRequirementsInfo2KHR :: VkImageMemoryRequirementsInfo2; VkImageSparseMemoryRequirementsInfo2KHR :: VkImageSparseMemoryRequirementsInfo2; VkMemoryRequirements2KHR :: VkMemoryRequirements2; VkSparseImageMemoryRequirements2KHR :: VkSparseImageMemoryRequirements2; PFN_vkGetImageMemoryRequirements2KHR :: #type (device: VkDevice, pInfo: *VkImageMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetBufferMemoryRequirements2KHR :: #type (device: VkDevice, pInfo: *VkBufferMemoryRequirementsInfo2, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetImageSparseMemoryRequirements2KHR :: #type (device: VkDevice, pInfo: *VkImageSparseMemoryRequirementsInfo2, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #c_call; VkImageFormatListCreateInfoKHR :: VkImageFormatListCreateInfo; VkSamplerYcbcrConversionKHR :: VkSamplerYcbcrConversion; VkSamplerYcbcrModelConversionKHR :: VkSamplerYcbcrModelConversion; VkSamplerYcbcrRangeKHR :: VkSamplerYcbcrRange; VkChromaLocationKHR :: VkChromaLocation; VkSamplerYcbcrConversionCreateInfoKHR :: VkSamplerYcbcrConversionCreateInfo; VkSamplerYcbcrConversionInfoKHR :: VkSamplerYcbcrConversionInfo; VkBindImagePlaneMemoryInfoKHR :: VkBindImagePlaneMemoryInfo; VkImagePlaneMemoryRequirementsInfoKHR :: VkImagePlaneMemoryRequirementsInfo; VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR :: VkPhysicalDeviceSamplerYcbcrConversionFeatures; VkSamplerYcbcrConversionImageFormatPropertiesKHR :: VkSamplerYcbcrConversionImageFormatProperties; PFN_vkCreateSamplerYcbcrConversionKHR :: #type (device: VkDevice, pCreateInfo: *VkSamplerYcbcrConversionCreateInfo, pAllocator: *VkAllocationCallbacks, pYcbcrConversion: *VkSamplerYcbcrConversion) -> VkResult #c_call; PFN_vkDestroySamplerYcbcrConversionKHR :: #type (device: VkDevice, ycbcrConversion: VkSamplerYcbcrConversion, pAllocator: *VkAllocationCallbacks) -> void #c_call; VkBindBufferMemoryInfoKHR :: VkBindBufferMemoryInfo; VkBindImageMemoryInfoKHR :: VkBindImageMemoryInfo; PFN_vkBindBufferMemory2KHR :: #type (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindBufferMemoryInfo) -> VkResult #c_call; PFN_vkBindImageMemory2KHR :: #type (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindImageMemoryInfo) -> VkResult #c_call; VkPhysicalDeviceMaintenance3PropertiesKHR :: VkPhysicalDeviceMaintenance3Properties; VkDescriptorSetLayoutSupportKHR :: VkDescriptorSetLayoutSupport; PFN_vkGetDescriptorSetLayoutSupportKHR :: #type (device: VkDevice, pCreateInfo: *VkDescriptorSetLayoutCreateInfo, pSupport: *VkDescriptorSetLayoutSupport) -> void #c_call; PFN_vkCmdDrawIndirectCountKHR :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawIndexedIndirectCountKHR :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR :: VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures; VkPhysicalDevice8BitStorageFeaturesKHR :: VkPhysicalDevice8BitStorageFeatures; VkPhysicalDeviceShaderAtomicInt64FeaturesKHR :: VkPhysicalDeviceShaderAtomicInt64Features; VkPhysicalDeviceShaderClockFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderSubgroupClock: VkBool32; shaderDeviceClock: VkBool32; } StdVideoDecodeH265PictureInfoFlags :: struct { __bitfield: u8; /* IrapPicFlag: u32; /* 1 bits */ IdrPicFlag: u32; /* 1 bits */ IsReference: u32; /* 1 bits */ short_term_ref_pic_set_sps_flag: u32; /* 1 bits */; */ #place __bitfield; StdVideoDecodeH265PictureInfoFlags_alignment: u32; } StdVideoDecodeH265PictureInfo :: struct { flags: StdVideoDecodeH265PictureInfoFlags; sps_video_parameter_set_id: u8; pps_seq_parameter_set_id: u8; pps_pic_parameter_set_id: u8; NumDeltaPocsOfRefRpsIdx: u8; PicOrderCntVal: s32; NumBitsForSTRefPicSetInSlice: u16; reserved: u16; RefPicSetStCurrBefore: [8] u8; RefPicSetStCurrAfter: [8] u8; RefPicSetLtCurr: [8] u8; } StdVideoDecodeH265ReferenceInfoFlags :: struct { __bitfield: u8; /* used_for_long_term_reference: u32; /* 1 bits */ unused_for_reference: u32; /* 1 bits */; */ #place __bitfield; StdVideoDecodeH265ReferenceInfoFlags_alignment: u32; } StdVideoDecodeH265ReferenceInfo :: struct { flags: StdVideoDecodeH265ReferenceInfoFlags; PicOrderCntVal: s32; } VkVideoDecodeH265ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfileIdc: StdVideoH265ProfileIdc; } VkVideoDecodeH265CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; maxLevelIdc: StdVideoH265LevelIdc; } VkVideoDecodeH265SessionParametersAddInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdVPSCount: u32; pStdVPSs: *StdVideoH265VideoParameterSet; stdSPSCount: u32; pStdSPSs: *StdVideoH265SequenceParameterSet; stdPPSCount: u32; pStdPPSs: *StdVideoH265PictureParameterSet; } VkVideoDecodeH265SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; maxStdVPSCount: u32; maxStdSPSCount: u32; maxStdPPSCount: u32; pParametersAddInfo: *VkVideoDecodeH265SessionParametersAddInfoKHR; } VkVideoDecodeH265PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdPictureInfo: *StdVideoDecodeH265PictureInfo; sliceSegmentCount: u32; pSliceSegmentOffsets: *u32; } VkVideoDecodeH265DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoDecodeH265ReferenceInfo; } VkQueueGlobalPriorityKHR :: VkQueueGlobalPriority; VkDeviceQueueGlobalPriorityCreateInfoKHR :: VkDeviceQueueGlobalPriorityCreateInfo; VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR :: VkPhysicalDeviceGlobalPriorityQueryFeatures; VkQueueFamilyGlobalPriorityPropertiesKHR :: VkQueueFamilyGlobalPriorityProperties; VkDriverIdKHR :: VkDriverId; VkConformanceVersionKHR :: VkConformanceVersion; VkPhysicalDeviceDriverPropertiesKHR :: VkPhysicalDeviceDriverProperties; VkShaderFloatControlsIndependenceKHR :: VkShaderFloatControlsIndependence; VkPhysicalDeviceFloatControlsPropertiesKHR :: VkPhysicalDeviceFloatControlsProperties; VkResolveModeFlagBitsKHR :: VkResolveModeFlagBits; VkResolveModeFlagsKHR :: VkResolveModeFlags; VkSubpassDescriptionDepthStencilResolveKHR :: VkSubpassDescriptionDepthStencilResolve; VkPhysicalDeviceDepthStencilResolvePropertiesKHR :: VkPhysicalDeviceDepthStencilResolveProperties; VkSemaphoreTypeKHR :: VkSemaphoreType; VkSemaphoreWaitFlagBitsKHR :: VkSemaphoreWaitFlagBits; VkSemaphoreWaitFlagsKHR :: VkSemaphoreWaitFlags; VkPhysicalDeviceTimelineSemaphoreFeaturesKHR :: VkPhysicalDeviceTimelineSemaphoreFeatures; VkPhysicalDeviceTimelineSemaphorePropertiesKHR :: VkPhysicalDeviceTimelineSemaphoreProperties; VkSemaphoreTypeCreateInfoKHR :: VkSemaphoreTypeCreateInfo; VkTimelineSemaphoreSubmitInfoKHR :: VkTimelineSemaphoreSubmitInfo; VkSemaphoreWaitInfoKHR :: VkSemaphoreWaitInfo; VkSemaphoreSignalInfoKHR :: VkSemaphoreSignalInfo; PFN_vkGetSemaphoreCounterValueKHR :: #type (device: VkDevice, semaphore: VkSemaphore, pValue: *u64) -> VkResult #c_call; PFN_vkWaitSemaphoresKHR :: #type (device: VkDevice, pWaitInfo: *VkSemaphoreWaitInfo, timeout: u64) -> VkResult #c_call; PFN_vkSignalSemaphoreKHR :: #type (device: VkDevice, pSignalInfo: *VkSemaphoreSignalInfo) -> VkResult #c_call; VkPhysicalDeviceVulkanMemoryModelFeaturesKHR :: VkPhysicalDeviceVulkanMemoryModelFeatures; VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR :: VkPhysicalDeviceShaderTerminateInvocationFeatures; VkFragmentShadingRateCombinerOpKHR :: enum u32 { KEEP_KHR :: 0; REPLACE_KHR :: 1; MIN_KHR :: 2; MAX_KHR :: 3; MUL_KHR :: 4; MAX_ENUM_KHR :: 2147483647; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_KEEP_KHR :: KEEP_KHR; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_REPLACE_KHR :: REPLACE_KHR; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MIN_KHR :: MIN_KHR; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_KHR :: MAX_KHR; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MUL_KHR :: MUL_KHR; VK_FRAGMENT_SHADING_RATE_COMBINER_OP_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkFragmentShadingRateAttachmentInfoKHR :: struct { sType: VkStructureType; pNext: *void; pFragmentShadingRateAttachment: *VkAttachmentReference2; shadingRateAttachmentTexelSize: VkExtent2D; } VkPipelineFragmentShadingRateStateCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; fragmentSize: VkExtent2D; combinerOps: [2] VkFragmentShadingRateCombinerOpKHR; } VkPhysicalDeviceFragmentShadingRateFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; pipelineFragmentShadingRate: VkBool32; primitiveFragmentShadingRate: VkBool32; attachmentFragmentShadingRate: VkBool32; } VkPhysicalDeviceFragmentShadingRatePropertiesKHR :: struct { sType: VkStructureType; pNext: *void; minFragmentShadingRateAttachmentTexelSize: VkExtent2D; maxFragmentShadingRateAttachmentTexelSize: VkExtent2D; maxFragmentShadingRateAttachmentTexelSizeAspectRatio: u32; primitiveFragmentShadingRateWithMultipleViewports: VkBool32; layeredShadingRateAttachments: VkBool32; fragmentShadingRateNonTrivialCombinerOps: VkBool32; maxFragmentSize: VkExtent2D; maxFragmentSizeAspectRatio: u32; maxFragmentShadingRateCoverageSamples: u32; maxFragmentShadingRateRasterizationSamples: VkSampleCountFlagBits; fragmentShadingRateWithShaderDepthStencilWrites: VkBool32; fragmentShadingRateWithSampleMask: VkBool32; fragmentShadingRateWithShaderSampleMask: VkBool32; fragmentShadingRateWithConservativeRasterization: VkBool32; fragmentShadingRateWithFragmentShaderInterlock: VkBool32; fragmentShadingRateWithCustomSampleLocations: VkBool32; fragmentShadingRateStrictMultiplyCombiner: VkBool32; } VkPhysicalDeviceFragmentShadingRateKHR :: struct { sType: VkStructureType; pNext: *void; sampleCounts: VkSampleCountFlags; fragmentSize: VkExtent2D; } VkRenderingFragmentShadingRateAttachmentInfoKHR :: struct { sType: VkStructureType; pNext: *void; imageView: VkImageView; imageLayout: VkImageLayout; shadingRateAttachmentTexelSize: VkExtent2D; } PFN_vkGetPhysicalDeviceFragmentShadingRatesKHR :: #type (physicalDevice: VkPhysicalDevice, pFragmentShadingRateCount: *u32, pFragmentShadingRates: *VkPhysicalDeviceFragmentShadingRateKHR) -> VkResult #c_call; PFN_vkCmdSetFragmentShadingRateKHR :: #type (commandBuffer: VkCommandBuffer, pFragmentSize: *VkExtent2D, combinerOps: *[2] VkFragmentShadingRateCombinerOpKHR) -> void #c_call; VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR :: VkPhysicalDeviceDynamicRenderingLocalReadFeatures; VkRenderingAttachmentLocationInfoKHR :: VkRenderingAttachmentLocationInfo; VkRenderingInputAttachmentIndexInfoKHR :: VkRenderingInputAttachmentIndexInfo; PFN_vkCmdSetRenderingAttachmentLocationsKHR :: #type (commandBuffer: VkCommandBuffer, pLocationInfo: *VkRenderingAttachmentLocationInfo) -> void #c_call; PFN_vkCmdSetRenderingInputAttachmentIndicesKHR :: #type (commandBuffer: VkCommandBuffer, pInputAttachmentIndexInfo: *VkRenderingInputAttachmentIndexInfo) -> void #c_call; VkPhysicalDeviceShaderQuadControlFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderQuadControl: VkBool32; } VkSurfaceProtectedCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; supportsProtected: VkBool32; } VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR :: VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures; VkAttachmentReferenceStencilLayoutKHR :: VkAttachmentReferenceStencilLayout; VkAttachmentDescriptionStencilLayoutKHR :: VkAttachmentDescriptionStencilLayout; VkPhysicalDevicePresentWaitFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; presentWait: VkBool32; } PFN_vkWaitForPresentKHR :: #type (device: VkDevice, swapchain: VkSwapchainKHR, presentId: u64, timeout: u64) -> VkResult #c_call; VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR :: VkPhysicalDeviceUniformBufferStandardLayoutFeatures; VkPhysicalDeviceBufferDeviceAddressFeaturesKHR :: VkPhysicalDeviceBufferDeviceAddressFeatures; VkBufferDeviceAddressInfoKHR :: VkBufferDeviceAddressInfo; VkBufferOpaqueCaptureAddressCreateInfoKHR :: VkBufferOpaqueCaptureAddressCreateInfo; VkMemoryOpaqueCaptureAddressAllocateInfoKHR :: VkMemoryOpaqueCaptureAddressAllocateInfo; VkDeviceMemoryOpaqueCaptureAddressInfoKHR :: VkDeviceMemoryOpaqueCaptureAddressInfo; PFN_vkGetBufferDeviceAddressKHR :: #type (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> VkDeviceAddress #c_call; PFN_vkGetBufferOpaqueCaptureAddressKHR :: #type (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> u64 #c_call; PFN_vkGetDeviceMemoryOpaqueCaptureAddressKHR :: #type (device: VkDevice, pInfo: *VkDeviceMemoryOpaqueCaptureAddressInfo) -> u64 #c_call; VkDeferredOperationKHR_T :: struct {} VkDeferredOperationKHR :: *VkDeferredOperationKHR_T; PFN_vkCreateDeferredOperationKHR :: #type (device: VkDevice, pAllocator: *VkAllocationCallbacks, pDeferredOperation: *VkDeferredOperationKHR) -> VkResult #c_call; PFN_vkDestroyDeferredOperationKHR :: #type (device: VkDevice, operation: VkDeferredOperationKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetDeferredOperationMaxConcurrencyKHR :: #type (device: VkDevice, operation: VkDeferredOperationKHR) -> u32 #c_call; PFN_vkGetDeferredOperationResultKHR :: #type (device: VkDevice, operation: VkDeferredOperationKHR) -> VkResult #c_call; PFN_vkDeferredOperationJoinKHR :: #type (device: VkDevice, operation: VkDeferredOperationKHR) -> VkResult #c_call; VkPipelineExecutableStatisticFormatKHR :: enum u32 { BOOL32_KHR :: 0; INT64_KHR :: 1; UINT64_KHR :: 2; FLOAT64_KHR :: 3; MAX_ENUM_KHR :: 2147483647; VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_BOOL32_KHR :: BOOL32_KHR; VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_INT64_KHR :: INT64_KHR; VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_UINT64_KHR :: UINT64_KHR; VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_FLOAT64_KHR :: FLOAT64_KHR; VK_PIPELINE_EXECUTABLE_STATISTIC_FORMAT_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; pipelineExecutableInfo: VkBool32; } VkPipelineInfoKHR :: struct { sType: VkStructureType; pNext: *void; pipeline: VkPipeline; } VkPipelineExecutablePropertiesKHR :: struct { sType: VkStructureType; pNext: *void; stages: VkShaderStageFlags; name: [256] u8; description: [256] u8; subgroupSize: u32; } VkPipelineExecutableInfoKHR :: struct { sType: VkStructureType; pNext: *void; pipeline: VkPipeline; executableIndex: u32; } VkPipelineExecutableStatisticValueKHR :: union { b32: VkBool32; i64: s64; _u64: u64; f64: float64; } VkPipelineExecutableStatisticKHR :: struct { sType: VkStructureType; pNext: *void; name: [256] u8; description: [256] u8; format: VkPipelineExecutableStatisticFormatKHR; value: VkPipelineExecutableStatisticValueKHR; } VkPipelineExecutableInternalRepresentationKHR :: struct { sType: VkStructureType; pNext: *void; name: [256] u8; description: [256] u8; isText: VkBool32; dataSize: u64; pData: *void; } PFN_vkGetPipelineExecutablePropertiesKHR :: #type (device: VkDevice, pPipelineInfo: *VkPipelineInfoKHR, pExecutableCount: *u32, pProperties: *VkPipelineExecutablePropertiesKHR) -> VkResult #c_call; PFN_vkGetPipelineExecutableStatisticsKHR :: #type (device: VkDevice, pExecutableInfo: *VkPipelineExecutableInfoKHR, pStatisticCount: *u32, pStatistics: *VkPipelineExecutableStatisticKHR) -> VkResult #c_call; PFN_vkGetPipelineExecutableInternalRepresentationsKHR :: #type (device: VkDevice, pExecutableInfo: *VkPipelineExecutableInfoKHR, pInternalRepresentationCount: *u32, pInternalRepresentations: *VkPipelineExecutableInternalRepresentationKHR) -> VkResult #c_call; VkMemoryUnmapFlagBitsKHR :: VkMemoryUnmapFlagBits; VkMemoryUnmapFlagsKHR :: VkMemoryUnmapFlags; VkMemoryMapInfoKHR :: VkMemoryMapInfo; VkMemoryUnmapInfoKHR :: VkMemoryUnmapInfo; PFN_vkMapMemory2KHR :: #type (device: VkDevice, pMemoryMapInfo: *VkMemoryMapInfo, ppData: **void) -> VkResult #c_call; PFN_vkUnmapMemory2KHR :: #type (device: VkDevice, pMemoryUnmapInfo: *VkMemoryUnmapInfo) -> VkResult #c_call; VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR :: VkPhysicalDeviceShaderIntegerDotProductFeatures; VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR :: VkPhysicalDeviceShaderIntegerDotProductProperties; VkPipelineLibraryCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; libraryCount: u32; pLibraries: *VkPipeline; } VkPresentIdKHR :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pPresentIds: *u64; } VkPhysicalDevicePresentIdFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; presentId: VkBool32; } VkVideoEncodeTuningModeKHR :: enum u32 { DEFAULT_KHR :: 0; HIGH_QUALITY_KHR :: 1; LOW_LATENCY_KHR :: 2; ULTRA_LOW_LATENCY_KHR :: 3; LOSSLESS_KHR :: 4; MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_TUNING_MODE_DEFAULT_KHR :: DEFAULT_KHR; VK_VIDEO_ENCODE_TUNING_MODE_HIGH_QUALITY_KHR :: HIGH_QUALITY_KHR; VK_VIDEO_ENCODE_TUNING_MODE_LOW_LATENCY_KHR :: LOW_LATENCY_KHR; VK_VIDEO_ENCODE_TUNING_MODE_ULTRA_LOW_LATENCY_KHR :: ULTRA_LOW_LATENCY_KHR; VK_VIDEO_ENCODE_TUNING_MODE_LOSSLESS_KHR :: LOSSLESS_KHR; VK_VIDEO_ENCODE_TUNING_MODE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkVideoEncodeFlagBitsKHR :: enum u32 { WITH_QUANTIZATION_DELTA_MAP_BIT_KHR :: 1; WITH_EMPHASIS_MAP_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_WITH_QUANTIZATION_DELTA_MAP_BIT_KHR :: WITH_QUANTIZATION_DELTA_MAP_BIT_KHR; VK_VIDEO_ENCODE_WITH_EMPHASIS_MAP_BIT_KHR :: WITH_EMPHASIS_MAP_BIT_KHR; VK_VIDEO_ENCODE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeFlagsKHR :: VkFlags; VkVideoEncodeCapabilityFlagBitsKHR :: enum u32 { PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR :: 1; INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION_BIT_KHR :: 2; QUANTIZATION_DELTA_MAP_BIT_KHR :: 4; EMPHASIS_MAP_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_CAPABILITY_PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR :: PRECEDING_EXTERNALLY_ENCODED_BYTES_BIT_KHR; VK_VIDEO_ENCODE_CAPABILITY_INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION_BIT_KHR :: INSUFFICIENT_BITSTREAM_BUFFER_RANGE_DETECTION_BIT_KHR; VK_VIDEO_ENCODE_CAPABILITY_QUANTIZATION_DELTA_MAP_BIT_KHR :: QUANTIZATION_DELTA_MAP_BIT_KHR; VK_VIDEO_ENCODE_CAPABILITY_EMPHASIS_MAP_BIT_KHR :: EMPHASIS_MAP_BIT_KHR; VK_VIDEO_ENCODE_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeCapabilityFlagsKHR :: VkFlags; VkVideoEncodeRateControlModeFlagBitsKHR :: enum u32 { DEFAULT_KHR :: 0; DISABLED_BIT_KHR :: 1; CBR_BIT_KHR :: 2; VBR_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DEFAULT_KHR :: DEFAULT_KHR; VK_VIDEO_ENCODE_RATE_CONTROL_MODE_DISABLED_BIT_KHR :: DISABLED_BIT_KHR; VK_VIDEO_ENCODE_RATE_CONTROL_MODE_CBR_BIT_KHR :: CBR_BIT_KHR; VK_VIDEO_ENCODE_RATE_CONTROL_MODE_VBR_BIT_KHR :: VBR_BIT_KHR; VK_VIDEO_ENCODE_RATE_CONTROL_MODE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeRateControlModeFlagsKHR :: VkFlags; VkVideoEncodeFeedbackFlagBitsKHR :: enum u32 { BITSTREAM_BUFFER_OFFSET_BIT_KHR :: 1; BITSTREAM_BYTES_WRITTEN_BIT_KHR :: 2; BITSTREAM_HAS_OVERRIDES_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BUFFER_OFFSET_BIT_KHR :: BITSTREAM_BUFFER_OFFSET_BIT_KHR; VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_BYTES_WRITTEN_BIT_KHR :: BITSTREAM_BYTES_WRITTEN_BIT_KHR; VK_VIDEO_ENCODE_FEEDBACK_BITSTREAM_HAS_OVERRIDES_BIT_KHR :: BITSTREAM_HAS_OVERRIDES_BIT_KHR; VK_VIDEO_ENCODE_FEEDBACK_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeFeedbackFlagsKHR :: VkFlags; VkVideoEncodeUsageFlagBitsKHR :: enum u32 { DEFAULT_KHR :: 0; TRANSCODING_BIT_KHR :: 1; STREAMING_BIT_KHR :: 2; RECORDING_BIT_KHR :: 4; CONFERENCING_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_USAGE_DEFAULT_KHR :: DEFAULT_KHR; VK_VIDEO_ENCODE_USAGE_TRANSCODING_BIT_KHR :: TRANSCODING_BIT_KHR; VK_VIDEO_ENCODE_USAGE_STREAMING_BIT_KHR :: STREAMING_BIT_KHR; VK_VIDEO_ENCODE_USAGE_RECORDING_BIT_KHR :: RECORDING_BIT_KHR; VK_VIDEO_ENCODE_USAGE_CONFERENCING_BIT_KHR :: CONFERENCING_BIT_KHR; VK_VIDEO_ENCODE_USAGE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeUsageFlagsKHR :: VkFlags; VkVideoEncodeContentFlagBitsKHR :: enum u32 { DEFAULT_KHR :: 0; CAMERA_BIT_KHR :: 1; DESKTOP_BIT_KHR :: 2; RENDERED_BIT_KHR :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_CONTENT_DEFAULT_KHR :: DEFAULT_KHR; VK_VIDEO_ENCODE_CONTENT_CAMERA_BIT_KHR :: CAMERA_BIT_KHR; VK_VIDEO_ENCODE_CONTENT_DESKTOP_BIT_KHR :: DESKTOP_BIT_KHR; VK_VIDEO_ENCODE_CONTENT_RENDERED_BIT_KHR :: RENDERED_BIT_KHR; VK_VIDEO_ENCODE_CONTENT_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeContentFlagsKHR :: VkFlags; VkVideoEncodeRateControlFlagsKHR :: VkFlags; VkVideoEncodeInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeFlagsKHR; dstBuffer: VkBuffer; dstBufferOffset: VkDeviceSize; dstBufferRange: VkDeviceSize; srcPictureResource: VkVideoPictureResourceInfoKHR; pSetupReferenceSlot: *VkVideoReferenceSlotInfoKHR; referenceSlotCount: u32; pReferenceSlots: *VkVideoReferenceSlotInfoKHR; precedingExternallyEncodedBytes: u32; } VkVideoEncodeCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeCapabilityFlagsKHR; rateControlModes: VkVideoEncodeRateControlModeFlagsKHR; maxRateControlLayers: u32; maxBitrate: u64; maxQualityLevels: u32; encodeInputPictureGranularity: VkExtent2D; supportedEncodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR; } VkQueryPoolVideoEncodeFeedbackCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; encodeFeedbackFlags: VkVideoEncodeFeedbackFlagsKHR; } VkVideoEncodeUsageInfoKHR :: struct { sType: VkStructureType; pNext: *void; videoUsageHints: VkVideoEncodeUsageFlagsKHR; videoContentHints: VkVideoEncodeContentFlagsKHR; tuningMode: VkVideoEncodeTuningModeKHR; } VkVideoEncodeRateControlLayerInfoKHR :: struct { sType: VkStructureType; pNext: *void; averageBitrate: u64; maxBitrate: u64; frameRateNumerator: u32; frameRateDenominator: u32; } VkVideoEncodeRateControlInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeRateControlFlagsKHR; rateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR; layerCount: u32; pLayers: *VkVideoEncodeRateControlLayerInfoKHR; virtualBufferSizeInMs: u32; initialVirtualBufferSizeInMs: u32; } VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR :: struct { sType: VkStructureType; pNext: *void; pVideoProfile: *VkVideoProfileInfoKHR; qualityLevel: u32; } VkVideoEncodeQualityLevelPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; preferredRateControlMode: VkVideoEncodeRateControlModeFlagBitsKHR; preferredRateControlLayerCount: u32; } VkVideoEncodeQualityLevelInfoKHR :: struct { sType: VkStructureType; pNext: *void; qualityLevel: u32; } VkVideoEncodeSessionParametersGetInfoKHR :: struct { sType: VkStructureType; pNext: *void; videoSessionParameters: VkVideoSessionParametersKHR; } VkVideoEncodeSessionParametersFeedbackInfoKHR :: struct { sType: VkStructureType; pNext: *void; hasOverrides: VkBool32; } PFN_vkGetPhysicalDeviceVideoEncodeQualityLevelPropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pQualityLevelInfo: *VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR, pQualityLevelProperties: *VkVideoEncodeQualityLevelPropertiesKHR) -> VkResult #c_call; PFN_vkGetEncodedVideoSessionParametersKHR :: #type (device: VkDevice, pVideoSessionParametersInfo: *VkVideoEncodeSessionParametersGetInfoKHR, pFeedbackInfo: *VkVideoEncodeSessionParametersFeedbackInfoKHR, pDataSize: *u64, pData: *void) -> VkResult #c_call; PFN_vkCmdEncodeVideoKHR :: #type (commandBuffer: VkCommandBuffer, pEncodeInfo: *VkVideoEncodeInfoKHR) -> void #c_call; VkPipelineStageFlags2KHR :: VkPipelineStageFlags2; VkPipelineStageFlagBits2KHR :: VkPipelineStageFlagBits2; VkAccessFlags2KHR :: VkAccessFlags2; VkAccessFlagBits2KHR :: VkAccessFlagBits2; VkSubmitFlagBitsKHR :: VkSubmitFlagBits; VkSubmitFlagsKHR :: VkSubmitFlags; VkMemoryBarrier2KHR :: VkMemoryBarrier2; VkBufferMemoryBarrier2KHR :: VkBufferMemoryBarrier2; VkImageMemoryBarrier2KHR :: VkImageMemoryBarrier2; VkDependencyInfoKHR :: VkDependencyInfo; VkSubmitInfo2KHR :: VkSubmitInfo2; VkSemaphoreSubmitInfoKHR :: VkSemaphoreSubmitInfo; VkCommandBufferSubmitInfoKHR :: VkCommandBufferSubmitInfo; VkPhysicalDeviceSynchronization2FeaturesKHR :: VkPhysicalDeviceSynchronization2Features; PFN_vkCmdSetEvent2KHR :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, pDependencyInfo: *VkDependencyInfo) -> void #c_call; PFN_vkCmdResetEvent2KHR :: #type (commandBuffer: VkCommandBuffer, event: VkEvent, stageMask: VkPipelineStageFlags2) -> void #c_call; PFN_vkCmdWaitEvents2KHR :: #type (commandBuffer: VkCommandBuffer, eventCount: u32, pEvents: *VkEvent, pDependencyInfos: *VkDependencyInfo) -> void #c_call; PFN_vkCmdPipelineBarrier2KHR :: #type (commandBuffer: VkCommandBuffer, pDependencyInfo: *VkDependencyInfo) -> void #c_call; PFN_vkCmdWriteTimestamp2KHR :: #type (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, queryPool: VkQueryPool, query: u32) -> void #c_call; PFN_vkQueueSubmit2KHR :: #type (queue: VkQueue, submitCount: u32, pSubmits: *VkSubmitInfo2, fence: VkFence) -> VkResult #c_call; VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; fragmentShaderBarycentric: VkBool32; } VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; triStripVertexOrderIndependentOfProvokingVertex: VkBool32; } VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderSubgroupUniformControlFlow: VkBool32; } VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR :: VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures; VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; workgroupMemoryExplicitLayout: VkBool32; workgroupMemoryExplicitLayoutScalarBlockLayout: VkBool32; workgroupMemoryExplicitLayout8BitAccess: VkBool32; workgroupMemoryExplicitLayout16BitAccess: VkBool32; } VkCopyBufferInfo2KHR :: VkCopyBufferInfo2; VkCopyImageInfo2KHR :: VkCopyImageInfo2; VkCopyBufferToImageInfo2KHR :: VkCopyBufferToImageInfo2; VkCopyImageToBufferInfo2KHR :: VkCopyImageToBufferInfo2; VkBlitImageInfo2KHR :: VkBlitImageInfo2; VkResolveImageInfo2KHR :: VkResolveImageInfo2; VkBufferCopy2KHR :: VkBufferCopy2; VkImageCopy2KHR :: VkImageCopy2; VkImageBlit2KHR :: VkImageBlit2; VkBufferImageCopy2KHR :: VkBufferImageCopy2; VkImageResolve2KHR :: VkImageResolve2; PFN_vkCmdCopyBuffer2KHR :: #type (commandBuffer: VkCommandBuffer, pCopyBufferInfo: *VkCopyBufferInfo2) -> void #c_call; PFN_vkCmdCopyImage2KHR :: #type (commandBuffer: VkCommandBuffer, pCopyImageInfo: *VkCopyImageInfo2) -> void #c_call; PFN_vkCmdCopyBufferToImage2KHR :: #type (commandBuffer: VkCommandBuffer, pCopyBufferToImageInfo: *VkCopyBufferToImageInfo2) -> void #c_call; PFN_vkCmdCopyImageToBuffer2KHR :: #type (commandBuffer: VkCommandBuffer, pCopyImageToBufferInfo: *VkCopyImageToBufferInfo2) -> void #c_call; PFN_vkCmdBlitImage2KHR :: #type (commandBuffer: VkCommandBuffer, pBlitImageInfo: *VkBlitImageInfo2) -> void #c_call; PFN_vkCmdResolveImage2KHR :: #type (commandBuffer: VkCommandBuffer, pResolveImageInfo: *VkResolveImageInfo2) -> void #c_call; VkFormatFeatureFlags2KHR :: VkFormatFeatureFlags2; VkFormatFeatureFlagBits2KHR :: VkFormatFeatureFlagBits2; VkFormatProperties3KHR :: VkFormatProperties3; VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; rayTracingMaintenance1: VkBool32; rayTracingPipelineTraceRaysIndirect2: VkBool32; } VkTraceRaysIndirectCommand2KHR :: struct { raygenShaderRecordAddress: VkDeviceAddress; raygenShaderRecordSize: VkDeviceSize; missShaderBindingTableAddress: VkDeviceAddress; missShaderBindingTableSize: VkDeviceSize; missShaderBindingTableStride: VkDeviceSize; hitShaderBindingTableAddress: VkDeviceAddress; hitShaderBindingTableSize: VkDeviceSize; hitShaderBindingTableStride: VkDeviceSize; callableShaderBindingTableAddress: VkDeviceAddress; callableShaderBindingTableSize: VkDeviceSize; callableShaderBindingTableStride: VkDeviceSize; width: u32; height: u32; depth: u32; } PFN_vkCmdTraceRaysIndirect2KHR :: #type (commandBuffer: VkCommandBuffer, indirectDeviceAddress: VkDeviceAddress) -> void #c_call; VkPhysicalDeviceMaintenance4FeaturesKHR :: VkPhysicalDeviceMaintenance4Features; VkPhysicalDeviceMaintenance4PropertiesKHR :: VkPhysicalDeviceMaintenance4Properties; VkDeviceBufferMemoryRequirementsKHR :: VkDeviceBufferMemoryRequirements; VkDeviceImageMemoryRequirementsKHR :: VkDeviceImageMemoryRequirements; PFN_vkGetDeviceBufferMemoryRequirementsKHR :: #type (device: VkDevice, pInfo: *VkDeviceBufferMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetDeviceImageMemoryRequirementsKHR :: #type (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkGetDeviceImageSparseMemoryRequirementsKHR :: #type (device: VkDevice, pInfo: *VkDeviceImageMemoryRequirements, pSparseMemoryRequirementCount: *u32, pSparseMemoryRequirements: *VkSparseImageMemoryRequirements2) -> void #c_call; VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR :: VkPhysicalDeviceShaderSubgroupRotateFeatures; VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderMaximalReconvergence: VkBool32; } VkPipelineCreateFlags2KHR :: VkPipelineCreateFlags2; VkPipelineCreateFlagBits2KHR :: VkPipelineCreateFlagBits2; VkBufferUsageFlags2KHR :: VkBufferUsageFlags2; VkBufferUsageFlagBits2KHR :: VkBufferUsageFlagBits2; VkPhysicalDeviceMaintenance5FeaturesKHR :: VkPhysicalDeviceMaintenance5Features; VkPhysicalDeviceMaintenance5PropertiesKHR :: VkPhysicalDeviceMaintenance5Properties; VkRenderingAreaInfoKHR :: VkRenderingAreaInfo; VkDeviceImageSubresourceInfoKHR :: VkDeviceImageSubresourceInfo; VkImageSubresource2KHR :: VkImageSubresource2; VkSubresourceLayout2KHR :: VkSubresourceLayout2; VkPipelineCreateFlags2CreateInfoKHR :: VkPipelineCreateFlags2CreateInfo; VkBufferUsageFlags2CreateInfoKHR :: VkBufferUsageFlags2CreateInfo; PFN_vkCmdBindIndexBuffer2KHR :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, size: VkDeviceSize, indexType: VkIndexType) -> void #c_call; PFN_vkGetRenderingAreaGranularityKHR :: #type (device: VkDevice, pRenderingAreaInfo: *VkRenderingAreaInfo, pGranularity: *VkExtent2D) -> void #c_call; PFN_vkGetDeviceImageSubresourceLayoutKHR :: #type (device: VkDevice, pInfo: *VkDeviceImageSubresourceInfo, pLayout: *VkSubresourceLayout2) -> void #c_call; PFN_vkGetImageSubresourceLayout2KHR :: #type (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource2, pLayout: *VkSubresourceLayout2) -> void #c_call; VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; rayTracingPositionFetch: VkBool32; } VkPipelineBinaryKHR_T :: struct {} VkPipelineBinaryKHR :: *VkPipelineBinaryKHR_T; VkPhysicalDevicePipelineBinaryFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; pipelineBinaries: VkBool32; } VkPhysicalDevicePipelineBinaryPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; pipelineBinaryInternalCache: VkBool32; pipelineBinaryInternalCacheControl: VkBool32; pipelineBinaryPrefersInternalCache: VkBool32; pipelineBinaryPrecompiledInternalCache: VkBool32; pipelineBinaryCompressedData: VkBool32; } VkDevicePipelineBinaryInternalCacheControlKHR :: struct { sType: VkStructureType; pNext: *void; disableInternalCache: VkBool32; } VkPipelineBinaryKeyKHR :: struct { sType: VkStructureType; pNext: *void; keySize: u32; key: [32] u8; } VkPipelineBinaryDataKHR :: struct { dataSize: u64; pData: *void; } VkPipelineBinaryKeysAndDataKHR :: struct { binaryCount: u32; pPipelineBinaryKeys: *VkPipelineBinaryKeyKHR; pPipelineBinaryData: *VkPipelineBinaryDataKHR; } VkPipelineCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; } VkPipelineBinaryCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; pKeysAndDataInfo: *VkPipelineBinaryKeysAndDataKHR; pipeline: VkPipeline; pPipelineCreateInfo: *VkPipelineCreateInfoKHR; } VkPipelineBinaryInfoKHR :: struct { sType: VkStructureType; pNext: *void; binaryCount: u32; pPipelineBinaries: *VkPipelineBinaryKHR; } VkReleaseCapturedPipelineDataInfoKHR :: struct { sType: VkStructureType; pNext: *void; pipeline: VkPipeline; } VkPipelineBinaryDataInfoKHR :: struct { sType: VkStructureType; pNext: *void; pipelineBinary: VkPipelineBinaryKHR; } VkPipelineBinaryHandlesInfoKHR :: struct { sType: VkStructureType; pNext: *void; pipelineBinaryCount: u32; pPipelineBinaries: *VkPipelineBinaryKHR; } PFN_vkCreatePipelineBinariesKHR :: #type (device: VkDevice, pCreateInfo: *VkPipelineBinaryCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pBinaries: *VkPipelineBinaryHandlesInfoKHR) -> VkResult #c_call; PFN_vkDestroyPipelineBinaryKHR :: #type (device: VkDevice, pipelineBinary: VkPipelineBinaryKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetPipelineKeyKHR :: #type (device: VkDevice, pPipelineCreateInfo: *VkPipelineCreateInfoKHR, pPipelineKey: *VkPipelineBinaryKeyKHR) -> VkResult #c_call; PFN_vkGetPipelineBinaryDataKHR :: #type (device: VkDevice, pInfo: *VkPipelineBinaryDataInfoKHR, pPipelineBinaryKey: *VkPipelineBinaryKeyKHR, pPipelineBinaryDataSize: *u64, pPipelineBinaryData: *void) -> VkResult #c_call; PFN_vkReleaseCapturedPipelineDataKHR :: #type (device: VkDevice, pInfo: *VkReleaseCapturedPipelineDataInfoKHR, pAllocator: *VkAllocationCallbacks) -> VkResult #c_call; VkComponentTypeKHR :: enum u32 { FLOAT16_KHR :: 0; FLOAT32_KHR :: 1; FLOAT64_KHR :: 2; SINT8_KHR :: 3; SINT16_KHR :: 4; SINT32_KHR :: 5; SINT64_KHR :: 6; UINT8_KHR :: 7; UINT16_KHR :: 8; UINT32_KHR :: 9; UINT64_KHR :: 10; BFLOAT16_KHR :: 1000141000; SINT8_PACKED_NV :: 1000491000; UINT8_PACKED_NV :: 1000491001; FLOAT_E4M3_NV :: 1000491002; FLOAT_E5M2_NV :: 1000491003; FLOAT16_NV :: 0; FLOAT32_NV :: 1; FLOAT64_NV :: 2; SINT8_NV :: 3; SINT16_NV :: 4; SINT32_NV :: 5; SINT64_NV :: 6; UINT8_NV :: 7; UINT16_NV :: 8; UINT32_NV :: 9; UINT64_NV :: 10; MAX_ENUM_KHR :: 2147483647; VK_COMPONENT_TYPE_FLOAT16_KHR :: FLOAT16_KHR; VK_COMPONENT_TYPE_FLOAT32_KHR :: FLOAT32_KHR; VK_COMPONENT_TYPE_FLOAT64_KHR :: FLOAT64_KHR; VK_COMPONENT_TYPE_SINT8_KHR :: SINT8_KHR; VK_COMPONENT_TYPE_SINT16_KHR :: SINT16_KHR; VK_COMPONENT_TYPE_SINT32_KHR :: SINT32_KHR; VK_COMPONENT_TYPE_SINT64_KHR :: SINT64_KHR; VK_COMPONENT_TYPE_UINT8_KHR :: UINT8_KHR; VK_COMPONENT_TYPE_UINT16_KHR :: UINT16_KHR; VK_COMPONENT_TYPE_UINT32_KHR :: UINT32_KHR; VK_COMPONENT_TYPE_UINT64_KHR :: UINT64_KHR; VK_COMPONENT_TYPE_BFLOAT16_KHR :: BFLOAT16_KHR; VK_COMPONENT_TYPE_SINT8_PACKED_NV :: SINT8_PACKED_NV; VK_COMPONENT_TYPE_UINT8_PACKED_NV :: UINT8_PACKED_NV; VK_COMPONENT_TYPE_FLOAT_E4M3_NV :: FLOAT_E4M3_NV; VK_COMPONENT_TYPE_FLOAT_E5M2_NV :: FLOAT_E5M2_NV; VK_COMPONENT_TYPE_FLOAT16_NV :: FLOAT16_NV; VK_COMPONENT_TYPE_FLOAT32_NV :: FLOAT32_NV; VK_COMPONENT_TYPE_FLOAT64_NV :: FLOAT64_NV; VK_COMPONENT_TYPE_SINT8_NV :: SINT8_NV; VK_COMPONENT_TYPE_SINT16_NV :: SINT16_NV; VK_COMPONENT_TYPE_SINT32_NV :: SINT32_NV; VK_COMPONENT_TYPE_SINT64_NV :: SINT64_NV; VK_COMPONENT_TYPE_UINT8_NV :: UINT8_NV; VK_COMPONENT_TYPE_UINT16_NV :: UINT16_NV; VK_COMPONENT_TYPE_UINT32_NV :: UINT32_NV; VK_COMPONENT_TYPE_UINT64_NV :: UINT64_NV; VK_COMPONENT_TYPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkScopeKHR :: enum u32 { DEVICE_KHR :: 1; WORKGROUP_KHR :: 2; SUBGROUP_KHR :: 3; QUEUE_FAMILY_KHR :: 5; DEVICE_NV :: 1; WORKGROUP_NV :: 2; SUBGROUP_NV :: 3; QUEUE_FAMILY_NV :: 5; MAX_ENUM_KHR :: 2147483647; VK_SCOPE_DEVICE_KHR :: DEVICE_KHR; VK_SCOPE_WORKGROUP_KHR :: WORKGROUP_KHR; VK_SCOPE_SUBGROUP_KHR :: SUBGROUP_KHR; VK_SCOPE_QUEUE_FAMILY_KHR :: QUEUE_FAMILY_KHR; VK_SCOPE_DEVICE_NV :: DEVICE_NV; VK_SCOPE_WORKGROUP_NV :: WORKGROUP_NV; VK_SCOPE_SUBGROUP_NV :: SUBGROUP_NV; VK_SCOPE_QUEUE_FAMILY_NV :: QUEUE_FAMILY_NV; VK_SCOPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkCooperativeMatrixPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; MSize: u32; NSize: u32; KSize: u32; AType: VkComponentTypeKHR; BType: VkComponentTypeKHR; CType: VkComponentTypeKHR; ResultType: VkComponentTypeKHR; saturatingAccumulation: VkBool32; scope: VkScopeKHR; } VkPhysicalDeviceCooperativeMatrixFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrix: VkBool32; cooperativeMatrixRobustBufferAccess: VkBool32; } VkPhysicalDeviceCooperativeMatrixPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrixSupportedStages: VkShaderStageFlags; } PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesKHR :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkCooperativeMatrixPropertiesKHR) -> VkResult #c_call; VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; computeDerivativeGroupQuads: VkBool32; computeDerivativeGroupLinear: VkBool32; } VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; meshAndTaskShaderDerivatives: VkBool32; } StdVideoAV1Profile :: enum u32 { MAIN :: 0; HIGH :: 1; PROFESSIONAL :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_PROFILE_MAIN :: MAIN; STD_VIDEO_AV1_PROFILE_HIGH :: HIGH; STD_VIDEO_AV1_PROFILE_PROFESSIONAL :: PROFESSIONAL; STD_VIDEO_AV1_PROFILE_INVALID :: INVALID; STD_VIDEO_AV1_PROFILE_MAX_ENUM :: MAX_ENUM; } StdVideoAV1Level :: enum u32 { _2_0 :: 0; _2_1 :: 1; _2_2 :: 2; _2_3 :: 3; _3_0 :: 4; _3_1 :: 5; _3_2 :: 6; _3_3 :: 7; _4_0 :: 8; _4_1 :: 9; _4_2 :: 10; _4_3 :: 11; _5_0 :: 12; _5_1 :: 13; _5_2 :: 14; _5_3 :: 15; _6_0 :: 16; _6_1 :: 17; _6_2 :: 18; _6_3 :: 19; _7_0 :: 20; _7_1 :: 21; _7_2 :: 22; _7_3 :: 23; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_LEVEL_2_0 :: _2_0; STD_VIDEO_AV1_LEVEL_2_1 :: _2_1; STD_VIDEO_AV1_LEVEL_2_2 :: _2_2; STD_VIDEO_AV1_LEVEL_2_3 :: _2_3; STD_VIDEO_AV1_LEVEL_3_0 :: _3_0; STD_VIDEO_AV1_LEVEL_3_1 :: _3_1; STD_VIDEO_AV1_LEVEL_3_2 :: _3_2; STD_VIDEO_AV1_LEVEL_3_3 :: _3_3; STD_VIDEO_AV1_LEVEL_4_0 :: _4_0; STD_VIDEO_AV1_LEVEL_4_1 :: _4_1; STD_VIDEO_AV1_LEVEL_4_2 :: _4_2; STD_VIDEO_AV1_LEVEL_4_3 :: _4_3; STD_VIDEO_AV1_LEVEL_5_0 :: _5_0; STD_VIDEO_AV1_LEVEL_5_1 :: _5_1; STD_VIDEO_AV1_LEVEL_5_2 :: _5_2; STD_VIDEO_AV1_LEVEL_5_3 :: _5_3; STD_VIDEO_AV1_LEVEL_6_0 :: _6_0; STD_VIDEO_AV1_LEVEL_6_1 :: _6_1; STD_VIDEO_AV1_LEVEL_6_2 :: _6_2; STD_VIDEO_AV1_LEVEL_6_3 :: _6_3; STD_VIDEO_AV1_LEVEL_7_0 :: _7_0; STD_VIDEO_AV1_LEVEL_7_1 :: _7_1; STD_VIDEO_AV1_LEVEL_7_2 :: _7_2; STD_VIDEO_AV1_LEVEL_7_3 :: _7_3; STD_VIDEO_AV1_LEVEL_INVALID :: INVALID; STD_VIDEO_AV1_LEVEL_MAX_ENUM :: MAX_ENUM; } StdVideoAV1FrameType :: enum u32 { KEY :: 0; INTER :: 1; INTRA_ONLY :: 2; SWITCH :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_FRAME_TYPE_KEY :: KEY; STD_VIDEO_AV1_FRAME_TYPE_INTER :: INTER; STD_VIDEO_AV1_FRAME_TYPE_INTRA_ONLY :: INTRA_ONLY; STD_VIDEO_AV1_FRAME_TYPE_SWITCH :: SWITCH; STD_VIDEO_AV1_FRAME_TYPE_INVALID :: INVALID; STD_VIDEO_AV1_FRAME_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoAV1ReferenceName :: enum u32 { INTRA_FRAME :: 0; LAST_FRAME :: 1; LAST2_FRAME :: 2; LAST3_FRAME :: 3; GOLDEN_FRAME :: 4; BWDREF_FRAME :: 5; ALTREF2_FRAME :: 6; ALTREF_FRAME :: 7; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_REFERENCE_NAME_INTRA_FRAME :: INTRA_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_LAST_FRAME :: LAST_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_LAST2_FRAME :: LAST2_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_LAST3_FRAME :: LAST3_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_GOLDEN_FRAME :: GOLDEN_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_BWDREF_FRAME :: BWDREF_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_ALTREF2_FRAME :: ALTREF2_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_ALTREF_FRAME :: ALTREF_FRAME; STD_VIDEO_AV1_REFERENCE_NAME_INVALID :: INVALID; STD_VIDEO_AV1_REFERENCE_NAME_MAX_ENUM :: MAX_ENUM; } StdVideoAV1InterpolationFilter :: enum u32 { EIGHTTAP :: 0; EIGHTTAP_SMOOTH :: 1; EIGHTTAP_SHARP :: 2; BILINEAR :: 3; SWITCHABLE :: 4; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP :: EIGHTTAP; STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP_SMOOTH :: EIGHTTAP_SMOOTH; STD_VIDEO_AV1_INTERPOLATION_FILTER_EIGHTTAP_SHARP :: EIGHTTAP_SHARP; STD_VIDEO_AV1_INTERPOLATION_FILTER_BILINEAR :: BILINEAR; STD_VIDEO_AV1_INTERPOLATION_FILTER_SWITCHABLE :: SWITCHABLE; STD_VIDEO_AV1_INTERPOLATION_FILTER_INVALID :: INVALID; STD_VIDEO_AV1_INTERPOLATION_FILTER_MAX_ENUM :: MAX_ENUM; } StdVideoAV1TxMode :: enum u32 { ONLY_4X4 :: 0; LARGEST :: 1; SELECT :: 2; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_TX_MODE_ONLY_4X4 :: ONLY_4X4; STD_VIDEO_AV1_TX_MODE_LARGEST :: LARGEST; STD_VIDEO_AV1_TX_MODE_SELECT :: SELECT; STD_VIDEO_AV1_TX_MODE_INVALID :: INVALID; STD_VIDEO_AV1_TX_MODE_MAX_ENUM :: MAX_ENUM; } StdVideoAV1FrameRestorationType :: enum u32 { NONE :: 0; WIENER :: 1; SGRPROJ :: 2; SWITCHABLE :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_NONE :: NONE; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_WIENER :: WIENER; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SGRPROJ :: SGRPROJ; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_SWITCHABLE :: SWITCHABLE; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_INVALID :: INVALID; STD_VIDEO_AV1_FRAME_RESTORATION_TYPE_MAX_ENUM :: MAX_ENUM; } StdVideoAV1ColorPrimaries :: enum u32 { BT_709 :: 1; UNSPECIFIED :: 2; BT_470_M :: 4; BT_470_B_G :: 5; BT_601 :: 6; SMPTE_240 :: 7; GENERIC_FILM :: 8; BT_2020 :: 9; XYZ :: 10; SMPTE_431 :: 11; SMPTE_432 :: 12; EBU_3213 :: 22; INVALID :: 2147483647; BT_UNSPECIFIED :: 2; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_709 :: BT_709; STD_VIDEO_AV1_COLOR_PRIMARIES_UNSPECIFIED :: UNSPECIFIED; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_M :: BT_470_M; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_470_B_G :: BT_470_B_G; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_601 :: BT_601; STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_240 :: SMPTE_240; STD_VIDEO_AV1_COLOR_PRIMARIES_GENERIC_FILM :: GENERIC_FILM; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_2020 :: BT_2020; STD_VIDEO_AV1_COLOR_PRIMARIES_XYZ :: XYZ; STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_431 :: SMPTE_431; STD_VIDEO_AV1_COLOR_PRIMARIES_SMPTE_432 :: SMPTE_432; STD_VIDEO_AV1_COLOR_PRIMARIES_EBU_3213 :: EBU_3213; STD_VIDEO_AV1_COLOR_PRIMARIES_INVALID :: INVALID; STD_VIDEO_AV1_COLOR_PRIMARIES_BT_UNSPECIFIED :: BT_UNSPECIFIED; STD_VIDEO_AV1_COLOR_PRIMARIES_MAX_ENUM :: MAX_ENUM; } StdVideoAV1TransferCharacteristics :: enum u32 { RESERVED_0 :: 0; BT_709 :: 1; UNSPECIFIED :: 2; RESERVED_3 :: 3; BT_470_M :: 4; BT_470_B_G :: 5; BT_601 :: 6; SMPTE_240 :: 7; LINEAR :: 8; LOG_100 :: 9; LOG_100_SQRT10 :: 10; IEC_61966 :: 11; BT_1361 :: 12; SRGB :: 13; BT_2020_10_BIT :: 14; BT_2020_12_BIT :: 15; SMPTE_2084 :: 16; SMPTE_428 :: 17; HLG :: 18; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_RESERVED_0 :: RESERVED_0; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_709 :: BT_709; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_UNSPECIFIED :: UNSPECIFIED; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_RESERVED_3 :: RESERVED_3; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_470_M :: BT_470_M; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_470_B_G :: BT_470_B_G; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_601 :: BT_601; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_240 :: SMPTE_240; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LINEAR :: LINEAR; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LOG_100 :: LOG_100; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_LOG_100_SQRT10 :: LOG_100_SQRT10; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_IEC_61966 :: IEC_61966; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_1361 :: BT_1361; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SRGB :: SRGB; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_2020_10_BIT :: BT_2020_10_BIT; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_BT_2020_12_BIT :: BT_2020_12_BIT; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_2084 :: SMPTE_2084; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_SMPTE_428 :: SMPTE_428; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_HLG :: HLG; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_INVALID :: INVALID; STD_VIDEO_AV1_TRANSFER_CHARACTERISTICS_MAX_ENUM :: MAX_ENUM; } StdVideoAV1MatrixCoefficients :: enum u32 { IDENTITY :: 0; BT_709 :: 1; UNSPECIFIED :: 2; RESERVED_3 :: 3; FCC :: 4; BT_470_B_G :: 5; BT_601 :: 6; SMPTE_240 :: 7; SMPTE_YCGCO :: 8; BT_2020_NCL :: 9; BT_2020_CL :: 10; SMPTE_2085 :: 11; CHROMAT_NCL :: 12; CHROMAT_CL :: 13; ICTCP :: 14; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_IDENTITY :: IDENTITY; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_709 :: BT_709; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_UNSPECIFIED :: UNSPECIFIED; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_RESERVED_3 :: RESERVED_3; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_FCC :: FCC; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_470_B_G :: BT_470_B_G; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_601 :: BT_601; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_240 :: SMPTE_240; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_YCGCO :: SMPTE_YCGCO; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_2020_NCL :: BT_2020_NCL; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_BT_2020_CL :: BT_2020_CL; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_SMPTE_2085 :: SMPTE_2085; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_CHROMAT_NCL :: CHROMAT_NCL; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_CHROMAT_CL :: CHROMAT_CL; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_ICTCP :: ICTCP; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_INVALID :: INVALID; STD_VIDEO_AV1_MATRIX_COEFFICIENTS_MAX_ENUM :: MAX_ENUM; } StdVideoAV1ChromaSamplePosition :: enum u32 { UNKNOWN :: 0; VERTICAL :: 1; COLOCATED :: 2; RESERVED :: 3; INVALID :: 2147483647; MAX_ENUM :: 2147483647; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_UNKNOWN :: UNKNOWN; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_VERTICAL :: VERTICAL; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_COLOCATED :: COLOCATED; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_RESERVED :: RESERVED; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_INVALID :: INVALID; STD_VIDEO_AV1_CHROMA_SAMPLE_POSITION_MAX_ENUM :: MAX_ENUM; } StdVideoAV1ColorConfigFlags :: struct { __bitfield: u32; /* mono_chrome: u32; /* 1 bits */ color_range: u32; /* 1 bits */ separate_uv_delta_q: u32; /* 1 bits */ color_description_present_flag: u32; /* 1 bits */ reserved: u32; /* 28 bits */; */ } StdVideoAV1ColorConfig :: struct { flags: StdVideoAV1ColorConfigFlags; BitDepth: u8; subsampling_x: u8; subsampling_y: u8; reserved1: u8; color_primaries: StdVideoAV1ColorPrimaries; transfer_characteristics: StdVideoAV1TransferCharacteristics; matrix_coefficients: StdVideoAV1MatrixCoefficients; chroma_sample_position: StdVideoAV1ChromaSamplePosition; } StdVideoAV1TimingInfoFlags :: struct { __bitfield: u32; /* equal_picture_interval: u32; /* 1 bits */ reserved: u32; /* 31 bits */; */ } StdVideoAV1TimingInfo :: struct { flags: StdVideoAV1TimingInfoFlags; num_units_in_display_tick: u32; time_scale: u32; num_ticks_per_picture_minus_1: u32; } StdVideoAV1LoopFilterFlags :: struct { __bitfield: u32; /* loop_filter_delta_enabled: u32; /* 1 bits */ loop_filter_delta_update: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoAV1LoopFilter :: struct { flags: StdVideoAV1LoopFilterFlags; loop_filter_level: [4] u8; loop_filter_sharpness: u8; update_ref_delta: u8; loop_filter_ref_deltas: [8] s8; update_mode_delta: u8; loop_filter_mode_deltas: [2] s8; } StdVideoAV1QuantizationFlags :: struct { __bitfield: u32; /* using_qmatrix: u32; /* 1 bits */ diff_uv_delta: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoAV1Quantization :: struct { flags: StdVideoAV1QuantizationFlags; base_q_idx: u8; DeltaQYDc: s8; DeltaQUDc: s8; DeltaQUAc: s8; DeltaQVDc: s8; DeltaQVAc: s8; qm_y: u8; qm_u: u8; qm_v: u8; } StdVideoAV1Segmentation :: struct { FeatureEnabled: [8] u8; FeatureData: [8] [8] s16; } StdVideoAV1TileInfoFlags :: struct { __bitfield: u32; /* uniform_tile_spacing_flag: u32; /* 1 bits */ reserved: u32; /* 31 bits */; */ } StdVideoAV1TileInfo :: struct { flags: StdVideoAV1TileInfoFlags; TileCols: u8; TileRows: u8; context_update_tile_id: u16; tile_size_bytes_minus_1: u8; reserved1: [7] u8; pMiColStarts: *u16; pMiRowStarts: *u16; pWidthInSbsMinus1: *u16; pHeightInSbsMinus1: *u16; } StdVideoAV1CDEF :: struct { cdef_damping_minus_3: u8; cdef_bits: u8; cdef_y_pri_strength: [8] u8; cdef_y_sec_strength: [8] u8; cdef_uv_pri_strength: [8] u8; cdef_uv_sec_strength: [8] u8; } StdVideoAV1LoopRestoration :: struct { FrameRestorationType: [3] StdVideoAV1FrameRestorationType; LoopRestorationSize: [3] u16; } StdVideoAV1GlobalMotion :: struct { GmType: [8] u8; gm_params: [8] [6] s32; } StdVideoAV1FilmGrainFlags :: struct { __bitfield: u32; /* chroma_scaling_from_luma: u32; /* 1 bits */ overlap_flag: u32; /* 1 bits */ clip_to_restricted_range: u32; /* 1 bits */ update_grain: u32; /* 1 bits */ reserved: u32; /* 28 bits */; */ } StdVideoAV1FilmGrain :: struct { flags: StdVideoAV1FilmGrainFlags; grain_scaling_minus_8: u8; ar_coeff_lag: u8; ar_coeff_shift_minus_6: u8; grain_scale_shift: u8; grain_seed: u16; film_grain_params_ref_idx: u8; num_y_points: u8; point_y_value: [14] u8; point_y_scaling: [14] u8; num_cb_points: u8; point_cb_value: [10] u8; point_cb_scaling: [10] u8; num_cr_points: u8; point_cr_value: [10] u8; point_cr_scaling: [10] u8; ar_coeffs_y_plus_128: [24] s8; ar_coeffs_cb_plus_128: [25] s8; ar_coeffs_cr_plus_128: [25] s8; cb_mult: u8; cb_luma_mult: u8; cb_offset: u16; cr_mult: u8; cr_luma_mult: u8; cr_offset: u16; } StdVideoAV1SequenceHeaderFlags :: struct { __bitfield: u32; /* still_picture: u32; /* 1 bits */ reduced_still_picture_header: u32; /* 1 bits */ use_128x128_superblock: u32; /* 1 bits */ enable_filter_intra: u32; /* 1 bits */ enable_intra_edge_filter: u32; /* 1 bits */ enable_interintra_compound: u32; /* 1 bits */ enable_masked_compound: u32; /* 1 bits */ enable_warped_motion: u32; /* 1 bits */ enable_dual_filter: u32; /* 1 bits */ enable_order_hint: u32; /* 1 bits */ enable_jnt_comp: u32; /* 1 bits */ enable_ref_frame_mvs: u32; /* 1 bits */ frame_id_numbers_present_flag: u32; /* 1 bits */ enable_superres: u32; /* 1 bits */ enable_cdef: u32; /* 1 bits */ enable_restoration: u32; /* 1 bits */ film_grain_params_present: u32; /* 1 bits */ timing_info_present_flag: u32; /* 1 bits */ initial_display_delay_present_flag: u32; /* 1 bits */ reserved: u32; /* 13 bits */; */ } StdVideoAV1SequenceHeader :: struct { flags: StdVideoAV1SequenceHeaderFlags; seq_profile: StdVideoAV1Profile; frame_width_bits_minus_1: u8; frame_height_bits_minus_1: u8; max_frame_width_minus_1: u16; max_frame_height_minus_1: u16; delta_frame_id_length_minus_2: u8; additional_frame_id_length_minus_1: u8; order_hint_bits_minus_1: u8; seq_force_integer_mv: u8; seq_force_screen_content_tools: u8; reserved1: [5] u8; pColorConfig: *StdVideoAV1ColorConfig; pTimingInfo: *StdVideoAV1TimingInfo; } StdVideoDecodeAV1PictureInfoFlags :: struct { __bitfield: u32; /* error_resilient_mode: u32; /* 1 bits */ disable_cdf_update: u32; /* 1 bits */ use_superres: u32; /* 1 bits */ render_and_frame_size_different: u32; /* 1 bits */ allow_screen_content_tools: u32; /* 1 bits */ is_filter_switchable: u32; /* 1 bits */ force_integer_mv: u32; /* 1 bits */ frame_size_override_flag: u32; /* 1 bits */ buffer_removal_time_present_flag: u32; /* 1 bits */ allow_intrabc: u32; /* 1 bits */ frame_refs_short_signaling: u32; /* 1 bits */ allow_high_precision_mv: u32; /* 1 bits */ is_motion_mode_switchable: u32; /* 1 bits */ use_ref_frame_mvs: u32; /* 1 bits */ disable_frame_end_update_cdf: u32; /* 1 bits */ allow_warped_motion: u32; /* 1 bits */ reduced_tx_set: u32; /* 1 bits */ reference_select: u32; /* 1 bits */ skip_mode_present: u32; /* 1 bits */ delta_q_present: u32; /* 1 bits */ delta_lf_present: u32; /* 1 bits */ delta_lf_multi: u32; /* 1 bits */ segmentation_enabled: u32; /* 1 bits */ segmentation_update_map: u32; /* 1 bits */ segmentation_temporal_update: u32; /* 1 bits */ segmentation_update_data: u32; /* 1 bits */ UsesLr: u32; /* 1 bits */ usesChromaLr: u32; /* 1 bits */ apply_grain: u32; /* 1 bits */ reserved: u32; /* 3 bits */; */ } StdVideoDecodeAV1PictureInfo :: struct { flags: StdVideoDecodeAV1PictureInfoFlags; frame_type: StdVideoAV1FrameType; current_frame_id: u32; OrderHint: u8; primary_ref_frame: u8; refresh_frame_flags: u8; reserved1: u8; interpolation_filter: StdVideoAV1InterpolationFilter; TxMode: StdVideoAV1TxMode; delta_q_res: u8; delta_lf_res: u8; SkipModeFrame: [2] u8; coded_denom: u8; reserved2: [3] u8; OrderHints: [8] u8; expectedFrameId: [8] u32; pTileInfo: *StdVideoAV1TileInfo; pQuantization: *StdVideoAV1Quantization; pSegmentation: *StdVideoAV1Segmentation; pLoopFilter: *StdVideoAV1LoopFilter; pCDEF: *StdVideoAV1CDEF; pLoopRestoration: *StdVideoAV1LoopRestoration; pGlobalMotion: *StdVideoAV1GlobalMotion; pFilmGrain: *StdVideoAV1FilmGrain; } StdVideoDecodeAV1ReferenceInfoFlags :: struct { __bitfield: u32; /* disable_frame_end_update_cdf: u32; /* 1 bits */ segmentation_enabled: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoDecodeAV1ReferenceInfo :: struct { flags: StdVideoDecodeAV1ReferenceInfoFlags; frame_type: u8; RefFrameSignBias: u8; OrderHint: u8; SavedOrderHints: [8] u8; } VkVideoDecodeAV1ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfile: StdVideoAV1Profile; filmGrainSupport: VkBool32; } VkVideoDecodeAV1CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; maxLevel: StdVideoAV1Level; } VkVideoDecodeAV1SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdSequenceHeader: *StdVideoAV1SequenceHeader; } VkVideoDecodeAV1PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdPictureInfo: *StdVideoDecodeAV1PictureInfo; referenceNameSlotIndices: [7] s32; frameHeaderOffset: u32; tileCount: u32; pTileOffsets: *u32; pTileSizes: *u32; } VkVideoDecodeAV1DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoDecodeAV1ReferenceInfo; } StdVideoEncodeAV1DecoderModelInfo :: struct { buffer_delay_length_minus_1: u8; buffer_removal_time_length_minus_1: u8; frame_presentation_time_length_minus_1: u8; reserved1: u8; num_units_in_decoding_tick: u32; } StdVideoEncodeAV1ExtensionHeader :: struct { temporal_id: u8; spatial_id: u8; } StdVideoEncodeAV1OperatingPointInfoFlags :: struct { __bitfield: u32; /* decoder_model_present_for_this_op: u32; /* 1 bits */ low_delay_mode_flag: u32; /* 1 bits */ initial_display_delay_present_for_this_op: u32; /* 1 bits */ reserved: u32; /* 29 bits */; */ } StdVideoEncodeAV1OperatingPointInfo :: struct { flags: StdVideoEncodeAV1OperatingPointInfoFlags; operating_point_idc: u16; seq_level_idx: u8; seq_tier: u8; decoder_buffer_delay: u32; encoder_buffer_delay: u32; initial_display_delay_minus_1: u8; } StdVideoEncodeAV1PictureInfoFlags :: struct { __bitfield: u32; /* error_resilient_mode: u32; /* 1 bits */ disable_cdf_update: u32; /* 1 bits */ use_superres: u32; /* 1 bits */ render_and_frame_size_different: u32; /* 1 bits */ allow_screen_content_tools: u32; /* 1 bits */ is_filter_switchable: u32; /* 1 bits */ force_integer_mv: u32; /* 1 bits */ frame_size_override_flag: u32; /* 1 bits */ buffer_removal_time_present_flag: u32; /* 1 bits */ allow_intrabc: u32; /* 1 bits */ frame_refs_short_signaling: u32; /* 1 bits */ allow_high_precision_mv: u32; /* 1 bits */ is_motion_mode_switchable: u32; /* 1 bits */ use_ref_frame_mvs: u32; /* 1 bits */ disable_frame_end_update_cdf: u32; /* 1 bits */ allow_warped_motion: u32; /* 1 bits */ reduced_tx_set: u32; /* 1 bits */ skip_mode_present: u32; /* 1 bits */ delta_q_present: u32; /* 1 bits */ delta_lf_present: u32; /* 1 bits */ delta_lf_multi: u32; /* 1 bits */ segmentation_enabled: u32; /* 1 bits */ segmentation_update_map: u32; /* 1 bits */ segmentation_temporal_update: u32; /* 1 bits */ segmentation_update_data: u32; /* 1 bits */ UsesLr: u32; /* 1 bits */ usesChromaLr: u32; /* 1 bits */ show_frame: u32; /* 1 bits */ showable_frame: u32; /* 1 bits */ reserved: u32; /* 3 bits */; */ } StdVideoEncodeAV1PictureInfo :: struct { flags: StdVideoEncodeAV1PictureInfoFlags; frame_type: StdVideoAV1FrameType; frame_presentation_time: u32; current_frame_id: u32; order_hint: u8; primary_ref_frame: u8; refresh_frame_flags: u8; coded_denom: u8; render_width_minus_1: u16; render_height_minus_1: u16; interpolation_filter: StdVideoAV1InterpolationFilter; TxMode: StdVideoAV1TxMode; delta_q_res: u8; delta_lf_res: u8; ref_order_hint: [8] u8; ref_frame_idx: [7] s8; reserved1: [3] u8; delta_frame_id_minus_1: [7] u32; pTileInfo: *StdVideoAV1TileInfo; pQuantization: *StdVideoAV1Quantization; pSegmentation: *StdVideoAV1Segmentation; pLoopFilter: *StdVideoAV1LoopFilter; pCDEF: *StdVideoAV1CDEF; pLoopRestoration: *StdVideoAV1LoopRestoration; pGlobalMotion: *StdVideoAV1GlobalMotion; pExtensionHeader: *StdVideoEncodeAV1ExtensionHeader; pBufferRemovalTimes: *u32; } StdVideoEncodeAV1ReferenceInfoFlags :: struct { __bitfield: u32; /* disable_frame_end_update_cdf: u32; /* 1 bits */ segmentation_enabled: u32; /* 1 bits */ reserved: u32; /* 30 bits */; */ } StdVideoEncodeAV1ReferenceInfo :: struct { flags: StdVideoEncodeAV1ReferenceInfoFlags; RefFrameId: u32; frame_type: StdVideoAV1FrameType; OrderHint: u8; reserved1: [3] u8; pExtensionHeader: *StdVideoEncodeAV1ExtensionHeader; } VkVideoEncodeAV1PredictionModeKHR :: enum u32 { INTRA_ONLY_KHR :: 0; SINGLE_REFERENCE_KHR :: 1; UNIDIRECTIONAL_COMPOUND_KHR :: 2; BIDIRECTIONAL_COMPOUND_KHR :: 3; MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_PREDICTION_MODE_INTRA_ONLY_KHR :: INTRA_ONLY_KHR; VK_VIDEO_ENCODE_AV1_PREDICTION_MODE_SINGLE_REFERENCE_KHR :: SINGLE_REFERENCE_KHR; VK_VIDEO_ENCODE_AV1_PREDICTION_MODE_UNIDIRECTIONAL_COMPOUND_KHR :: UNIDIRECTIONAL_COMPOUND_KHR; VK_VIDEO_ENCODE_AV1_PREDICTION_MODE_BIDIRECTIONAL_COMPOUND_KHR :: BIDIRECTIONAL_COMPOUND_KHR; VK_VIDEO_ENCODE_AV1_PREDICTION_MODE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkVideoEncodeAV1RateControlGroupKHR :: enum u32 { INTRA_KHR :: 0; PREDICTIVE_KHR :: 1; BIPREDICTIVE_KHR :: 2; MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_GROUP_INTRA_KHR :: INTRA_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_GROUP_PREDICTIVE_KHR :: PREDICTIVE_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_GROUP_BIPREDICTIVE_KHR :: BIPREDICTIVE_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_GROUP_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkVideoEncodeAV1CapabilityFlagBitsKHR :: enum u32 { PER_RATE_CONTROL_GROUP_MIN_MAX_Q_INDEX_BIT_KHR :: 1; GENERATE_OBU_EXTENSION_HEADER_BIT_KHR :: 2; PRIMARY_REFERENCE_CDF_ONLY_BIT_KHR :: 4; FRAME_SIZE_OVERRIDE_BIT_KHR :: 8; MOTION_VECTOR_SCALING_BIT_KHR :: 16; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_CAPABILITY_PER_RATE_CONTROL_GROUP_MIN_MAX_Q_INDEX_BIT_KHR :: PER_RATE_CONTROL_GROUP_MIN_MAX_Q_INDEX_BIT_KHR; VK_VIDEO_ENCODE_AV1_CAPABILITY_GENERATE_OBU_EXTENSION_HEADER_BIT_KHR :: GENERATE_OBU_EXTENSION_HEADER_BIT_KHR; VK_VIDEO_ENCODE_AV1_CAPABILITY_PRIMARY_REFERENCE_CDF_ONLY_BIT_KHR :: PRIMARY_REFERENCE_CDF_ONLY_BIT_KHR; VK_VIDEO_ENCODE_AV1_CAPABILITY_FRAME_SIZE_OVERRIDE_BIT_KHR :: FRAME_SIZE_OVERRIDE_BIT_KHR; VK_VIDEO_ENCODE_AV1_CAPABILITY_MOTION_VECTOR_SCALING_BIT_KHR :: MOTION_VECTOR_SCALING_BIT_KHR; VK_VIDEO_ENCODE_AV1_CAPABILITY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeAV1CapabilityFlagsKHR :: VkFlags; VkVideoEncodeAV1StdFlagBitsKHR :: enum u32 { UNIFORM_TILE_SPACING_FLAG_SET_BIT_KHR :: 1; SKIP_MODE_PRESENT_UNSET_BIT_KHR :: 2; PRIMARY_REF_FRAME_BIT_KHR :: 4; DELTA_Q_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_STD_UNIFORM_TILE_SPACING_FLAG_SET_BIT_KHR :: UNIFORM_TILE_SPACING_FLAG_SET_BIT_KHR; VK_VIDEO_ENCODE_AV1_STD_SKIP_MODE_PRESENT_UNSET_BIT_KHR :: SKIP_MODE_PRESENT_UNSET_BIT_KHR; VK_VIDEO_ENCODE_AV1_STD_PRIMARY_REF_FRAME_BIT_KHR :: PRIMARY_REF_FRAME_BIT_KHR; VK_VIDEO_ENCODE_AV1_STD_DELTA_Q_BIT_KHR :: DELTA_Q_BIT_KHR; VK_VIDEO_ENCODE_AV1_STD_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeAV1StdFlagsKHR :: VkFlags; VkVideoEncodeAV1SuperblockSizeFlagBitsKHR :: enum u32 { _64_BIT_KHR :: 1; _128_BIT_KHR :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_SUPERBLOCK_SIZE_64_BIT_KHR :: _64_BIT_KHR; VK_VIDEO_ENCODE_AV1_SUPERBLOCK_SIZE_128_BIT_KHR :: _128_BIT_KHR; VK_VIDEO_ENCODE_AV1_SUPERBLOCK_SIZE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeAV1SuperblockSizeFlagsKHR :: VkFlags; VkVideoEncodeAV1RateControlFlagBitsKHR :: enum u32 { REGULAR_GOP_BIT_KHR :: 1; TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR :: 2; REFERENCE_PATTERN_FLAT_BIT_KHR :: 4; REFERENCE_PATTERN_DYADIC_BIT_KHR :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_REGULAR_GOP_BIT_KHR :: REGULAR_GOP_BIT_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR :: TEMPORAL_LAYER_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_REFERENCE_PATTERN_FLAT_BIT_KHR :: REFERENCE_PATTERN_FLAT_BIT_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_REFERENCE_PATTERN_DYADIC_BIT_KHR :: REFERENCE_PATTERN_DYADIC_BIT_KHR; VK_VIDEO_ENCODE_AV1_RATE_CONTROL_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkVideoEncodeAV1RateControlFlagsKHR :: VkFlags; VkPhysicalDeviceVideoEncodeAV1FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; videoEncodeAV1: VkBool32; } VkVideoEncodeAV1CapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeAV1CapabilityFlagsKHR; maxLevel: StdVideoAV1Level; codedPictureAlignment: VkExtent2D; maxTiles: VkExtent2D; minTileSize: VkExtent2D; maxTileSize: VkExtent2D; superblockSizes: VkVideoEncodeAV1SuperblockSizeFlagsKHR; maxSingleReferenceCount: u32; singleReferenceNameMask: u32; maxUnidirectionalCompoundReferenceCount: u32; maxUnidirectionalCompoundGroup1ReferenceCount: u32; unidirectionalCompoundReferenceNameMask: u32; maxBidirectionalCompoundReferenceCount: u32; maxBidirectionalCompoundGroup1ReferenceCount: u32; maxBidirectionalCompoundGroup2ReferenceCount: u32; bidirectionalCompoundReferenceNameMask: u32; maxTemporalLayerCount: u32; maxSpatialLayerCount: u32; maxOperatingPoints: u32; minQIndex: u32; maxQIndex: u32; prefersGopRemainingFrames: VkBool32; requiresGopRemainingFrames: VkBool32; stdSyntaxFlags: VkVideoEncodeAV1StdFlagsKHR; } VkVideoEncodeAV1QIndexKHR :: struct { intraQIndex: u32; predictiveQIndex: u32; bipredictiveQIndex: u32; } VkVideoEncodeAV1QualityLevelPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; preferredRateControlFlags: VkVideoEncodeAV1RateControlFlagsKHR; preferredGopFrameCount: u32; preferredKeyFramePeriod: u32; preferredConsecutiveBipredictiveFrameCount: u32; preferredTemporalLayerCount: u32; preferredConstantQIndex: VkVideoEncodeAV1QIndexKHR; preferredMaxSingleReferenceCount: u32; preferredSingleReferenceNameMask: u32; preferredMaxUnidirectionalCompoundReferenceCount: u32; preferredMaxUnidirectionalCompoundGroup1ReferenceCount: u32; preferredUnidirectionalCompoundReferenceNameMask: u32; preferredMaxBidirectionalCompoundReferenceCount: u32; preferredMaxBidirectionalCompoundGroup1ReferenceCount: u32; preferredMaxBidirectionalCompoundGroup2ReferenceCount: u32; preferredBidirectionalCompoundReferenceNameMask: u32; } VkVideoEncodeAV1SessionCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMaxLevel: VkBool32; maxLevel: StdVideoAV1Level; } VkVideoEncodeAV1SessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdSequenceHeader: *StdVideoAV1SequenceHeader; pStdDecoderModelInfo: *StdVideoEncodeAV1DecoderModelInfo; stdOperatingPointCount: u32; pStdOperatingPoints: *StdVideoEncodeAV1OperatingPointInfo; } VkVideoEncodeAV1PictureInfoKHR :: struct { sType: VkStructureType; pNext: *void; predictionMode: VkVideoEncodeAV1PredictionModeKHR; rateControlGroup: VkVideoEncodeAV1RateControlGroupKHR; constantQIndex: u32; pStdPictureInfo: *StdVideoEncodeAV1PictureInfo; referenceNameSlotIndices: [7] s32; primaryReferenceCdfOnly: VkBool32; generateObuExtensionHeader: VkBool32; } VkVideoEncodeAV1DpbSlotInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdReferenceInfo: *StdVideoEncodeAV1ReferenceInfo; } VkVideoEncodeAV1ProfileInfoKHR :: struct { sType: VkStructureType; pNext: *void; stdProfile: StdVideoAV1Profile; } VkVideoEncodeAV1FrameSizeKHR :: struct { intraFrameSize: u32; predictiveFrameSize: u32; bipredictiveFrameSize: u32; } VkVideoEncodeAV1GopRemainingFrameInfoKHR :: struct { sType: VkStructureType; pNext: *void; useGopRemainingFrames: VkBool32; gopRemainingIntra: u32; gopRemainingPredictive: u32; gopRemainingBipredictive: u32; } VkVideoEncodeAV1RateControlInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkVideoEncodeAV1RateControlFlagsKHR; gopFrameCount: u32; keyFramePeriod: u32; consecutiveBipredictiveFrameCount: u32; temporalLayerCount: u32; } VkVideoEncodeAV1RateControlLayerInfoKHR :: struct { sType: VkStructureType; pNext: *void; useMinQIndex: VkBool32; minQIndex: VkVideoEncodeAV1QIndexKHR; useMaxQIndex: VkBool32; maxQIndex: VkVideoEncodeAV1QIndexKHR; useMaxFrameSize: VkBool32; maxFrameSize: VkVideoEncodeAV1FrameSizeKHR; } VkPhysicalDeviceVideoMaintenance1FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; videoMaintenance1: VkBool32; } VkVideoInlineQueryInfoKHR :: struct { sType: VkStructureType; pNext: *void; queryPool: VkQueryPool; firstQuery: u32; queryCount: u32; } VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR :: VkPhysicalDeviceVertexAttributeDivisorProperties; VkVertexInputBindingDivisorDescriptionKHR :: VkVertexInputBindingDivisorDescription; VkPipelineVertexInputDivisorStateCreateInfoKHR :: VkPipelineVertexInputDivisorStateCreateInfo; VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR :: VkPhysicalDeviceVertexAttributeDivisorFeatures; VkPhysicalDeviceShaderFloatControls2FeaturesKHR :: VkPhysicalDeviceShaderFloatControls2Features; VkPhysicalDeviceIndexTypeUint8FeaturesKHR :: VkPhysicalDeviceIndexTypeUint8Features; VkLineRasterizationModeKHR :: VkLineRasterizationMode; VkPhysicalDeviceLineRasterizationFeaturesKHR :: VkPhysicalDeviceLineRasterizationFeatures; VkPhysicalDeviceLineRasterizationPropertiesKHR :: VkPhysicalDeviceLineRasterizationProperties; VkPipelineRasterizationLineStateCreateInfoKHR :: VkPipelineRasterizationLineStateCreateInfo; PFN_vkCmdSetLineStippleKHR :: #type (commandBuffer: VkCommandBuffer, lineStippleFactor: u32, lineStipplePattern: u16) -> void #c_call; VkTimeDomainKHR :: enum u32 { DEVICE_KHR :: 0; CLOCK_MONOTONIC_KHR :: 1; CLOCK_MONOTONIC_RAW_KHR :: 2; QUERY_PERFORMANCE_COUNTER_KHR :: 3; DEVICE_EXT :: 0; CLOCK_MONOTONIC_EXT :: 1; CLOCK_MONOTONIC_RAW_EXT :: 2; QUERY_PERFORMANCE_COUNTER_EXT :: 3; MAX_ENUM_KHR :: 2147483647; VK_TIME_DOMAIN_DEVICE_KHR :: DEVICE_KHR; VK_TIME_DOMAIN_CLOCK_MONOTONIC_KHR :: CLOCK_MONOTONIC_KHR; VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_KHR :: CLOCK_MONOTONIC_RAW_KHR; VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_KHR :: QUERY_PERFORMANCE_COUNTER_KHR; VK_TIME_DOMAIN_DEVICE_EXT :: DEVICE_EXT; VK_TIME_DOMAIN_CLOCK_MONOTONIC_EXT :: CLOCK_MONOTONIC_EXT; VK_TIME_DOMAIN_CLOCK_MONOTONIC_RAW_EXT :: CLOCK_MONOTONIC_RAW_EXT; VK_TIME_DOMAIN_QUERY_PERFORMANCE_COUNTER_EXT :: QUERY_PERFORMANCE_COUNTER_EXT; VK_TIME_DOMAIN_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkCalibratedTimestampInfoKHR :: struct { sType: VkStructureType; pNext: *void; timeDomain: VkTimeDomainKHR; } PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsKHR :: #type (physicalDevice: VkPhysicalDevice, pTimeDomainCount: *u32, pTimeDomains: *VkTimeDomainKHR) -> VkResult #c_call; PFN_vkGetCalibratedTimestampsKHR :: #type (device: VkDevice, timestampCount: u32, pTimestampInfos: *VkCalibratedTimestampInfoKHR, pTimestamps: *u64, pMaxDeviation: *u64) -> VkResult #c_call; VkPhysicalDeviceShaderExpectAssumeFeaturesKHR :: VkPhysicalDeviceShaderExpectAssumeFeatures; VkPhysicalDeviceMaintenance6FeaturesKHR :: VkPhysicalDeviceMaintenance6Features; VkPhysicalDeviceMaintenance6PropertiesKHR :: VkPhysicalDeviceMaintenance6Properties; VkBindMemoryStatusKHR :: VkBindMemoryStatus; VkBindDescriptorSetsInfoKHR :: VkBindDescriptorSetsInfo; VkPushConstantsInfoKHR :: VkPushConstantsInfo; VkPushDescriptorSetInfoKHR :: VkPushDescriptorSetInfo; VkPushDescriptorSetWithTemplateInfoKHR :: VkPushDescriptorSetWithTemplateInfo; VkSetDescriptorBufferOffsetsInfoEXT :: struct { sType: VkStructureType; pNext: *void; stageFlags: VkShaderStageFlags; layout: VkPipelineLayout; firstSet: u32; setCount: u32; pBufferIndices: *u32; pOffsets: *VkDeviceSize; } VkBindDescriptorBufferEmbeddedSamplersInfoEXT :: struct { sType: VkStructureType; pNext: *void; stageFlags: VkShaderStageFlags; layout: VkPipelineLayout; set: u32; } PFN_vkCmdBindDescriptorSets2KHR :: #type (commandBuffer: VkCommandBuffer, pBindDescriptorSetsInfo: *VkBindDescriptorSetsInfo) -> void #c_call; PFN_vkCmdPushConstants2KHR :: #type (commandBuffer: VkCommandBuffer, pPushConstantsInfo: *VkPushConstantsInfo) -> void #c_call; PFN_vkCmdPushDescriptorSet2KHR :: #type (commandBuffer: VkCommandBuffer, pPushDescriptorSetInfo: *VkPushDescriptorSetInfo) -> void #c_call; PFN_vkCmdPushDescriptorSetWithTemplate2KHR :: #type (commandBuffer: VkCommandBuffer, pPushDescriptorSetWithTemplateInfo: *VkPushDescriptorSetWithTemplateInfo) -> void #c_call; PFN_vkCmdSetDescriptorBufferOffsets2EXT :: #type (commandBuffer: VkCommandBuffer, pSetDescriptorBufferOffsetsInfo: *VkSetDescriptorBufferOffsetsInfoEXT) -> void #c_call; PFN_vkCmdBindDescriptorBufferEmbeddedSamplers2EXT :: #type (commandBuffer: VkCommandBuffer, pBindDescriptorBufferEmbeddedSamplersInfo: *VkBindDescriptorBufferEmbeddedSamplersInfoEXT) -> void #c_call; VkVideoEncodeQuantizationMapCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; maxQuantizationMapExtent: VkExtent2D; } VkVideoFormatQuantizationMapPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; quantizationMapTexelSize: VkExtent2D; } VkVideoEncodeQuantizationMapInfoKHR :: struct { sType: VkStructureType; pNext: *void; quantizationMap: VkImageView; quantizationMapExtent: VkExtent2D; } VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; quantizationMapTexelSize: VkExtent2D; } VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; videoEncodeQuantizationMap: VkBool32; } VkVideoEncodeH264QuantizationMapCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; minQpDelta: s32; maxQpDelta: s32; } VkVideoEncodeH265QuantizationMapCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; minQpDelta: s32; maxQpDelta: s32; } VkVideoFormatH265QuantizationMapPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; compatibleCtbSizes: VkVideoEncodeH265CtbSizeFlagsKHR; } VkVideoEncodeAV1QuantizationMapCapabilitiesKHR :: struct { sType: VkStructureType; pNext: *void; minQIndexDelta: s32; maxQIndexDelta: s32; } VkVideoFormatAV1QuantizationMapPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; compatibleSuperblockSizes: VkVideoEncodeAV1SuperblockSizeFlagsKHR; } VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; shaderRelaxedExtendedInstruction: VkBool32; } VkPhysicalDeviceLayeredApiKHR :: enum u32 { VULKAN_KHR :: 0; D3D12_KHR :: 1; METAL_KHR :: 2; OPENGL_KHR :: 3; OPENGLES_KHR :: 4; MAX_ENUM_KHR :: 2147483647; VK_PHYSICAL_DEVICE_LAYERED_API_VULKAN_KHR :: VULKAN_KHR; VK_PHYSICAL_DEVICE_LAYERED_API_D3D12_KHR :: D3D12_KHR; VK_PHYSICAL_DEVICE_LAYERED_API_METAL_KHR :: METAL_KHR; VK_PHYSICAL_DEVICE_LAYERED_API_OPENGL_KHR :: OPENGL_KHR; VK_PHYSICAL_DEVICE_LAYERED_API_OPENGLES_KHR :: OPENGLES_KHR; VK_PHYSICAL_DEVICE_LAYERED_API_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkPhysicalDeviceMaintenance7FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; maintenance7: VkBool32; } VkPhysicalDeviceMaintenance7PropertiesKHR :: struct { sType: VkStructureType; pNext: *void; robustFragmentShadingRateAttachmentAccess: VkBool32; separateDepthStencilAttachmentAccess: VkBool32; maxDescriptorSetTotalUniformBuffersDynamic: u32; maxDescriptorSetTotalStorageBuffersDynamic: u32; maxDescriptorSetTotalBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic: u32; maxDescriptorSetUpdateAfterBindTotalBuffersDynamic: u32; } VkPhysicalDeviceLayeredApiPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; vendorID: u32; deviceID: u32; layeredAPI: VkPhysicalDeviceLayeredApiKHR; deviceName: [256] u8; } VkPhysicalDeviceLayeredApiPropertiesListKHR :: struct { sType: VkStructureType; pNext: *void; layeredApiCount: u32; pLayeredApis: *VkPhysicalDeviceLayeredApiPropertiesKHR; } VkPhysicalDeviceLayeredApiVulkanPropertiesKHR :: struct { sType: VkStructureType; pNext: *void; properties: VkPhysicalDeviceProperties2; } VkAccessFlags3KHR :: VkFlags64; // Flag bits for VkAccessFlagBits3KHR VkAccessFlagBits3KHR :: VkFlags64; VK_ACCESS_3_NONE_KHR: VkAccessFlagBits3KHR : 0; VkPhysicalDeviceMaintenance8FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; maintenance8: VkBool32; } VkMemoryBarrierAccessFlags3KHR :: struct { sType: VkStructureType; pNext: *void; srcAccessMask3: VkAccessFlags3KHR; dstAccessMask3: VkAccessFlags3KHR; } VkPhysicalDeviceVideoMaintenance2FeaturesKHR :: struct { sType: VkStructureType; pNext: *void; videoMaintenance2: VkBool32; } VkVideoDecodeH264InlineSessionParametersInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdSPS: *StdVideoH264SequenceParameterSet; pStdPPS: *StdVideoH264PictureParameterSet; } VkVideoDecodeH265InlineSessionParametersInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdVPS: *StdVideoH265VideoParameterSet; pStdSPS: *StdVideoH265SequenceParameterSet; pStdPPS: *StdVideoH265PictureParameterSet; } VkVideoDecodeAV1InlineSessionParametersInfoKHR :: struct { sType: VkStructureType; pNext: *void; pStdSequenceHeader: *StdVideoAV1SequenceHeader; } VkPhysicalDeviceDepthClampZeroOneFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; depthClampZeroOne: VkBool32; } VkDebugReportCallbackEXT_T :: struct {} VkDebugReportCallbackEXT :: *VkDebugReportCallbackEXT_T; VkDebugReportObjectTypeEXT :: enum u32 { UNKNOWN_EXT :: 0; INSTANCE_EXT :: 1; PHYSICAL_DEVICE_EXT :: 2; DEVICE_EXT :: 3; QUEUE_EXT :: 4; SEMAPHORE_EXT :: 5; COMMAND_BUFFER_EXT :: 6; FENCE_EXT :: 7; DEVICE_MEMORY_EXT :: 8; BUFFER_EXT :: 9; IMAGE_EXT :: 10; EVENT_EXT :: 11; QUERY_POOL_EXT :: 12; BUFFER_VIEW_EXT :: 13; IMAGE_VIEW_EXT :: 14; SHADER_MODULE_EXT :: 15; PIPELINE_CACHE_EXT :: 16; PIPELINE_LAYOUT_EXT :: 17; RENDER_PASS_EXT :: 18; PIPELINE_EXT :: 19; DESCRIPTOR_SET_LAYOUT_EXT :: 20; SAMPLER_EXT :: 21; DESCRIPTOR_POOL_EXT :: 22; DESCRIPTOR_SET_EXT :: 23; FRAMEBUFFER_EXT :: 24; COMMAND_POOL_EXT :: 25; SURFACE_KHR_EXT :: 26; SWAPCHAIN_KHR_EXT :: 27; DEBUG_REPORT_CALLBACK_EXT_EXT :: 28; DISPLAY_KHR_EXT :: 29; DISPLAY_MODE_KHR_EXT :: 30; VALIDATION_CACHE_EXT_EXT :: 33; SAMPLER_YCBCR_CONVERSION_EXT :: 1000156000; DESCRIPTOR_UPDATE_TEMPLATE_EXT :: 1000085000; CU_MODULE_NVX_EXT :: 1000029000; CU_FUNCTION_NVX_EXT :: 1000029001; ACCELERATION_STRUCTURE_KHR_EXT :: 1000150000; ACCELERATION_STRUCTURE_NV_EXT :: 1000165000; CUDA_MODULE_NV_EXT :: 1000307000; CUDA_FUNCTION_NV_EXT :: 1000307001; BUFFER_COLLECTION_FUCHSIA_EXT :: 1000366000; DEBUG_REPORT_EXT :: 28; VALIDATION_CACHE_EXT :: 33; DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT :: 1000085000; SAMPLER_YCBCR_CONVERSION_KHR_EXT :: 1000156000; MAX_ENUM_EXT :: 2147483647; VK_DEBUG_REPORT_OBJECT_TYPE_UNKNOWN_EXT :: UNKNOWN_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_INSTANCE_EXT :: INSTANCE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_PHYSICAL_DEVICE_EXT :: PHYSICAL_DEVICE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_EXT :: DEVICE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_QUEUE_EXT :: QUEUE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SEMAPHORE_EXT :: SEMAPHORE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_BUFFER_EXT :: COMMAND_BUFFER_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_FENCE_EXT :: FENCE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DEVICE_MEMORY_EXT :: DEVICE_MEMORY_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_EXT :: BUFFER_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_EXT :: IMAGE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_EVENT_EXT :: EVENT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_QUERY_POOL_EXT :: QUERY_POOL_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_VIEW_EXT :: BUFFER_VIEW_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_IMAGE_VIEW_EXT :: IMAGE_VIEW_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SHADER_MODULE_EXT :: SHADER_MODULE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_CACHE_EXT :: PIPELINE_CACHE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_LAYOUT_EXT :: PIPELINE_LAYOUT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_RENDER_PASS_EXT :: RENDER_PASS_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_PIPELINE_EXT :: PIPELINE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT_EXT :: DESCRIPTOR_SET_LAYOUT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_EXT :: SAMPLER_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_POOL_EXT :: DESCRIPTOR_POOL_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_SET_EXT :: DESCRIPTOR_SET_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_FRAMEBUFFER_EXT :: FRAMEBUFFER_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_COMMAND_POOL_EXT :: COMMAND_POOL_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SURFACE_KHR_EXT :: SURFACE_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SWAPCHAIN_KHR_EXT :: SWAPCHAIN_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_CALLBACK_EXT_EXT :: DEBUG_REPORT_CALLBACK_EXT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_KHR_EXT :: DISPLAY_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DISPLAY_MODE_KHR_EXT :: DISPLAY_MODE_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT_EXT :: VALIDATION_CACHE_EXT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_EXT :: SAMPLER_YCBCR_CONVERSION_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_EXT :: DESCRIPTOR_UPDATE_TEMPLATE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_CU_MODULE_NVX_EXT :: CU_MODULE_NVX_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_CU_FUNCTION_NVX_EXT :: CU_FUNCTION_NVX_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_KHR_EXT :: ACCELERATION_STRUCTURE_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_ACCELERATION_STRUCTURE_NV_EXT :: ACCELERATION_STRUCTURE_NV_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_MODULE_NV_EXT :: CUDA_MODULE_NV_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_CUDA_FUNCTION_NV_EXT :: CUDA_FUNCTION_NV_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_BUFFER_COLLECTION_FUCHSIA_EXT :: BUFFER_COLLECTION_FUCHSIA_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DEBUG_REPORT_EXT :: DEBUG_REPORT_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_VALIDATION_CACHE_EXT :: VALIDATION_CACHE_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT :: DESCRIPTOR_UPDATE_TEMPLATE_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION_KHR_EXT :: SAMPLER_YCBCR_CONVERSION_KHR_EXT; VK_DEBUG_REPORT_OBJECT_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDebugReportFlagBitsEXT :: enum u32 { INFORMATION_BIT_EXT :: 1; WARNING_BIT_EXT :: 2; PERFORMANCE_WARNING_BIT_EXT :: 4; ERROR_BIT_EXT :: 8; DEBUG_BIT_EXT :: 16; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_DEBUG_REPORT_INFORMATION_BIT_EXT :: INFORMATION_BIT_EXT; VK_DEBUG_REPORT_WARNING_BIT_EXT :: WARNING_BIT_EXT; VK_DEBUG_REPORT_PERFORMANCE_WARNING_BIT_EXT :: PERFORMANCE_WARNING_BIT_EXT; VK_DEBUG_REPORT_ERROR_BIT_EXT :: ERROR_BIT_EXT; VK_DEBUG_REPORT_DEBUG_BIT_EXT :: DEBUG_BIT_EXT; VK_DEBUG_REPORT_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkDebugReportFlagsEXT :: VkFlags; PFN_vkDebugReportCallbackEXT :: #type (flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, object: u64, location: u64, messageCode: s32, pLayerPrefix: *u8, pMessage: *u8, pUserData: *void) -> VkBool32 #c_call; VkDebugReportCallbackCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDebugReportFlagsEXT; pfnCallback: PFN_vkDebugReportCallbackEXT; pUserData: *void; } PFN_vkCreateDebugReportCallbackEXT :: #type (instance: VkInstance, pCreateInfo: *VkDebugReportCallbackCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pCallback: *VkDebugReportCallbackEXT) -> VkResult #c_call; PFN_vkDestroyDebugReportCallbackEXT :: #type (instance: VkInstance, callback: VkDebugReportCallbackEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkDebugReportMessageEXT :: #type (instance: VkInstance, flags: VkDebugReportFlagsEXT, objectType: VkDebugReportObjectTypeEXT, object: u64, location: u64, messageCode: s32, pLayerPrefix: *u8, pMessage: *u8) -> void #c_call; VkRasterizationOrderAMD :: enum u32 { STRICT_AMD :: 0; RELAXED_AMD :: 1; MAX_ENUM_AMD :: 2147483647; VK_RASTERIZATION_ORDER_STRICT_AMD :: STRICT_AMD; VK_RASTERIZATION_ORDER_RELAXED_AMD :: RELAXED_AMD; VK_RASTERIZATION_ORDER_MAX_ENUM_AMD :: MAX_ENUM_AMD; } VkPipelineRasterizationStateRasterizationOrderAMD :: struct { sType: VkStructureType; pNext: *void; rasterizationOrder: VkRasterizationOrderAMD; } VkDebugMarkerObjectNameInfoEXT :: struct { sType: VkStructureType; pNext: *void; objectType: VkDebugReportObjectTypeEXT; object: u64; pObjectName: *u8; } VkDebugMarkerObjectTagInfoEXT :: struct { sType: VkStructureType; pNext: *void; objectType: VkDebugReportObjectTypeEXT; object: u64; tagName: u64; tagSize: u64; pTag: *void; } VkDebugMarkerMarkerInfoEXT :: struct { sType: VkStructureType; pNext: *void; pMarkerName: *u8; color: [4] float; } PFN_vkDebugMarkerSetObjectTagEXT :: #type (device: VkDevice, pTagInfo: *VkDebugMarkerObjectTagInfoEXT) -> VkResult #c_call; PFN_vkDebugMarkerSetObjectNameEXT :: #type (device: VkDevice, pNameInfo: *VkDebugMarkerObjectNameInfoEXT) -> VkResult #c_call; PFN_vkCmdDebugMarkerBeginEXT :: #type (commandBuffer: VkCommandBuffer, pMarkerInfo: *VkDebugMarkerMarkerInfoEXT) -> void #c_call; PFN_vkCmdDebugMarkerEndEXT :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdDebugMarkerInsertEXT :: #type (commandBuffer: VkCommandBuffer, pMarkerInfo: *VkDebugMarkerMarkerInfoEXT) -> void #c_call; VkDedicatedAllocationImageCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; dedicatedAllocation: VkBool32; } VkDedicatedAllocationBufferCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; dedicatedAllocation: VkBool32; } VkDedicatedAllocationMemoryAllocateInfoNV :: struct { sType: VkStructureType; pNext: *void; image: VkImage; buffer: VkBuffer; } VkPipelineRasterizationStateStreamCreateFlagsEXT :: VkFlags; VkPhysicalDeviceTransformFeedbackFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; transformFeedback: VkBool32; geometryStreams: VkBool32; } VkPhysicalDeviceTransformFeedbackPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxTransformFeedbackStreams: u32; maxTransformFeedbackBuffers: u32; maxTransformFeedbackBufferSize: VkDeviceSize; maxTransformFeedbackStreamDataSize: u32; maxTransformFeedbackBufferDataSize: u32; maxTransformFeedbackBufferDataStride: u32; transformFeedbackQueries: VkBool32; transformFeedbackStreamsLinesTriangles: VkBool32; transformFeedbackRasterizationStreamSelect: VkBool32; transformFeedbackDraw: VkBool32; } VkPipelineRasterizationStateStreamCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineRasterizationStateStreamCreateFlagsEXT; rasterizationStream: u32; } PFN_vkCmdBindTransformFeedbackBuffersEXT :: #type (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize, pSizes: *VkDeviceSize) -> void #c_call; PFN_vkCmdBeginTransformFeedbackEXT :: #type (commandBuffer: VkCommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: *VkBuffer, pCounterBufferOffsets: *VkDeviceSize) -> void #c_call; PFN_vkCmdEndTransformFeedbackEXT :: #type (commandBuffer: VkCommandBuffer, firstCounterBuffer: u32, counterBufferCount: u32, pCounterBuffers: *VkBuffer, pCounterBufferOffsets: *VkDeviceSize) -> void #c_call; PFN_vkCmdBeginQueryIndexedEXT :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32, flags: VkQueryControlFlags, index: u32) -> void #c_call; PFN_vkCmdEndQueryIndexedEXT :: #type (commandBuffer: VkCommandBuffer, queryPool: VkQueryPool, query: u32, index: u32) -> void #c_call; PFN_vkCmdDrawIndirectByteCountEXT :: #type (commandBuffer: VkCommandBuffer, instanceCount: u32, firstInstance: u32, counterBuffer: VkBuffer, counterBufferOffset: VkDeviceSize, counterOffset: u32, vertexStride: u32) -> void #c_call; VkCuModuleNVX_T :: struct {} VkCuModuleNVX :: *VkCuModuleNVX_T; VkCuFunctionNVX_T :: struct {} VkCuFunctionNVX :: *VkCuFunctionNVX_T; VkCuModuleCreateInfoNVX :: struct { sType: VkStructureType; pNext: *void; dataSize: u64; pData: *void; } VkCuModuleTexturingModeCreateInfoNVX :: struct { sType: VkStructureType; pNext: *void; use64bitTexturing: VkBool32; } VkCuFunctionCreateInfoNVX :: struct { sType: VkStructureType; pNext: *void; module: VkCuModuleNVX; pName: *u8; } VkCuLaunchInfoNVX :: struct { sType: VkStructureType; pNext: *void; function: VkCuFunctionNVX; gridDimX: u32; gridDimY: u32; gridDimZ: u32; blockDimX: u32; blockDimY: u32; blockDimZ: u32; sharedMemBytes: u32; paramCount: u64; pParams: **void; extraCount: u64; pExtras: **void; } PFN_vkCreateCuModuleNVX :: #type (device: VkDevice, pCreateInfo: *VkCuModuleCreateInfoNVX, pAllocator: *VkAllocationCallbacks, pModule: *VkCuModuleNVX) -> VkResult #c_call; PFN_vkCreateCuFunctionNVX :: #type (device: VkDevice, pCreateInfo: *VkCuFunctionCreateInfoNVX, pAllocator: *VkAllocationCallbacks, pFunction: *VkCuFunctionNVX) -> VkResult #c_call; PFN_vkDestroyCuModuleNVX :: #type (device: VkDevice, module: VkCuModuleNVX, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkDestroyCuFunctionNVX :: #type (device: VkDevice, function: VkCuFunctionNVX, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCmdCuLaunchKernelNVX :: #type (commandBuffer: VkCommandBuffer, pLaunchInfo: *VkCuLaunchInfoNVX) -> void #c_call; VkImageViewHandleInfoNVX :: struct { sType: VkStructureType; pNext: *void; imageView: VkImageView; descriptorType: VkDescriptorType; sampler: VkSampler; } VkImageViewAddressPropertiesNVX :: struct { sType: VkStructureType; pNext: *void; deviceAddress: VkDeviceAddress; size: VkDeviceSize; } PFN_vkGetImageViewHandleNVX :: #type (device: VkDevice, pInfo: *VkImageViewHandleInfoNVX) -> u32 #c_call; PFN_vkGetImageViewHandle64NVX :: #type (device: VkDevice, pInfo: *VkImageViewHandleInfoNVX) -> u64 #c_call; PFN_vkGetImageViewAddressNVX :: #type (device: VkDevice, imageView: VkImageView, pProperties: *VkImageViewAddressPropertiesNVX) -> VkResult #c_call; PFN_vkCmdDrawIndirectCountAMD :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawIndexedIndirectCountAMD :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; VkTextureLODGatherFormatPropertiesAMD :: struct { sType: VkStructureType; pNext: *void; supportsTextureGatherLODBiasAMD: VkBool32; } VkShaderInfoTypeAMD :: enum u32 { STATISTICS_AMD :: 0; BINARY_AMD :: 1; DISASSEMBLY_AMD :: 2; MAX_ENUM_AMD :: 2147483647; VK_SHADER_INFO_TYPE_STATISTICS_AMD :: STATISTICS_AMD; VK_SHADER_INFO_TYPE_BINARY_AMD :: BINARY_AMD; VK_SHADER_INFO_TYPE_DISASSEMBLY_AMD :: DISASSEMBLY_AMD; VK_SHADER_INFO_TYPE_MAX_ENUM_AMD :: MAX_ENUM_AMD; } VkShaderResourceUsageAMD :: struct { numUsedVgprs: u32; numUsedSgprs: u32; ldsSizePerLocalWorkGroup: u32; ldsUsageSizeInBytes: u64; scratchMemUsageInBytes: u64; } VkShaderStatisticsInfoAMD :: struct { shaderStageMask: VkShaderStageFlags; resourceUsage: VkShaderResourceUsageAMD; numPhysicalVgprs: u32; numPhysicalSgprs: u32; numAvailableVgprs: u32; numAvailableSgprs: u32; computeWorkGroupSize: [3] u32; } PFN_vkGetShaderInfoAMD :: #type (device: VkDevice, pipeline: VkPipeline, shaderStage: VkShaderStageFlagBits, infoType: VkShaderInfoTypeAMD, pInfoSize: *u64, pInfo: *void) -> VkResult #c_call; VkPhysicalDeviceCornerSampledImageFeaturesNV :: struct { sType: VkStructureType; pNext: *void; cornerSampledImage: VkBool32; } VkExternalMemoryHandleTypeFlagBitsNV :: enum u32 { OPAQUE_WIN32_BIT_NV :: 1; OPAQUE_WIN32_KMT_BIT_NV :: 2; D3D11_IMAGE_BIT_NV :: 4; D3D11_IMAGE_KMT_BIT_NV :: 8; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV :: OPAQUE_WIN32_BIT_NV; VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV :: OPAQUE_WIN32_KMT_BIT_NV; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_BIT_NV :: D3D11_IMAGE_BIT_NV; VK_EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_IMAGE_KMT_BIT_NV :: D3D11_IMAGE_KMT_BIT_NV; VK_EXTERNAL_MEMORY_HANDLE_TYPE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkExternalMemoryHandleTypeFlagsNV :: VkFlags; VkExternalMemoryFeatureFlagBitsNV :: enum u32 { DEDICATED_ONLY_BIT_NV :: 1; EXPORTABLE_BIT_NV :: 2; IMPORTABLE_BIT_NV :: 4; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_EXTERNAL_MEMORY_FEATURE_DEDICATED_ONLY_BIT_NV :: DEDICATED_ONLY_BIT_NV; VK_EXTERNAL_MEMORY_FEATURE_EXPORTABLE_BIT_NV :: EXPORTABLE_BIT_NV; VK_EXTERNAL_MEMORY_FEATURE_IMPORTABLE_BIT_NV :: IMPORTABLE_BIT_NV; VK_EXTERNAL_MEMORY_FEATURE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkExternalMemoryFeatureFlagsNV :: VkFlags; VkExternalImageFormatPropertiesNV :: struct { imageFormatProperties: VkImageFormatProperties; externalMemoryFeatures: VkExternalMemoryFeatureFlagsNV; exportFromImportedHandleTypes: VkExternalMemoryHandleTypeFlagsNV; compatibleHandleTypes: VkExternalMemoryHandleTypeFlagsNV; } PFN_vkGetPhysicalDeviceExternalImageFormatPropertiesNV :: #type (physicalDevice: VkPhysicalDevice, format: VkFormat, type: VkImageType, tiling: VkImageTiling, usage: VkImageUsageFlags, flags: VkImageCreateFlags, externalHandleType: VkExternalMemoryHandleTypeFlagsNV, pExternalImageFormatProperties: *VkExternalImageFormatPropertiesNV) -> VkResult #c_call; VkExternalMemoryImageCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalMemoryHandleTypeFlagsNV; } VkExportMemoryAllocateInfoNV :: struct { sType: VkStructureType; pNext: *void; handleTypes: VkExternalMemoryHandleTypeFlagsNV; } VkValidationCheckEXT :: enum u32 { ALL_EXT :: 0; SHADERS_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_VALIDATION_CHECK_ALL_EXT :: ALL_EXT; VK_VALIDATION_CHECK_SHADERS_EXT :: SHADERS_EXT; VK_VALIDATION_CHECK_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkValidationFlagsEXT :: struct { sType: VkStructureType; pNext: *void; disabledValidationCheckCount: u32; pDisabledValidationChecks: *VkValidationCheckEXT; } VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT :: VkPhysicalDeviceTextureCompressionASTCHDRFeatures; VkImageViewASTCDecodeModeEXT :: struct { sType: VkStructureType; pNext: *void; decodeMode: VkFormat; } VkPhysicalDeviceASTCDecodeFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; decodeModeSharedExponent: VkBool32; } VkPipelineRobustnessBufferBehaviorEXT :: VkPipelineRobustnessBufferBehavior; VkPipelineRobustnessImageBehaviorEXT :: VkPipelineRobustnessImageBehavior; VkPhysicalDevicePipelineRobustnessFeaturesEXT :: VkPhysicalDevicePipelineRobustnessFeatures; VkPhysicalDevicePipelineRobustnessPropertiesEXT :: VkPhysicalDevicePipelineRobustnessProperties; VkPipelineRobustnessCreateInfoEXT :: VkPipelineRobustnessCreateInfo; VkConditionalRenderingFlagBitsEXT :: enum u32 { INVERTED_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_CONDITIONAL_RENDERING_INVERTED_BIT_EXT :: INVERTED_BIT_EXT; VK_CONDITIONAL_RENDERING_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkConditionalRenderingFlagsEXT :: VkFlags; VkConditionalRenderingBeginInfoEXT :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; offset: VkDeviceSize; flags: VkConditionalRenderingFlagsEXT; } VkPhysicalDeviceConditionalRenderingFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; conditionalRendering: VkBool32; inheritedConditionalRendering: VkBool32; } VkCommandBufferInheritanceConditionalRenderingInfoEXT :: struct { sType: VkStructureType; pNext: *void; conditionalRenderingEnable: VkBool32; } PFN_vkCmdBeginConditionalRenderingEXT :: #type (commandBuffer: VkCommandBuffer, pConditionalRenderingBegin: *VkConditionalRenderingBeginInfoEXT) -> void #c_call; PFN_vkCmdEndConditionalRenderingEXT :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; VkViewportWScalingNV :: struct { xcoeff: float; ycoeff: float; } VkPipelineViewportWScalingStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; viewportWScalingEnable: VkBool32; viewportCount: u32; pViewportWScalings: *VkViewportWScalingNV; } PFN_vkCmdSetViewportWScalingNV :: #type (commandBuffer: VkCommandBuffer, firstViewport: u32, viewportCount: u32, pViewportWScalings: *VkViewportWScalingNV) -> void #c_call; PFN_vkReleaseDisplayEXT :: #type (physicalDevice: VkPhysicalDevice, display: VkDisplayKHR) -> VkResult #c_call; VkSurfaceCounterFlagBitsEXT :: enum u32 { VBLANK_BIT_EXT :: 1; VBLANK_EXT :: 1; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_SURFACE_COUNTER_VBLANK_BIT_EXT :: VBLANK_BIT_EXT; VK_SURFACE_COUNTER_VBLANK_EXT :: VBLANK_EXT; VK_SURFACE_COUNTER_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkSurfaceCounterFlagsEXT :: VkFlags; VkSurfaceCapabilities2EXT :: struct { sType: VkStructureType; pNext: *void; minImageCount: u32; maxImageCount: u32; currentExtent: VkExtent2D; minImageExtent: VkExtent2D; maxImageExtent: VkExtent2D; maxImageArrayLayers: u32; supportedTransforms: VkSurfaceTransformFlagsKHR; currentTransform: VkSurfaceTransformFlagBitsKHR; supportedCompositeAlpha: VkCompositeAlphaFlagsKHR; supportedUsageFlags: VkImageUsageFlags; supportedSurfaceCounters: VkSurfaceCounterFlagsEXT; } PFN_vkGetPhysicalDeviceSurfaceCapabilities2EXT :: #type (physicalDevice: VkPhysicalDevice, surface: VkSurfaceKHR, pSurfaceCapabilities: *VkSurfaceCapabilities2EXT) -> VkResult #c_call; VkDisplayPowerStateEXT :: enum u32 { OFF_EXT :: 0; SUSPEND_EXT :: 1; ON_EXT :: 2; MAX_ENUM_EXT :: 2147483647; VK_DISPLAY_POWER_STATE_OFF_EXT :: OFF_EXT; VK_DISPLAY_POWER_STATE_SUSPEND_EXT :: SUSPEND_EXT; VK_DISPLAY_POWER_STATE_ON_EXT :: ON_EXT; VK_DISPLAY_POWER_STATE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDeviceEventTypeEXT :: enum u32 { DISPLAY_HOTPLUG_EXT :: 0; MAX_ENUM_EXT :: 2147483647; VK_DEVICE_EVENT_TYPE_DISPLAY_HOTPLUG_EXT :: DISPLAY_HOTPLUG_EXT; VK_DEVICE_EVENT_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDisplayEventTypeEXT :: enum u32 { FIRST_PIXEL_OUT_EXT :: 0; MAX_ENUM_EXT :: 2147483647; VK_DISPLAY_EVENT_TYPE_FIRST_PIXEL_OUT_EXT :: FIRST_PIXEL_OUT_EXT; VK_DISPLAY_EVENT_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDisplayPowerInfoEXT :: struct { sType: VkStructureType; pNext: *void; powerState: VkDisplayPowerStateEXT; } VkDeviceEventInfoEXT :: struct { sType: VkStructureType; pNext: *void; deviceEvent: VkDeviceEventTypeEXT; } VkDisplayEventInfoEXT :: struct { sType: VkStructureType; pNext: *void; displayEvent: VkDisplayEventTypeEXT; } VkSwapchainCounterCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; surfaceCounters: VkSurfaceCounterFlagsEXT; } PFN_vkDisplayPowerControlEXT :: #type (device: VkDevice, display: VkDisplayKHR, pDisplayPowerInfo: *VkDisplayPowerInfoEXT) -> VkResult #c_call; PFN_vkRegisterDeviceEventEXT :: #type (device: VkDevice, pDeviceEventInfo: *VkDeviceEventInfoEXT, pAllocator: *VkAllocationCallbacks, pFence: *VkFence) -> VkResult #c_call; PFN_vkRegisterDisplayEventEXT :: #type (device: VkDevice, display: VkDisplayKHR, pDisplayEventInfo: *VkDisplayEventInfoEXT, pAllocator: *VkAllocationCallbacks, pFence: *VkFence) -> VkResult #c_call; PFN_vkGetSwapchainCounterEXT :: #type (device: VkDevice, swapchain: VkSwapchainKHR, counter: VkSurfaceCounterFlagBitsEXT, pCounterValue: *u64) -> VkResult #c_call; VkRefreshCycleDurationGOOGLE :: struct { refreshDuration: u64; } VkPastPresentationTimingGOOGLE :: struct { presentID: u32; desiredPresentTime: u64; actualPresentTime: u64; earliestPresentTime: u64; presentMargin: u64; } VkPresentTimeGOOGLE :: struct { presentID: u32; desiredPresentTime: u64; } VkPresentTimesInfoGOOGLE :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pTimes: *VkPresentTimeGOOGLE; } PFN_vkGetRefreshCycleDurationGOOGLE :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pDisplayTimingProperties: *VkRefreshCycleDurationGOOGLE) -> VkResult #c_call; PFN_vkGetPastPresentationTimingGOOGLE :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pPresentationTimingCount: *u32, pPresentationTimings: *VkPastPresentationTimingGOOGLE) -> VkResult #c_call; VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX :: struct { sType: VkStructureType; pNext: *void; perViewPositionAllComponents: VkBool32; } VkMultiviewPerViewAttributesInfoNVX :: struct { sType: VkStructureType; pNext: *void; perViewAttributes: VkBool32; perViewAttributesPositionXOnly: VkBool32; } VkViewportCoordinateSwizzleNV :: enum u32 { POSITIVE_X_NV :: 0; NEGATIVE_X_NV :: 1; POSITIVE_Y_NV :: 2; NEGATIVE_Y_NV :: 3; POSITIVE_Z_NV :: 4; NEGATIVE_Z_NV :: 5; POSITIVE_W_NV :: 6; NEGATIVE_W_NV :: 7; MAX_ENUM_NV :: 2147483647; VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_X_NV :: POSITIVE_X_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_X_NV :: NEGATIVE_X_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Y_NV :: POSITIVE_Y_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Y_NV :: NEGATIVE_Y_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_Z_NV :: POSITIVE_Z_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_Z_NV :: NEGATIVE_Z_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_POSITIVE_W_NV :: POSITIVE_W_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_NEGATIVE_W_NV :: NEGATIVE_W_NV; VK_VIEWPORT_COORDINATE_SWIZZLE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPipelineViewportSwizzleStateCreateFlagsNV :: VkFlags; VkViewportSwizzleNV :: struct { x: VkViewportCoordinateSwizzleNV; y: VkViewportCoordinateSwizzleNV; z: VkViewportCoordinateSwizzleNV; w: VkViewportCoordinateSwizzleNV; } VkPipelineViewportSwizzleStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineViewportSwizzleStateCreateFlagsNV; viewportCount: u32; pViewportSwizzles: *VkViewportSwizzleNV; } VkDiscardRectangleModeEXT :: enum u32 { INCLUSIVE_EXT :: 0; EXCLUSIVE_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_DISCARD_RECTANGLE_MODE_INCLUSIVE_EXT :: INCLUSIVE_EXT; VK_DISCARD_RECTANGLE_MODE_EXCLUSIVE_EXT :: EXCLUSIVE_EXT; VK_DISCARD_RECTANGLE_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPipelineDiscardRectangleStateCreateFlagsEXT :: VkFlags; VkPhysicalDeviceDiscardRectanglePropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxDiscardRectangles: u32; } VkPipelineDiscardRectangleStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineDiscardRectangleStateCreateFlagsEXT; discardRectangleMode: VkDiscardRectangleModeEXT; discardRectangleCount: u32; pDiscardRectangles: *VkRect2D; } PFN_vkCmdSetDiscardRectangleEXT :: #type (commandBuffer: VkCommandBuffer, firstDiscardRectangle: u32, discardRectangleCount: u32, pDiscardRectangles: *VkRect2D) -> void #c_call; PFN_vkCmdSetDiscardRectangleEnableEXT :: #type (commandBuffer: VkCommandBuffer, discardRectangleEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDiscardRectangleModeEXT :: #type (commandBuffer: VkCommandBuffer, discardRectangleMode: VkDiscardRectangleModeEXT) -> void #c_call; VkConservativeRasterizationModeEXT :: enum u32 { DISABLED_EXT :: 0; OVERESTIMATE_EXT :: 1; UNDERESTIMATE_EXT :: 2; MAX_ENUM_EXT :: 2147483647; VK_CONSERVATIVE_RASTERIZATION_MODE_DISABLED_EXT :: DISABLED_EXT; VK_CONSERVATIVE_RASTERIZATION_MODE_OVERESTIMATE_EXT :: OVERESTIMATE_EXT; VK_CONSERVATIVE_RASTERIZATION_MODE_UNDERESTIMATE_EXT :: UNDERESTIMATE_EXT; VK_CONSERVATIVE_RASTERIZATION_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPipelineRasterizationConservativeStateCreateFlagsEXT :: VkFlags; VkPhysicalDeviceConservativeRasterizationPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; primitiveOverestimationSize: float; maxExtraPrimitiveOverestimationSize: float; extraPrimitiveOverestimationSizeGranularity: float; primitiveUnderestimation: VkBool32; conservativePointAndLineRasterization: VkBool32; degenerateTrianglesRasterized: VkBool32; degenerateLinesRasterized: VkBool32; fullyCoveredFragmentShaderInputVariable: VkBool32; conservativeRasterizationPostDepthCoverage: VkBool32; } VkPipelineRasterizationConservativeStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineRasterizationConservativeStateCreateFlagsEXT; conservativeRasterizationMode: VkConservativeRasterizationModeEXT; extraPrimitiveOverestimationSize: float; } VkPipelineRasterizationDepthClipStateCreateFlagsEXT :: VkFlags; VkPhysicalDeviceDepthClipEnableFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; depthClipEnable: VkBool32; } VkPipelineRasterizationDepthClipStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineRasterizationDepthClipStateCreateFlagsEXT; depthClipEnable: VkBool32; } VkXYColorEXT :: struct { x: float; y: float; } VkHdrMetadataEXT :: struct { sType: VkStructureType; pNext: *void; displayPrimaryRed: VkXYColorEXT; displayPrimaryGreen: VkXYColorEXT; displayPrimaryBlue: VkXYColorEXT; whitePoint: VkXYColorEXT; maxLuminance: float; minLuminance: float; maxContentLightLevel: float; maxFrameAverageLightLevel: float; } PFN_vkSetHdrMetadataEXT :: #type (device: VkDevice, swapchainCount: u32, pSwapchains: *VkSwapchainKHR, pMetadata: *VkHdrMetadataEXT) -> void #c_call; VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG :: struct { sType: VkStructureType; pNext: *void; relaxedLineRasterization: VkBool32; } VkDebugUtilsMessengerEXT_T :: struct {} VkDebugUtilsMessengerEXT :: *VkDebugUtilsMessengerEXT_T; VkDebugUtilsMessengerCallbackDataFlagsEXT :: VkFlags; VkDebugUtilsMessageSeverityFlagBitsEXT :: enum u32 { VERBOSE_BIT_EXT :: 1; INFO_BIT_EXT :: 16; WARNING_BIT_EXT :: 256; ERROR_BIT_EXT :: 4096; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT :: VERBOSE_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_SEVERITY_INFO_BIT_EXT :: INFO_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_SEVERITY_WARNING_BIT_EXT :: WARNING_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_SEVERITY_ERROR_BIT_EXT :: ERROR_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_SEVERITY_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkDebugUtilsMessageTypeFlagBitsEXT :: enum u32 { GENERAL_BIT_EXT :: 1; VALIDATION_BIT_EXT :: 2; PERFORMANCE_BIT_EXT :: 4; DEVICE_ADDRESS_BINDING_BIT_EXT :: 8; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_DEBUG_UTILS_MESSAGE_TYPE_GENERAL_BIT_EXT :: GENERAL_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_TYPE_VALIDATION_BIT_EXT :: VALIDATION_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_TYPE_PERFORMANCE_BIT_EXT :: PERFORMANCE_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_TYPE_DEVICE_ADDRESS_BINDING_BIT_EXT :: DEVICE_ADDRESS_BINDING_BIT_EXT; VK_DEBUG_UTILS_MESSAGE_TYPE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkDebugUtilsMessageTypeFlagsEXT :: VkFlags; VkDebugUtilsMessageSeverityFlagsEXT :: VkFlags; VkDebugUtilsMessengerCreateFlagsEXT :: VkFlags; VkDebugUtilsLabelEXT :: struct { sType: VkStructureType; pNext: *void; pLabelName: *u8; color: [4] float; } VkDebugUtilsObjectNameInfoEXT :: struct { sType: VkStructureType; pNext: *void; objectType: VkObjectType; objectHandle: u64; pObjectName: *u8; } VkDebugUtilsMessengerCallbackDataEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDebugUtilsMessengerCallbackDataFlagsEXT; pMessageIdName: *u8; messageIdNumber: s32; pMessage: *u8; queueLabelCount: u32; pQueueLabels: *VkDebugUtilsLabelEXT; cmdBufLabelCount: u32; pCmdBufLabels: *VkDebugUtilsLabelEXT; objectCount: u32; pObjects: *VkDebugUtilsObjectNameInfoEXT; } PFN_vkDebugUtilsMessengerCallbackEXT :: #type (messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: *VkDebugUtilsMessengerCallbackDataEXT, pUserData: *void) -> VkBool32 #c_call; VkDebugUtilsMessengerCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDebugUtilsMessengerCreateFlagsEXT; messageSeverity: VkDebugUtilsMessageSeverityFlagsEXT; messageType: VkDebugUtilsMessageTypeFlagsEXT; pfnUserCallback: PFN_vkDebugUtilsMessengerCallbackEXT; pUserData: *void; } VkDebugUtilsObjectTagInfoEXT :: struct { sType: VkStructureType; pNext: *void; objectType: VkObjectType; objectHandle: u64; tagName: u64; tagSize: u64; pTag: *void; } PFN_vkSetDebugUtilsObjectNameEXT :: #type (device: VkDevice, pNameInfo: *VkDebugUtilsObjectNameInfoEXT) -> VkResult #c_call; PFN_vkSetDebugUtilsObjectTagEXT :: #type (device: VkDevice, pTagInfo: *VkDebugUtilsObjectTagInfoEXT) -> VkResult #c_call; PFN_vkQueueBeginDebugUtilsLabelEXT :: #type (queue: VkQueue, pLabelInfo: *VkDebugUtilsLabelEXT) -> void #c_call; PFN_vkQueueEndDebugUtilsLabelEXT :: #type (queue: VkQueue) -> void #c_call; PFN_vkQueueInsertDebugUtilsLabelEXT :: #type (queue: VkQueue, pLabelInfo: *VkDebugUtilsLabelEXT) -> void #c_call; PFN_vkCmdBeginDebugUtilsLabelEXT :: #type (commandBuffer: VkCommandBuffer, pLabelInfo: *VkDebugUtilsLabelEXT) -> void #c_call; PFN_vkCmdEndDebugUtilsLabelEXT :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdInsertDebugUtilsLabelEXT :: #type (commandBuffer: VkCommandBuffer, pLabelInfo: *VkDebugUtilsLabelEXT) -> void #c_call; PFN_vkCreateDebugUtilsMessengerEXT :: #type (instance: VkInstance, pCreateInfo: *VkDebugUtilsMessengerCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pMessenger: *VkDebugUtilsMessengerEXT) -> VkResult #c_call; PFN_vkDestroyDebugUtilsMessengerEXT :: #type (instance: VkInstance, messenger: VkDebugUtilsMessengerEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkSubmitDebugUtilsMessageEXT :: #type (instance: VkInstance, messageSeverity: VkDebugUtilsMessageSeverityFlagBitsEXT, messageTypes: VkDebugUtilsMessageTypeFlagsEXT, pCallbackData: *VkDebugUtilsMessengerCallbackDataEXT) -> void #c_call; VkSamplerReductionModeEXT :: VkSamplerReductionMode; VkSamplerReductionModeCreateInfoEXT :: VkSamplerReductionModeCreateInfo; VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT :: VkPhysicalDeviceSamplerFilterMinmaxProperties; VkAttachmentSampleCountInfoAMD :: struct { sType: VkStructureType; pNext: *void; colorAttachmentCount: u32; pColorAttachmentSamples: *VkSampleCountFlagBits; depthStencilAttachmentSamples: VkSampleCountFlagBits; } VkPhysicalDeviceInlineUniformBlockFeaturesEXT :: VkPhysicalDeviceInlineUniformBlockFeatures; VkPhysicalDeviceInlineUniformBlockPropertiesEXT :: VkPhysicalDeviceInlineUniformBlockProperties; VkWriteDescriptorSetInlineUniformBlockEXT :: VkWriteDescriptorSetInlineUniformBlock; VkDescriptorPoolInlineUniformBlockCreateInfoEXT :: VkDescriptorPoolInlineUniformBlockCreateInfo; VkSampleLocationEXT :: struct { x: float; y: float; } VkSampleLocationsInfoEXT :: struct { sType: VkStructureType; pNext: *void; sampleLocationsPerPixel: VkSampleCountFlagBits; sampleLocationGridSize: VkExtent2D; sampleLocationsCount: u32; pSampleLocations: *VkSampleLocationEXT; } VkAttachmentSampleLocationsEXT :: struct { attachmentIndex: u32; sampleLocationsInfo: VkSampleLocationsInfoEXT; } VkSubpassSampleLocationsEXT :: struct { subpassIndex: u32; sampleLocationsInfo: VkSampleLocationsInfoEXT; } VkRenderPassSampleLocationsBeginInfoEXT :: struct { sType: VkStructureType; pNext: *void; attachmentInitialSampleLocationsCount: u32; pAttachmentInitialSampleLocations: *VkAttachmentSampleLocationsEXT; postSubpassSampleLocationsCount: u32; pPostSubpassSampleLocations: *VkSubpassSampleLocationsEXT; } VkPipelineSampleLocationsStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; sampleLocationsEnable: VkBool32; sampleLocationsInfo: VkSampleLocationsInfoEXT; } VkPhysicalDeviceSampleLocationsPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; sampleLocationSampleCounts: VkSampleCountFlags; maxSampleLocationGridSize: VkExtent2D; sampleLocationCoordinateRange: [2] float; sampleLocationSubPixelBits: u32; variableSampleLocations: VkBool32; } VkMultisamplePropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxSampleLocationGridSize: VkExtent2D; } PFN_vkCmdSetSampleLocationsEXT :: #type (commandBuffer: VkCommandBuffer, pSampleLocationsInfo: *VkSampleLocationsInfoEXT) -> void #c_call; PFN_vkGetPhysicalDeviceMultisamplePropertiesEXT :: #type (physicalDevice: VkPhysicalDevice, samples: VkSampleCountFlagBits, pMultisampleProperties: *VkMultisamplePropertiesEXT) -> void #c_call; VkBlendOverlapEXT :: enum u32 { UNCORRELATED_EXT :: 0; DISJOINT_EXT :: 1; CONJOINT_EXT :: 2; MAX_ENUM_EXT :: 2147483647; VK_BLEND_OVERLAP_UNCORRELATED_EXT :: UNCORRELATED_EXT; VK_BLEND_OVERLAP_DISJOINT_EXT :: DISJOINT_EXT; VK_BLEND_OVERLAP_CONJOINT_EXT :: CONJOINT_EXT; VK_BLEND_OVERLAP_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; advancedBlendCoherentOperations: VkBool32; } VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; advancedBlendMaxColorAttachments: u32; advancedBlendIndependentBlend: VkBool32; advancedBlendNonPremultipliedSrcColor: VkBool32; advancedBlendNonPremultipliedDstColor: VkBool32; advancedBlendCorrelatedOverlap: VkBool32; advancedBlendAllOperations: VkBool32; } VkPipelineColorBlendAdvancedStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; srcPremultiplied: VkBool32; dstPremultiplied: VkBool32; blendOverlap: VkBlendOverlapEXT; } VkPipelineCoverageToColorStateCreateFlagsNV :: VkFlags; VkPipelineCoverageToColorStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCoverageToColorStateCreateFlagsNV; coverageToColorEnable: VkBool32; coverageToColorLocation: u32; } VkCoverageModulationModeNV :: enum u32 { NONE_NV :: 0; RGB_NV :: 1; ALPHA_NV :: 2; RGBA_NV :: 3; MAX_ENUM_NV :: 2147483647; VK_COVERAGE_MODULATION_MODE_NONE_NV :: NONE_NV; VK_COVERAGE_MODULATION_MODE_RGB_NV :: RGB_NV; VK_COVERAGE_MODULATION_MODE_ALPHA_NV :: ALPHA_NV; VK_COVERAGE_MODULATION_MODE_RGBA_NV :: RGBA_NV; VK_COVERAGE_MODULATION_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPipelineCoverageModulationStateCreateFlagsNV :: VkFlags; VkPipelineCoverageModulationStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCoverageModulationStateCreateFlagsNV; coverageModulationMode: VkCoverageModulationModeNV; coverageModulationTableEnable: VkBool32; coverageModulationTableCount: u32; pCoverageModulationTable: *float; } VkAttachmentSampleCountInfoNV :: VkAttachmentSampleCountInfoAMD; VkPhysicalDeviceShaderSMBuiltinsPropertiesNV :: struct { sType: VkStructureType; pNext: *void; shaderSMCount: u32; shaderWarpsPerSM: u32; } VkPhysicalDeviceShaderSMBuiltinsFeaturesNV :: struct { sType: VkStructureType; pNext: *void; shaderSMBuiltins: VkBool32; } VkDrmFormatModifierPropertiesEXT :: struct { drmFormatModifier: u64; drmFormatModifierPlaneCount: u32; drmFormatModifierTilingFeatures: VkFormatFeatureFlags; } VkDrmFormatModifierPropertiesListEXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifierCount: u32; pDrmFormatModifierProperties: *VkDrmFormatModifierPropertiesEXT; } VkPhysicalDeviceImageDrmFormatModifierInfoEXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifier: u64; sharingMode: VkSharingMode; queueFamilyIndexCount: u32; pQueueFamilyIndices: *u32; } VkImageDrmFormatModifierListCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifierCount: u32; pDrmFormatModifiers: *u64; } VkImageDrmFormatModifierExplicitCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifier: u64; drmFormatModifierPlaneCount: u32; pPlaneLayouts: *VkSubresourceLayout; } VkImageDrmFormatModifierPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifier: u64; } VkDrmFormatModifierProperties2EXT :: struct { drmFormatModifier: u64; drmFormatModifierPlaneCount: u32; drmFormatModifierTilingFeatures: VkFormatFeatureFlags2; } VkDrmFormatModifierPropertiesList2EXT :: struct { sType: VkStructureType; pNext: *void; drmFormatModifierCount: u32; pDrmFormatModifierProperties: *VkDrmFormatModifierProperties2EXT; } PFN_vkGetImageDrmFormatModifierPropertiesEXT :: #type (device: VkDevice, image: VkImage, pProperties: *VkImageDrmFormatModifierPropertiesEXT) -> VkResult #c_call; VkValidationCacheEXT_T :: struct {} VkValidationCacheEXT :: *VkValidationCacheEXT_T; VkValidationCacheHeaderVersionEXT :: enum u32 { ONE_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_VALIDATION_CACHE_HEADER_VERSION_ONE_EXT :: ONE_EXT; VK_VALIDATION_CACHE_HEADER_VERSION_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkValidationCacheCreateFlagsEXT :: VkFlags; VkValidationCacheCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkValidationCacheCreateFlagsEXT; initialDataSize: u64; pInitialData: *void; } VkShaderModuleValidationCacheCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; validationCache: VkValidationCacheEXT; } PFN_vkCreateValidationCacheEXT :: #type (device: VkDevice, pCreateInfo: *VkValidationCacheCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pValidationCache: *VkValidationCacheEXT) -> VkResult #c_call; PFN_vkDestroyValidationCacheEXT :: #type (device: VkDevice, validationCache: VkValidationCacheEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkMergeValidationCachesEXT :: #type (device: VkDevice, dstCache: VkValidationCacheEXT, srcCacheCount: u32, pSrcCaches: *VkValidationCacheEXT) -> VkResult #c_call; PFN_vkGetValidationCacheDataEXT :: #type (device: VkDevice, validationCache: VkValidationCacheEXT, pDataSize: *u64, pData: *void) -> VkResult #c_call; VkDescriptorBindingFlagBitsEXT :: VkDescriptorBindingFlagBits; VkDescriptorBindingFlagsEXT :: VkDescriptorBindingFlags; VkDescriptorSetLayoutBindingFlagsCreateInfoEXT :: VkDescriptorSetLayoutBindingFlagsCreateInfo; VkPhysicalDeviceDescriptorIndexingFeaturesEXT :: VkPhysicalDeviceDescriptorIndexingFeatures; VkPhysicalDeviceDescriptorIndexingPropertiesEXT :: VkPhysicalDeviceDescriptorIndexingProperties; VkDescriptorSetVariableDescriptorCountAllocateInfoEXT :: VkDescriptorSetVariableDescriptorCountAllocateInfo; VkDescriptorSetVariableDescriptorCountLayoutSupportEXT :: VkDescriptorSetVariableDescriptorCountLayoutSupport; VkShadingRatePaletteEntryNV :: enum u32 { NO_INVOCATIONS_NV :: 0; _16_INVOCATIONS_PER_PIXEL_NV :: 1; _8_INVOCATIONS_PER_PIXEL_NV :: 2; _4_INVOCATIONS_PER_PIXEL_NV :: 3; _2_INVOCATIONS_PER_PIXEL_NV :: 4; _1_INVOCATION_PER_PIXEL_NV :: 5; _1_INVOCATION_PER_2X1_PIXELS_NV :: 6; _1_INVOCATION_PER_1X2_PIXELS_NV :: 7; _1_INVOCATION_PER_2X2_PIXELS_NV :: 8; _1_INVOCATION_PER_4X2_PIXELS_NV :: 9; _1_INVOCATION_PER_2X4_PIXELS_NV :: 10; _1_INVOCATION_PER_4X4_PIXELS_NV :: 11; MAX_ENUM_NV :: 2147483647; VK_SHADING_RATE_PALETTE_ENTRY_NO_INVOCATIONS_NV :: NO_INVOCATIONS_NV; VK_SHADING_RATE_PALETTE_ENTRY_16_INVOCATIONS_PER_PIXEL_NV :: _16_INVOCATIONS_PER_PIXEL_NV; VK_SHADING_RATE_PALETTE_ENTRY_8_INVOCATIONS_PER_PIXEL_NV :: _8_INVOCATIONS_PER_PIXEL_NV; VK_SHADING_RATE_PALETTE_ENTRY_4_INVOCATIONS_PER_PIXEL_NV :: _4_INVOCATIONS_PER_PIXEL_NV; VK_SHADING_RATE_PALETTE_ENTRY_2_INVOCATIONS_PER_PIXEL_NV :: _2_INVOCATIONS_PER_PIXEL_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_PIXEL_NV :: _1_INVOCATION_PER_PIXEL_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X1_PIXELS_NV :: _1_INVOCATION_PER_2X1_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_1X2_PIXELS_NV :: _1_INVOCATION_PER_1X2_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X2_PIXELS_NV :: _1_INVOCATION_PER_2X2_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X2_PIXELS_NV :: _1_INVOCATION_PER_4X2_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_2X4_PIXELS_NV :: _1_INVOCATION_PER_2X4_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_1_INVOCATION_PER_4X4_PIXELS_NV :: _1_INVOCATION_PER_4X4_PIXELS_NV; VK_SHADING_RATE_PALETTE_ENTRY_MAX_ENUM_NV :: MAX_ENUM_NV; } VkCoarseSampleOrderTypeNV :: enum u32 { DEFAULT_NV :: 0; CUSTOM_NV :: 1; PIXEL_MAJOR_NV :: 2; SAMPLE_MAJOR_NV :: 3; MAX_ENUM_NV :: 2147483647; VK_COARSE_SAMPLE_ORDER_TYPE_DEFAULT_NV :: DEFAULT_NV; VK_COARSE_SAMPLE_ORDER_TYPE_CUSTOM_NV :: CUSTOM_NV; VK_COARSE_SAMPLE_ORDER_TYPE_PIXEL_MAJOR_NV :: PIXEL_MAJOR_NV; VK_COARSE_SAMPLE_ORDER_TYPE_SAMPLE_MAJOR_NV :: SAMPLE_MAJOR_NV; VK_COARSE_SAMPLE_ORDER_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkShadingRatePaletteNV :: struct { shadingRatePaletteEntryCount: u32; pShadingRatePaletteEntries: *VkShadingRatePaletteEntryNV; } VkPipelineViewportShadingRateImageStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; shadingRateImageEnable: VkBool32; viewportCount: u32; pShadingRatePalettes: *VkShadingRatePaletteNV; } VkPhysicalDeviceShadingRateImageFeaturesNV :: struct { sType: VkStructureType; pNext: *void; shadingRateImage: VkBool32; shadingRateCoarseSampleOrder: VkBool32; } VkPhysicalDeviceShadingRateImagePropertiesNV :: struct { sType: VkStructureType; pNext: *void; shadingRateTexelSize: VkExtent2D; shadingRatePaletteSize: u32; shadingRateMaxCoarseSamples: u32; } VkCoarseSampleLocationNV :: struct { pixelX: u32; pixelY: u32; sample: u32; } VkCoarseSampleOrderCustomNV :: struct { shadingRate: VkShadingRatePaletteEntryNV; sampleCount: u32; sampleLocationCount: u32; pSampleLocations: *VkCoarseSampleLocationNV; } VkPipelineViewportCoarseSampleOrderStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; sampleOrderType: VkCoarseSampleOrderTypeNV; customSampleOrderCount: u32; pCustomSampleOrders: *VkCoarseSampleOrderCustomNV; } PFN_vkCmdBindShadingRateImageNV :: #type (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) -> void #c_call; PFN_vkCmdSetViewportShadingRatePaletteNV :: #type (commandBuffer: VkCommandBuffer, firstViewport: u32, viewportCount: u32, pShadingRatePalettes: *VkShadingRatePaletteNV) -> void #c_call; PFN_vkCmdSetCoarseSampleOrderNV :: #type (commandBuffer: VkCommandBuffer, sampleOrderType: VkCoarseSampleOrderTypeNV, customSampleOrderCount: u32, pCustomSampleOrders: *VkCoarseSampleOrderCustomNV) -> void #c_call; VkAccelerationStructureNV_T :: struct {} VkAccelerationStructureNV :: *VkAccelerationStructureNV_T; VkRayTracingShaderGroupTypeKHR :: enum u32 { GENERAL_KHR :: 0; TRIANGLES_HIT_GROUP_KHR :: 1; PROCEDURAL_HIT_GROUP_KHR :: 2; GENERAL_NV :: 0; TRIANGLES_HIT_GROUP_NV :: 1; PROCEDURAL_HIT_GROUP_NV :: 2; MAX_ENUM_KHR :: 2147483647; VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_KHR :: GENERAL_KHR; VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_KHR :: TRIANGLES_HIT_GROUP_KHR; VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_KHR :: PROCEDURAL_HIT_GROUP_KHR; VK_RAY_TRACING_SHADER_GROUP_TYPE_GENERAL_NV :: GENERAL_NV; VK_RAY_TRACING_SHADER_GROUP_TYPE_TRIANGLES_HIT_GROUP_NV :: TRIANGLES_HIT_GROUP_NV; VK_RAY_TRACING_SHADER_GROUP_TYPE_PROCEDURAL_HIT_GROUP_NV :: PROCEDURAL_HIT_GROUP_NV; VK_RAY_TRACING_SHADER_GROUP_TYPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkRayTracingShaderGroupTypeNV :: VkRayTracingShaderGroupTypeKHR; VkGeometryTypeKHR :: enum u32 { TRIANGLES_KHR :: 0; AABBS_KHR :: 1; INSTANCES_KHR :: 2; SPHERES_NV :: 1000429004; LINEAR_SWEPT_SPHERES_NV :: 1000429005; TRIANGLES_NV :: 0; AABBS_NV :: 1; MAX_ENUM_KHR :: 2147483647; VK_GEOMETRY_TYPE_TRIANGLES_KHR :: TRIANGLES_KHR; VK_GEOMETRY_TYPE_AABBS_KHR :: AABBS_KHR; VK_GEOMETRY_TYPE_INSTANCES_KHR :: INSTANCES_KHR; VK_GEOMETRY_TYPE_SPHERES_NV :: SPHERES_NV; VK_GEOMETRY_TYPE_LINEAR_SWEPT_SPHERES_NV :: LINEAR_SWEPT_SPHERES_NV; VK_GEOMETRY_TYPE_TRIANGLES_NV :: TRIANGLES_NV; VK_GEOMETRY_TYPE_AABBS_NV :: AABBS_NV; VK_GEOMETRY_TYPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkGeometryTypeNV :: VkGeometryTypeKHR; VkAccelerationStructureTypeKHR :: enum u32 { TOP_LEVEL_KHR :: 0; BOTTOM_LEVEL_KHR :: 1; GENERIC_KHR :: 2; TOP_LEVEL_NV :: 0; BOTTOM_LEVEL_NV :: 1; MAX_ENUM_KHR :: 2147483647; VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_KHR :: TOP_LEVEL_KHR; VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_KHR :: BOTTOM_LEVEL_KHR; VK_ACCELERATION_STRUCTURE_TYPE_GENERIC_KHR :: GENERIC_KHR; VK_ACCELERATION_STRUCTURE_TYPE_TOP_LEVEL_NV :: TOP_LEVEL_NV; VK_ACCELERATION_STRUCTURE_TYPE_BOTTOM_LEVEL_NV :: BOTTOM_LEVEL_NV; VK_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkAccelerationStructureTypeNV :: VkAccelerationStructureTypeKHR; VkCopyAccelerationStructureModeKHR :: enum u32 { CLONE_KHR :: 0; COMPACT_KHR :: 1; SERIALIZE_KHR :: 2; DESERIALIZE_KHR :: 3; CLONE_NV :: 0; COMPACT_NV :: 1; MAX_ENUM_KHR :: 2147483647; VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_KHR :: CLONE_KHR; VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_KHR :: COMPACT_KHR; VK_COPY_ACCELERATION_STRUCTURE_MODE_SERIALIZE_KHR :: SERIALIZE_KHR; VK_COPY_ACCELERATION_STRUCTURE_MODE_DESERIALIZE_KHR :: DESERIALIZE_KHR; VK_COPY_ACCELERATION_STRUCTURE_MODE_CLONE_NV :: CLONE_NV; VK_COPY_ACCELERATION_STRUCTURE_MODE_COMPACT_NV :: COMPACT_NV; VK_COPY_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkCopyAccelerationStructureModeNV :: VkCopyAccelerationStructureModeKHR; VkAccelerationStructureMemoryRequirementsTypeNV :: enum u32 { OBJECT_NV :: 0; BUILD_SCRATCH_NV :: 1; UPDATE_SCRATCH_NV :: 2; MAX_ENUM_NV :: 2147483647; VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_OBJECT_NV :: OBJECT_NV; VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_BUILD_SCRATCH_NV :: BUILD_SCRATCH_NV; VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_UPDATE_SCRATCH_NV :: UPDATE_SCRATCH_NV; VK_ACCELERATION_STRUCTURE_MEMORY_REQUIREMENTS_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkGeometryFlagBitsKHR :: enum u32 { OPAQUE_BIT_KHR :: 1; NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR :: 2; OPAQUE_BIT_NV :: 1; NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV :: 2; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_GEOMETRY_OPAQUE_BIT_KHR :: OPAQUE_BIT_KHR; VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR :: NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_KHR; VK_GEOMETRY_OPAQUE_BIT_NV :: OPAQUE_BIT_NV; VK_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV :: NO_DUPLICATE_ANY_HIT_INVOCATION_BIT_NV; VK_GEOMETRY_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkGeometryFlagsKHR :: VkFlags; VkGeometryFlagsNV :: VkGeometryFlagsKHR; VkGeometryFlagBitsNV :: VkGeometryFlagBitsKHR; VkGeometryInstanceFlagBitsKHR :: enum u32 { TRIANGLE_FACING_CULL_DISABLE_BIT_KHR :: 1; TRIANGLE_FLIP_FACING_BIT_KHR :: 2; FORCE_OPAQUE_BIT_KHR :: 4; FORCE_NO_OPAQUE_BIT_KHR :: 8; FORCE_OPACITY_MICROMAP_2_STATE_EXT :: 16; DISABLE_OPACITY_MICROMAPS_EXT :: 32; TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR :: 2; TRIANGLE_CULL_DISABLE_BIT_NV :: 1; TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV :: 2; FORCE_OPAQUE_BIT_NV :: 4; FORCE_NO_OPAQUE_BIT_NV :: 8; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_GEOMETRY_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT_KHR :: TRIANGLE_FACING_CULL_DISABLE_BIT_KHR; VK_GEOMETRY_INSTANCE_TRIANGLE_FLIP_FACING_BIT_KHR :: TRIANGLE_FLIP_FACING_BIT_KHR; VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_KHR :: FORCE_OPAQUE_BIT_KHR; VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_KHR :: FORCE_NO_OPAQUE_BIT_KHR; VK_GEOMETRY_INSTANCE_FORCE_OPACITY_MICROMAP_2_STATE_EXT :: FORCE_OPACITY_MICROMAP_2_STATE_EXT; VK_GEOMETRY_INSTANCE_DISABLE_OPACITY_MICROMAPS_EXT :: DISABLE_OPACITY_MICROMAPS_EXT; VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR :: TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_KHR; VK_GEOMETRY_INSTANCE_TRIANGLE_CULL_DISABLE_BIT_NV :: TRIANGLE_CULL_DISABLE_BIT_NV; VK_GEOMETRY_INSTANCE_TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV :: TRIANGLE_FRONT_COUNTERCLOCKWISE_BIT_NV; VK_GEOMETRY_INSTANCE_FORCE_OPAQUE_BIT_NV :: FORCE_OPAQUE_BIT_NV; VK_GEOMETRY_INSTANCE_FORCE_NO_OPAQUE_BIT_NV :: FORCE_NO_OPAQUE_BIT_NV; VK_GEOMETRY_INSTANCE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkGeometryInstanceFlagsKHR :: VkFlags; VkGeometryInstanceFlagsNV :: VkGeometryInstanceFlagsKHR; VkGeometryInstanceFlagBitsNV :: VkGeometryInstanceFlagBitsKHR; VkBuildAccelerationStructureFlagBitsKHR :: enum u32 { ALLOW_UPDATE_BIT_KHR :: 1; ALLOW_COMPACTION_BIT_KHR :: 2; PREFER_FAST_TRACE_BIT_KHR :: 4; PREFER_FAST_BUILD_BIT_KHR :: 8; LOW_MEMORY_BIT_KHR :: 16; MOTION_BIT_NV :: 32; ALLOW_OPACITY_MICROMAP_UPDATE_EXT :: 64; ALLOW_DISABLE_OPACITY_MICROMAPS_EXT :: 128; ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT :: 256; ALLOW_DATA_ACCESS_KHR :: 2048; ALLOW_UPDATE_BIT_NV :: 1; ALLOW_COMPACTION_BIT_NV :: 2; PREFER_FAST_TRACE_BIT_NV :: 4; PREFER_FAST_BUILD_BIT_NV :: 8; LOW_MEMORY_BIT_NV :: 16; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_KHR :: ALLOW_UPDATE_BIT_KHR; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_KHR :: ALLOW_COMPACTION_BIT_KHR; VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_KHR :: PREFER_FAST_TRACE_BIT_KHR; VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_KHR :: PREFER_FAST_BUILD_BIT_KHR; VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_KHR :: LOW_MEMORY_BIT_KHR; VK_BUILD_ACCELERATION_STRUCTURE_MOTION_BIT_NV :: MOTION_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_UPDATE_EXT :: ALLOW_OPACITY_MICROMAP_UPDATE_EXT; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DISABLE_OPACITY_MICROMAPS_EXT :: ALLOW_DISABLE_OPACITY_MICROMAPS_EXT; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT :: ALLOW_OPACITY_MICROMAP_DATA_UPDATE_EXT; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_DATA_ACCESS_KHR :: ALLOW_DATA_ACCESS_KHR; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT_NV :: ALLOW_UPDATE_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT_NV :: ALLOW_COMPACTION_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT_NV :: PREFER_FAST_TRACE_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT_NV :: PREFER_FAST_BUILD_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_LOW_MEMORY_BIT_NV :: LOW_MEMORY_BIT_NV; VK_BUILD_ACCELERATION_STRUCTURE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkBuildAccelerationStructureFlagsKHR :: VkFlags; VkBuildAccelerationStructureFlagsNV :: VkBuildAccelerationStructureFlagsKHR; VkBuildAccelerationStructureFlagBitsNV :: VkBuildAccelerationStructureFlagBitsKHR; VkRayTracingShaderGroupCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; type: VkRayTracingShaderGroupTypeKHR; generalShader: u32; closestHitShader: u32; anyHitShader: u32; intersectionShader: u32; } VkRayTracingPipelineCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCreateFlags; stageCount: u32; pStages: *VkPipelineShaderStageCreateInfo; groupCount: u32; pGroups: *VkRayTracingShaderGroupCreateInfoNV; maxRecursionDepth: u32; layout: VkPipelineLayout; basePipelineHandle: VkPipeline; basePipelineIndex: s32; } VkGeometryTrianglesNV :: struct { sType: VkStructureType; pNext: *void; vertexData: VkBuffer; vertexOffset: VkDeviceSize; vertexCount: u32; vertexStride: VkDeviceSize; vertexFormat: VkFormat; indexData: VkBuffer; indexOffset: VkDeviceSize; indexCount: u32; indexType: VkIndexType; transformData: VkBuffer; transformOffset: VkDeviceSize; } VkGeometryAABBNV :: struct { sType: VkStructureType; pNext: *void; aabbData: VkBuffer; numAABBs: u32; stride: u32; offset: VkDeviceSize; } VkGeometryDataNV :: struct { triangles: VkGeometryTrianglesNV; aabbs: VkGeometryAABBNV; } VkGeometryNV :: struct { sType: VkStructureType; pNext: *void; geometryType: VkGeometryTypeKHR; geometry: VkGeometryDataNV; flags: VkGeometryFlagsKHR; } VkAccelerationStructureInfoNV :: struct { sType: VkStructureType; pNext: *void; type: VkAccelerationStructureTypeNV; flags: VkBuildAccelerationStructureFlagsNV; instanceCount: u32; geometryCount: u32; pGeometries: *VkGeometryNV; } VkAccelerationStructureCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; compactedSize: VkDeviceSize; info: VkAccelerationStructureInfoNV; } VkBindAccelerationStructureMemoryInfoNV :: struct { sType: VkStructureType; pNext: *void; accelerationStructure: VkAccelerationStructureNV; memory: VkDeviceMemory; memoryOffset: VkDeviceSize; deviceIndexCount: u32; pDeviceIndices: *u32; } VkWriteDescriptorSetAccelerationStructureNV :: struct { sType: VkStructureType; pNext: *void; accelerationStructureCount: u32; pAccelerationStructures: *VkAccelerationStructureNV; } VkAccelerationStructureMemoryRequirementsInfoNV :: struct { sType: VkStructureType; pNext: *void; type: VkAccelerationStructureMemoryRequirementsTypeNV; accelerationStructure: VkAccelerationStructureNV; } VkPhysicalDeviceRayTracingPropertiesNV :: struct { sType: VkStructureType; pNext: *void; shaderGroupHandleSize: u32; maxRecursionDepth: u32; maxShaderGroupStride: u32; shaderGroupBaseAlignment: u32; maxGeometryCount: u64; maxInstanceCount: u64; maxTriangleCount: u64; maxDescriptorSetAccelerationStructures: u32; } VkTransformMatrixKHR :: struct { matrix: [3] [4] float; } VkTransformMatrixNV :: VkTransformMatrixKHR; VkAabbPositionsKHR :: struct { minX: float; minY: float; minZ: float; maxX: float; maxY: float; maxZ: float; } VkAabbPositionsNV :: VkAabbPositionsKHR; VkAccelerationStructureInstanceKHR :: struct { transform: VkTransformMatrixKHR; __bitfield: [8] u8; /* instanceCustomIndex: u32; /* 24 bits */ mask: u32; /* 8 bits */ instanceShaderBindingTableRecordOffset: u32; /* 24 bits */ flags: VkGeometryInstanceFlagsKHR; /* 8 bits */; */ accelerationStructureReference: u64; } VkAccelerationStructureInstanceNV :: VkAccelerationStructureInstanceKHR; PFN_vkCreateAccelerationStructureNV :: #type (device: VkDevice, pCreateInfo: *VkAccelerationStructureCreateInfoNV, pAllocator: *VkAllocationCallbacks, pAccelerationStructure: *VkAccelerationStructureNV) -> VkResult #c_call; PFN_vkDestroyAccelerationStructureNV :: #type (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetAccelerationStructureMemoryRequirementsNV :: #type (device: VkDevice, pInfo: *VkAccelerationStructureMemoryRequirementsInfoNV, pMemoryRequirements: *VkMemoryRequirements2KHR) -> void #c_call; PFN_vkBindAccelerationStructureMemoryNV :: #type (device: VkDevice, bindInfoCount: u32, pBindInfos: *VkBindAccelerationStructureMemoryInfoNV) -> VkResult #c_call; PFN_vkCmdBuildAccelerationStructureNV :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkAccelerationStructureInfoNV, instanceData: VkBuffer, instanceOffset: VkDeviceSize, update: VkBool32, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, scratch: VkBuffer, scratchOffset: VkDeviceSize) -> void #c_call; PFN_vkCmdCopyAccelerationStructureNV :: #type (commandBuffer: VkCommandBuffer, dst: VkAccelerationStructureNV, src: VkAccelerationStructureNV, mode: VkCopyAccelerationStructureModeKHR) -> void #c_call; PFN_vkCmdTraceRaysNV :: #type (commandBuffer: VkCommandBuffer, raygenShaderBindingTableBuffer: VkBuffer, raygenShaderBindingOffset: VkDeviceSize, missShaderBindingTableBuffer: VkBuffer, missShaderBindingOffset: VkDeviceSize, missShaderBindingStride: VkDeviceSize, hitShaderBindingTableBuffer: VkBuffer, hitShaderBindingOffset: VkDeviceSize, hitShaderBindingStride: VkDeviceSize, callableShaderBindingTableBuffer: VkBuffer, callableShaderBindingOffset: VkDeviceSize, callableShaderBindingStride: VkDeviceSize, width: u32, height: u32, depth: u32) -> void #c_call; PFN_vkCreateRayTracingPipelinesNV :: #type (device: VkDevice, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkRayTracingPipelineCreateInfoNV, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #c_call; PFN_vkGetRayTracingShaderGroupHandlesKHR :: #type (device: VkDevice, pipeline: VkPipeline, firstGroup: u32, groupCount: u32, dataSize: u64, pData: *void) -> VkResult #c_call; PFN_vkGetRayTracingShaderGroupHandlesNV :: #type (device: VkDevice, pipeline: VkPipeline, firstGroup: u32, groupCount: u32, dataSize: u64, pData: *void) -> VkResult #c_call; PFN_vkGetAccelerationStructureHandleNV :: #type (device: VkDevice, accelerationStructure: VkAccelerationStructureNV, dataSize: u64, pData: *void) -> VkResult #c_call; PFN_vkCmdWriteAccelerationStructuresPropertiesNV :: #type (commandBuffer: VkCommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: *VkAccelerationStructureNV, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: u32) -> void #c_call; PFN_vkCompileDeferredNV :: #type (device: VkDevice, pipeline: VkPipeline, shader: u32) -> VkResult #c_call; VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV :: struct { sType: VkStructureType; pNext: *void; representativeFragmentTest: VkBool32; } VkPipelineRepresentativeFragmentTestStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; representativeFragmentTestEnable: VkBool32; } VkPhysicalDeviceImageViewImageFormatInfoEXT :: struct { sType: VkStructureType; pNext: *void; imageViewType: VkImageViewType; } VkFilterCubicImageViewImageFormatPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; filterCubic: VkBool32; filterCubicMinmax: VkBool32; } VkQueueGlobalPriorityEXT :: VkQueueGlobalPriority; VkDeviceQueueGlobalPriorityCreateInfoEXT :: VkDeviceQueueGlobalPriorityCreateInfo; VkImportMemoryHostPointerInfoEXT :: struct { sType: VkStructureType; pNext: *void; handleType: VkExternalMemoryHandleTypeFlagBits; pHostPointer: *void; } VkMemoryHostPointerPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; memoryTypeBits: u32; } VkPhysicalDeviceExternalMemoryHostPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; minImportedHostPointerAlignment: VkDeviceSize; } PFN_vkGetMemoryHostPointerPropertiesEXT :: #type (device: VkDevice, handleType: VkExternalMemoryHandleTypeFlagBits, pHostPointer: *void, pMemoryHostPointerProperties: *VkMemoryHostPointerPropertiesEXT) -> VkResult #c_call; PFN_vkCmdWriteBufferMarkerAMD :: #type (commandBuffer: VkCommandBuffer, pipelineStage: VkPipelineStageFlagBits, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: u32) -> void #c_call; PFN_vkCmdWriteBufferMarker2AMD :: #type (commandBuffer: VkCommandBuffer, stage: VkPipelineStageFlags2, dstBuffer: VkBuffer, dstOffset: VkDeviceSize, marker: u32) -> void #c_call; VkPipelineCompilerControlFlagBitsAMD :: enum u32 { VK_PIPELINE_COMPILER_CONTROL_FLAG_BITS_MAX_ENUM_AMD :: 2147483647; } VkPipelineCompilerControlFlagsAMD :: VkFlags; VkPipelineCompilerControlCreateInfoAMD :: struct { sType: VkStructureType; pNext: *void; compilerControlFlags: VkPipelineCompilerControlFlagsAMD; } VkTimeDomainEXT :: VkTimeDomainKHR; VkCalibratedTimestampInfoEXT :: VkCalibratedTimestampInfoKHR; PFN_vkGetPhysicalDeviceCalibrateableTimeDomainsEXT :: #type (physicalDevice: VkPhysicalDevice, pTimeDomainCount: *u32, pTimeDomains: *VkTimeDomainKHR) -> VkResult #c_call; PFN_vkGetCalibratedTimestampsEXT :: #type (device: VkDevice, timestampCount: u32, pTimestampInfos: *VkCalibratedTimestampInfoKHR, pTimestamps: *u64, pMaxDeviation: *u64) -> VkResult #c_call; VkPhysicalDeviceShaderCorePropertiesAMD :: struct { sType: VkStructureType; pNext: *void; shaderEngineCount: u32; shaderArraysPerEngineCount: u32; computeUnitsPerShaderArray: u32; simdPerComputeUnit: u32; wavefrontsPerSimd: u32; wavefrontSize: u32; sgprsPerSimd: u32; minSgprAllocation: u32; maxSgprAllocation: u32; sgprAllocationGranularity: u32; vgprsPerSimd: u32; minVgprAllocation: u32; maxVgprAllocation: u32; vgprAllocationGranularity: u32; } VkMemoryOverallocationBehaviorAMD :: enum u32 { DEFAULT_AMD :: 0; ALLOWED_AMD :: 1; DISALLOWED_AMD :: 2; MAX_ENUM_AMD :: 2147483647; VK_MEMORY_OVERALLOCATION_BEHAVIOR_DEFAULT_AMD :: DEFAULT_AMD; VK_MEMORY_OVERALLOCATION_BEHAVIOR_ALLOWED_AMD :: ALLOWED_AMD; VK_MEMORY_OVERALLOCATION_BEHAVIOR_DISALLOWED_AMD :: DISALLOWED_AMD; VK_MEMORY_OVERALLOCATION_BEHAVIOR_MAX_ENUM_AMD :: MAX_ENUM_AMD; } VkDeviceMemoryOverallocationCreateInfoAMD :: struct { sType: VkStructureType; pNext: *void; overallocationBehavior: VkMemoryOverallocationBehaviorAMD; } VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxVertexAttribDivisor: u32; } VkVertexInputBindingDivisorDescriptionEXT :: VkVertexInputBindingDivisorDescription; VkPipelineVertexInputDivisorStateCreateInfoEXT :: VkPipelineVertexInputDivisorStateCreateInfo; VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT :: VkPhysicalDeviceVertexAttributeDivisorFeatures; VkPipelineCreationFeedbackFlagBitsEXT :: VkPipelineCreationFeedbackFlagBits; VkPipelineCreationFeedbackFlagsEXT :: VkPipelineCreationFeedbackFlags; VkPipelineCreationFeedbackCreateInfoEXT :: VkPipelineCreationFeedbackCreateInfo; VkPipelineCreationFeedbackEXT :: VkPipelineCreationFeedback; VkPhysicalDeviceComputeShaderDerivativesFeaturesNV :: VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR; VkPhysicalDeviceMeshShaderFeaturesNV :: struct { sType: VkStructureType; pNext: *void; taskShader: VkBool32; meshShader: VkBool32; } VkPhysicalDeviceMeshShaderPropertiesNV :: struct { sType: VkStructureType; pNext: *void; maxDrawMeshTasksCount: u32; maxTaskWorkGroupInvocations: u32; maxTaskWorkGroupSize: [3] u32; maxTaskTotalMemorySize: u32; maxTaskOutputCount: u32; maxMeshWorkGroupInvocations: u32; maxMeshWorkGroupSize: [3] u32; maxMeshTotalMemorySize: u32; maxMeshOutputVertices: u32; maxMeshOutputPrimitives: u32; maxMeshMultiviewViewCount: u32; meshOutputPerVertexGranularity: u32; meshOutputPerPrimitiveGranularity: u32; } VkDrawMeshTasksIndirectCommandNV :: struct { taskCount: u32; firstTask: u32; } PFN_vkCmdDrawMeshTasksNV :: #type (commandBuffer: VkCommandBuffer, taskCount: u32, firstTask: u32) -> void #c_call; PFN_vkCmdDrawMeshTasksIndirectNV :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawMeshTasksIndirectCountNV :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV :: VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR; VkPhysicalDeviceShaderImageFootprintFeaturesNV :: struct { sType: VkStructureType; pNext: *void; imageFootprint: VkBool32; } VkPipelineViewportExclusiveScissorStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; exclusiveScissorCount: u32; pExclusiveScissors: *VkRect2D; } VkPhysicalDeviceExclusiveScissorFeaturesNV :: struct { sType: VkStructureType; pNext: *void; exclusiveScissor: VkBool32; } PFN_vkCmdSetExclusiveScissorEnableNV :: #type (commandBuffer: VkCommandBuffer, firstExclusiveScissor: u32, exclusiveScissorCount: u32, pExclusiveScissorEnables: *VkBool32) -> void #c_call; PFN_vkCmdSetExclusiveScissorNV :: #type (commandBuffer: VkCommandBuffer, firstExclusiveScissor: u32, exclusiveScissorCount: u32, pExclusiveScissors: *VkRect2D) -> void #c_call; VkQueueFamilyCheckpointPropertiesNV :: struct { sType: VkStructureType; pNext: *void; checkpointExecutionStageMask: VkPipelineStageFlags; } VkCheckpointDataNV :: struct { sType: VkStructureType; pNext: *void; stage: VkPipelineStageFlagBits; pCheckpointMarker: *void; } VkQueueFamilyCheckpointProperties2NV :: struct { sType: VkStructureType; pNext: *void; checkpointExecutionStageMask: VkPipelineStageFlags2; } VkCheckpointData2NV :: struct { sType: VkStructureType; pNext: *void; stage: VkPipelineStageFlags2; pCheckpointMarker: *void; } PFN_vkCmdSetCheckpointNV :: #type (commandBuffer: VkCommandBuffer, pCheckpointMarker: *void) -> void #c_call; PFN_vkGetQueueCheckpointDataNV :: #type (queue: VkQueue, pCheckpointDataCount: *u32, pCheckpointData: *VkCheckpointDataNV) -> void #c_call; PFN_vkGetQueueCheckpointData2NV :: #type (queue: VkQueue, pCheckpointDataCount: *u32, pCheckpointData: *VkCheckpointData2NV) -> void #c_call; VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL :: struct { sType: VkStructureType; pNext: *void; shaderIntegerFunctions2: VkBool32; } VkPerformanceConfigurationINTEL_T :: struct {} VkPerformanceConfigurationINTEL :: *VkPerformanceConfigurationINTEL_T; VkPerformanceConfigurationTypeINTEL :: enum u32 { COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL :: 0; MAX_ENUM_INTEL :: 2147483647; VK_PERFORMANCE_CONFIGURATION_TYPE_COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL :: COMMAND_QUEUE_METRICS_DISCOVERY_ACTIVATED_INTEL; VK_PERFORMANCE_CONFIGURATION_TYPE_MAX_ENUM_INTEL :: MAX_ENUM_INTEL; } VkQueryPoolSamplingModeINTEL :: enum u32 { MANUAL_INTEL :: 0; MAX_ENUM_INTEL :: 2147483647; VK_QUERY_POOL_SAMPLING_MODE_MANUAL_INTEL :: MANUAL_INTEL; VK_QUERY_POOL_SAMPLING_MODE_MAX_ENUM_INTEL :: MAX_ENUM_INTEL; } VkPerformanceOverrideTypeINTEL :: enum u32 { NULL_HARDWARE_INTEL :: 0; FLUSH_GPU_CACHES_INTEL :: 1; MAX_ENUM_INTEL :: 2147483647; VK_PERFORMANCE_OVERRIDE_TYPE_NULL_HARDWARE_INTEL :: NULL_HARDWARE_INTEL; VK_PERFORMANCE_OVERRIDE_TYPE_FLUSH_GPU_CACHES_INTEL :: FLUSH_GPU_CACHES_INTEL; VK_PERFORMANCE_OVERRIDE_TYPE_MAX_ENUM_INTEL :: MAX_ENUM_INTEL; } VkPerformanceParameterTypeINTEL :: enum u32 { HW_COUNTERS_SUPPORTED_INTEL :: 0; STREAM_MARKER_VALID_BITS_INTEL :: 1; MAX_ENUM_INTEL :: 2147483647; VK_PERFORMANCE_PARAMETER_TYPE_HW_COUNTERS_SUPPORTED_INTEL :: HW_COUNTERS_SUPPORTED_INTEL; VK_PERFORMANCE_PARAMETER_TYPE_STREAM_MARKER_VALID_BITS_INTEL :: STREAM_MARKER_VALID_BITS_INTEL; VK_PERFORMANCE_PARAMETER_TYPE_MAX_ENUM_INTEL :: MAX_ENUM_INTEL; } VkPerformanceValueTypeINTEL :: enum u32 { UINT32_INTEL :: 0; UINT64_INTEL :: 1; FLOAT_INTEL :: 2; BOOL_INTEL :: 3; STRING_INTEL :: 4; MAX_ENUM_INTEL :: 2147483647; VK_PERFORMANCE_VALUE_TYPE_UINT32_INTEL :: UINT32_INTEL; VK_PERFORMANCE_VALUE_TYPE_UINT64_INTEL :: UINT64_INTEL; VK_PERFORMANCE_VALUE_TYPE_FLOAT_INTEL :: FLOAT_INTEL; VK_PERFORMANCE_VALUE_TYPE_BOOL_INTEL :: BOOL_INTEL; VK_PERFORMANCE_VALUE_TYPE_STRING_INTEL :: STRING_INTEL; VK_PERFORMANCE_VALUE_TYPE_MAX_ENUM_INTEL :: MAX_ENUM_INTEL; } VkPerformanceValueDataINTEL :: union { value32: u32; value64: u64; valueFloat: float; valueBool: VkBool32; valueString: *u8; } VkPerformanceValueINTEL :: struct { type: VkPerformanceValueTypeINTEL; data: VkPerformanceValueDataINTEL; } VkInitializePerformanceApiInfoINTEL :: struct { sType: VkStructureType; pNext: *void; pUserData: *void; } VkQueryPoolPerformanceQueryCreateInfoINTEL :: struct { sType: VkStructureType; pNext: *void; performanceCountersSampling: VkQueryPoolSamplingModeINTEL; } VkQueryPoolCreateInfoINTEL :: VkQueryPoolPerformanceQueryCreateInfoINTEL; VkPerformanceMarkerInfoINTEL :: struct { sType: VkStructureType; pNext: *void; marker: u64; } VkPerformanceStreamMarkerInfoINTEL :: struct { sType: VkStructureType; pNext: *void; marker: u32; } VkPerformanceOverrideInfoINTEL :: struct { sType: VkStructureType; pNext: *void; type: VkPerformanceOverrideTypeINTEL; enable: VkBool32; parameter: u64; } VkPerformanceConfigurationAcquireInfoINTEL :: struct { sType: VkStructureType; pNext: *void; type: VkPerformanceConfigurationTypeINTEL; } PFN_vkInitializePerformanceApiINTEL :: #type (device: VkDevice, pInitializeInfo: *VkInitializePerformanceApiInfoINTEL) -> VkResult #c_call; PFN_vkUninitializePerformanceApiINTEL :: #type (device: VkDevice) -> void #c_call; PFN_vkCmdSetPerformanceMarkerINTEL :: #type (commandBuffer: VkCommandBuffer, pMarkerInfo: *VkPerformanceMarkerInfoINTEL) -> VkResult #c_call; PFN_vkCmdSetPerformanceStreamMarkerINTEL :: #type (commandBuffer: VkCommandBuffer, pMarkerInfo: *VkPerformanceStreamMarkerInfoINTEL) -> VkResult #c_call; PFN_vkCmdSetPerformanceOverrideINTEL :: #type (commandBuffer: VkCommandBuffer, pOverrideInfo: *VkPerformanceOverrideInfoINTEL) -> VkResult #c_call; PFN_vkAcquirePerformanceConfigurationINTEL :: #type (device: VkDevice, pAcquireInfo: *VkPerformanceConfigurationAcquireInfoINTEL, pConfiguration: *VkPerformanceConfigurationINTEL) -> VkResult #c_call; PFN_vkReleasePerformanceConfigurationINTEL :: #type (device: VkDevice, configuration: VkPerformanceConfigurationINTEL) -> VkResult #c_call; PFN_vkQueueSetPerformanceConfigurationINTEL :: #type (queue: VkQueue, configuration: VkPerformanceConfigurationINTEL) -> VkResult #c_call; PFN_vkGetPerformanceParameterINTEL :: #type (device: VkDevice, parameter: VkPerformanceParameterTypeINTEL, pValue: *VkPerformanceValueINTEL) -> VkResult #c_call; VkPhysicalDevicePCIBusInfoPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; pciDomain: u32; pciBus: u32; pciDevice: u32; pciFunction: u32; } VkDisplayNativeHdrSurfaceCapabilitiesAMD :: struct { sType: VkStructureType; pNext: *void; localDimmingSupport: VkBool32; } VkSwapchainDisplayNativeHdrCreateInfoAMD :: struct { sType: VkStructureType; pNext: *void; localDimmingEnable: VkBool32; } PFN_vkSetLocalDimmingAMD :: #type (device: VkDevice, swapChain: VkSwapchainKHR, localDimmingEnable: VkBool32) -> void #c_call; VkPhysicalDeviceFragmentDensityMapFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityMap: VkBool32; fragmentDensityMapDynamic: VkBool32; fragmentDensityMapNonSubsampledImages: VkBool32; } VkPhysicalDeviceFragmentDensityMapPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; minFragmentDensityTexelSize: VkExtent2D; maxFragmentDensityTexelSize: VkExtent2D; fragmentDensityInvocations: VkBool32; } VkRenderPassFragmentDensityMapCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityMapAttachment: VkAttachmentReference; } VkRenderingFragmentDensityMapAttachmentInfoEXT :: struct { sType: VkStructureType; pNext: *void; imageView: VkImageView; imageLayout: VkImageLayout; } VkPhysicalDeviceScalarBlockLayoutFeaturesEXT :: VkPhysicalDeviceScalarBlockLayoutFeatures; VkPhysicalDeviceSubgroupSizeControlFeaturesEXT :: VkPhysicalDeviceSubgroupSizeControlFeatures; VkPhysicalDeviceSubgroupSizeControlPropertiesEXT :: VkPhysicalDeviceSubgroupSizeControlProperties; VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT :: VkPipelineShaderStageRequiredSubgroupSizeCreateInfo; VkShaderCorePropertiesFlagBitsAMD :: enum u32 { VK_SHADER_CORE_PROPERTIES_FLAG_BITS_MAX_ENUM_AMD :: 2147483647; } VkShaderCorePropertiesFlagsAMD :: VkFlags; VkPhysicalDeviceShaderCoreProperties2AMD :: struct { sType: VkStructureType; pNext: *void; shaderCoreFeatures: VkShaderCorePropertiesFlagsAMD; activeComputeUnitCount: u32; } VkPhysicalDeviceCoherentMemoryFeaturesAMD :: struct { sType: VkStructureType; pNext: *void; deviceCoherentMemory: VkBool32; } VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderImageInt64Atomics: VkBool32; sparseImageInt64Atomics: VkBool32; } VkPhysicalDeviceMemoryBudgetPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; heapBudget: [16] VkDeviceSize; heapUsage: [16] VkDeviceSize; } VkPhysicalDeviceMemoryPriorityFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; memoryPriority: VkBool32; } VkMemoryPriorityAllocateInfoEXT :: struct { sType: VkStructureType; pNext: *void; priority: float; } VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV :: struct { sType: VkStructureType; pNext: *void; dedicatedAllocationImageAliasing: VkBool32; } VkPhysicalDeviceBufferDeviceAddressFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; bufferDeviceAddress: VkBool32; bufferDeviceAddressCaptureReplay: VkBool32; bufferDeviceAddressMultiDevice: VkBool32; } VkPhysicalDeviceBufferAddressFeaturesEXT :: VkPhysicalDeviceBufferDeviceAddressFeaturesEXT; VkBufferDeviceAddressInfoEXT :: VkBufferDeviceAddressInfo; VkBufferDeviceAddressCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; deviceAddress: VkDeviceAddress; } PFN_vkGetBufferDeviceAddressEXT :: #type (device: VkDevice, pInfo: *VkBufferDeviceAddressInfo) -> VkDeviceAddress #c_call; VkToolPurposeFlagBitsEXT :: VkToolPurposeFlagBits; VkToolPurposeFlagsEXT :: VkToolPurposeFlags; VkPhysicalDeviceToolPropertiesEXT :: VkPhysicalDeviceToolProperties; PFN_vkGetPhysicalDeviceToolPropertiesEXT :: #type (physicalDevice: VkPhysicalDevice, pToolCount: *u32, pToolProperties: *VkPhysicalDeviceToolProperties) -> VkResult #c_call; VkImageStencilUsageCreateInfoEXT :: VkImageStencilUsageCreateInfo; VkValidationFeatureEnableEXT :: enum u32 { GPU_ASSISTED_EXT :: 0; GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT :: 1; BEST_PRACTICES_EXT :: 2; DEBUG_PRINTF_EXT :: 3; SYNCHRONIZATION_VALIDATION_EXT :: 4; MAX_ENUM_EXT :: 2147483647; VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_EXT :: GPU_ASSISTED_EXT; VK_VALIDATION_FEATURE_ENABLE_GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT :: GPU_ASSISTED_RESERVE_BINDING_SLOT_EXT; VK_VALIDATION_FEATURE_ENABLE_BEST_PRACTICES_EXT :: BEST_PRACTICES_EXT; VK_VALIDATION_FEATURE_ENABLE_DEBUG_PRINTF_EXT :: DEBUG_PRINTF_EXT; VK_VALIDATION_FEATURE_ENABLE_SYNCHRONIZATION_VALIDATION_EXT :: SYNCHRONIZATION_VALIDATION_EXT; VK_VALIDATION_FEATURE_ENABLE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkValidationFeatureDisableEXT :: enum u32 { ALL_EXT :: 0; SHADERS_EXT :: 1; THREAD_SAFETY_EXT :: 2; API_PARAMETERS_EXT :: 3; OBJECT_LIFETIMES_EXT :: 4; CORE_CHECKS_EXT :: 5; UNIQUE_HANDLES_EXT :: 6; SHADER_VALIDATION_CACHE_EXT :: 7; MAX_ENUM_EXT :: 2147483647; VK_VALIDATION_FEATURE_DISABLE_ALL_EXT :: ALL_EXT; VK_VALIDATION_FEATURE_DISABLE_SHADERS_EXT :: SHADERS_EXT; VK_VALIDATION_FEATURE_DISABLE_THREAD_SAFETY_EXT :: THREAD_SAFETY_EXT; VK_VALIDATION_FEATURE_DISABLE_API_PARAMETERS_EXT :: API_PARAMETERS_EXT; VK_VALIDATION_FEATURE_DISABLE_OBJECT_LIFETIMES_EXT :: OBJECT_LIFETIMES_EXT; VK_VALIDATION_FEATURE_DISABLE_CORE_CHECKS_EXT :: CORE_CHECKS_EXT; VK_VALIDATION_FEATURE_DISABLE_UNIQUE_HANDLES_EXT :: UNIQUE_HANDLES_EXT; VK_VALIDATION_FEATURE_DISABLE_SHADER_VALIDATION_CACHE_EXT :: SHADER_VALIDATION_CACHE_EXT; VK_VALIDATION_FEATURE_DISABLE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkValidationFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; enabledValidationFeatureCount: u32; pEnabledValidationFeatures: *VkValidationFeatureEnableEXT; disabledValidationFeatureCount: u32; pDisabledValidationFeatures: *VkValidationFeatureDisableEXT; } VkComponentTypeNV :: VkComponentTypeKHR; VkScopeNV :: VkScopeKHR; VkCooperativeMatrixPropertiesNV :: struct { sType: VkStructureType; pNext: *void; MSize: u32; NSize: u32; KSize: u32; AType: VkComponentTypeNV; BType: VkComponentTypeNV; CType: VkComponentTypeNV; DType: VkComponentTypeNV; scope: VkScopeNV; } VkPhysicalDeviceCooperativeMatrixFeaturesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrix: VkBool32; cooperativeMatrixRobustBufferAccess: VkBool32; } VkPhysicalDeviceCooperativeMatrixPropertiesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrixSupportedStages: VkShaderStageFlags; } PFN_vkGetPhysicalDeviceCooperativeMatrixPropertiesNV :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkCooperativeMatrixPropertiesNV) -> VkResult #c_call; VkCoverageReductionModeNV :: enum u32 { MERGE_NV :: 0; TRUNCATE_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_COVERAGE_REDUCTION_MODE_MERGE_NV :: MERGE_NV; VK_COVERAGE_REDUCTION_MODE_TRUNCATE_NV :: TRUNCATE_NV; VK_COVERAGE_REDUCTION_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPipelineCoverageReductionStateCreateFlagsNV :: VkFlags; VkPhysicalDeviceCoverageReductionModeFeaturesNV :: struct { sType: VkStructureType; pNext: *void; coverageReductionMode: VkBool32; } VkPipelineCoverageReductionStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCoverageReductionStateCreateFlagsNV; coverageReductionMode: VkCoverageReductionModeNV; } VkFramebufferMixedSamplesCombinationNV :: struct { sType: VkStructureType; pNext: *void; coverageReductionMode: VkCoverageReductionModeNV; rasterizationSamples: VkSampleCountFlagBits; depthStencilSamples: VkSampleCountFlags; colorSamples: VkSampleCountFlags; } PFN_vkGetPhysicalDeviceSupportedFramebufferMixedSamplesCombinationsNV :: #type (physicalDevice: VkPhysicalDevice, pCombinationCount: *u32, pCombinations: *VkFramebufferMixedSamplesCombinationNV) -> VkResult #c_call; VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; fragmentShaderSampleInterlock: VkBool32; fragmentShaderPixelInterlock: VkBool32; fragmentShaderShadingRateInterlock: VkBool32; } VkPhysicalDeviceYcbcrImageArraysFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; ycbcrImageArrays: VkBool32; } VkProvokingVertexModeEXT :: enum u32 { FIRST_VERTEX_EXT :: 0; LAST_VERTEX_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_PROVOKING_VERTEX_MODE_FIRST_VERTEX_EXT :: FIRST_VERTEX_EXT; VK_PROVOKING_VERTEX_MODE_LAST_VERTEX_EXT :: LAST_VERTEX_EXT; VK_PROVOKING_VERTEX_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPhysicalDeviceProvokingVertexFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; provokingVertexLast: VkBool32; transformFeedbackPreservesProvokingVertex: VkBool32; } VkPhysicalDeviceProvokingVertexPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; provokingVertexModePerPipeline: VkBool32; transformFeedbackPreservesTriangleFanProvokingVertex: VkBool32; } VkPipelineRasterizationProvokingVertexStateCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; provokingVertexMode: VkProvokingVertexModeEXT; } VkHeadlessSurfaceCreateFlagsEXT :: VkFlags; VkHeadlessSurfaceCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkHeadlessSurfaceCreateFlagsEXT; } PFN_vkCreateHeadlessSurfaceEXT :: #type (instance: VkInstance, pCreateInfo: *VkHeadlessSurfaceCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pSurface: *VkSurfaceKHR) -> VkResult #c_call; vkCreateHeadlessSurfaceEXT :: (instance: VkInstance, pCreateInfo: *VkHeadlessSurfaceCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pSurface: *VkSurfaceKHR) -> VkResult #foreign libvulkan; VkLineRasterizationModeEXT :: VkLineRasterizationMode; VkPhysicalDeviceLineRasterizationFeaturesEXT :: VkPhysicalDeviceLineRasterizationFeatures; VkPhysicalDeviceLineRasterizationPropertiesEXT :: VkPhysicalDeviceLineRasterizationProperties; VkPipelineRasterizationLineStateCreateInfoEXT :: VkPipelineRasterizationLineStateCreateInfo; PFN_vkCmdSetLineStippleEXT :: #type (commandBuffer: VkCommandBuffer, lineStippleFactor: u32, lineStipplePattern: u16) -> void #c_call; VkPhysicalDeviceShaderAtomicFloatFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderBufferFloat32Atomics: VkBool32; shaderBufferFloat32AtomicAdd: VkBool32; shaderBufferFloat64Atomics: VkBool32; shaderBufferFloat64AtomicAdd: VkBool32; shaderSharedFloat32Atomics: VkBool32; shaderSharedFloat32AtomicAdd: VkBool32; shaderSharedFloat64Atomics: VkBool32; shaderSharedFloat64AtomicAdd: VkBool32; shaderImageFloat32Atomics: VkBool32; shaderImageFloat32AtomicAdd: VkBool32; sparseImageFloat32Atomics: VkBool32; sparseImageFloat32AtomicAdd: VkBool32; } VkPhysicalDeviceHostQueryResetFeaturesEXT :: VkPhysicalDeviceHostQueryResetFeatures; PFN_vkResetQueryPoolEXT :: #type (device: VkDevice, queryPool: VkQueryPool, firstQuery: u32, queryCount: u32) -> void #c_call; VkPhysicalDeviceIndexTypeUint8FeaturesEXT :: VkPhysicalDeviceIndexTypeUint8Features; VkPhysicalDeviceExtendedDynamicStateFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; extendedDynamicState: VkBool32; } PFN_vkCmdSetCullModeEXT :: #type (commandBuffer: VkCommandBuffer, cullMode: VkCullModeFlags) -> void #c_call; PFN_vkCmdSetFrontFaceEXT :: #type (commandBuffer: VkCommandBuffer, frontFace: VkFrontFace) -> void #c_call; PFN_vkCmdSetPrimitiveTopologyEXT :: #type (commandBuffer: VkCommandBuffer, primitiveTopology: VkPrimitiveTopology) -> void #c_call; PFN_vkCmdSetViewportWithCountEXT :: #type (commandBuffer: VkCommandBuffer, viewportCount: u32, pViewports: *VkViewport) -> void #c_call; PFN_vkCmdSetScissorWithCountEXT :: #type (commandBuffer: VkCommandBuffer, scissorCount: u32, pScissors: *VkRect2D) -> void #c_call; PFN_vkCmdBindVertexBuffers2EXT :: #type (commandBuffer: VkCommandBuffer, firstBinding: u32, bindingCount: u32, pBuffers: *VkBuffer, pOffsets: *VkDeviceSize, pSizes: *VkDeviceSize, pStrides: *VkDeviceSize) -> void #c_call; PFN_vkCmdSetDepthTestEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthWriteEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthWriteEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthCompareOpEXT :: #type (commandBuffer: VkCommandBuffer, depthCompareOp: VkCompareOp) -> void #c_call; PFN_vkCmdSetDepthBoundsTestEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthBoundsTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetStencilTestEnableEXT :: #type (commandBuffer: VkCommandBuffer, stencilTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetStencilOpEXT :: #type (commandBuffer: VkCommandBuffer, faceMask: VkStencilFaceFlags, failOp: VkStencilOp, passOp: VkStencilOp, depthFailOp: VkStencilOp, compareOp: VkCompareOp) -> void #c_call; VkHostImageCopyFlagBitsEXT :: VkHostImageCopyFlagBits; VkHostImageCopyFlagsEXT :: VkHostImageCopyFlags; VkPhysicalDeviceHostImageCopyFeaturesEXT :: VkPhysicalDeviceHostImageCopyFeatures; VkPhysicalDeviceHostImageCopyPropertiesEXT :: VkPhysicalDeviceHostImageCopyProperties; VkMemoryToImageCopyEXT :: VkMemoryToImageCopy; VkImageToMemoryCopyEXT :: VkImageToMemoryCopy; VkCopyMemoryToImageInfoEXT :: VkCopyMemoryToImageInfo; VkCopyImageToMemoryInfoEXT :: VkCopyImageToMemoryInfo; VkCopyImageToImageInfoEXT :: VkCopyImageToImageInfo; VkHostImageLayoutTransitionInfoEXT :: VkHostImageLayoutTransitionInfo; VkSubresourceHostMemcpySizeEXT :: VkSubresourceHostMemcpySize; VkHostImageCopyDevicePerformanceQueryEXT :: VkHostImageCopyDevicePerformanceQuery; VkSubresourceLayout2EXT :: VkSubresourceLayout2; VkImageSubresource2EXT :: VkImageSubresource2; PFN_vkCopyMemoryToImageEXT :: #type (device: VkDevice, pCopyMemoryToImageInfo: *VkCopyMemoryToImageInfo) -> VkResult #c_call; PFN_vkCopyImageToMemoryEXT :: #type (device: VkDevice, pCopyImageToMemoryInfo: *VkCopyImageToMemoryInfo) -> VkResult #c_call; PFN_vkCopyImageToImageEXT :: #type (device: VkDevice, pCopyImageToImageInfo: *VkCopyImageToImageInfo) -> VkResult #c_call; PFN_vkTransitionImageLayoutEXT :: #type (device: VkDevice, transitionCount: u32, pTransitions: *VkHostImageLayoutTransitionInfo) -> VkResult #c_call; PFN_vkGetImageSubresourceLayout2EXT :: #type (device: VkDevice, image: VkImage, pSubresource: *VkImageSubresource2, pLayout: *VkSubresourceLayout2) -> void #c_call; VkPhysicalDeviceMapMemoryPlacedFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; memoryMapPlaced: VkBool32; memoryMapRangePlaced: VkBool32; memoryUnmapReserve: VkBool32; } VkPhysicalDeviceMapMemoryPlacedPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; minPlacedMemoryMapAlignment: VkDeviceSize; } VkMemoryMapPlacedInfoEXT :: struct { sType: VkStructureType; pNext: *void; pPlacedAddress: *void; } VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderBufferFloat16Atomics: VkBool32; shaderBufferFloat16AtomicAdd: VkBool32; shaderBufferFloat16AtomicMinMax: VkBool32; shaderBufferFloat32AtomicMinMax: VkBool32; shaderBufferFloat64AtomicMinMax: VkBool32; shaderSharedFloat16Atomics: VkBool32; shaderSharedFloat16AtomicAdd: VkBool32; shaderSharedFloat16AtomicMinMax: VkBool32; shaderSharedFloat32AtomicMinMax: VkBool32; shaderSharedFloat64AtomicMinMax: VkBool32; shaderImageFloat32AtomicMinMax: VkBool32; sparseImageFloat32AtomicMinMax: VkBool32; } VkPresentScalingFlagBitsEXT :: enum u32 { ONE_TO_ONE_BIT_EXT :: 1; ASPECT_RATIO_STRETCH_BIT_EXT :: 2; STRETCH_BIT_EXT :: 4; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_PRESENT_SCALING_ONE_TO_ONE_BIT_EXT :: ONE_TO_ONE_BIT_EXT; VK_PRESENT_SCALING_ASPECT_RATIO_STRETCH_BIT_EXT :: ASPECT_RATIO_STRETCH_BIT_EXT; VK_PRESENT_SCALING_STRETCH_BIT_EXT :: STRETCH_BIT_EXT; VK_PRESENT_SCALING_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkPresentScalingFlagsEXT :: VkFlags; VkPresentGravityFlagBitsEXT :: enum u32 { MIN_BIT_EXT :: 1; MAX_BIT_EXT :: 2; CENTERED_BIT_EXT :: 4; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_PRESENT_GRAVITY_MIN_BIT_EXT :: MIN_BIT_EXT; VK_PRESENT_GRAVITY_MAX_BIT_EXT :: MAX_BIT_EXT; VK_PRESENT_GRAVITY_CENTERED_BIT_EXT :: CENTERED_BIT_EXT; VK_PRESENT_GRAVITY_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkPresentGravityFlagsEXT :: VkFlags; VkSurfacePresentModeEXT :: struct { sType: VkStructureType; pNext: *void; presentMode: VkPresentModeKHR; } VkSurfacePresentScalingCapabilitiesEXT :: struct { sType: VkStructureType; pNext: *void; supportedPresentScaling: VkPresentScalingFlagsEXT; supportedPresentGravityX: VkPresentGravityFlagsEXT; supportedPresentGravityY: VkPresentGravityFlagsEXT; minScaledImageExtent: VkExtent2D; maxScaledImageExtent: VkExtent2D; } VkSurfacePresentModeCompatibilityEXT :: struct { sType: VkStructureType; pNext: *void; presentModeCount: u32; pPresentModes: *VkPresentModeKHR; } VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; swapchainMaintenance1: VkBool32; } VkSwapchainPresentFenceInfoEXT :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pFences: *VkFence; } VkSwapchainPresentModesCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; presentModeCount: u32; pPresentModes: *VkPresentModeKHR; } VkSwapchainPresentModeInfoEXT :: struct { sType: VkStructureType; pNext: *void; swapchainCount: u32; pPresentModes: *VkPresentModeKHR; } VkSwapchainPresentScalingCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; scalingBehavior: VkPresentScalingFlagsEXT; presentGravityX: VkPresentGravityFlagsEXT; presentGravityY: VkPresentGravityFlagsEXT; } VkReleaseSwapchainImagesInfoEXT :: struct { sType: VkStructureType; pNext: *void; swapchain: VkSwapchainKHR; imageIndexCount: u32; pImageIndices: *u32; } PFN_vkReleaseSwapchainImagesEXT :: #type (device: VkDevice, pReleaseInfo: *VkReleaseSwapchainImagesInfoEXT) -> VkResult #c_call; VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT :: VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures; VkIndirectCommandsLayoutNV_T :: struct {} VkIndirectCommandsLayoutNV :: *VkIndirectCommandsLayoutNV_T; VkIndirectCommandsTokenTypeNV :: enum u32 { SHADER_GROUP_NV :: 0; STATE_FLAGS_NV :: 1; INDEX_BUFFER_NV :: 2; VERTEX_BUFFER_NV :: 3; PUSH_CONSTANT_NV :: 4; DRAW_INDEXED_NV :: 5; DRAW_NV :: 6; DRAW_TASKS_NV :: 7; DRAW_MESH_TASKS_NV :: 1000328000; PIPELINE_NV :: 1000428003; DISPATCH_NV :: 1000428004; MAX_ENUM_NV :: 2147483647; VK_INDIRECT_COMMANDS_TOKEN_TYPE_SHADER_GROUP_NV :: SHADER_GROUP_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_STATE_FLAGS_NV :: STATE_FLAGS_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_NV :: INDEX_BUFFER_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_NV :: VERTEX_BUFFER_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_NV :: PUSH_CONSTANT_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_NV :: DRAW_INDEXED_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_NV :: DRAW_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_TASKS_NV :: DRAW_TASKS_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV :: DRAW_MESH_TASKS_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_PIPELINE_NV :: PIPELINE_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_NV :: DISPATCH_NV; VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkIndirectStateFlagBitsNV :: enum u32 { FRONTFACE_BIT_NV :: 1; BITS_MAX_ENUM_NV :: 2147483647; VK_INDIRECT_STATE_FLAG_FRONTFACE_BIT_NV :: FRONTFACE_BIT_NV; VK_INDIRECT_STATE_FLAG_BITS_MAX_ENUM_NV :: BITS_MAX_ENUM_NV; } VkIndirectStateFlagsNV :: VkFlags; VkIndirectCommandsLayoutUsageFlagBitsNV :: enum u32 { EXPLICIT_PREPROCESS_BIT_NV :: 1; INDEXED_SEQUENCES_BIT_NV :: 2; UNORDERED_SEQUENCES_BIT_NV :: 4; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_NV :: EXPLICIT_PREPROCESS_BIT_NV; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_INDEXED_SEQUENCES_BIT_NV :: INDEXED_SEQUENCES_BIT_NV; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_NV :: UNORDERED_SEQUENCES_BIT_NV; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkIndirectCommandsLayoutUsageFlagsNV :: VkFlags; VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV :: struct { sType: VkStructureType; pNext: *void; maxGraphicsShaderGroupCount: u32; maxIndirectSequenceCount: u32; maxIndirectCommandsTokenCount: u32; maxIndirectCommandsStreamCount: u32; maxIndirectCommandsTokenOffset: u32; maxIndirectCommandsStreamStride: u32; minSequencesCountBufferOffsetAlignment: u32; minSequencesIndexBufferOffsetAlignment: u32; minIndirectCommandsBufferOffsetAlignment: u32; } VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV :: struct { sType: VkStructureType; pNext: *void; deviceGeneratedCommands: VkBool32; } VkGraphicsShaderGroupCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; stageCount: u32; pStages: *VkPipelineShaderStageCreateInfo; pVertexInputState: *VkPipelineVertexInputStateCreateInfo; pTessellationState: *VkPipelineTessellationStateCreateInfo; } VkGraphicsPipelineShaderGroupsCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; groupCount: u32; pGroups: *VkGraphicsShaderGroupCreateInfoNV; pipelineCount: u32; pPipelines: *VkPipeline; } VkBindShaderGroupIndirectCommandNV :: struct { groupIndex: u32; } VkBindIndexBufferIndirectCommandNV :: struct { bufferAddress: VkDeviceAddress; size: u32; indexType: VkIndexType; } VkBindVertexBufferIndirectCommandNV :: struct { bufferAddress: VkDeviceAddress; size: u32; stride: u32; } VkSetStateFlagsIndirectCommandNV :: struct { data: u32; } VkIndirectCommandsStreamNV :: struct { buffer: VkBuffer; offset: VkDeviceSize; } VkIndirectCommandsLayoutTokenNV :: struct { sType: VkStructureType; pNext: *void; tokenType: VkIndirectCommandsTokenTypeNV; stream: u32; offset: u32; vertexBindingUnit: u32; vertexDynamicStride: VkBool32; pushconstantPipelineLayout: VkPipelineLayout; pushconstantShaderStageFlags: VkShaderStageFlags; pushconstantOffset: u32; pushconstantSize: u32; indirectStateFlags: VkIndirectStateFlagsNV; indexTypeCount: u32; pIndexTypes: *VkIndexType; pIndexTypeValues: *u32; } VkIndirectCommandsLayoutCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkIndirectCommandsLayoutUsageFlagsNV; pipelineBindPoint: VkPipelineBindPoint; tokenCount: u32; pTokens: *VkIndirectCommandsLayoutTokenNV; streamCount: u32; pStreamStrides: *u32; } VkGeneratedCommandsInfoNV :: struct { sType: VkStructureType; pNext: *void; pipelineBindPoint: VkPipelineBindPoint; pipeline: VkPipeline; indirectCommandsLayout: VkIndirectCommandsLayoutNV; streamCount: u32; pStreams: *VkIndirectCommandsStreamNV; sequencesCount: u32; preprocessBuffer: VkBuffer; preprocessOffset: VkDeviceSize; preprocessSize: VkDeviceSize; sequencesCountBuffer: VkBuffer; sequencesCountOffset: VkDeviceSize; sequencesIndexBuffer: VkBuffer; sequencesIndexOffset: VkDeviceSize; } VkGeneratedCommandsMemoryRequirementsInfoNV :: struct { sType: VkStructureType; pNext: *void; pipelineBindPoint: VkPipelineBindPoint; pipeline: VkPipeline; indirectCommandsLayout: VkIndirectCommandsLayoutNV; maxSequencesCount: u32; } PFN_vkGetGeneratedCommandsMemoryRequirementsNV :: #type (device: VkDevice, pInfo: *VkGeneratedCommandsMemoryRequirementsInfoNV, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkCmdPreprocessGeneratedCommandsNV :: #type (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: *VkGeneratedCommandsInfoNV) -> void #c_call; PFN_vkCmdExecuteGeneratedCommandsNV :: #type (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: *VkGeneratedCommandsInfoNV) -> void #c_call; PFN_vkCmdBindPipelineShaderGroupNV :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline, groupIndex: u32) -> void #c_call; PFN_vkCreateIndirectCommandsLayoutNV :: #type (device: VkDevice, pCreateInfo: *VkIndirectCommandsLayoutCreateInfoNV, pAllocator: *VkAllocationCallbacks, pIndirectCommandsLayout: *VkIndirectCommandsLayoutNV) -> VkResult #c_call; PFN_vkDestroyIndirectCommandsLayoutNV :: #type (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; VkPhysicalDeviceInheritedViewportScissorFeaturesNV :: struct { sType: VkStructureType; pNext: *void; inheritedViewportScissor2D: VkBool32; } VkCommandBufferInheritanceViewportScissorInfoNV :: struct { sType: VkStructureType; pNext: *void; viewportScissor2D: VkBool32; viewportDepthCount: u32; pViewportDepths: *VkViewport; } VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; texelBufferAlignment: VkBool32; } VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT :: VkPhysicalDeviceTexelBufferAlignmentProperties; VkRenderPassTransformBeginInfoQCOM :: struct { sType: VkStructureType; pNext: *void; transform: VkSurfaceTransformFlagBitsKHR; } VkCommandBufferInheritanceRenderPassTransformInfoQCOM :: struct { sType: VkStructureType; pNext: *void; transform: VkSurfaceTransformFlagBitsKHR; renderArea: VkRect2D; } VkDepthBiasRepresentationEXT :: enum u32 { LEAST_REPRESENTABLE_VALUE_FORMAT_EXT :: 0; LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT :: 1; FLOAT_EXT :: 2; MAX_ENUM_EXT :: 2147483647; VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORMAT_EXT :: LEAST_REPRESENTABLE_VALUE_FORMAT_EXT; VK_DEPTH_BIAS_REPRESENTATION_LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT :: LEAST_REPRESENTABLE_VALUE_FORCE_UNORM_EXT; VK_DEPTH_BIAS_REPRESENTATION_FLOAT_EXT :: FLOAT_EXT; VK_DEPTH_BIAS_REPRESENTATION_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPhysicalDeviceDepthBiasControlFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; depthBiasControl: VkBool32; leastRepresentableValueForceUnormRepresentation: VkBool32; floatRepresentation: VkBool32; depthBiasExact: VkBool32; } VkDepthBiasInfoEXT :: struct { sType: VkStructureType; pNext: *void; depthBiasConstantFactor: float; depthBiasClamp: float; depthBiasSlopeFactor: float; } VkDepthBiasRepresentationInfoEXT :: struct { sType: VkStructureType; pNext: *void; depthBiasRepresentation: VkDepthBiasRepresentationEXT; depthBiasExact: VkBool32; } PFN_vkCmdSetDepthBias2EXT :: #type (commandBuffer: VkCommandBuffer, pDepthBiasInfo: *VkDepthBiasInfoEXT) -> void #c_call; VkDeviceMemoryReportEventTypeEXT :: enum u32 { ALLOCATE_EXT :: 0; FREE_EXT :: 1; IMPORT_EXT :: 2; UNIMPORT_EXT :: 3; ALLOCATION_FAILED_EXT :: 4; MAX_ENUM_EXT :: 2147483647; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT :: ALLOCATE_EXT; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_FREE_EXT :: FREE_EXT; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT :: IMPORT_EXT; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_UNIMPORT_EXT :: UNIMPORT_EXT; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATION_FAILED_EXT :: ALLOCATION_FAILED_EXT; VK_DEVICE_MEMORY_REPORT_EVENT_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDeviceMemoryReportFlagsEXT :: VkFlags; VkPhysicalDeviceDeviceMemoryReportFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; deviceMemoryReport: VkBool32; } VkDeviceMemoryReportCallbackDataEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceMemoryReportFlagsEXT; type: VkDeviceMemoryReportEventTypeEXT; memoryObjectId: u64; size: VkDeviceSize; objectType: VkObjectType; objectHandle: u64; heapIndex: u32; } PFN_vkDeviceMemoryReportCallbackEXT :: #type (pCallbackData: *VkDeviceMemoryReportCallbackDataEXT, pUserData: *void) -> void #c_call; VkDeviceDeviceMemoryReportCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceMemoryReportFlagsEXT; pfnUserCallback: PFN_vkDeviceMemoryReportCallbackEXT; pUserData: *void; } PFN_vkAcquireDrmDisplayEXT :: #type (physicalDevice: VkPhysicalDevice, drmFd: s32, display: VkDisplayKHR) -> VkResult #c_call; PFN_vkGetDrmDisplayEXT :: #type (physicalDevice: VkPhysicalDevice, drmFd: s32, connectorId: u32, display: *VkDisplayKHR) -> VkResult #c_call; VkPhysicalDeviceRobustness2FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; robustBufferAccess2: VkBool32; robustImageAccess2: VkBool32; nullDescriptor: VkBool32; } VkPhysicalDeviceRobustness2PropertiesEXT :: struct { sType: VkStructureType; pNext: *void; robustStorageBufferAccessSizeAlignment: VkDeviceSize; robustUniformBufferAccessSizeAlignment: VkDeviceSize; } VkSamplerCustomBorderColorCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; customBorderColor: VkClearColorValue; format: VkFormat; } VkPhysicalDeviceCustomBorderColorPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxCustomBorderColorSamplers: u32; } VkPhysicalDeviceCustomBorderColorFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; customBorderColors: VkBool32; customBorderColorWithoutFormat: VkBool32; } VkPhysicalDevicePresentBarrierFeaturesNV :: struct { sType: VkStructureType; pNext: *void; presentBarrier: VkBool32; } VkSurfaceCapabilitiesPresentBarrierNV :: struct { sType: VkStructureType; pNext: *void; presentBarrierSupported: VkBool32; } VkSwapchainPresentBarrierCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; presentBarrierEnable: VkBool32; } VkPrivateDataSlotEXT :: VkPrivateDataSlot; VkPrivateDataSlotCreateFlagsEXT :: VkPrivateDataSlotCreateFlags; VkPhysicalDevicePrivateDataFeaturesEXT :: VkPhysicalDevicePrivateDataFeatures; VkDevicePrivateDataCreateInfoEXT :: VkDevicePrivateDataCreateInfo; VkPrivateDataSlotCreateInfoEXT :: VkPrivateDataSlotCreateInfo; PFN_vkCreatePrivateDataSlotEXT :: #type (device: VkDevice, pCreateInfo: *VkPrivateDataSlotCreateInfo, pAllocator: *VkAllocationCallbacks, pPrivateDataSlot: *VkPrivateDataSlot) -> VkResult #c_call; PFN_vkDestroyPrivateDataSlotEXT :: #type (device: VkDevice, privateDataSlot: VkPrivateDataSlot, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkSetPrivateDataEXT :: #type (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, data: u64) -> VkResult #c_call; PFN_vkGetPrivateDataEXT :: #type (device: VkDevice, objectType: VkObjectType, objectHandle: u64, privateDataSlot: VkPrivateDataSlot, pData: *u64) -> void #c_call; VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT :: VkPhysicalDevicePipelineCreationCacheControlFeatures; VkDeviceDiagnosticsConfigFlagBitsNV :: enum u32 { ENABLE_SHADER_DEBUG_INFO_BIT_NV :: 1; ENABLE_RESOURCE_TRACKING_BIT_NV :: 2; ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV :: 4; ENABLE_SHADER_ERROR_REPORTING_BIT_NV :: 8; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_DEBUG_INFO_BIT_NV :: ENABLE_SHADER_DEBUG_INFO_BIT_NV; VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_RESOURCE_TRACKING_BIT_NV :: ENABLE_RESOURCE_TRACKING_BIT_NV; VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV :: ENABLE_AUTOMATIC_CHECKPOINTS_BIT_NV; VK_DEVICE_DIAGNOSTICS_CONFIG_ENABLE_SHADER_ERROR_REPORTING_BIT_NV :: ENABLE_SHADER_ERROR_REPORTING_BIT_NV; VK_DEVICE_DIAGNOSTICS_CONFIG_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkDeviceDiagnosticsConfigFlagsNV :: VkFlags; VkPhysicalDeviceDiagnosticsConfigFeaturesNV :: struct { sType: VkStructureType; pNext: *void; diagnosticsConfig: VkBool32; } VkDeviceDiagnosticsConfigCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceDiagnosticsConfigFlagsNV; } VkCudaModuleNV_T :: struct {} VkCudaModuleNV :: *VkCudaModuleNV_T; VkCudaFunctionNV_T :: struct {} VkCudaFunctionNV :: *VkCudaFunctionNV_T; VkCudaModuleCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; dataSize: u64; pData: *void; } VkCudaFunctionCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; module: VkCudaModuleNV; pName: *u8; } VkCudaLaunchInfoNV :: struct { sType: VkStructureType; pNext: *void; function: VkCudaFunctionNV; gridDimX: u32; gridDimY: u32; gridDimZ: u32; blockDimX: u32; blockDimY: u32; blockDimZ: u32; sharedMemBytes: u32; paramCount: u64; pParams: **void; extraCount: u64; pExtras: **void; } VkPhysicalDeviceCudaKernelLaunchFeaturesNV :: struct { sType: VkStructureType; pNext: *void; cudaKernelLaunchFeatures: VkBool32; } VkPhysicalDeviceCudaKernelLaunchPropertiesNV :: struct { sType: VkStructureType; pNext: *void; computeCapabilityMinor: u32; computeCapabilityMajor: u32; } PFN_vkCreateCudaModuleNV :: #type (device: VkDevice, pCreateInfo: *VkCudaModuleCreateInfoNV, pAllocator: *VkAllocationCallbacks, pModule: *VkCudaModuleNV) -> VkResult #c_call; PFN_vkGetCudaModuleCacheNV :: #type (device: VkDevice, module: VkCudaModuleNV, pCacheSize: *u64, pCacheData: *void) -> VkResult #c_call; PFN_vkCreateCudaFunctionNV :: #type (device: VkDevice, pCreateInfo: *VkCudaFunctionCreateInfoNV, pAllocator: *VkAllocationCallbacks, pFunction: *VkCudaFunctionNV) -> VkResult #c_call; PFN_vkDestroyCudaModuleNV :: #type (device: VkDevice, module: VkCudaModuleNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkDestroyCudaFunctionNV :: #type (device: VkDevice, function: VkCudaFunctionNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCmdCudaLaunchKernelNV :: #type (commandBuffer: VkCommandBuffer, pLaunchInfo: *VkCudaLaunchInfoNV) -> void #c_call; VkTileShadingRenderPassFlagBitsQCOM :: enum u32 { ENABLE_BIT_QCOM :: 1; PER_TILE_EXECUTION_BIT_QCOM :: 2; FLAG_BITS_MAX_ENUM_QCOM :: 2147483647; VK_TILE_SHADING_RENDER_PASS_ENABLE_BIT_QCOM :: ENABLE_BIT_QCOM; VK_TILE_SHADING_RENDER_PASS_PER_TILE_EXECUTION_BIT_QCOM :: PER_TILE_EXECUTION_BIT_QCOM; VK_TILE_SHADING_RENDER_PASS_FLAG_BITS_MAX_ENUM_QCOM :: FLAG_BITS_MAX_ENUM_QCOM; } VkTileShadingRenderPassFlagsQCOM :: VkFlags; VkPhysicalDeviceTileShadingFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; tileShading: VkBool32; tileShadingFragmentStage: VkBool32; tileShadingColorAttachments: VkBool32; tileShadingDepthAttachments: VkBool32; tileShadingStencilAttachments: VkBool32; tileShadingInputAttachments: VkBool32; tileShadingSampledAttachments: VkBool32; tileShadingPerTileDraw: VkBool32; tileShadingPerTileDispatch: VkBool32; tileShadingDispatchTile: VkBool32; tileShadingApron: VkBool32; tileShadingAnisotropicApron: VkBool32; tileShadingAtomicOps: VkBool32; tileShadingImageProcessing: VkBool32; } VkPhysicalDeviceTileShadingPropertiesQCOM :: struct { sType: VkStructureType; pNext: *void; maxApronSize: u32; preferNonCoherent: VkBool32; tileGranularity: VkExtent2D; maxTileShadingRate: VkExtent2D; } VkRenderPassTileShadingCreateInfoQCOM :: struct { sType: VkStructureType; pNext: *void; flags: VkTileShadingRenderPassFlagsQCOM; tileApronSize: VkExtent2D; } VkPerTileBeginInfoQCOM :: struct { sType: VkStructureType; pNext: *void; } VkPerTileEndInfoQCOM :: struct { sType: VkStructureType; pNext: *void; } VkDispatchTileInfoQCOM :: struct { sType: VkStructureType; pNext: *void; } PFN_vkCmdDispatchTileQCOM :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdBeginPerTileExecutionQCOM :: #type (commandBuffer: VkCommandBuffer, pPerTileBeginInfo: *VkPerTileBeginInfoQCOM) -> void #c_call; PFN_vkCmdEndPerTileExecutionQCOM :: #type (commandBuffer: VkCommandBuffer, pPerTileEndInfo: *VkPerTileEndInfoQCOM) -> void #c_call; VkQueryLowLatencySupportNV :: struct { sType: VkStructureType; pNext: *void; pQueriedLowLatencyData: *void; } VkAccelerationStructureKHR_T :: struct {} VkAccelerationStructureKHR :: *VkAccelerationStructureKHR_T; VkPhysicalDeviceDescriptorBufferPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; combinedImageSamplerDescriptorSingleArray: VkBool32; bufferlessPushDescriptors: VkBool32; allowSamplerImageViewPostSubmitCreation: VkBool32; descriptorBufferOffsetAlignment: VkDeviceSize; maxDescriptorBufferBindings: u32; maxResourceDescriptorBufferBindings: u32; maxSamplerDescriptorBufferBindings: u32; maxEmbeddedImmutableSamplerBindings: u32; maxEmbeddedImmutableSamplers: u32; bufferCaptureReplayDescriptorDataSize: u64; imageCaptureReplayDescriptorDataSize: u64; imageViewCaptureReplayDescriptorDataSize: u64; samplerCaptureReplayDescriptorDataSize: u64; accelerationStructureCaptureReplayDescriptorDataSize: u64; samplerDescriptorSize: u64; combinedImageSamplerDescriptorSize: u64; sampledImageDescriptorSize: u64; storageImageDescriptorSize: u64; uniformTexelBufferDescriptorSize: u64; robustUniformTexelBufferDescriptorSize: u64; storageTexelBufferDescriptorSize: u64; robustStorageTexelBufferDescriptorSize: u64; uniformBufferDescriptorSize: u64; robustUniformBufferDescriptorSize: u64; storageBufferDescriptorSize: u64; robustStorageBufferDescriptorSize: u64; inputAttachmentDescriptorSize: u64; accelerationStructureDescriptorSize: u64; maxSamplerDescriptorBufferRange: VkDeviceSize; maxResourceDescriptorBufferRange: VkDeviceSize; samplerDescriptorBufferAddressSpaceSize: VkDeviceSize; resourceDescriptorBufferAddressSpaceSize: VkDeviceSize; descriptorBufferAddressSpaceSize: VkDeviceSize; } VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; combinedImageSamplerDensityMapDescriptorSize: u64; } VkPhysicalDeviceDescriptorBufferFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; descriptorBuffer: VkBool32; descriptorBufferCaptureReplay: VkBool32; descriptorBufferImageLayoutIgnored: VkBool32; descriptorBufferPushDescriptors: VkBool32; } VkDescriptorAddressInfoEXT :: struct { sType: VkStructureType; pNext: *void; address: VkDeviceAddress; range: VkDeviceSize; format: VkFormat; } VkDescriptorBufferBindingInfoEXT :: struct { sType: VkStructureType; pNext: *void; address: VkDeviceAddress; usage: VkBufferUsageFlags; } VkDescriptorBufferBindingPushDescriptorBufferHandleEXT :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; } VkDescriptorDataEXT :: union { pSampler: *VkSampler; pCombinedImageSampler: *VkDescriptorImageInfo; pInputAttachmentImage: *VkDescriptorImageInfo; pSampledImage: *VkDescriptorImageInfo; pStorageImage: *VkDescriptorImageInfo; pUniformTexelBuffer: *VkDescriptorAddressInfoEXT; pStorageTexelBuffer: *VkDescriptorAddressInfoEXT; pUniformBuffer: *VkDescriptorAddressInfoEXT; pStorageBuffer: *VkDescriptorAddressInfoEXT; accelerationStructure: VkDeviceAddress; } VkDescriptorGetInfoEXT :: struct { sType: VkStructureType; pNext: *void; type: VkDescriptorType; data: VkDescriptorDataEXT; } VkBufferCaptureDescriptorDataInfoEXT :: struct { sType: VkStructureType; pNext: *void; buffer: VkBuffer; } VkImageCaptureDescriptorDataInfoEXT :: struct { sType: VkStructureType; pNext: *void; image: VkImage; } VkImageViewCaptureDescriptorDataInfoEXT :: struct { sType: VkStructureType; pNext: *void; imageView: VkImageView; } VkSamplerCaptureDescriptorDataInfoEXT :: struct { sType: VkStructureType; pNext: *void; sampler: VkSampler; } VkOpaqueCaptureDescriptorDataCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; opaqueCaptureDescriptorData: *void; } VkAccelerationStructureCaptureDescriptorDataInfoEXT :: struct { sType: VkStructureType; pNext: *void; accelerationStructure: VkAccelerationStructureKHR; accelerationStructureNV: VkAccelerationStructureNV; } PFN_vkGetDescriptorSetLayoutSizeEXT :: #type (device: VkDevice, layout: VkDescriptorSetLayout, pLayoutSizeInBytes: *VkDeviceSize) -> void #c_call; PFN_vkGetDescriptorSetLayoutBindingOffsetEXT :: #type (device: VkDevice, layout: VkDescriptorSetLayout, binding: u32, pOffset: *VkDeviceSize) -> void #c_call; PFN_vkGetDescriptorEXT :: #type (device: VkDevice, pDescriptorInfo: *VkDescriptorGetInfoEXT, dataSize: u64, pDescriptor: *void) -> void #c_call; PFN_vkCmdBindDescriptorBuffersEXT :: #type (commandBuffer: VkCommandBuffer, bufferCount: u32, pBindingInfos: *VkDescriptorBufferBindingInfoEXT) -> void #c_call; PFN_vkCmdSetDescriptorBufferOffsetsEXT :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, firstSet: u32, setCount: u32, pBufferIndices: *u32, pOffsets: *VkDeviceSize) -> void #c_call; PFN_vkCmdBindDescriptorBufferEmbeddedSamplersEXT :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, layout: VkPipelineLayout, set: u32) -> void #c_call; PFN_vkGetBufferOpaqueCaptureDescriptorDataEXT :: #type (device: VkDevice, pInfo: *VkBufferCaptureDescriptorDataInfoEXT, pData: *void) -> VkResult #c_call; PFN_vkGetImageOpaqueCaptureDescriptorDataEXT :: #type (device: VkDevice, pInfo: *VkImageCaptureDescriptorDataInfoEXT, pData: *void) -> VkResult #c_call; PFN_vkGetImageViewOpaqueCaptureDescriptorDataEXT :: #type (device: VkDevice, pInfo: *VkImageViewCaptureDescriptorDataInfoEXT, pData: *void) -> VkResult #c_call; PFN_vkGetSamplerOpaqueCaptureDescriptorDataEXT :: #type (device: VkDevice, pInfo: *VkSamplerCaptureDescriptorDataInfoEXT, pData: *void) -> VkResult #c_call; PFN_vkGetAccelerationStructureOpaqueCaptureDescriptorDataEXT :: #type (device: VkDevice, pInfo: *VkAccelerationStructureCaptureDescriptorDataInfoEXT, pData: *void) -> VkResult #c_call; VkGraphicsPipelineLibraryFlagBitsEXT :: enum u32 { VERTEX_INPUT_INTERFACE_BIT_EXT :: 1; PRE_RASTERIZATION_SHADERS_BIT_EXT :: 2; FRAGMENT_SHADER_BIT_EXT :: 4; FRAGMENT_OUTPUT_INTERFACE_BIT_EXT :: 8; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_GRAPHICS_PIPELINE_LIBRARY_VERTEX_INPUT_INTERFACE_BIT_EXT :: VERTEX_INPUT_INTERFACE_BIT_EXT; VK_GRAPHICS_PIPELINE_LIBRARY_PRE_RASTERIZATION_SHADERS_BIT_EXT :: PRE_RASTERIZATION_SHADERS_BIT_EXT; VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_SHADER_BIT_EXT :: FRAGMENT_SHADER_BIT_EXT; VK_GRAPHICS_PIPELINE_LIBRARY_FRAGMENT_OUTPUT_INTERFACE_BIT_EXT :: FRAGMENT_OUTPUT_INTERFACE_BIT_EXT; VK_GRAPHICS_PIPELINE_LIBRARY_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkGraphicsPipelineLibraryFlagsEXT :: VkFlags; VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; graphicsPipelineLibrary: VkBool32; } VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; graphicsPipelineLibraryFastLinking: VkBool32; graphicsPipelineLibraryIndependentInterpolationDecoration: VkBool32; } VkGraphicsPipelineLibraryCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkGraphicsPipelineLibraryFlagsEXT; } VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD :: struct { sType: VkStructureType; pNext: *void; shaderEarlyAndLateFragmentTests: VkBool32; } VkFragmentShadingRateTypeNV :: enum u32 { FRAGMENT_SIZE_NV :: 0; ENUMS_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_FRAGMENT_SHADING_RATE_TYPE_FRAGMENT_SIZE_NV :: FRAGMENT_SIZE_NV; VK_FRAGMENT_SHADING_RATE_TYPE_ENUMS_NV :: ENUMS_NV; VK_FRAGMENT_SHADING_RATE_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkFragmentShadingRateNV :: enum u32 { _1_INVOCATION_PER_PIXEL_NV :: 0; _1_INVOCATION_PER_1X2_PIXELS_NV :: 1; _1_INVOCATION_PER_2X1_PIXELS_NV :: 4; _1_INVOCATION_PER_2X2_PIXELS_NV :: 5; _1_INVOCATION_PER_2X4_PIXELS_NV :: 6; _1_INVOCATION_PER_4X2_PIXELS_NV :: 9; _1_INVOCATION_PER_4X4_PIXELS_NV :: 10; _2_INVOCATIONS_PER_PIXEL_NV :: 11; _4_INVOCATIONS_PER_PIXEL_NV :: 12; _8_INVOCATIONS_PER_PIXEL_NV :: 13; _16_INVOCATIONS_PER_PIXEL_NV :: 14; NO_INVOCATIONS_NV :: 15; MAX_ENUM_NV :: 2147483647; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_PIXEL_NV :: _1_INVOCATION_PER_PIXEL_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_1X2_PIXELS_NV :: _1_INVOCATION_PER_1X2_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X1_PIXELS_NV :: _1_INVOCATION_PER_2X1_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X2_PIXELS_NV :: _1_INVOCATION_PER_2X2_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_2X4_PIXELS_NV :: _1_INVOCATION_PER_2X4_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X2_PIXELS_NV :: _1_INVOCATION_PER_4X2_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_1_INVOCATION_PER_4X4_PIXELS_NV :: _1_INVOCATION_PER_4X4_PIXELS_NV; VK_FRAGMENT_SHADING_RATE_2_INVOCATIONS_PER_PIXEL_NV :: _2_INVOCATIONS_PER_PIXEL_NV; VK_FRAGMENT_SHADING_RATE_4_INVOCATIONS_PER_PIXEL_NV :: _4_INVOCATIONS_PER_PIXEL_NV; VK_FRAGMENT_SHADING_RATE_8_INVOCATIONS_PER_PIXEL_NV :: _8_INVOCATIONS_PER_PIXEL_NV; VK_FRAGMENT_SHADING_RATE_16_INVOCATIONS_PER_PIXEL_NV :: _16_INVOCATIONS_PER_PIXEL_NV; VK_FRAGMENT_SHADING_RATE_NO_INVOCATIONS_NV :: NO_INVOCATIONS_NV; VK_FRAGMENT_SHADING_RATE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV :: struct { sType: VkStructureType; pNext: *void; fragmentShadingRateEnums: VkBool32; supersampleFragmentShadingRates: VkBool32; noInvocationFragmentShadingRates: VkBool32; } VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV :: struct { sType: VkStructureType; pNext: *void; maxFragmentShadingRateInvocationCount: VkSampleCountFlagBits; } VkPipelineFragmentShadingRateEnumStateCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; shadingRateType: VkFragmentShadingRateTypeNV; shadingRate: VkFragmentShadingRateNV; combinerOps: [2] VkFragmentShadingRateCombinerOpKHR; } PFN_vkCmdSetFragmentShadingRateEnumNV :: #type (commandBuffer: VkCommandBuffer, shadingRate: VkFragmentShadingRateNV, combinerOps: *[2] VkFragmentShadingRateCombinerOpKHR) -> void #c_call; VkAccelerationStructureMotionInstanceTypeNV :: enum u32 { STATIC_NV :: 0; MATRIX_MOTION_NV :: 1; SRT_MOTION_NV :: 2; MAX_ENUM_NV :: 2147483647; VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_STATIC_NV :: STATIC_NV; VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MATRIX_MOTION_NV :: MATRIX_MOTION_NV; VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_SRT_MOTION_NV :: SRT_MOTION_NV; VK_ACCELERATION_STRUCTURE_MOTION_INSTANCE_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkAccelerationStructureMotionInfoFlagsNV :: VkFlags; VkAccelerationStructureMotionInstanceFlagsNV :: VkFlags; VkDeviceOrHostAddressConstKHR :: union { deviceAddress: VkDeviceAddress; hostAddress: *void; } VkAccelerationStructureGeometryMotionTrianglesDataNV :: struct { sType: VkStructureType; pNext: *void; vertexData: VkDeviceOrHostAddressConstKHR; } VkAccelerationStructureMotionInfoNV :: struct { sType: VkStructureType; pNext: *void; maxInstances: u32; flags: VkAccelerationStructureMotionInfoFlagsNV; } VkAccelerationStructureMatrixMotionInstanceNV :: struct { transformT0: VkTransformMatrixKHR; transformT1: VkTransformMatrixKHR; __bitfield: [8] u8; /* instanceCustomIndex: u32; /* 24 bits */ mask: u32; /* 8 bits */ instanceShaderBindingTableRecordOffset: u32; /* 24 bits */ flags: VkGeometryInstanceFlagsKHR; /* 8 bits */; */ accelerationStructureReference: u64; } VkSRTDataNV :: struct { sx: float; a: float; b: float; pvx: float; sy: float; c: float; pvy: float; sz: float; pvz: float; qx: float; qy: float; qz: float; qw: float; tx: float; ty: float; tz: float; } VkAccelerationStructureSRTMotionInstanceNV :: struct { transformT0: VkSRTDataNV; transformT1: VkSRTDataNV; __bitfield: [8] u8; /* instanceCustomIndex: u32; /* 24 bits */ mask: u32; /* 8 bits */ instanceShaderBindingTableRecordOffset: u32; /* 24 bits */ flags: VkGeometryInstanceFlagsKHR; /* 8 bits */; */ accelerationStructureReference: u64; } VkAccelerationStructureMotionInstanceDataNV :: union { staticInstance: VkAccelerationStructureInstanceKHR; matrixMotionInstance: VkAccelerationStructureMatrixMotionInstanceNV; srtMotionInstance: VkAccelerationStructureSRTMotionInstanceNV; } VkAccelerationStructureMotionInstanceNV :: struct { type: VkAccelerationStructureMotionInstanceTypeNV; flags: VkAccelerationStructureMotionInstanceFlagsNV; data: VkAccelerationStructureMotionInstanceDataNV; } VkPhysicalDeviceRayTracingMotionBlurFeaturesNV :: struct { sType: VkStructureType; pNext: *void; rayTracingMotionBlur: VkBool32; rayTracingMotionBlurPipelineTraceRaysIndirect: VkBool32; } VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; ycbcr2plane444Formats: VkBool32; } VkPhysicalDeviceFragmentDensityMap2FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityMapDeferred: VkBool32; } VkPhysicalDeviceFragmentDensityMap2PropertiesEXT :: struct { sType: VkStructureType; pNext: *void; subsampledLoads: VkBool32; subsampledCoarseReconstructionEarlyAccess: VkBool32; maxSubsampledArrayLayers: u32; maxDescriptorSetSubsampledSamplers: u32; } VkCopyCommandTransformInfoQCOM :: struct { sType: VkStructureType; pNext: *void; transform: VkSurfaceTransformFlagBitsKHR; } VkPhysicalDeviceImageRobustnessFeaturesEXT :: VkPhysicalDeviceImageRobustnessFeatures; VkImageCompressionFlagBitsEXT :: enum u32 { DEFAULT_EXT :: 0; FIXED_RATE_DEFAULT_EXT :: 1; FIXED_RATE_EXPLICIT_EXT :: 2; DISABLED_EXT :: 4; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_IMAGE_COMPRESSION_DEFAULT_EXT :: DEFAULT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_DEFAULT_EXT :: FIXED_RATE_DEFAULT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_EXPLICIT_EXT :: FIXED_RATE_EXPLICIT_EXT; VK_IMAGE_COMPRESSION_DISABLED_EXT :: DISABLED_EXT; VK_IMAGE_COMPRESSION_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkImageCompressionFlagsEXT :: VkFlags; VkImageCompressionFixedRateFlagBitsEXT :: enum u32 { NONE_EXT :: 0; _1BPC_BIT_EXT :: 1; _2BPC_BIT_EXT :: 2; _3BPC_BIT_EXT :: 4; _4BPC_BIT_EXT :: 8; _5BPC_BIT_EXT :: 16; _6BPC_BIT_EXT :: 32; _7BPC_BIT_EXT :: 64; _8BPC_BIT_EXT :: 128; _9BPC_BIT_EXT :: 256; _10BPC_BIT_EXT :: 512; _11BPC_BIT_EXT :: 1024; _12BPC_BIT_EXT :: 2048; _13BPC_BIT_EXT :: 4096; _14BPC_BIT_EXT :: 8192; _15BPC_BIT_EXT :: 16384; _16BPC_BIT_EXT :: 32768; _17BPC_BIT_EXT :: 65536; _18BPC_BIT_EXT :: 131072; _19BPC_BIT_EXT :: 262144; _20BPC_BIT_EXT :: 524288; _21BPC_BIT_EXT :: 1048576; _22BPC_BIT_EXT :: 2097152; _23BPC_BIT_EXT :: 4194304; _24BPC_BIT_EXT :: 8388608; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_IMAGE_COMPRESSION_FIXED_RATE_NONE_EXT :: NONE_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_1BPC_BIT_EXT :: _1BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_2BPC_BIT_EXT :: _2BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_3BPC_BIT_EXT :: _3BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_4BPC_BIT_EXT :: _4BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_5BPC_BIT_EXT :: _5BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_6BPC_BIT_EXT :: _6BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_7BPC_BIT_EXT :: _7BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_8BPC_BIT_EXT :: _8BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_9BPC_BIT_EXT :: _9BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_10BPC_BIT_EXT :: _10BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_11BPC_BIT_EXT :: _11BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_12BPC_BIT_EXT :: _12BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_13BPC_BIT_EXT :: _13BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_14BPC_BIT_EXT :: _14BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_15BPC_BIT_EXT :: _15BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_16BPC_BIT_EXT :: _16BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_17BPC_BIT_EXT :: _17BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_18BPC_BIT_EXT :: _18BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_19BPC_BIT_EXT :: _19BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_20BPC_BIT_EXT :: _20BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_21BPC_BIT_EXT :: _21BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_22BPC_BIT_EXT :: _22BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_23BPC_BIT_EXT :: _23BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_24BPC_BIT_EXT :: _24BPC_BIT_EXT; VK_IMAGE_COMPRESSION_FIXED_RATE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkImageCompressionFixedRateFlagsEXT :: VkFlags; VkPhysicalDeviceImageCompressionControlFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; imageCompressionControl: VkBool32; } VkImageCompressionControlEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkImageCompressionFlagsEXT; compressionControlPlaneCount: u32; pFixedRateFlags: *VkImageCompressionFixedRateFlagsEXT; } VkImageCompressionPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; imageCompressionFlags: VkImageCompressionFlagsEXT; imageCompressionFixedRateFlags: VkImageCompressionFixedRateFlagsEXT; } VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; attachmentFeedbackLoopLayout: VkBool32; } VkPhysicalDevice4444FormatsFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; formatA4R4G4B4: VkBool32; formatA4B4G4R4: VkBool32; } VkDeviceFaultAddressTypeEXT :: enum u32 { NONE_EXT :: 0; READ_INVALID_EXT :: 1; WRITE_INVALID_EXT :: 2; EXECUTE_INVALID_EXT :: 3; INSTRUCTION_POINTER_UNKNOWN_EXT :: 4; INSTRUCTION_POINTER_INVALID_EXT :: 5; INSTRUCTION_POINTER_FAULT_EXT :: 6; MAX_ENUM_EXT :: 2147483647; VK_DEVICE_FAULT_ADDRESS_TYPE_NONE_EXT :: NONE_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_READ_INVALID_EXT :: READ_INVALID_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_WRITE_INVALID_EXT :: WRITE_INVALID_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_EXECUTE_INVALID_EXT :: EXECUTE_INVALID_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_UNKNOWN_EXT :: INSTRUCTION_POINTER_UNKNOWN_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_INVALID_EXT :: INSTRUCTION_POINTER_INVALID_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_INSTRUCTION_POINTER_FAULT_EXT :: INSTRUCTION_POINTER_FAULT_EXT; VK_DEVICE_FAULT_ADDRESS_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDeviceFaultVendorBinaryHeaderVersionEXT :: enum u32 { ONE_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_ONE_EXT :: ONE_EXT; VK_DEVICE_FAULT_VENDOR_BINARY_HEADER_VERSION_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPhysicalDeviceFaultFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; deviceFault: VkBool32; deviceFaultVendorBinary: VkBool32; } VkDeviceFaultCountsEXT :: struct { sType: VkStructureType; pNext: *void; addressInfoCount: u32; vendorInfoCount: u32; vendorBinarySize: VkDeviceSize; } VkDeviceFaultAddressInfoEXT :: struct { addressType: VkDeviceFaultAddressTypeEXT; reportedAddress: VkDeviceAddress; addressPrecision: VkDeviceSize; } VkDeviceFaultVendorInfoEXT :: struct { description: [256] u8; vendorFaultCode: u64; vendorFaultData: u64; } VkDeviceFaultInfoEXT :: struct { sType: VkStructureType; pNext: *void; description: [256] u8; pAddressInfos: *VkDeviceFaultAddressInfoEXT; pVendorInfos: *VkDeviceFaultVendorInfoEXT; pVendorBinaryData: *void; } VkDeviceFaultVendorBinaryHeaderVersionOneEXT :: struct { headerSize: u32; headerVersion: VkDeviceFaultVendorBinaryHeaderVersionEXT; vendorID: u32; deviceID: u32; driverVersion: u32; pipelineCacheUUID: [16] u8; applicationNameOffset: u32; applicationVersion: u32; engineNameOffset: u32; engineVersion: u32; apiVersion: u32; } PFN_vkGetDeviceFaultInfoEXT :: #type (device: VkDevice, pFaultCounts: *VkDeviceFaultCountsEXT, pFaultInfo: *VkDeviceFaultInfoEXT) -> VkResult #c_call; VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; rasterizationOrderColorAttachmentAccess: VkBool32; rasterizationOrderDepthAttachmentAccess: VkBool32; rasterizationOrderStencilAttachmentAccess: VkBool32; } VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM :: VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT; VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; formatRgba10x6WithoutYCbCrSampler: VkBool32; } VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; mutableDescriptorType: VkBool32; } VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE :: VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT; VkMutableDescriptorTypeListEXT :: struct { descriptorTypeCount: u32; pDescriptorTypes: *VkDescriptorType; } VkMutableDescriptorTypeListVALVE :: VkMutableDescriptorTypeListEXT; VkMutableDescriptorTypeCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; mutableDescriptorTypeListCount: u32; pMutableDescriptorTypeLists: *VkMutableDescriptorTypeListEXT; } VkMutableDescriptorTypeCreateInfoVALVE :: VkMutableDescriptorTypeCreateInfoEXT; VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; vertexInputDynamicState: VkBool32; } VkVertexInputBindingDescription2EXT :: struct { sType: VkStructureType; pNext: *void; binding: u32; stride: u32; inputRate: VkVertexInputRate; divisor: u32; } VkVertexInputAttributeDescription2EXT :: struct { sType: VkStructureType; pNext: *void; location: u32; binding: u32; format: VkFormat; offset: u32; } PFN_vkCmdSetVertexInputEXT :: #type (commandBuffer: VkCommandBuffer, vertexBindingDescriptionCount: u32, pVertexBindingDescriptions: *VkVertexInputBindingDescription2EXT, vertexAttributeDescriptionCount: u32, pVertexAttributeDescriptions: *VkVertexInputAttributeDescription2EXT) -> void #c_call; VkPhysicalDeviceDrmPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; hasPrimary: VkBool32; hasRender: VkBool32; primaryMajor: s64; primaryMinor: s64; renderMajor: s64; renderMinor: s64; } VkDeviceAddressBindingTypeEXT :: enum u32 { BIND_EXT :: 0; UNBIND_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_DEVICE_ADDRESS_BINDING_TYPE_BIND_EXT :: BIND_EXT; VK_DEVICE_ADDRESS_BINDING_TYPE_UNBIND_EXT :: UNBIND_EXT; VK_DEVICE_ADDRESS_BINDING_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDeviceAddressBindingFlagBitsEXT :: enum u32 { INTERNAL_OBJECT_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_DEVICE_ADDRESS_BINDING_INTERNAL_OBJECT_BIT_EXT :: INTERNAL_OBJECT_BIT_EXT; VK_DEVICE_ADDRESS_BINDING_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkDeviceAddressBindingFlagsEXT :: VkFlags; VkPhysicalDeviceAddressBindingReportFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; reportAddressBinding: VkBool32; } VkDeviceAddressBindingCallbackDataEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkDeviceAddressBindingFlagsEXT; baseAddress: VkDeviceAddress; size: VkDeviceSize; bindingType: VkDeviceAddressBindingTypeEXT; } VkPhysicalDeviceDepthClipControlFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; depthClipControl: VkBool32; } VkPipelineViewportDepthClipControlCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; negativeOneToOne: VkBool32; } VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; primitiveTopologyListRestart: VkBool32; primitiveTopologyPatchListRestart: VkBool32; } VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; presentModeFifoLatestReady: VkBool32; } VkSubpassShadingPipelineCreateInfoHUAWEI :: struct { sType: VkStructureType; pNext: *void; renderPass: VkRenderPass; subpass: u32; } VkPhysicalDeviceSubpassShadingFeaturesHUAWEI :: struct { sType: VkStructureType; pNext: *void; subpassShading: VkBool32; } VkPhysicalDeviceSubpassShadingPropertiesHUAWEI :: struct { sType: VkStructureType; pNext: *void; maxSubpassShadingWorkgroupSizeAspectRatio: u32; } PFN_vkGetDeviceSubpassShadingMaxWorkgroupSizeHUAWEI :: #type (device: VkDevice, renderpass: VkRenderPass, pMaxWorkgroupSize: *VkExtent2D) -> VkResult #c_call; PFN_vkCmdSubpassShadingHUAWEI :: #type (commandBuffer: VkCommandBuffer) -> void #c_call; VkPhysicalDeviceInvocationMaskFeaturesHUAWEI :: struct { sType: VkStructureType; pNext: *void; invocationMask: VkBool32; } PFN_vkCmdBindInvocationMaskHUAWEI :: #type (commandBuffer: VkCommandBuffer, imageView: VkImageView, imageLayout: VkImageLayout) -> void #c_call; VkRemoteAddressNV :: *void; VkMemoryGetRemoteAddressInfoNV :: struct { sType: VkStructureType; pNext: *void; memory: VkDeviceMemory; handleType: VkExternalMemoryHandleTypeFlagBits; } VkPhysicalDeviceExternalMemoryRDMAFeaturesNV :: struct { sType: VkStructureType; pNext: *void; externalMemoryRDMA: VkBool32; } PFN_vkGetMemoryRemoteAddressNV :: #type (device: VkDevice, pMemoryGetRemoteAddressInfo: *VkMemoryGetRemoteAddressInfoNV, pAddress: *VkRemoteAddressNV) -> VkResult #c_call; VkPipelineInfoEXT :: VkPipelineInfoKHR; VkPipelinePropertiesIdentifierEXT :: struct { sType: VkStructureType; pNext: *void; pipelineIdentifier: [16] u8; } VkPhysicalDevicePipelinePropertiesFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; pipelinePropertiesIdentifier: VkBool32; } PFN_vkGetPipelinePropertiesEXT :: #type (device: VkDevice, pPipelineInfo: *VkPipelineInfoEXT, pPipelineProperties: *VkBaseOutStructure) -> VkResult #c_call; VkFrameBoundaryFlagBitsEXT :: enum u32 { FRAME_END_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_FRAME_BOUNDARY_FRAME_END_BIT_EXT :: FRAME_END_BIT_EXT; VK_FRAME_BOUNDARY_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkFrameBoundaryFlagsEXT :: VkFlags; VkPhysicalDeviceFrameBoundaryFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; frameBoundary: VkBool32; } VkFrameBoundaryEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkFrameBoundaryFlagsEXT; frameID: u64; imageCount: u32; pImages: *VkImage; bufferCount: u32; pBuffers: *VkBuffer; tagName: u64; tagSize: u64; pTag: *void; } VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; multisampledRenderToSingleSampled: VkBool32; } VkSubpassResolvePerformanceQueryEXT :: struct { sType: VkStructureType; pNext: *void; optimal: VkBool32; } VkMultisampledRenderToSingleSampledInfoEXT :: struct { sType: VkStructureType; pNext: *void; multisampledRenderToSingleSampledEnable: VkBool32; rasterizationSamples: VkSampleCountFlagBits; } VkPhysicalDeviceExtendedDynamicState2FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; extendedDynamicState2: VkBool32; extendedDynamicState2LogicOp: VkBool32; extendedDynamicState2PatchControlPoints: VkBool32; } PFN_vkCmdSetPatchControlPointsEXT :: #type (commandBuffer: VkCommandBuffer, patchControlPoints: u32) -> void #c_call; PFN_vkCmdSetRasterizerDiscardEnableEXT :: #type (commandBuffer: VkCommandBuffer, rasterizerDiscardEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthBiasEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthBiasEnable: VkBool32) -> void #c_call; PFN_vkCmdSetLogicOpEXT :: #type (commandBuffer: VkCommandBuffer, logicOp: VkLogicOp) -> void #c_call; PFN_vkCmdSetPrimitiveRestartEnableEXT :: #type (commandBuffer: VkCommandBuffer, primitiveRestartEnable: VkBool32) -> void #c_call; VkPhysicalDeviceColorWriteEnableFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; colorWriteEnable: VkBool32; } VkPipelineColorWriteCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; attachmentCount: u32; pColorWriteEnables: *VkBool32; } PFN_vkCmdSetColorWriteEnableEXT :: #type (commandBuffer: VkCommandBuffer, attachmentCount: u32, pColorWriteEnables: *VkBool32) -> void #c_call; VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; primitivesGeneratedQuery: VkBool32; primitivesGeneratedQueryWithRasterizerDiscard: VkBool32; primitivesGeneratedQueryWithNonZeroStreams: VkBool32; } VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT :: VkPhysicalDeviceGlobalPriorityQueryFeatures; VkQueueFamilyGlobalPriorityPropertiesEXT :: VkQueueFamilyGlobalPriorityProperties; VkPhysicalDeviceImageViewMinLodFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; minLod: VkBool32; } VkImageViewMinLodCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; minLod: float; } VkPhysicalDeviceMultiDrawFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; multiDraw: VkBool32; } VkPhysicalDeviceMultiDrawPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxMultiDrawCount: u32; } VkMultiDrawInfoEXT :: struct { firstVertex: u32; vertexCount: u32; } VkMultiDrawIndexedInfoEXT :: struct { firstIndex: u32; indexCount: u32; vertexOffset: s32; } PFN_vkCmdDrawMultiEXT :: #type (commandBuffer: VkCommandBuffer, drawCount: u32, pVertexInfo: *VkMultiDrawInfoEXT, instanceCount: u32, firstInstance: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawMultiIndexedEXT :: #type (commandBuffer: VkCommandBuffer, drawCount: u32, pIndexInfo: *VkMultiDrawIndexedInfoEXT, instanceCount: u32, firstInstance: u32, stride: u32, pVertexOffset: *s32) -> void #c_call; VkPhysicalDeviceImage2DViewOf3DFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; image2DViewOf3D: VkBool32; sampler2DViewOf3D: VkBool32; } VkPhysicalDeviceShaderTileImageFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderTileImageColorReadAccess: VkBool32; shaderTileImageDepthReadAccess: VkBool32; shaderTileImageStencilReadAccess: VkBool32; } VkPhysicalDeviceShaderTileImagePropertiesEXT :: struct { sType: VkStructureType; pNext: *void; shaderTileImageCoherentReadAccelerated: VkBool32; shaderTileImageReadSampleFromPixelRateInvocation: VkBool32; shaderTileImageReadFromHelperInvocation: VkBool32; } VkMicromapEXT_T :: struct {} VkMicromapEXT :: *VkMicromapEXT_T; VkMicromapTypeEXT :: enum u32 { OPACITY_MICROMAP_EXT :: 0; MAX_ENUM_EXT :: 2147483647; VK_MICROMAP_TYPE_OPACITY_MICROMAP_EXT :: OPACITY_MICROMAP_EXT; VK_MICROMAP_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkBuildMicromapModeEXT :: enum u32 { BUILD_EXT :: 0; MAX_ENUM_EXT :: 2147483647; VK_BUILD_MICROMAP_MODE_BUILD_EXT :: BUILD_EXT; VK_BUILD_MICROMAP_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkCopyMicromapModeEXT :: enum u32 { CLONE_EXT :: 0; SERIALIZE_EXT :: 1; DESERIALIZE_EXT :: 2; COMPACT_EXT :: 3; MAX_ENUM_EXT :: 2147483647; VK_COPY_MICROMAP_MODE_CLONE_EXT :: CLONE_EXT; VK_COPY_MICROMAP_MODE_SERIALIZE_EXT :: SERIALIZE_EXT; VK_COPY_MICROMAP_MODE_DESERIALIZE_EXT :: DESERIALIZE_EXT; VK_COPY_MICROMAP_MODE_COMPACT_EXT :: COMPACT_EXT; VK_COPY_MICROMAP_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkOpacityMicromapFormatEXT :: enum u32 { _2_STATE_EXT :: 1; _4_STATE_EXT :: 2; MAX_ENUM_EXT :: 2147483647; VK_OPACITY_MICROMAP_FORMAT_2_STATE_EXT :: _2_STATE_EXT; VK_OPACITY_MICROMAP_FORMAT_4_STATE_EXT :: _4_STATE_EXT; VK_OPACITY_MICROMAP_FORMAT_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkOpacityMicromapSpecialIndexEXT :: enum s32 { FULLY_TRANSPARENT_EXT :: -1; FULLY_OPAQUE_EXT :: -2; FULLY_UNKNOWN_TRANSPARENT_EXT :: -3; FULLY_UNKNOWN_OPAQUE_EXT :: -4; CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV :: -5; MAX_ENUM_EXT :: 2147483647; VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_TRANSPARENT_EXT :: FULLY_TRANSPARENT_EXT; VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_OPAQUE_EXT :: FULLY_OPAQUE_EXT; VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_TRANSPARENT_EXT :: FULLY_UNKNOWN_TRANSPARENT_EXT; VK_OPACITY_MICROMAP_SPECIAL_INDEX_FULLY_UNKNOWN_OPAQUE_EXT :: FULLY_UNKNOWN_OPAQUE_EXT; VK_OPACITY_MICROMAP_SPECIAL_INDEX_CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV :: CLUSTER_GEOMETRY_DISABLE_OPACITY_MICROMAP_NV; VK_OPACITY_MICROMAP_SPECIAL_INDEX_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkAccelerationStructureCompatibilityKHR :: enum u32 { COMPATIBLE_KHR :: 0; INCOMPATIBLE_KHR :: 1; MAX_ENUM_KHR :: 2147483647; VK_ACCELERATION_STRUCTURE_COMPATIBILITY_COMPATIBLE_KHR :: COMPATIBLE_KHR; VK_ACCELERATION_STRUCTURE_COMPATIBILITY_INCOMPATIBLE_KHR :: INCOMPATIBLE_KHR; VK_ACCELERATION_STRUCTURE_COMPATIBILITY_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkAccelerationStructureBuildTypeKHR :: enum u32 { HOST_KHR :: 0; DEVICE_KHR :: 1; HOST_OR_DEVICE_KHR :: 2; MAX_ENUM_KHR :: 2147483647; VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_KHR :: HOST_KHR; VK_ACCELERATION_STRUCTURE_BUILD_TYPE_DEVICE_KHR :: DEVICE_KHR; VK_ACCELERATION_STRUCTURE_BUILD_TYPE_HOST_OR_DEVICE_KHR :: HOST_OR_DEVICE_KHR; VK_ACCELERATION_STRUCTURE_BUILD_TYPE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkBuildMicromapFlagBitsEXT :: enum u32 { PREFER_FAST_TRACE_BIT_EXT :: 1; PREFER_FAST_BUILD_BIT_EXT :: 2; ALLOW_COMPACTION_BIT_EXT :: 4; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_BUILD_MICROMAP_PREFER_FAST_TRACE_BIT_EXT :: PREFER_FAST_TRACE_BIT_EXT; VK_BUILD_MICROMAP_PREFER_FAST_BUILD_BIT_EXT :: PREFER_FAST_BUILD_BIT_EXT; VK_BUILD_MICROMAP_ALLOW_COMPACTION_BIT_EXT :: ALLOW_COMPACTION_BIT_EXT; VK_BUILD_MICROMAP_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkBuildMicromapFlagsEXT :: VkFlags; VkMicromapCreateFlagBitsEXT :: enum u32 { DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT :: 1; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_MICROMAP_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_EXT; VK_MICROMAP_CREATE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkMicromapCreateFlagsEXT :: VkFlags; VkMicromapUsageEXT :: struct { count: u32; subdivisionLevel: u32; format: u32; } VkDeviceOrHostAddressKHR :: union { deviceAddress: VkDeviceAddress; hostAddress: *void; } VkMicromapBuildInfoEXT :: struct { sType: VkStructureType; pNext: *void; type: VkMicromapTypeEXT; flags: VkBuildMicromapFlagsEXT; mode: VkBuildMicromapModeEXT; dstMicromap: VkMicromapEXT; usageCountsCount: u32; pUsageCounts: *VkMicromapUsageEXT; ppUsageCounts: **VkMicromapUsageEXT; data: VkDeviceOrHostAddressConstKHR; scratchData: VkDeviceOrHostAddressKHR; triangleArray: VkDeviceOrHostAddressConstKHR; triangleArrayStride: VkDeviceSize; } VkMicromapCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; createFlags: VkMicromapCreateFlagsEXT; buffer: VkBuffer; offset: VkDeviceSize; size: VkDeviceSize; type: VkMicromapTypeEXT; deviceAddress: VkDeviceAddress; } VkPhysicalDeviceOpacityMicromapFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; micromap: VkBool32; micromapCaptureReplay: VkBool32; micromapHostCommands: VkBool32; } VkPhysicalDeviceOpacityMicromapPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxOpacity2StateSubdivisionLevel: u32; maxOpacity4StateSubdivisionLevel: u32; } VkMicromapVersionInfoEXT :: struct { sType: VkStructureType; pNext: *void; pVersionData: *u8; } VkCopyMicromapToMemoryInfoEXT :: struct { sType: VkStructureType; pNext: *void; src: VkMicromapEXT; dst: VkDeviceOrHostAddressKHR; mode: VkCopyMicromapModeEXT; } VkCopyMemoryToMicromapInfoEXT :: struct { sType: VkStructureType; pNext: *void; src: VkDeviceOrHostAddressConstKHR; dst: VkMicromapEXT; mode: VkCopyMicromapModeEXT; } VkCopyMicromapInfoEXT :: struct { sType: VkStructureType; pNext: *void; src: VkMicromapEXT; dst: VkMicromapEXT; mode: VkCopyMicromapModeEXT; } VkMicromapBuildSizesInfoEXT :: struct { sType: VkStructureType; pNext: *void; micromapSize: VkDeviceSize; buildScratchSize: VkDeviceSize; discardable: VkBool32; } VkAccelerationStructureTrianglesOpacityMicromapEXT :: struct { sType: VkStructureType; pNext: *void; indexType: VkIndexType; indexBuffer: VkDeviceOrHostAddressConstKHR; indexStride: VkDeviceSize; baseTriangle: u32; usageCountsCount: u32; pUsageCounts: *VkMicromapUsageEXT; ppUsageCounts: **VkMicromapUsageEXT; micromap: VkMicromapEXT; } VkMicromapTriangleEXT :: struct { dataOffset: u32; subdivisionLevel: u16; format: u16; } PFN_vkCreateMicromapEXT :: #type (device: VkDevice, pCreateInfo: *VkMicromapCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pMicromap: *VkMicromapEXT) -> VkResult #c_call; PFN_vkDestroyMicromapEXT :: #type (device: VkDevice, micromap: VkMicromapEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCmdBuildMicromapsEXT :: #type (commandBuffer: VkCommandBuffer, infoCount: u32, pInfos: *VkMicromapBuildInfoEXT) -> void #c_call; PFN_vkBuildMicromapsEXT :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: u32, pInfos: *VkMicromapBuildInfoEXT) -> VkResult #c_call; PFN_vkCopyMicromapEXT :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyMicromapInfoEXT) -> VkResult #c_call; PFN_vkCopyMicromapToMemoryEXT :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyMicromapToMemoryInfoEXT) -> VkResult #c_call; PFN_vkCopyMemoryToMicromapEXT :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyMemoryToMicromapInfoEXT) -> VkResult #c_call; PFN_vkWriteMicromapsPropertiesEXT :: #type (device: VkDevice, micromapCount: u32, pMicromaps: *VkMicromapEXT, queryType: VkQueryType, dataSize: u64, pData: *void, stride: u64) -> VkResult #c_call; PFN_vkCmdCopyMicromapEXT :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyMicromapInfoEXT) -> void #c_call; PFN_vkCmdCopyMicromapToMemoryEXT :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyMicromapToMemoryInfoEXT) -> void #c_call; PFN_vkCmdCopyMemoryToMicromapEXT :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyMemoryToMicromapInfoEXT) -> void #c_call; PFN_vkCmdWriteMicromapsPropertiesEXT :: #type (commandBuffer: VkCommandBuffer, micromapCount: u32, pMicromaps: *VkMicromapEXT, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: u32) -> void #c_call; PFN_vkGetDeviceMicromapCompatibilityEXT :: #type (device: VkDevice, pVersionInfo: *VkMicromapVersionInfoEXT, pCompatibility: *VkAccelerationStructureCompatibilityKHR) -> void #c_call; PFN_vkGetMicromapBuildSizesEXT :: #type (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: *VkMicromapBuildInfoEXT, pSizeInfo: *VkMicromapBuildSizesInfoEXT) -> void #c_call; VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI :: struct { sType: VkStructureType; pNext: *void; clustercullingShader: VkBool32; multiviewClusterCullingShader: VkBool32; } VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI :: struct { sType: VkStructureType; pNext: *void; maxWorkGroupCount: [3] u32; maxWorkGroupSize: [3] u32; maxOutputClusterCount: u32; indirectBufferOffsetAlignment: VkDeviceSize; } VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI :: struct { sType: VkStructureType; pNext: *void; clusterShadingRate: VkBool32; } PFN_vkCmdDrawClusterHUAWEI :: #type (commandBuffer: VkCommandBuffer, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #c_call; PFN_vkCmdDrawClusterIndirectHUAWEI :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize) -> void #c_call; VkPhysicalDeviceBorderColorSwizzleFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; borderColorSwizzle: VkBool32; borderColorSwizzleFromImage: VkBool32; } VkSamplerBorderColorComponentMappingCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; components: VkComponentMapping; srgb: VkBool32; } VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; pageableDeviceLocalMemory: VkBool32; } PFN_vkSetDeviceMemoryPriorityEXT :: #type (device: VkDevice, memory: VkDeviceMemory, priority: float) -> void #c_call; VkPhysicalDeviceShaderCorePropertiesARM :: struct { sType: VkStructureType; pNext: *void; pixelRate: u32; texelRate: u32; fmaRate: u32; } VkPhysicalDeviceSchedulingControlsFlagsARM :: VkFlags64; // Flag bits for VkPhysicalDeviceSchedulingControlsFlagBitsARM VkPhysicalDeviceSchedulingControlsFlagBitsARM :: VkFlags64; VK_PHYSICAL_DEVICE_SCHEDULING_CONTROLS_SHADER_CORE_COUNT_ARM: VkPhysicalDeviceSchedulingControlsFlagBitsARM : 1; VkDeviceQueueShaderCoreControlCreateInfoARM :: struct { sType: VkStructureType; pNext: *void; shaderCoreCount: u32; } VkPhysicalDeviceSchedulingControlsFeaturesARM :: struct { sType: VkStructureType; pNext: *void; schedulingControls: VkBool32; } VkPhysicalDeviceSchedulingControlsPropertiesARM :: struct { sType: VkStructureType; pNext: *void; schedulingControlsFlags: VkPhysicalDeviceSchedulingControlsFlagsARM; } VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; imageSlicedViewOf3D: VkBool32; } VkImageViewSlicedCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; sliceOffset: u32; sliceCount: u32; } VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE :: struct { sType: VkStructureType; pNext: *void; descriptorSetHostMapping: VkBool32; } VkDescriptorSetBindingReferenceVALVE :: struct { sType: VkStructureType; pNext: *void; descriptorSetLayout: VkDescriptorSetLayout; binding: u32; } VkDescriptorSetLayoutHostMappingInfoVALVE :: struct { sType: VkStructureType; pNext: *void; descriptorOffset: u64; descriptorSize: u32; } PFN_vkGetDescriptorSetLayoutHostMappingInfoVALVE :: #type (device: VkDevice, pBindingReference: *VkDescriptorSetBindingReferenceVALVE, pHostMapping: *VkDescriptorSetLayoutHostMappingInfoVALVE) -> void #c_call; PFN_vkGetDescriptorSetHostMappingVALVE :: #type (device: VkDevice, descriptorSet: VkDescriptorSet, ppData: **void) -> void #c_call; VkPhysicalDeviceDepthClampZeroOneFeaturesEXT :: VkPhysicalDeviceDepthClampZeroOneFeaturesKHR; VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; nonSeamlessCubeMap: VkBool32; } VkPhysicalDeviceRenderPassStripedFeaturesARM :: struct { sType: VkStructureType; pNext: *void; renderPassStriped: VkBool32; } VkPhysicalDeviceRenderPassStripedPropertiesARM :: struct { sType: VkStructureType; pNext: *void; renderPassStripeGranularity: VkExtent2D; maxRenderPassStripes: u32; } VkRenderPassStripeInfoARM :: struct { sType: VkStructureType; pNext: *void; stripeArea: VkRect2D; } VkRenderPassStripeBeginInfoARM :: struct { sType: VkStructureType; pNext: *void; stripeInfoCount: u32; pStripeInfos: *VkRenderPassStripeInfoARM; } VkRenderPassStripeSubmitInfoARM :: struct { sType: VkStructureType; pNext: *void; stripeSemaphoreInfoCount: u32; pStripeSemaphoreInfos: *VkSemaphoreSubmitInfo; } VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityMapOffset: VkBool32; } VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM :: VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT; VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityOffsetGranularity: VkExtent2D; } VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM :: VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT; VkRenderPassFragmentDensityMapOffsetEndInfoEXT :: struct { sType: VkStructureType; pNext: *void; fragmentDensityOffsetCount: u32; pFragmentDensityOffsets: *VkOffset2D; } VkSubpassFragmentDensityMapOffsetEndInfoQCOM :: VkRenderPassFragmentDensityMapOffsetEndInfoEXT; VkCopyMemoryIndirectCommandNV :: struct { srcAddress: VkDeviceAddress; dstAddress: VkDeviceAddress; size: VkDeviceSize; } VkCopyMemoryToImageIndirectCommandNV :: struct { srcAddress: VkDeviceAddress; bufferRowLength: u32; bufferImageHeight: u32; imageSubresource: VkImageSubresourceLayers; imageOffset: VkOffset3D; imageExtent: VkExtent3D; } VkPhysicalDeviceCopyMemoryIndirectFeaturesNV :: struct { sType: VkStructureType; pNext: *void; indirectCopy: VkBool32; } VkPhysicalDeviceCopyMemoryIndirectPropertiesNV :: struct { sType: VkStructureType; pNext: *void; supportedQueues: VkQueueFlags; } PFN_vkCmdCopyMemoryIndirectNV :: #type (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: u32, stride: u32) -> void #c_call; PFN_vkCmdCopyMemoryToImageIndirectNV :: #type (commandBuffer: VkCommandBuffer, copyBufferAddress: VkDeviceAddress, copyCount: u32, stride: u32, dstImage: VkImage, dstImageLayout: VkImageLayout, pImageSubresources: *VkImageSubresourceLayers) -> void #c_call; // Flag bits for VkMemoryDecompressionMethodFlagBitsNV VkMemoryDecompressionMethodFlagBitsNV :: VkFlags64; VK_MEMORY_DECOMPRESSION_METHOD_GDEFLATE_1_0_BIT_NV: VkMemoryDecompressionMethodFlagBitsNV : 1; VkMemoryDecompressionMethodFlagsNV :: VkFlags64; VkDecompressMemoryRegionNV :: struct { srcAddress: VkDeviceAddress; dstAddress: VkDeviceAddress; compressedSize: VkDeviceSize; decompressedSize: VkDeviceSize; decompressionMethod: VkMemoryDecompressionMethodFlagsNV; } VkPhysicalDeviceMemoryDecompressionFeaturesNV :: struct { sType: VkStructureType; pNext: *void; memoryDecompression: VkBool32; } VkPhysicalDeviceMemoryDecompressionPropertiesNV :: struct { sType: VkStructureType; pNext: *void; decompressionMethods: VkMemoryDecompressionMethodFlagsNV; maxDecompressionIndirectCount: u64; } PFN_vkCmdDecompressMemoryNV :: #type (commandBuffer: VkCommandBuffer, decompressRegionCount: u32, pDecompressMemoryRegions: *VkDecompressMemoryRegionNV) -> void #c_call; PFN_vkCmdDecompressMemoryIndirectCountNV :: #type (commandBuffer: VkCommandBuffer, indirectCommandsAddress: VkDeviceAddress, indirectCommandsCountAddress: VkDeviceAddress, stride: u32) -> void #c_call; VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV :: struct { sType: VkStructureType; pNext: *void; deviceGeneratedCompute: VkBool32; deviceGeneratedComputePipelines: VkBool32; deviceGeneratedComputeCaptureReplay: VkBool32; } VkComputePipelineIndirectBufferInfoNV :: struct { sType: VkStructureType; pNext: *void; deviceAddress: VkDeviceAddress; size: VkDeviceSize; pipelineDeviceAddressCaptureReplay: VkDeviceAddress; } VkPipelineIndirectDeviceAddressInfoNV :: struct { sType: VkStructureType; pNext: *void; pipelineBindPoint: VkPipelineBindPoint; pipeline: VkPipeline; } VkBindPipelineIndirectCommandNV :: struct { pipelineAddress: VkDeviceAddress; } PFN_vkGetPipelineIndirectMemoryRequirementsNV :: #type (device: VkDevice, pCreateInfo: *VkComputePipelineCreateInfo, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkCmdUpdatePipelineIndirectBufferNV :: #type (commandBuffer: VkCommandBuffer, pipelineBindPoint: VkPipelineBindPoint, pipeline: VkPipeline) -> void #c_call; PFN_vkGetPipelineIndirectDeviceAddressNV :: #type (device: VkDevice, pInfo: *VkPipelineIndirectDeviceAddressInfoNV) -> VkDeviceAddress #c_call; VkRayTracingLssIndexingModeNV :: enum u32 { LIST_NV :: 0; SUCCESSIVE_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_RAY_TRACING_LSS_INDEXING_MODE_LIST_NV :: LIST_NV; VK_RAY_TRACING_LSS_INDEXING_MODE_SUCCESSIVE_NV :: SUCCESSIVE_NV; VK_RAY_TRACING_LSS_INDEXING_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkRayTracingLssPrimitiveEndCapsModeNV :: enum u32 { NONE_NV :: 0; CHAINED_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_NONE_NV :: NONE_NV; VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_CHAINED_NV :: CHAINED_NV; VK_RAY_TRACING_LSS_PRIMITIVE_END_CAPS_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV :: struct { sType: VkStructureType; pNext: *void; spheres: VkBool32; linearSweptSpheres: VkBool32; } VkAccelerationStructureGeometryLinearSweptSpheresDataNV :: struct { sType: VkStructureType; pNext: *void; vertexFormat: VkFormat; vertexData: VkDeviceOrHostAddressConstKHR; vertexStride: VkDeviceSize; radiusFormat: VkFormat; radiusData: VkDeviceOrHostAddressConstKHR; radiusStride: VkDeviceSize; indexType: VkIndexType; indexData: VkDeviceOrHostAddressConstKHR; indexStride: VkDeviceSize; indexingMode: VkRayTracingLssIndexingModeNV; endCapsMode: VkRayTracingLssPrimitiveEndCapsModeNV; } VkAccelerationStructureGeometrySpheresDataNV :: struct { sType: VkStructureType; pNext: *void; vertexFormat: VkFormat; vertexData: VkDeviceOrHostAddressConstKHR; vertexStride: VkDeviceSize; radiusFormat: VkFormat; radiusData: VkDeviceOrHostAddressConstKHR; radiusStride: VkDeviceSize; indexType: VkIndexType; indexData: VkDeviceOrHostAddressConstKHR; indexStride: VkDeviceSize; } VkPhysicalDeviceLinearColorAttachmentFeaturesNV :: struct { sType: VkStructureType; pNext: *void; linearColorAttachment: VkBool32; } VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; imageCompressionControlSwapchain: VkBool32; } VkImageViewSampleWeightCreateInfoQCOM :: struct { sType: VkStructureType; pNext: *void; filterCenter: VkOffset2D; filterSize: VkExtent2D; numPhases: u32; } VkPhysicalDeviceImageProcessingFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; textureSampleWeighted: VkBool32; textureBoxFilter: VkBool32; textureBlockMatch: VkBool32; } VkPhysicalDeviceImageProcessingPropertiesQCOM :: struct { sType: VkStructureType; pNext: *void; maxWeightFilterPhases: u32; maxWeightFilterDimension: VkExtent2D; maxBlockMatchRegion: VkExtent2D; maxBoxFilterBlockSize: VkExtent2D; } VkPhysicalDeviceNestedCommandBufferFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; nestedCommandBuffer: VkBool32; nestedCommandBufferRendering: VkBool32; nestedCommandBufferSimultaneousUse: VkBool32; } VkPhysicalDeviceNestedCommandBufferPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxCommandBufferNestingLevel: u32; } VkExternalMemoryAcquireUnmodifiedEXT :: struct { sType: VkStructureType; pNext: *void; acquireUnmodifiedMemory: VkBool32; } VkPhysicalDeviceExtendedDynamicState3FeaturesEXT :: struct { sType: VkStructureType; pNext: *void; extendedDynamicState3TessellationDomainOrigin: VkBool32; extendedDynamicState3DepthClampEnable: VkBool32; extendedDynamicState3PolygonMode: VkBool32; extendedDynamicState3RasterizationSamples: VkBool32; extendedDynamicState3SampleMask: VkBool32; extendedDynamicState3AlphaToCoverageEnable: VkBool32; extendedDynamicState3AlphaToOneEnable: VkBool32; extendedDynamicState3LogicOpEnable: VkBool32; extendedDynamicState3ColorBlendEnable: VkBool32; extendedDynamicState3ColorBlendEquation: VkBool32; extendedDynamicState3ColorWriteMask: VkBool32; extendedDynamicState3RasterizationStream: VkBool32; extendedDynamicState3ConservativeRasterizationMode: VkBool32; extendedDynamicState3ExtraPrimitiveOverestimationSize: VkBool32; extendedDynamicState3DepthClipEnable: VkBool32; extendedDynamicState3SampleLocationsEnable: VkBool32; extendedDynamicState3ColorBlendAdvanced: VkBool32; extendedDynamicState3ProvokingVertexMode: VkBool32; extendedDynamicState3LineRasterizationMode: VkBool32; extendedDynamicState3LineStippleEnable: VkBool32; extendedDynamicState3DepthClipNegativeOneToOne: VkBool32; extendedDynamicState3ViewportWScalingEnable: VkBool32; extendedDynamicState3ViewportSwizzle: VkBool32; extendedDynamicState3CoverageToColorEnable: VkBool32; extendedDynamicState3CoverageToColorLocation: VkBool32; extendedDynamicState3CoverageModulationMode: VkBool32; extendedDynamicState3CoverageModulationTableEnable: VkBool32; extendedDynamicState3CoverageModulationTable: VkBool32; extendedDynamicState3CoverageReductionMode: VkBool32; extendedDynamicState3RepresentativeFragmentTestEnable: VkBool32; extendedDynamicState3ShadingRateImageEnable: VkBool32; } VkPhysicalDeviceExtendedDynamicState3PropertiesEXT :: struct { sType: VkStructureType; pNext: *void; dynamicPrimitiveTopologyUnrestricted: VkBool32; } VkColorBlendEquationEXT :: struct { srcColorBlendFactor: VkBlendFactor; dstColorBlendFactor: VkBlendFactor; colorBlendOp: VkBlendOp; srcAlphaBlendFactor: VkBlendFactor; dstAlphaBlendFactor: VkBlendFactor; alphaBlendOp: VkBlendOp; } VkColorBlendAdvancedEXT :: struct { advancedBlendOp: VkBlendOp; srcPremultiplied: VkBool32; dstPremultiplied: VkBool32; blendOverlap: VkBlendOverlapEXT; clampResults: VkBool32; } PFN_vkCmdSetDepthClampEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthClampEnable: VkBool32) -> void #c_call; PFN_vkCmdSetPolygonModeEXT :: #type (commandBuffer: VkCommandBuffer, polygonMode: VkPolygonMode) -> void #c_call; PFN_vkCmdSetRasterizationSamplesEXT :: #type (commandBuffer: VkCommandBuffer, rasterizationSamples: VkSampleCountFlagBits) -> void #c_call; PFN_vkCmdSetSampleMaskEXT :: #type (commandBuffer: VkCommandBuffer, samples: VkSampleCountFlagBits, pSampleMask: *VkSampleMask) -> void #c_call; PFN_vkCmdSetAlphaToCoverageEnableEXT :: #type (commandBuffer: VkCommandBuffer, alphaToCoverageEnable: VkBool32) -> void #c_call; PFN_vkCmdSetAlphaToOneEnableEXT :: #type (commandBuffer: VkCommandBuffer, alphaToOneEnable: VkBool32) -> void #c_call; PFN_vkCmdSetLogicOpEnableEXT :: #type (commandBuffer: VkCommandBuffer, logicOpEnable: VkBool32) -> void #c_call; PFN_vkCmdSetColorBlendEnableEXT :: #type (commandBuffer: VkCommandBuffer, firstAttachment: u32, attachmentCount: u32, pColorBlendEnables: *VkBool32) -> void #c_call; PFN_vkCmdSetColorBlendEquationEXT :: #type (commandBuffer: VkCommandBuffer, firstAttachment: u32, attachmentCount: u32, pColorBlendEquations: *VkColorBlendEquationEXT) -> void #c_call; PFN_vkCmdSetColorWriteMaskEXT :: #type (commandBuffer: VkCommandBuffer, firstAttachment: u32, attachmentCount: u32, pColorWriteMasks: *VkColorComponentFlags) -> void #c_call; PFN_vkCmdSetTessellationDomainOriginEXT :: #type (commandBuffer: VkCommandBuffer, domainOrigin: VkTessellationDomainOrigin) -> void #c_call; PFN_vkCmdSetRasterizationStreamEXT :: #type (commandBuffer: VkCommandBuffer, rasterizationStream: u32) -> void #c_call; PFN_vkCmdSetConservativeRasterizationModeEXT :: #type (commandBuffer: VkCommandBuffer, conservativeRasterizationMode: VkConservativeRasterizationModeEXT) -> void #c_call; PFN_vkCmdSetExtraPrimitiveOverestimationSizeEXT :: #type (commandBuffer: VkCommandBuffer, extraPrimitiveOverestimationSize: float) -> void #c_call; PFN_vkCmdSetDepthClipEnableEXT :: #type (commandBuffer: VkCommandBuffer, depthClipEnable: VkBool32) -> void #c_call; PFN_vkCmdSetSampleLocationsEnableEXT :: #type (commandBuffer: VkCommandBuffer, sampleLocationsEnable: VkBool32) -> void #c_call; PFN_vkCmdSetColorBlendAdvancedEXT :: #type (commandBuffer: VkCommandBuffer, firstAttachment: u32, attachmentCount: u32, pColorBlendAdvanced: *VkColorBlendAdvancedEXT) -> void #c_call; PFN_vkCmdSetProvokingVertexModeEXT :: #type (commandBuffer: VkCommandBuffer, provokingVertexMode: VkProvokingVertexModeEXT) -> void #c_call; PFN_vkCmdSetLineRasterizationModeEXT :: #type (commandBuffer: VkCommandBuffer, lineRasterizationMode: VkLineRasterizationModeEXT) -> void #c_call; PFN_vkCmdSetLineStippleEnableEXT :: #type (commandBuffer: VkCommandBuffer, stippledLineEnable: VkBool32) -> void #c_call; PFN_vkCmdSetDepthClipNegativeOneToOneEXT :: #type (commandBuffer: VkCommandBuffer, negativeOneToOne: VkBool32) -> void #c_call; PFN_vkCmdSetViewportWScalingEnableNV :: #type (commandBuffer: VkCommandBuffer, viewportWScalingEnable: VkBool32) -> void #c_call; PFN_vkCmdSetViewportSwizzleNV :: #type (commandBuffer: VkCommandBuffer, firstViewport: u32, viewportCount: u32, pViewportSwizzles: *VkViewportSwizzleNV) -> void #c_call; PFN_vkCmdSetCoverageToColorEnableNV :: #type (commandBuffer: VkCommandBuffer, coverageToColorEnable: VkBool32) -> void #c_call; PFN_vkCmdSetCoverageToColorLocationNV :: #type (commandBuffer: VkCommandBuffer, coverageToColorLocation: u32) -> void #c_call; PFN_vkCmdSetCoverageModulationModeNV :: #type (commandBuffer: VkCommandBuffer, coverageModulationMode: VkCoverageModulationModeNV) -> void #c_call; PFN_vkCmdSetCoverageModulationTableEnableNV :: #type (commandBuffer: VkCommandBuffer, coverageModulationTableEnable: VkBool32) -> void #c_call; PFN_vkCmdSetCoverageModulationTableNV :: #type (commandBuffer: VkCommandBuffer, coverageModulationTableCount: u32, pCoverageModulationTable: *float) -> void #c_call; PFN_vkCmdSetShadingRateImageEnableNV :: #type (commandBuffer: VkCommandBuffer, shadingRateImageEnable: VkBool32) -> void #c_call; PFN_vkCmdSetRepresentativeFragmentTestEnableNV :: #type (commandBuffer: VkCommandBuffer, representativeFragmentTestEnable: VkBool32) -> void #c_call; PFN_vkCmdSetCoverageReductionModeNV :: #type (commandBuffer: VkCommandBuffer, coverageReductionMode: VkCoverageReductionModeNV) -> void #c_call; VkSubpassMergeStatusEXT :: enum u32 { MERGED_EXT :: 0; DISALLOWED_EXT :: 1; NOT_MERGED_SIDE_EFFECTS_EXT :: 2; NOT_MERGED_SAMPLES_MISMATCH_EXT :: 3; NOT_MERGED_VIEWS_MISMATCH_EXT :: 4; NOT_MERGED_ALIASING_EXT :: 5; NOT_MERGED_DEPENDENCIES_EXT :: 6; NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT :: 7; NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT :: 8; NOT_MERGED_INSUFFICIENT_STORAGE_EXT :: 9; NOT_MERGED_DEPTH_STENCIL_COUNT_EXT :: 10; NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT :: 11; NOT_MERGED_SINGLE_SUBPASS_EXT :: 12; NOT_MERGED_UNSPECIFIED_EXT :: 13; MAX_ENUM_EXT :: 2147483647; VK_SUBPASS_MERGE_STATUS_MERGED_EXT :: MERGED_EXT; VK_SUBPASS_MERGE_STATUS_DISALLOWED_EXT :: DISALLOWED_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SIDE_EFFECTS_EXT :: NOT_MERGED_SIDE_EFFECTS_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SAMPLES_MISMATCH_EXT :: NOT_MERGED_SAMPLES_MISMATCH_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_VIEWS_MISMATCH_EXT :: NOT_MERGED_VIEWS_MISMATCH_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_ALIASING_EXT :: NOT_MERGED_ALIASING_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPENDENCIES_EXT :: NOT_MERGED_DEPENDENCIES_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT :: NOT_MERGED_INCOMPATIBLE_INPUT_ATTACHMENT_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT :: NOT_MERGED_TOO_MANY_ATTACHMENTS_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_INSUFFICIENT_STORAGE_EXT :: NOT_MERGED_INSUFFICIENT_STORAGE_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_DEPTH_STENCIL_COUNT_EXT :: NOT_MERGED_DEPTH_STENCIL_COUNT_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT :: NOT_MERGED_RESOLVE_ATTACHMENT_REUSE_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_SINGLE_SUBPASS_EXT :: NOT_MERGED_SINGLE_SUBPASS_EXT; VK_SUBPASS_MERGE_STATUS_NOT_MERGED_UNSPECIFIED_EXT :: NOT_MERGED_UNSPECIFIED_EXT; VK_SUBPASS_MERGE_STATUS_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; subpassMergeFeedback: VkBool32; } VkRenderPassCreationControlEXT :: struct { sType: VkStructureType; pNext: *void; disallowMerging: VkBool32; } VkRenderPassCreationFeedbackInfoEXT :: struct { postMergeSubpassCount: u32; } VkRenderPassCreationFeedbackCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; pRenderPassFeedback: *VkRenderPassCreationFeedbackInfoEXT; } VkRenderPassSubpassFeedbackInfoEXT :: struct { subpassMergeStatus: VkSubpassMergeStatusEXT; description: [256] u8; postMergeIndex: u32; } VkRenderPassSubpassFeedbackCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; pSubpassFeedback: *VkRenderPassSubpassFeedbackInfoEXT; } VkDirectDriverLoadingModeLUNARG :: enum u32 { EXCLUSIVE_LUNARG :: 0; INCLUSIVE_LUNARG :: 1; MAX_ENUM_LUNARG :: 2147483647; VK_DIRECT_DRIVER_LOADING_MODE_EXCLUSIVE_LUNARG :: EXCLUSIVE_LUNARG; VK_DIRECT_DRIVER_LOADING_MODE_INCLUSIVE_LUNARG :: INCLUSIVE_LUNARG; VK_DIRECT_DRIVER_LOADING_MODE_MAX_ENUM_LUNARG :: MAX_ENUM_LUNARG; } VkDirectDriverLoadingFlagsLUNARG :: VkFlags; PFN_vkGetInstanceProcAddrLUNARG :: #type (instance: VkInstance, pName: *u8) -> PFN_vkVoidFunction #c_call; VkDirectDriverLoadingInfoLUNARG :: struct { sType: VkStructureType; pNext: *void; flags: VkDirectDriverLoadingFlagsLUNARG; pfnGetInstanceProcAddr: PFN_vkGetInstanceProcAddrLUNARG; } VkDirectDriverLoadingListLUNARG :: struct { sType: VkStructureType; pNext: *void; mode: VkDirectDriverLoadingModeLUNARG; driverCount: u32; pDrivers: *VkDirectDriverLoadingInfoLUNARG; } VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderModuleIdentifier: VkBool32; } VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; shaderModuleIdentifierAlgorithmUUID: [16] u8; } VkPipelineShaderStageModuleIdentifierCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; identifierSize: u32; pIdentifier: *u8; } VkShaderModuleIdentifierEXT :: struct { sType: VkStructureType; pNext: *void; identifierSize: u32; identifier: [32] u8; } PFN_vkGetShaderModuleIdentifierEXT :: #type (device: VkDevice, shaderModule: VkShaderModule, pIdentifier: *VkShaderModuleIdentifierEXT) -> void #c_call; PFN_vkGetShaderModuleCreateInfoIdentifierEXT :: #type (device: VkDevice, pCreateInfo: *VkShaderModuleCreateInfo, pIdentifier: *VkShaderModuleIdentifierEXT) -> void #c_call; VkOpticalFlowSessionNV_T :: struct {} VkOpticalFlowSessionNV :: *VkOpticalFlowSessionNV_T; VkOpticalFlowPerformanceLevelNV :: enum u32 { UNKNOWN_NV :: 0; SLOW_NV :: 1; MEDIUM_NV :: 2; FAST_NV :: 3; MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_UNKNOWN_NV :: UNKNOWN_NV; VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_SLOW_NV :: SLOW_NV; VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MEDIUM_NV :: MEDIUM_NV; VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_FAST_NV :: FAST_NV; VK_OPTICAL_FLOW_PERFORMANCE_LEVEL_MAX_ENUM_NV :: MAX_ENUM_NV; } VkOpticalFlowSessionBindingPointNV :: enum u32 { UNKNOWN_NV :: 0; INPUT_NV :: 1; REFERENCE_NV :: 2; HINT_NV :: 3; FLOW_VECTOR_NV :: 4; BACKWARD_FLOW_VECTOR_NV :: 5; COST_NV :: 6; BACKWARD_COST_NV :: 7; GLOBAL_FLOW_NV :: 8; MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_UNKNOWN_NV :: UNKNOWN_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_INPUT_NV :: INPUT_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_REFERENCE_NV :: REFERENCE_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_HINT_NV :: HINT_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_FLOW_VECTOR_NV :: FLOW_VECTOR_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_FLOW_VECTOR_NV :: BACKWARD_FLOW_VECTOR_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_COST_NV :: COST_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_BACKWARD_COST_NV :: BACKWARD_COST_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_GLOBAL_FLOW_NV :: GLOBAL_FLOW_NV; VK_OPTICAL_FLOW_SESSION_BINDING_POINT_MAX_ENUM_NV :: MAX_ENUM_NV; } VkOpticalFlowGridSizeFlagBitsNV :: enum u32 { UNKNOWN_NV :: 0; _1X1_BIT_NV :: 1; _2X2_BIT_NV :: 2; _4X4_BIT_NV :: 4; _8X8_BIT_NV :: 8; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_GRID_SIZE_UNKNOWN_NV :: UNKNOWN_NV; VK_OPTICAL_FLOW_GRID_SIZE_1X1_BIT_NV :: _1X1_BIT_NV; VK_OPTICAL_FLOW_GRID_SIZE_2X2_BIT_NV :: _2X2_BIT_NV; VK_OPTICAL_FLOW_GRID_SIZE_4X4_BIT_NV :: _4X4_BIT_NV; VK_OPTICAL_FLOW_GRID_SIZE_8X8_BIT_NV :: _8X8_BIT_NV; VK_OPTICAL_FLOW_GRID_SIZE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkOpticalFlowGridSizeFlagsNV :: VkFlags; VkOpticalFlowUsageFlagBitsNV :: enum u32 { UNKNOWN_NV :: 0; INPUT_BIT_NV :: 1; OUTPUT_BIT_NV :: 2; HINT_BIT_NV :: 4; COST_BIT_NV :: 8; GLOBAL_FLOW_BIT_NV :: 16; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_USAGE_UNKNOWN_NV :: UNKNOWN_NV; VK_OPTICAL_FLOW_USAGE_INPUT_BIT_NV :: INPUT_BIT_NV; VK_OPTICAL_FLOW_USAGE_OUTPUT_BIT_NV :: OUTPUT_BIT_NV; VK_OPTICAL_FLOW_USAGE_HINT_BIT_NV :: HINT_BIT_NV; VK_OPTICAL_FLOW_USAGE_COST_BIT_NV :: COST_BIT_NV; VK_OPTICAL_FLOW_USAGE_GLOBAL_FLOW_BIT_NV :: GLOBAL_FLOW_BIT_NV; VK_OPTICAL_FLOW_USAGE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkOpticalFlowUsageFlagsNV :: VkFlags; VkOpticalFlowSessionCreateFlagBitsNV :: enum u32 { ENABLE_HINT_BIT_NV :: 1; ENABLE_COST_BIT_NV :: 2; ENABLE_GLOBAL_FLOW_BIT_NV :: 4; ALLOW_REGIONS_BIT_NV :: 8; BOTH_DIRECTIONS_BIT_NV :: 16; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_HINT_BIT_NV :: ENABLE_HINT_BIT_NV; VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_COST_BIT_NV :: ENABLE_COST_BIT_NV; VK_OPTICAL_FLOW_SESSION_CREATE_ENABLE_GLOBAL_FLOW_BIT_NV :: ENABLE_GLOBAL_FLOW_BIT_NV; VK_OPTICAL_FLOW_SESSION_CREATE_ALLOW_REGIONS_BIT_NV :: ALLOW_REGIONS_BIT_NV; VK_OPTICAL_FLOW_SESSION_CREATE_BOTH_DIRECTIONS_BIT_NV :: BOTH_DIRECTIONS_BIT_NV; VK_OPTICAL_FLOW_SESSION_CREATE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkOpticalFlowSessionCreateFlagsNV :: VkFlags; VkOpticalFlowExecuteFlagBitsNV :: enum u32 { DISABLE_TEMPORAL_HINTS_BIT_NV :: 1; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_OPTICAL_FLOW_EXECUTE_DISABLE_TEMPORAL_HINTS_BIT_NV :: DISABLE_TEMPORAL_HINTS_BIT_NV; VK_OPTICAL_FLOW_EXECUTE_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkOpticalFlowExecuteFlagsNV :: VkFlags; VkPhysicalDeviceOpticalFlowFeaturesNV :: struct { sType: VkStructureType; pNext: *void; opticalFlow: VkBool32; } VkPhysicalDeviceOpticalFlowPropertiesNV :: struct { sType: VkStructureType; pNext: *void; supportedOutputGridSizes: VkOpticalFlowGridSizeFlagsNV; supportedHintGridSizes: VkOpticalFlowGridSizeFlagsNV; hintSupported: VkBool32; costSupported: VkBool32; bidirectionalFlowSupported: VkBool32; globalFlowSupported: VkBool32; minWidth: u32; minHeight: u32; maxWidth: u32; maxHeight: u32; maxNumRegionsOfInterest: u32; } VkOpticalFlowImageFormatInfoNV :: struct { sType: VkStructureType; pNext: *void; usage: VkOpticalFlowUsageFlagsNV; } VkOpticalFlowImageFormatPropertiesNV :: struct { sType: VkStructureType; pNext: *void; format: VkFormat; } VkOpticalFlowSessionCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; width: u32; height: u32; imageFormat: VkFormat; flowVectorFormat: VkFormat; costFormat: VkFormat; outputGridSize: VkOpticalFlowGridSizeFlagsNV; hintGridSize: VkOpticalFlowGridSizeFlagsNV; performanceLevel: VkOpticalFlowPerformanceLevelNV; flags: VkOpticalFlowSessionCreateFlagsNV; } VkOpticalFlowSessionCreatePrivateDataInfoNV :: struct { sType: VkStructureType; pNext: *void; id: u32; size: u32; pPrivateData: *void; } VkOpticalFlowExecuteInfoNV :: struct { sType: VkStructureType; pNext: *void; flags: VkOpticalFlowExecuteFlagsNV; regionCount: u32; pRegions: *VkRect2D; } PFN_vkGetPhysicalDeviceOpticalFlowImageFormatsNV :: #type (physicalDevice: VkPhysicalDevice, pOpticalFlowImageFormatInfo: *VkOpticalFlowImageFormatInfoNV, pFormatCount: *u32, pImageFormatProperties: *VkOpticalFlowImageFormatPropertiesNV) -> VkResult #c_call; PFN_vkCreateOpticalFlowSessionNV :: #type (device: VkDevice, pCreateInfo: *VkOpticalFlowSessionCreateInfoNV, pAllocator: *VkAllocationCallbacks, pSession: *VkOpticalFlowSessionNV) -> VkResult #c_call; PFN_vkDestroyOpticalFlowSessionNV :: #type (device: VkDevice, session: VkOpticalFlowSessionNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkBindOpticalFlowSessionImageNV :: #type (device: VkDevice, session: VkOpticalFlowSessionNV, bindingPoint: VkOpticalFlowSessionBindingPointNV, view: VkImageView, layout: VkImageLayout) -> VkResult #c_call; PFN_vkCmdOpticalFlowExecuteNV :: #type (commandBuffer: VkCommandBuffer, session: VkOpticalFlowSessionNV, pExecuteInfo: *VkOpticalFlowExecuteInfoNV) -> void #c_call; VkPhysicalDeviceLegacyDitheringFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; legacyDithering: VkBool32; } VkPhysicalDevicePipelineProtectedAccessFeaturesEXT :: VkPhysicalDevicePipelineProtectedAccessFeatures; VkAntiLagModeAMD :: enum u32 { DRIVER_CONTROL_AMD :: 0; ON_AMD :: 1; OFF_AMD :: 2; MAX_ENUM_AMD :: 2147483647; VK_ANTI_LAG_MODE_DRIVER_CONTROL_AMD :: DRIVER_CONTROL_AMD; VK_ANTI_LAG_MODE_ON_AMD :: ON_AMD; VK_ANTI_LAG_MODE_OFF_AMD :: OFF_AMD; VK_ANTI_LAG_MODE_MAX_ENUM_AMD :: MAX_ENUM_AMD; } VkAntiLagStageAMD :: enum u32 { INPUT_AMD :: 0; PRESENT_AMD :: 1; MAX_ENUM_AMD :: 2147483647; VK_ANTI_LAG_STAGE_INPUT_AMD :: INPUT_AMD; VK_ANTI_LAG_STAGE_PRESENT_AMD :: PRESENT_AMD; VK_ANTI_LAG_STAGE_MAX_ENUM_AMD :: MAX_ENUM_AMD; } VkPhysicalDeviceAntiLagFeaturesAMD :: struct { sType: VkStructureType; pNext: *void; antiLag: VkBool32; } VkAntiLagPresentationInfoAMD :: struct { sType: VkStructureType; pNext: *void; stage: VkAntiLagStageAMD; frameIndex: u64; } VkAntiLagDataAMD :: struct { sType: VkStructureType; pNext: *void; mode: VkAntiLagModeAMD; maxFPS: u32; pPresentationInfo: *VkAntiLagPresentationInfoAMD; } PFN_vkAntiLagUpdateAMD :: #type (device: VkDevice, pData: *VkAntiLagDataAMD) -> void #c_call; VkShaderEXT_T :: struct {} VkShaderEXT :: *VkShaderEXT_T; VkShaderCodeTypeEXT :: enum u32 { BINARY_EXT :: 0; SPIRV_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_SHADER_CODE_TYPE_BINARY_EXT :: BINARY_EXT; VK_SHADER_CODE_TYPE_SPIRV_EXT :: SPIRV_EXT; VK_SHADER_CODE_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkDepthClampModeEXT :: enum u32 { VIEWPORT_RANGE_EXT :: 0; USER_DEFINED_RANGE_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_DEPTH_CLAMP_MODE_VIEWPORT_RANGE_EXT :: VIEWPORT_RANGE_EXT; VK_DEPTH_CLAMP_MODE_USER_DEFINED_RANGE_EXT :: USER_DEFINED_RANGE_EXT; VK_DEPTH_CLAMP_MODE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkShaderCreateFlagBitsEXT :: enum u32 { LINK_STAGE_BIT_EXT :: 1; ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: 2; REQUIRE_FULL_SUBGROUPS_BIT_EXT :: 4; NO_TASK_SHADER_BIT_EXT :: 8; DISPATCH_BASE_BIT_EXT :: 16; FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT :: 32; FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: 64; INDIRECT_BINDABLE_BIT_EXT :: 128; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_SHADER_CREATE_LINK_STAGE_BIT_EXT :: LINK_STAGE_BIT_EXT; VK_SHADER_CREATE_ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT :: ALLOW_VARYING_SUBGROUP_SIZE_BIT_EXT; VK_SHADER_CREATE_REQUIRE_FULL_SUBGROUPS_BIT_EXT :: REQUIRE_FULL_SUBGROUPS_BIT_EXT; VK_SHADER_CREATE_NO_TASK_SHADER_BIT_EXT :: NO_TASK_SHADER_BIT_EXT; VK_SHADER_CREATE_DISPATCH_BASE_BIT_EXT :: DISPATCH_BASE_BIT_EXT; VK_SHADER_CREATE_FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT :: FRAGMENT_SHADING_RATE_ATTACHMENT_BIT_EXT; VK_SHADER_CREATE_FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT :: FRAGMENT_DENSITY_MAP_ATTACHMENT_BIT_EXT; VK_SHADER_CREATE_INDIRECT_BINDABLE_BIT_EXT :: INDIRECT_BINDABLE_BIT_EXT; VK_SHADER_CREATE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkShaderCreateFlagsEXT :: VkFlags; VkPhysicalDeviceShaderObjectFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderObject: VkBool32; } VkPhysicalDeviceShaderObjectPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; shaderBinaryUUID: [16] u8; shaderBinaryVersion: u32; } VkShaderCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkShaderCreateFlagsEXT; stage: VkShaderStageFlagBits; nextStage: VkShaderStageFlags; codeType: VkShaderCodeTypeEXT; codeSize: u64; pCode: *void; pName: *u8; setLayoutCount: u32; pSetLayouts: *VkDescriptorSetLayout; pushConstantRangeCount: u32; pPushConstantRanges: *VkPushConstantRange; pSpecializationInfo: *VkSpecializationInfo; } VkShaderRequiredSubgroupSizeCreateInfoEXT :: VkPipelineShaderStageRequiredSubgroupSizeCreateInfo; VkDepthClampRangeEXT :: struct { minDepthClamp: float; maxDepthClamp: float; } PFN_vkCreateShadersEXT :: #type (device: VkDevice, createInfoCount: u32, pCreateInfos: *VkShaderCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pShaders: *VkShaderEXT) -> VkResult #c_call; PFN_vkDestroyShaderEXT :: #type (device: VkDevice, shader: VkShaderEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetShaderBinaryDataEXT :: #type (device: VkDevice, shader: VkShaderEXT, pDataSize: *u64, pData: *void) -> VkResult #c_call; PFN_vkCmdBindShadersEXT :: #type (commandBuffer: VkCommandBuffer, stageCount: u32, pStages: *VkShaderStageFlagBits, pShaders: *VkShaderEXT) -> void #c_call; PFN_vkCmdSetDepthClampRangeEXT :: #type (commandBuffer: VkCommandBuffer, depthClampMode: VkDepthClampModeEXT, pDepthClampRange: *VkDepthClampRangeEXT) -> void #c_call; VkPhysicalDeviceTilePropertiesFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; tileProperties: VkBool32; } VkTilePropertiesQCOM :: struct { sType: VkStructureType; pNext: *void; tileSize: VkExtent3D; apronSize: VkExtent2D; origin: VkOffset2D; } PFN_vkGetFramebufferTilePropertiesQCOM :: #type (device: VkDevice, framebuffer: VkFramebuffer, pPropertiesCount: *u32, pProperties: *VkTilePropertiesQCOM) -> VkResult #c_call; PFN_vkGetDynamicRenderingTilePropertiesQCOM :: #type (device: VkDevice, pRenderingInfo: *VkRenderingInfo, pProperties: *VkTilePropertiesQCOM) -> VkResult #c_call; VkPhysicalDeviceAmigoProfilingFeaturesSEC :: struct { sType: VkStructureType; pNext: *void; amigoProfiling: VkBool32; } VkAmigoProfilingSubmitInfoSEC :: struct { sType: VkStructureType; pNext: *void; firstDrawTimestamp: u64; swapBufferTimestamp: u64; } VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; multiviewPerViewViewports: VkBool32; } VkRayTracingInvocationReorderModeNV :: enum u32 { NONE_NV :: 0; REORDER_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_RAY_TRACING_INVOCATION_REORDER_MODE_NONE_NV :: NONE_NV; VK_RAY_TRACING_INVOCATION_REORDER_MODE_REORDER_NV :: REORDER_NV; VK_RAY_TRACING_INVOCATION_REORDER_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV :: struct { sType: VkStructureType; pNext: *void; rayTracingInvocationReorderReorderingHint: VkRayTracingInvocationReorderModeNV; } VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV :: struct { sType: VkStructureType; pNext: *void; rayTracingInvocationReorder: VkBool32; } VkCooperativeVectorMatrixLayoutNV :: enum u32 { ROW_MAJOR_NV :: 0; COLUMN_MAJOR_NV :: 1; INFERENCING_OPTIMAL_NV :: 2; TRAINING_OPTIMAL_NV :: 3; MAX_ENUM_NV :: 2147483647; VK_COOPERATIVE_VECTOR_MATRIX_LAYOUT_ROW_MAJOR_NV :: ROW_MAJOR_NV; VK_COOPERATIVE_VECTOR_MATRIX_LAYOUT_COLUMN_MAJOR_NV :: COLUMN_MAJOR_NV; VK_COOPERATIVE_VECTOR_MATRIX_LAYOUT_INFERENCING_OPTIMAL_NV :: INFERENCING_OPTIMAL_NV; VK_COOPERATIVE_VECTOR_MATRIX_LAYOUT_TRAINING_OPTIMAL_NV :: TRAINING_OPTIMAL_NV; VK_COOPERATIVE_VECTOR_MATRIX_LAYOUT_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPhysicalDeviceCooperativeVectorPropertiesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeVectorSupportedStages: VkShaderStageFlags; cooperativeVectorTrainingFloat16Accumulation: VkBool32; cooperativeVectorTrainingFloat32Accumulation: VkBool32; maxCooperativeVectorComponents: u32; } VkPhysicalDeviceCooperativeVectorFeaturesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeVector: VkBool32; cooperativeVectorTraining: VkBool32; } VkCooperativeVectorPropertiesNV :: struct { sType: VkStructureType; pNext: *void; inputType: VkComponentTypeKHR; inputInterpretation: VkComponentTypeKHR; matrixInterpretation: VkComponentTypeKHR; biasInterpretation: VkComponentTypeKHR; resultType: VkComponentTypeKHR; transpose: VkBool32; } VkConvertCooperativeVectorMatrixInfoNV :: struct { sType: VkStructureType; pNext: *void; srcSize: u64; srcData: VkDeviceOrHostAddressConstKHR; pDstSize: *u64; dstData: VkDeviceOrHostAddressKHR; srcComponentType: VkComponentTypeKHR; dstComponentType: VkComponentTypeKHR; numRows: u32; numColumns: u32; srcLayout: VkCooperativeVectorMatrixLayoutNV; srcStride: u64; dstLayout: VkCooperativeVectorMatrixLayoutNV; dstStride: u64; } PFN_vkGetPhysicalDeviceCooperativeVectorPropertiesNV :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkCooperativeVectorPropertiesNV) -> VkResult #c_call; PFN_vkConvertCooperativeVectorMatrixNV :: #type (device: VkDevice, pInfo: *VkConvertCooperativeVectorMatrixInfoNV) -> VkResult #c_call; PFN_vkCmdConvertCooperativeVectorMatrixNV :: #type (commandBuffer: VkCommandBuffer, infoCount: u32, pInfos: *VkConvertCooperativeVectorMatrixInfoNV) -> void #c_call; VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV :: struct { sType: VkStructureType; pNext: *void; extendedSparseAddressSpace: VkBool32; } VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV :: struct { sType: VkStructureType; pNext: *void; extendedSparseAddressSpaceSize: VkDeviceSize; extendedSparseImageUsageFlags: VkImageUsageFlags; extendedSparseBufferUsageFlags: VkBufferUsageFlags; } VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; legacyVertexAttributes: VkBool32; } VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; nativeUnalignedPerformance: VkBool32; } VkLayerSettingTypeEXT :: enum u32 { BOOL32_EXT :: 0; INT32_EXT :: 1; INT64_EXT :: 2; UINT32_EXT :: 3; UINT64_EXT :: 4; FLOAT32_EXT :: 5; FLOAT64_EXT :: 6; STRING_EXT :: 7; MAX_ENUM_EXT :: 2147483647; VK_LAYER_SETTING_TYPE_BOOL32_EXT :: BOOL32_EXT; VK_LAYER_SETTING_TYPE_INT32_EXT :: INT32_EXT; VK_LAYER_SETTING_TYPE_INT64_EXT :: INT64_EXT; VK_LAYER_SETTING_TYPE_UINT32_EXT :: UINT32_EXT; VK_LAYER_SETTING_TYPE_UINT64_EXT :: UINT64_EXT; VK_LAYER_SETTING_TYPE_FLOAT32_EXT :: FLOAT32_EXT; VK_LAYER_SETTING_TYPE_FLOAT64_EXT :: FLOAT64_EXT; VK_LAYER_SETTING_TYPE_STRING_EXT :: STRING_EXT; VK_LAYER_SETTING_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkLayerSettingEXT :: struct { pLayerName: *u8; pSettingName: *u8; type: VkLayerSettingTypeEXT; valueCount: u32; pValues: *void; } VkLayerSettingsCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; settingCount: u32; pSettings: *VkLayerSettingEXT; } VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM :: struct { sType: VkStructureType; pNext: *void; shaderCoreBuiltins: VkBool32; } VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM :: struct { sType: VkStructureType; pNext: *void; shaderCoreMask: u64; shaderCoreCount: u32; shaderWarpsPerCore: u32; } VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; pipelineLibraryGroupHandles: VkBool32; } VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; dynamicRenderingUnusedAttachments: VkBool32; } VkLatencyMarkerNV :: enum u32 { SIMULATION_START_NV :: 0; SIMULATION_END_NV :: 1; RENDERSUBMIT_START_NV :: 2; RENDERSUBMIT_END_NV :: 3; PRESENT_START_NV :: 4; PRESENT_END_NV :: 5; INPUT_SAMPLE_NV :: 6; TRIGGER_FLASH_NV :: 7; OUT_OF_BAND_RENDERSUBMIT_START_NV :: 8; OUT_OF_BAND_RENDERSUBMIT_END_NV :: 9; OUT_OF_BAND_PRESENT_START_NV :: 10; OUT_OF_BAND_PRESENT_END_NV :: 11; MAX_ENUM_NV :: 2147483647; VK_LATENCY_MARKER_SIMULATION_START_NV :: SIMULATION_START_NV; VK_LATENCY_MARKER_SIMULATION_END_NV :: SIMULATION_END_NV; VK_LATENCY_MARKER_RENDERSUBMIT_START_NV :: RENDERSUBMIT_START_NV; VK_LATENCY_MARKER_RENDERSUBMIT_END_NV :: RENDERSUBMIT_END_NV; VK_LATENCY_MARKER_PRESENT_START_NV :: PRESENT_START_NV; VK_LATENCY_MARKER_PRESENT_END_NV :: PRESENT_END_NV; VK_LATENCY_MARKER_INPUT_SAMPLE_NV :: INPUT_SAMPLE_NV; VK_LATENCY_MARKER_TRIGGER_FLASH_NV :: TRIGGER_FLASH_NV; VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_START_NV :: OUT_OF_BAND_RENDERSUBMIT_START_NV; VK_LATENCY_MARKER_OUT_OF_BAND_RENDERSUBMIT_END_NV :: OUT_OF_BAND_RENDERSUBMIT_END_NV; VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_START_NV :: OUT_OF_BAND_PRESENT_START_NV; VK_LATENCY_MARKER_OUT_OF_BAND_PRESENT_END_NV :: OUT_OF_BAND_PRESENT_END_NV; VK_LATENCY_MARKER_MAX_ENUM_NV :: MAX_ENUM_NV; } VkOutOfBandQueueTypeNV :: enum u32 { RENDER_NV :: 0; PRESENT_NV :: 1; MAX_ENUM_NV :: 2147483647; VK_OUT_OF_BAND_QUEUE_TYPE_RENDER_NV :: RENDER_NV; VK_OUT_OF_BAND_QUEUE_TYPE_PRESENT_NV :: PRESENT_NV; VK_OUT_OF_BAND_QUEUE_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkLatencySleepModeInfoNV :: struct { sType: VkStructureType; pNext: *void; lowLatencyMode: VkBool32; lowLatencyBoost: VkBool32; minimumIntervalUs: u32; } VkLatencySleepInfoNV :: struct { sType: VkStructureType; pNext: *void; signalSemaphore: VkSemaphore; value: u64; } VkSetLatencyMarkerInfoNV :: struct { sType: VkStructureType; pNext: *void; presentID: u64; marker: VkLatencyMarkerNV; } VkLatencyTimingsFrameReportNV :: struct { sType: VkStructureType; pNext: *void; presentID: u64; inputSampleTimeUs: u64; simStartTimeUs: u64; simEndTimeUs: u64; renderSubmitStartTimeUs: u64; renderSubmitEndTimeUs: u64; presentStartTimeUs: u64; presentEndTimeUs: u64; driverStartTimeUs: u64; driverEndTimeUs: u64; osRenderQueueStartTimeUs: u64; osRenderQueueEndTimeUs: u64; gpuRenderStartTimeUs: u64; gpuRenderEndTimeUs: u64; } VkGetLatencyMarkerInfoNV :: struct { sType: VkStructureType; pNext: *void; timingCount: u32; pTimings: *VkLatencyTimingsFrameReportNV; } VkLatencySubmissionPresentIdNV :: struct { sType: VkStructureType; pNext: *void; presentID: u64; } VkSwapchainLatencyCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; latencyModeEnable: VkBool32; } VkOutOfBandQueueTypeInfoNV :: struct { sType: VkStructureType; pNext: *void; queueType: VkOutOfBandQueueTypeNV; } VkLatencySurfaceCapabilitiesNV :: struct { sType: VkStructureType; pNext: *void; presentModeCount: u32; pPresentModes: *VkPresentModeKHR; } PFN_vkSetLatencySleepModeNV :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pSleepModeInfo: *VkLatencySleepModeInfoNV) -> VkResult #c_call; PFN_vkLatencySleepNV :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pSleepInfo: *VkLatencySleepInfoNV) -> VkResult #c_call; PFN_vkSetLatencyMarkerNV :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: *VkSetLatencyMarkerInfoNV) -> void #c_call; PFN_vkGetLatencyTimingsNV :: #type (device: VkDevice, swapchain: VkSwapchainKHR, pLatencyMarkerInfo: *VkGetLatencyMarkerInfoNV) -> void #c_call; PFN_vkQueueNotifyOutOfBandNV :: #type (queue: VkQueue, pQueueTypeInfo: *VkOutOfBandQueueTypeInfoNV) -> void #c_call; VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; multiviewPerViewRenderAreas: VkBool32; } VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM :: struct { sType: VkStructureType; pNext: *void; perViewRenderAreaCount: u32; pPerViewRenderAreas: *VkRect2D; } VkPhysicalDevicePerStageDescriptorSetFeaturesNV :: struct { sType: VkStructureType; pNext: *void; perStageDescriptorSet: VkBool32; dynamicPipelineLayout: VkBool32; } VkBlockMatchWindowCompareModeQCOM :: enum u32 { MIN_QCOM :: 0; MAX_QCOM :: 1; MAX_ENUM_QCOM :: 2147483647; VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MIN_QCOM :: MIN_QCOM; VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MAX_QCOM :: MAX_QCOM; VK_BLOCK_MATCH_WINDOW_COMPARE_MODE_MAX_ENUM_QCOM :: MAX_ENUM_QCOM; } VkPhysicalDeviceImageProcessing2FeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; textureBlockMatch2: VkBool32; } VkPhysicalDeviceImageProcessing2PropertiesQCOM :: struct { sType: VkStructureType; pNext: *void; maxBlockMatchWindow: VkExtent2D; } VkSamplerBlockMatchWindowCreateInfoQCOM :: struct { sType: VkStructureType; pNext: *void; windowExtent: VkExtent2D; windowCompareMode: VkBlockMatchWindowCompareModeQCOM; } VkCubicFilterWeightsQCOM :: enum u32 { CATMULL_ROM_QCOM :: 0; ZERO_TANGENT_CARDINAL_QCOM :: 1; B_SPLINE_QCOM :: 2; MITCHELL_NETRAVALI_QCOM :: 3; MAX_ENUM_QCOM :: 2147483647; VK_CUBIC_FILTER_WEIGHTS_CATMULL_ROM_QCOM :: CATMULL_ROM_QCOM; VK_CUBIC_FILTER_WEIGHTS_ZERO_TANGENT_CARDINAL_QCOM :: ZERO_TANGENT_CARDINAL_QCOM; VK_CUBIC_FILTER_WEIGHTS_B_SPLINE_QCOM :: B_SPLINE_QCOM; VK_CUBIC_FILTER_WEIGHTS_MITCHELL_NETRAVALI_QCOM :: MITCHELL_NETRAVALI_QCOM; VK_CUBIC_FILTER_WEIGHTS_MAX_ENUM_QCOM :: MAX_ENUM_QCOM; } VkPhysicalDeviceCubicWeightsFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; selectableCubicWeights: VkBool32; } VkSamplerCubicWeightsCreateInfoQCOM :: struct { sType: VkStructureType; pNext: *void; cubicWeights: VkCubicFilterWeightsQCOM; } VkBlitImageCubicWeightsInfoQCOM :: struct { sType: VkStructureType; pNext: *void; cubicWeights: VkCubicFilterWeightsQCOM; } VkPhysicalDeviceYcbcrDegammaFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; ycbcrDegamma: VkBool32; } VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM :: struct { sType: VkStructureType; pNext: *void; enableYDegamma: VkBool32; enableCbCrDegamma: VkBool32; } VkPhysicalDeviceCubicClampFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; cubicRangeClamp: VkBool32; } VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; attachmentFeedbackLoopDynamicState: VkBool32; } PFN_vkCmdSetAttachmentFeedbackLoopEnableEXT :: #type (commandBuffer: VkCommandBuffer, aspectMask: VkImageAspectFlags) -> void #c_call; VkLayeredDriverUnderlyingApiMSFT :: enum u32 { NONE_MSFT :: 0; D3D12_MSFT :: 1; MAX_ENUM_MSFT :: 2147483647; VK_LAYERED_DRIVER_UNDERLYING_API_NONE_MSFT :: NONE_MSFT; VK_LAYERED_DRIVER_UNDERLYING_API_D3D12_MSFT :: D3D12_MSFT; VK_LAYERED_DRIVER_UNDERLYING_API_MAX_ENUM_MSFT :: MAX_ENUM_MSFT; } VkPhysicalDeviceLayeredDriverPropertiesMSFT :: struct { sType: VkStructureType; pNext: *void; underlyingAPI: VkLayeredDriverUnderlyingApiMSFT; } VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV :: struct { sType: VkStructureType; pNext: *void; descriptorPoolOverallocation: VkBool32; } VkPhysicalDeviceTileMemoryHeapFeaturesQCOM :: struct { sType: VkStructureType; pNext: *void; tileMemoryHeap: VkBool32; } VkPhysicalDeviceTileMemoryHeapPropertiesQCOM :: struct { sType: VkStructureType; pNext: *void; queueSubmitBoundary: VkBool32; tileBufferTransfers: VkBool32; } VkTileMemoryRequirementsQCOM :: struct { sType: VkStructureType; pNext: *void; size: VkDeviceSize; alignment: VkDeviceSize; } VkTileMemoryBindInfoQCOM :: struct { sType: VkStructureType; pNext: *void; memory: VkDeviceMemory; } VkTileMemorySizeInfoQCOM :: struct { sType: VkStructureType; pNext: *void; size: VkDeviceSize; } PFN_vkCmdBindTileMemoryQCOM :: #type (commandBuffer: VkCommandBuffer, pTileMemoryBindInfo: *VkTileMemoryBindInfoQCOM) -> void #c_call; VkDisplaySurfaceStereoTypeNV :: enum u32 { NONE_NV :: 0; ONBOARD_DIN_NV :: 1; HDMI_3D_NV :: 2; INBAND_DISPLAYPORT_NV :: 3; MAX_ENUM_NV :: 2147483647; VK_DISPLAY_SURFACE_STEREO_TYPE_NONE_NV :: NONE_NV; VK_DISPLAY_SURFACE_STEREO_TYPE_ONBOARD_DIN_NV :: ONBOARD_DIN_NV; VK_DISPLAY_SURFACE_STEREO_TYPE_HDMI_3D_NV :: HDMI_3D_NV; VK_DISPLAY_SURFACE_STEREO_TYPE_INBAND_DISPLAYPORT_NV :: INBAND_DISPLAYPORT_NV; VK_DISPLAY_SURFACE_STEREO_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkDisplaySurfaceStereoCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; stereoType: VkDisplaySurfaceStereoTypeNV; } VkDisplayModeStereoPropertiesNV :: struct { sType: VkStructureType; pNext: *void; hdmi3DSupported: VkBool32; } VkPhysicalDeviceRawAccessChainsFeaturesNV :: struct { sType: VkStructureType; pNext: *void; shaderRawAccessChains: VkBool32; } VkExternalComputeQueueNV_T :: struct {} VkExternalComputeQueueNV :: *VkExternalComputeQueueNV_T; VkExternalComputeQueueDeviceCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; reservedExternalQueues: u32; } VkExternalComputeQueueCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; preferredQueue: VkQueue; } VkExternalComputeQueueDataParamsNV :: struct { sType: VkStructureType; pNext: *void; deviceIndex: u32; } VkPhysicalDeviceExternalComputeQueuePropertiesNV :: struct { sType: VkStructureType; pNext: *void; externalDataSize: u32; maxExternalQueues: u32; } PFN_vkCreateExternalComputeQueueNV :: #type (device: VkDevice, pCreateInfo: *VkExternalComputeQueueCreateInfoNV, pAllocator: *VkAllocationCallbacks, pExternalQueue: *VkExternalComputeQueueNV) -> VkResult #c_call; PFN_vkDestroyExternalComputeQueueNV :: #type (device: VkDevice, externalQueue: VkExternalComputeQueueNV, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkGetExternalComputeQueueDataNV :: #type (externalQueue: VkExternalComputeQueueNV, params: *VkExternalComputeQueueDataParamsNV, pData: *void) -> void #c_call; VkPhysicalDeviceCommandBufferInheritanceFeaturesNV :: struct { sType: VkStructureType; pNext: *void; commandBufferInheritance: VkBool32; } VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV :: struct { sType: VkStructureType; pNext: *void; shaderFloat16VectorAtomics: VkBool32; } VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; shaderReplicatedComposites: VkBool32; } VkPhysicalDeviceRayTracingValidationFeaturesNV :: struct { sType: VkStructureType; pNext: *void; rayTracingValidation: VkBool32; } VkClusterAccelerationStructureTypeNV :: enum u32 { CLUSTERS_BOTTOM_LEVEL_NV :: 0; TRIANGLE_CLUSTER_NV :: 1; TRIANGLE_CLUSTER_TEMPLATE_NV :: 2; MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_TYPE_CLUSTERS_BOTTOM_LEVEL_NV :: CLUSTERS_BOTTOM_LEVEL_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_TYPE_TRIANGLE_CLUSTER_NV :: TRIANGLE_CLUSTER_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_TYPE_TRIANGLE_CLUSTER_TEMPLATE_NV :: TRIANGLE_CLUSTER_TEMPLATE_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkClusterAccelerationStructureOpTypeNV :: enum u32 { MOVE_OBJECTS_NV :: 0; BUILD_CLUSTERS_BOTTOM_LEVEL_NV :: 1; BUILD_TRIANGLE_CLUSTER_NV :: 2; BUILD_TRIANGLE_CLUSTER_TEMPLATE_NV :: 3; INSTANTIATE_TRIANGLE_CLUSTER_NV :: 4; MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_MOVE_OBJECTS_NV :: MOVE_OBJECTS_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_BUILD_CLUSTERS_BOTTOM_LEVEL_NV :: BUILD_CLUSTERS_BOTTOM_LEVEL_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_BUILD_TRIANGLE_CLUSTER_NV :: BUILD_TRIANGLE_CLUSTER_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_BUILD_TRIANGLE_CLUSTER_TEMPLATE_NV :: BUILD_TRIANGLE_CLUSTER_TEMPLATE_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_INSTANTIATE_TRIANGLE_CLUSTER_NV :: INSTANTIATE_TRIANGLE_CLUSTER_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkClusterAccelerationStructureOpModeNV :: enum u32 { IMPLICIT_DESTINATIONS_NV :: 0; EXPLICIT_DESTINATIONS_NV :: 1; COMPUTE_SIZES_NV :: 2; MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_IMPLICIT_DESTINATIONS_NV :: IMPLICIT_DESTINATIONS_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_EXPLICIT_DESTINATIONS_NV :: EXPLICIT_DESTINATIONS_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_COMPUTE_SIZES_NV :: COMPUTE_SIZES_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_OP_MODE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkClusterAccelerationStructureAddressResolutionFlagBitsNV :: enum u32 { INDIRECTED_DST_IMPLICIT_DATA_BIT_NV :: 1; INDIRECTED_SCRATCH_DATA_BIT_NV :: 2; INDIRECTED_DST_ADDRESS_ARRAY_BIT_NV :: 4; INDIRECTED_DST_SIZES_ARRAY_BIT_NV :: 8; INDIRECTED_SRC_INFOS_ARRAY_BIT_NV :: 16; INDIRECTED_SRC_INFOS_COUNT_BIT_NV :: 32; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_DST_IMPLICIT_DATA_BIT_NV :: INDIRECTED_DST_IMPLICIT_DATA_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_SCRATCH_DATA_BIT_NV :: INDIRECTED_SCRATCH_DATA_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_DST_ADDRESS_ARRAY_BIT_NV :: INDIRECTED_DST_ADDRESS_ARRAY_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_DST_SIZES_ARRAY_BIT_NV :: INDIRECTED_DST_SIZES_ARRAY_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_SRC_INFOS_ARRAY_BIT_NV :: INDIRECTED_SRC_INFOS_ARRAY_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_INDIRECTED_SRC_INFOS_COUNT_BIT_NV :: INDIRECTED_SRC_INFOS_COUNT_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_ADDRESS_RESOLUTION_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkClusterAccelerationStructureAddressResolutionFlagsNV :: VkFlags; VkClusterAccelerationStructureClusterFlagBitsNV :: enum u32 { ALLOW_DISABLE_OPACITY_MICROMAPS_NV :: 1; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_CLUSTER_ALLOW_DISABLE_OPACITY_MICROMAPS_NV :: ALLOW_DISABLE_OPACITY_MICROMAPS_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_CLUSTER_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkClusterAccelerationStructureClusterFlagsNV :: VkFlags; VkClusterAccelerationStructureGeometryFlagBitsNV :: enum u32 { CULL_DISABLE_BIT_NV :: 1; NO_DUPLICATE_ANYHIT_INVOCATION_BIT_NV :: 2; OPAQUE_BIT_NV :: 4; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_GEOMETRY_CULL_DISABLE_BIT_NV :: CULL_DISABLE_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_GEOMETRY_NO_DUPLICATE_ANYHIT_INVOCATION_BIT_NV :: NO_DUPLICATE_ANYHIT_INVOCATION_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_GEOMETRY_OPAQUE_BIT_NV :: OPAQUE_BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_GEOMETRY_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkClusterAccelerationStructureGeometryFlagsNV :: VkFlags; VkClusterAccelerationStructureIndexFormatFlagBitsNV :: enum u32 { _8BIT_NV :: 1; _16BIT_NV :: 2; _32BIT_NV :: 4; FLAG_BITS_MAX_ENUM_NV :: 2147483647; VK_CLUSTER_ACCELERATION_STRUCTURE_INDEX_FORMAT_8BIT_NV :: _8BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_INDEX_FORMAT_16BIT_NV :: _16BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_INDEX_FORMAT_32BIT_NV :: _32BIT_NV; VK_CLUSTER_ACCELERATION_STRUCTURE_INDEX_FORMAT_FLAG_BITS_MAX_ENUM_NV :: FLAG_BITS_MAX_ENUM_NV; } VkClusterAccelerationStructureIndexFormatFlagsNV :: VkFlags; VkPhysicalDeviceClusterAccelerationStructureFeaturesNV :: struct { sType: VkStructureType; pNext: *void; clusterAccelerationStructure: VkBool32; } VkPhysicalDeviceClusterAccelerationStructurePropertiesNV :: struct { sType: VkStructureType; pNext: *void; maxVerticesPerCluster: u32; maxTrianglesPerCluster: u32; clusterScratchByteAlignment: u32; clusterByteAlignment: u32; clusterTemplateByteAlignment: u32; clusterBottomLevelByteAlignment: u32; clusterTemplateBoundsByteAlignment: u32; maxClusterGeometryIndex: u32; } VkClusterAccelerationStructureClustersBottomLevelInputNV :: struct { sType: VkStructureType; pNext: *void; maxTotalClusterCount: u32; maxClusterCountPerAccelerationStructure: u32; } VkClusterAccelerationStructureTriangleClusterInputNV :: struct { sType: VkStructureType; pNext: *void; vertexFormat: VkFormat; maxGeometryIndexValue: u32; maxClusterUniqueGeometryCount: u32; maxClusterTriangleCount: u32; maxClusterVertexCount: u32; maxTotalTriangleCount: u32; maxTotalVertexCount: u32; minPositionTruncateBitCount: u32; } VkClusterAccelerationStructureMoveObjectsInputNV :: struct { sType: VkStructureType; pNext: *void; type: VkClusterAccelerationStructureTypeNV; noMoveOverlap: VkBool32; maxMovedBytes: VkDeviceSize; } VkClusterAccelerationStructureOpInputNV :: union { pClustersBottomLevel: *VkClusterAccelerationStructureClustersBottomLevelInputNV; pTriangleClusters: *VkClusterAccelerationStructureTriangleClusterInputNV; pMoveObjects: *VkClusterAccelerationStructureMoveObjectsInputNV; } VkClusterAccelerationStructureInputInfoNV :: struct { sType: VkStructureType; pNext: *void; maxAccelerationStructureCount: u32; flags: VkBuildAccelerationStructureFlagsKHR; opType: VkClusterAccelerationStructureOpTypeNV; opMode: VkClusterAccelerationStructureOpModeNV; opInput: VkClusterAccelerationStructureOpInputNV; } VkStridedDeviceAddressRegionKHR :: struct { deviceAddress: VkDeviceAddress; stride: VkDeviceSize; size: VkDeviceSize; } VkClusterAccelerationStructureCommandsInfoNV :: struct { sType: VkStructureType; pNext: *void; input: VkClusterAccelerationStructureInputInfoNV; dstImplicitData: VkDeviceAddress; scratchData: VkDeviceAddress; dstAddressesArray: VkStridedDeviceAddressRegionKHR; dstSizesArray: VkStridedDeviceAddressRegionKHR; srcInfosArray: VkStridedDeviceAddressRegionKHR; srcInfosCount: VkDeviceAddress; addressResolutionFlags: VkClusterAccelerationStructureAddressResolutionFlagsNV; } VkStridedDeviceAddressNV :: struct { startAddress: VkDeviceAddress; strideInBytes: VkDeviceSize; } VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV :: struct { __bitfield: u32; /* geometryIndex: u32; /* 24 bits */ reserved: u32; /* 5 bits */ geometryFlags: u32; /* 3 bits */; */ } VkClusterAccelerationStructureMoveObjectsInfoNV :: struct { srcAccelerationStructure: VkDeviceAddress; } VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV :: struct { clusterReferencesCount: u32; clusterReferencesStride: u32; clusterReferences: VkDeviceAddress; } VkClusterAccelerationStructureBuildTriangleClusterInfoNV :: struct { clusterID: u32; clusterFlags: VkClusterAccelerationStructureClusterFlagsNV; __bitfield: u32; /* triangleCount: u32; /* 9 bits */ vertexCount: u32; /* 9 bits */ positionTruncateBitCount: u32; /* 6 bits */ indexType: u32; /* 4 bits */ opacityMicromapIndexType: u32; /* 4 bits */; */ baseGeometryIndexAndGeometryFlags: VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV; indexBufferStride: u16; vertexBufferStride: u16; geometryIndexAndFlagsBufferStride: u16; opacityMicromapIndexBufferStride: u16; indexBuffer: VkDeviceAddress; vertexBuffer: VkDeviceAddress; geometryIndexAndFlagsBuffer: VkDeviceAddress; opacityMicromapArray: VkDeviceAddress; opacityMicromapIndexBuffer: VkDeviceAddress; } VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV :: struct { clusterID: u32; clusterFlags: VkClusterAccelerationStructureClusterFlagsNV; __bitfield: u32; /* triangleCount: u32; /* 9 bits */ vertexCount: u32; /* 9 bits */ positionTruncateBitCount: u32; /* 6 bits */ indexType: u32; /* 4 bits */ opacityMicromapIndexType: u32; /* 4 bits */; */ baseGeometryIndexAndGeometryFlags: VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV; indexBufferStride: u16; vertexBufferStride: u16; geometryIndexAndFlagsBufferStride: u16; opacityMicromapIndexBufferStride: u16; indexBuffer: VkDeviceAddress; vertexBuffer: VkDeviceAddress; geometryIndexAndFlagsBuffer: VkDeviceAddress; opacityMicromapArray: VkDeviceAddress; opacityMicromapIndexBuffer: VkDeviceAddress; instantiationBoundingBoxLimit: VkDeviceAddress; } VkClusterAccelerationStructureInstantiateClusterInfoNV :: struct { clusterIdOffset: u32; __bitfield: u32; /* geometryIndexOffset: u32; /* 24 bits */ reserved: u32; /* 8 bits */; */ clusterTemplateAddress: VkDeviceAddress; vertexBuffer: VkStridedDeviceAddressNV; } VkAccelerationStructureBuildSizesInfoKHR :: struct { sType: VkStructureType; pNext: *void; accelerationStructureSize: VkDeviceSize; updateScratchSize: VkDeviceSize; buildScratchSize: VkDeviceSize; } VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV :: struct { sType: VkStructureType; pNext: *void; allowClusterAccelerationStructure: VkBool32; } PFN_vkGetClusterAccelerationStructureBuildSizesNV :: #type (device: VkDevice, pInfo: *VkClusterAccelerationStructureInputInfoNV, pSizeInfo: *VkAccelerationStructureBuildSizesInfoKHR) -> void #c_call; PFN_vkCmdBuildClusterAccelerationStructureIndirectNV :: #type (commandBuffer: VkCommandBuffer, pCommandInfos: *VkClusterAccelerationStructureCommandsInfoNV) -> void #c_call; VkPartitionedAccelerationStructureOpTypeNV :: enum u32 { WRITE_INSTANCE_NV :: 0; UPDATE_INSTANCE_NV :: 1; WRITE_PARTITION_TRANSLATION_NV :: 2; MAX_ENUM_NV :: 2147483647; VK_PARTITIONED_ACCELERATION_STRUCTURE_OP_TYPE_WRITE_INSTANCE_NV :: WRITE_INSTANCE_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_OP_TYPE_UPDATE_INSTANCE_NV :: UPDATE_INSTANCE_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_OP_TYPE_WRITE_PARTITION_TRANSLATION_NV :: WRITE_PARTITION_TRANSLATION_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_OP_TYPE_MAX_ENUM_NV :: MAX_ENUM_NV; } VkPartitionedAccelerationStructureInstanceFlagBitsNV :: enum u32 { TRIANGLE_FACING_CULL_DISABLE_BIT_NV :: 1; TRIANGLE_FLIP_FACING_BIT_NV :: 2; FORCE_OPAQUE_BIT_NV :: 4; FORCE_NO_OPAQUE_BIT_NV :: 8; ENABLE_EXPLICIT_BOUNDING_BOX_NV :: 16; BITS_MAX_ENUM_NV :: 2147483647; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_TRIANGLE_FACING_CULL_DISABLE_BIT_NV :: TRIANGLE_FACING_CULL_DISABLE_BIT_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_TRIANGLE_FLIP_FACING_BIT_NV :: TRIANGLE_FLIP_FACING_BIT_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_FORCE_OPAQUE_BIT_NV :: FORCE_OPAQUE_BIT_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_FORCE_NO_OPAQUE_BIT_NV :: FORCE_NO_OPAQUE_BIT_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_ENABLE_EXPLICIT_BOUNDING_BOX_NV :: ENABLE_EXPLICIT_BOUNDING_BOX_NV; VK_PARTITIONED_ACCELERATION_STRUCTURE_INSTANCE_FLAG_BITS_MAX_ENUM_NV :: BITS_MAX_ENUM_NV; } VkPartitionedAccelerationStructureInstanceFlagsNV :: VkFlags; VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV :: struct { sType: VkStructureType; pNext: *void; partitionedAccelerationStructure: VkBool32; } VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV :: struct { sType: VkStructureType; pNext: *void; maxPartitionCount: u32; } VkPartitionedAccelerationStructureFlagsNV :: struct { sType: VkStructureType; pNext: *void; enablePartitionTranslation: VkBool32; } VkBuildPartitionedAccelerationStructureIndirectCommandNV :: struct { opType: VkPartitionedAccelerationStructureOpTypeNV; argCount: u32; argData: VkStridedDeviceAddressNV; } VkPartitionedAccelerationStructureWriteInstanceDataNV :: struct { transform: VkTransformMatrixKHR; explicitAABB: [6] float; instanceID: u32; instanceMask: u32; instanceContributionToHitGroupIndex: u32; instanceFlags: VkPartitionedAccelerationStructureInstanceFlagsNV; instanceIndex: u32; partitionIndex: u32; accelerationStructure: VkDeviceAddress; } VkPartitionedAccelerationStructureUpdateInstanceDataNV :: struct { instanceIndex: u32; instanceContributionToHitGroupIndex: u32; accelerationStructure: VkDeviceAddress; } VkPartitionedAccelerationStructureWritePartitionTranslationDataNV :: struct { partitionIndex: u32; partitionTranslation: [3] float; } VkWriteDescriptorSetPartitionedAccelerationStructureNV :: struct { sType: VkStructureType; pNext: *void; accelerationStructureCount: u32; pAccelerationStructures: *VkDeviceAddress; } VkPartitionedAccelerationStructureInstancesInputNV :: struct { sType: VkStructureType; pNext: *void; flags: VkBuildAccelerationStructureFlagsKHR; instanceCount: u32; maxInstancePerPartitionCount: u32; partitionCount: u32; maxInstanceInGlobalPartitionCount: u32; } VkBuildPartitionedAccelerationStructureInfoNV :: struct { sType: VkStructureType; pNext: *void; input: VkPartitionedAccelerationStructureInstancesInputNV; srcAccelerationStructureData: VkDeviceAddress; dstAccelerationStructureData: VkDeviceAddress; scratchData: VkDeviceAddress; srcInfos: VkDeviceAddress; srcInfosCount: VkDeviceAddress; } PFN_vkGetPartitionedAccelerationStructuresBuildSizesNV :: #type (device: VkDevice, pInfo: *VkPartitionedAccelerationStructureInstancesInputNV, pSizeInfo: *VkAccelerationStructureBuildSizesInfoKHR) -> void #c_call; PFN_vkCmdBuildPartitionedAccelerationStructuresNV :: #type (commandBuffer: VkCommandBuffer, pBuildInfo: *VkBuildPartitionedAccelerationStructureInfoNV) -> void #c_call; VkIndirectExecutionSetEXT_T :: struct {} VkIndirectExecutionSetEXT :: *VkIndirectExecutionSetEXT_T; VkIndirectCommandsLayoutEXT_T :: struct {} VkIndirectCommandsLayoutEXT :: *VkIndirectCommandsLayoutEXT_T; VkIndirectExecutionSetInfoTypeEXT :: enum u32 { PIPELINES_EXT :: 0; SHADER_OBJECTS_EXT :: 1; MAX_ENUM_EXT :: 2147483647; VK_INDIRECT_EXECUTION_SET_INFO_TYPE_PIPELINES_EXT :: PIPELINES_EXT; VK_INDIRECT_EXECUTION_SET_INFO_TYPE_SHADER_OBJECTS_EXT :: SHADER_OBJECTS_EXT; VK_INDIRECT_EXECUTION_SET_INFO_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkIndirectCommandsTokenTypeEXT :: enum u32 { EXECUTION_SET_EXT :: 0; PUSH_CONSTANT_EXT :: 1; SEQUENCE_INDEX_EXT :: 2; INDEX_BUFFER_EXT :: 3; VERTEX_BUFFER_EXT :: 4; DRAW_INDEXED_EXT :: 5; DRAW_EXT :: 6; DRAW_INDEXED_COUNT_EXT :: 7; DRAW_COUNT_EXT :: 8; DISPATCH_EXT :: 9; DRAW_MESH_TASKS_NV_EXT :: 1000202002; DRAW_MESH_TASKS_COUNT_NV_EXT :: 1000202003; DRAW_MESH_TASKS_EXT :: 1000328000; DRAW_MESH_TASKS_COUNT_EXT :: 1000328001; TRACE_RAYS2_EXT :: 1000386004; MAX_ENUM_EXT :: 2147483647; VK_INDIRECT_COMMANDS_TOKEN_TYPE_EXECUTION_SET_EXT :: EXECUTION_SET_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_PUSH_CONSTANT_EXT :: PUSH_CONSTANT_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_SEQUENCE_INDEX_EXT :: SEQUENCE_INDEX_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_INDEX_BUFFER_EXT :: INDEX_BUFFER_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_VERTEX_BUFFER_EXT :: VERTEX_BUFFER_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_EXT :: DRAW_INDEXED_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_EXT :: DRAW_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_INDEXED_COUNT_EXT :: DRAW_INDEXED_COUNT_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_COUNT_EXT :: DRAW_COUNT_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DISPATCH_EXT :: DISPATCH_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_NV_EXT :: DRAW_MESH_TASKS_NV_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_COUNT_NV_EXT :: DRAW_MESH_TASKS_COUNT_NV_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_EXT :: DRAW_MESH_TASKS_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_DRAW_MESH_TASKS_COUNT_EXT :: DRAW_MESH_TASKS_COUNT_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_TRACE_RAYS2_EXT :: TRACE_RAYS2_EXT; VK_INDIRECT_COMMANDS_TOKEN_TYPE_MAX_ENUM_EXT :: MAX_ENUM_EXT; } VkIndirectCommandsInputModeFlagBitsEXT :: enum u32 { VULKAN_INDEX_BUFFER_EXT :: 1; DXGI_INDEX_BUFFER_EXT :: 2; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_INDIRECT_COMMANDS_INPUT_MODE_VULKAN_INDEX_BUFFER_EXT :: VULKAN_INDEX_BUFFER_EXT; VK_INDIRECT_COMMANDS_INPUT_MODE_DXGI_INDEX_BUFFER_EXT :: DXGI_INDEX_BUFFER_EXT; VK_INDIRECT_COMMANDS_INPUT_MODE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkIndirectCommandsInputModeFlagsEXT :: VkFlags; VkIndirectCommandsLayoutUsageFlagBitsEXT :: enum u32 { EXPLICIT_PREPROCESS_BIT_EXT :: 1; UNORDERED_SEQUENCES_BIT_EXT :: 2; FLAG_BITS_MAX_ENUM_EXT :: 2147483647; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_EXPLICIT_PREPROCESS_BIT_EXT :: EXPLICIT_PREPROCESS_BIT_EXT; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_UNORDERED_SEQUENCES_BIT_EXT :: UNORDERED_SEQUENCES_BIT_EXT; VK_INDIRECT_COMMANDS_LAYOUT_USAGE_FLAG_BITS_MAX_ENUM_EXT :: FLAG_BITS_MAX_ENUM_EXT; } VkIndirectCommandsLayoutUsageFlagsEXT :: VkFlags; VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; deviceGeneratedCommands: VkBool32; dynamicGeneratedPipelineLayout: VkBool32; } VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxIndirectPipelineCount: u32; maxIndirectShaderObjectCount: u32; maxIndirectSequenceCount: u32; maxIndirectCommandsTokenCount: u32; maxIndirectCommandsTokenOffset: u32; maxIndirectCommandsIndirectStride: u32; supportedIndirectCommandsInputModes: VkIndirectCommandsInputModeFlagsEXT; supportedIndirectCommandsShaderStages: VkShaderStageFlags; supportedIndirectCommandsShaderStagesPipelineBinding: VkShaderStageFlags; supportedIndirectCommandsShaderStagesShaderBinding: VkShaderStageFlags; deviceGeneratedCommandsTransformFeedback: VkBool32; deviceGeneratedCommandsMultiDrawIndirectCount: VkBool32; } VkGeneratedCommandsMemoryRequirementsInfoEXT :: struct { sType: VkStructureType; pNext: *void; indirectExecutionSet: VkIndirectExecutionSetEXT; indirectCommandsLayout: VkIndirectCommandsLayoutEXT; maxSequenceCount: u32; maxDrawCount: u32; } VkIndirectExecutionSetPipelineInfoEXT :: struct { sType: VkStructureType; pNext: *void; initialPipeline: VkPipeline; maxPipelineCount: u32; } VkIndirectExecutionSetShaderLayoutInfoEXT :: struct { sType: VkStructureType; pNext: *void; setLayoutCount: u32; pSetLayouts: *VkDescriptorSetLayout; } VkIndirectExecutionSetShaderInfoEXT :: struct { sType: VkStructureType; pNext: *void; shaderCount: u32; pInitialShaders: *VkShaderEXT; pSetLayoutInfos: *VkIndirectExecutionSetShaderLayoutInfoEXT; maxShaderCount: u32; pushConstantRangeCount: u32; pPushConstantRanges: *VkPushConstantRange; } VkIndirectExecutionSetInfoEXT :: union { pPipelineInfo: *VkIndirectExecutionSetPipelineInfoEXT; pShaderInfo: *VkIndirectExecutionSetShaderInfoEXT; } VkIndirectExecutionSetCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; type: VkIndirectExecutionSetInfoTypeEXT; info: VkIndirectExecutionSetInfoEXT; } VkGeneratedCommandsInfoEXT :: struct { sType: VkStructureType; pNext: *void; shaderStages: VkShaderStageFlags; indirectExecutionSet: VkIndirectExecutionSetEXT; indirectCommandsLayout: VkIndirectCommandsLayoutEXT; indirectAddress: VkDeviceAddress; indirectAddressSize: VkDeviceSize; preprocessAddress: VkDeviceAddress; preprocessSize: VkDeviceSize; maxSequenceCount: u32; sequenceCountAddress: VkDeviceAddress; maxDrawCount: u32; } VkWriteIndirectExecutionSetPipelineEXT :: struct { sType: VkStructureType; pNext: *void; index: u32; pipeline: VkPipeline; } VkIndirectCommandsPushConstantTokenEXT :: struct { updateRange: VkPushConstantRange; } VkIndirectCommandsVertexBufferTokenEXT :: struct { vertexBindingUnit: u32; } VkIndirectCommandsIndexBufferTokenEXT :: struct { mode: VkIndirectCommandsInputModeFlagBitsEXT; } VkIndirectCommandsExecutionSetTokenEXT :: struct { type: VkIndirectExecutionSetInfoTypeEXT; shaderStages: VkShaderStageFlags; } VkIndirectCommandsTokenDataEXT :: union { pPushConstant: *VkIndirectCommandsPushConstantTokenEXT; pVertexBuffer: *VkIndirectCommandsVertexBufferTokenEXT; pIndexBuffer: *VkIndirectCommandsIndexBufferTokenEXT; pExecutionSet: *VkIndirectCommandsExecutionSetTokenEXT; } VkIndirectCommandsLayoutTokenEXT :: struct { sType: VkStructureType; pNext: *void; type: VkIndirectCommandsTokenTypeEXT; data: VkIndirectCommandsTokenDataEXT; offset: u32; } VkIndirectCommandsLayoutCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; flags: VkIndirectCommandsLayoutUsageFlagsEXT; shaderStages: VkShaderStageFlags; indirectStride: u32; pipelineLayout: VkPipelineLayout; tokenCount: u32; pTokens: *VkIndirectCommandsLayoutTokenEXT; } VkDrawIndirectCountIndirectCommandEXT :: struct { bufferAddress: VkDeviceAddress; stride: u32; commandCount: u32; } VkBindVertexBufferIndirectCommandEXT :: struct { bufferAddress: VkDeviceAddress; size: u32; stride: u32; } VkBindIndexBufferIndirectCommandEXT :: struct { bufferAddress: VkDeviceAddress; size: u32; indexType: VkIndexType; } VkGeneratedCommandsPipelineInfoEXT :: struct { sType: VkStructureType; pNext: *void; pipeline: VkPipeline; } VkGeneratedCommandsShaderInfoEXT :: struct { sType: VkStructureType; pNext: *void; shaderCount: u32; pShaders: *VkShaderEXT; } VkWriteIndirectExecutionSetShaderEXT :: struct { sType: VkStructureType; pNext: *void; index: u32; shader: VkShaderEXT; } PFN_vkGetGeneratedCommandsMemoryRequirementsEXT :: #type (device: VkDevice, pInfo: *VkGeneratedCommandsMemoryRequirementsInfoEXT, pMemoryRequirements: *VkMemoryRequirements2) -> void #c_call; PFN_vkCmdPreprocessGeneratedCommandsEXT :: #type (commandBuffer: VkCommandBuffer, pGeneratedCommandsInfo: *VkGeneratedCommandsInfoEXT, stateCommandBuffer: VkCommandBuffer) -> void #c_call; PFN_vkCmdExecuteGeneratedCommandsEXT :: #type (commandBuffer: VkCommandBuffer, isPreprocessed: VkBool32, pGeneratedCommandsInfo: *VkGeneratedCommandsInfoEXT) -> void #c_call; PFN_vkCreateIndirectCommandsLayoutEXT :: #type (device: VkDevice, pCreateInfo: *VkIndirectCommandsLayoutCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pIndirectCommandsLayout: *VkIndirectCommandsLayoutEXT) -> VkResult #c_call; PFN_vkDestroyIndirectCommandsLayoutEXT :: #type (device: VkDevice, indirectCommandsLayout: VkIndirectCommandsLayoutEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCreateIndirectExecutionSetEXT :: #type (device: VkDevice, pCreateInfo: *VkIndirectExecutionSetCreateInfoEXT, pAllocator: *VkAllocationCallbacks, pIndirectExecutionSet: *VkIndirectExecutionSetEXT) -> VkResult #c_call; PFN_vkDestroyIndirectExecutionSetEXT :: #type (device: VkDevice, indirectExecutionSet: VkIndirectExecutionSetEXT, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkUpdateIndirectExecutionSetPipelineEXT :: #type (device: VkDevice, indirectExecutionSet: VkIndirectExecutionSetEXT, executionSetWriteCount: u32, pExecutionSetWrites: *VkWriteIndirectExecutionSetPipelineEXT) -> void #c_call; PFN_vkUpdateIndirectExecutionSetShaderEXT :: #type (device: VkDevice, indirectExecutionSet: VkIndirectExecutionSetEXT, executionSetWriteCount: u32, pExecutionSetWrites: *VkWriteIndirectExecutionSetShaderEXT) -> void #c_call; VkPhysicalDeviceImageAlignmentControlFeaturesMESA :: struct { sType: VkStructureType; pNext: *void; imageAlignmentControl: VkBool32; } VkPhysicalDeviceImageAlignmentControlPropertiesMESA :: struct { sType: VkStructureType; pNext: *void; supportedImageAlignmentMask: u32; } VkImageAlignmentControlCreateInfoMESA :: struct { sType: VkStructureType; pNext: *void; maximumRequestedAlignment: u32; } VkPhysicalDeviceDepthClampControlFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; depthClampControl: VkBool32; } VkPipelineViewportDepthClampControlCreateInfoEXT :: struct { sType: VkStructureType; pNext: *void; depthClampMode: VkDepthClampModeEXT; pDepthClampRange: *VkDepthClampRangeEXT; } VkPhysicalDeviceHdrVividFeaturesHUAWEI :: struct { sType: VkStructureType; pNext: *void; hdrVivid: VkBool32; } VkHdrVividDynamicMetadataHUAWEI :: struct { sType: VkStructureType; pNext: *void; dynamicMetadataSize: u64; pDynamicMetadata: *void; } VkCooperativeMatrixFlexibleDimensionsPropertiesNV :: struct { sType: VkStructureType; pNext: *void; MGranularity: u32; NGranularity: u32; KGranularity: u32; AType: VkComponentTypeKHR; BType: VkComponentTypeKHR; CType: VkComponentTypeKHR; ResultType: VkComponentTypeKHR; saturatingAccumulation: VkBool32; scope: VkScopeKHR; workgroupInvocations: u32; } VkPhysicalDeviceCooperativeMatrix2FeaturesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrixWorkgroupScope: VkBool32; cooperativeMatrixFlexibleDimensions: VkBool32; cooperativeMatrixReductions: VkBool32; cooperativeMatrixConversions: VkBool32; cooperativeMatrixPerElementOperations: VkBool32; cooperativeMatrixTensorAddressing: VkBool32; cooperativeMatrixBlockLoads: VkBool32; } VkPhysicalDeviceCooperativeMatrix2PropertiesNV :: struct { sType: VkStructureType; pNext: *void; cooperativeMatrixWorkgroupScopeMaxWorkgroupSize: u32; cooperativeMatrixFlexibleDimensionsMaxDimension: u32; cooperativeMatrixWorkgroupScopeReservedSharedMemory: u32; } PFN_vkGetPhysicalDeviceCooperativeMatrixFlexibleDimensionsPropertiesNV :: #type (physicalDevice: VkPhysicalDevice, pPropertyCount: *u32, pProperties: *VkCooperativeMatrixFlexibleDimensionsPropertiesNV) -> VkResult #c_call; VkPhysicalDevicePipelineOpacityMicromapFeaturesARM :: struct { sType: VkStructureType; pNext: *void; pipelineOpacityMicromap: VkBool32; } VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; vertexAttributeRobustness: VkBool32; } VkSetPresentConfigNV :: struct { sType: VkStructureType; pNext: *void; numFramesPerBatch: u32; presentConfigFeedback: u32; } VkPhysicalDevicePresentMeteringFeaturesNV :: struct { sType: VkStructureType; pNext: *void; presentMetering: VkBool32; } VkRenderingEndInfoEXT :: struct { sType: VkStructureType; pNext: *void; } PFN_vkCmdEndRendering2EXT :: #type (commandBuffer: VkCommandBuffer, pRenderingEndInfo: *VkRenderingEndInfoEXT) -> void #c_call; VkBuildAccelerationStructureModeKHR :: enum u32 { BUILD_KHR :: 0; UPDATE_KHR :: 1; MAX_ENUM_KHR :: 2147483647; VK_BUILD_ACCELERATION_STRUCTURE_MODE_BUILD_KHR :: BUILD_KHR; VK_BUILD_ACCELERATION_STRUCTURE_MODE_UPDATE_KHR :: UPDATE_KHR; VK_BUILD_ACCELERATION_STRUCTURE_MODE_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkAccelerationStructureCreateFlagBitsKHR :: enum u32 { DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: 1; DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: 8; MOTION_BIT_NV :: 4; FLAG_BITS_MAX_ENUM_KHR :: 2147483647; VK_ACCELERATION_STRUCTURE_CREATE_DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR :: DEVICE_ADDRESS_CAPTURE_REPLAY_BIT_KHR; VK_ACCELERATION_STRUCTURE_CREATE_DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT :: DESCRIPTOR_BUFFER_CAPTURE_REPLAY_BIT_EXT; VK_ACCELERATION_STRUCTURE_CREATE_MOTION_BIT_NV :: MOTION_BIT_NV; VK_ACCELERATION_STRUCTURE_CREATE_FLAG_BITS_MAX_ENUM_KHR :: FLAG_BITS_MAX_ENUM_KHR; } VkAccelerationStructureCreateFlagsKHR :: VkFlags; VkAccelerationStructureBuildRangeInfoKHR :: struct { primitiveCount: u32; primitiveOffset: u32; firstVertex: u32; transformOffset: u32; } VkAccelerationStructureGeometryTrianglesDataKHR :: struct { sType: VkStructureType; pNext: *void; vertexFormat: VkFormat; vertexData: VkDeviceOrHostAddressConstKHR; vertexStride: VkDeviceSize; maxVertex: u32; indexType: VkIndexType; indexData: VkDeviceOrHostAddressConstKHR; transformData: VkDeviceOrHostAddressConstKHR; } VkAccelerationStructureGeometryAabbsDataKHR :: struct { sType: VkStructureType; pNext: *void; data: VkDeviceOrHostAddressConstKHR; stride: VkDeviceSize; } VkAccelerationStructureGeometryInstancesDataKHR :: struct { sType: VkStructureType; pNext: *void; arrayOfPointers: VkBool32; data: VkDeviceOrHostAddressConstKHR; } VkAccelerationStructureGeometryDataKHR :: union { triangles: VkAccelerationStructureGeometryTrianglesDataKHR; aabbs: VkAccelerationStructureGeometryAabbsDataKHR; instances: VkAccelerationStructureGeometryInstancesDataKHR; } VkAccelerationStructureGeometryKHR :: struct { sType: VkStructureType; pNext: *void; geometryType: VkGeometryTypeKHR; geometry: VkAccelerationStructureGeometryDataKHR; flags: VkGeometryFlagsKHR; } VkAccelerationStructureBuildGeometryInfoKHR :: struct { sType: VkStructureType; pNext: *void; type: VkAccelerationStructureTypeKHR; flags: VkBuildAccelerationStructureFlagsKHR; mode: VkBuildAccelerationStructureModeKHR; srcAccelerationStructure: VkAccelerationStructureKHR; dstAccelerationStructure: VkAccelerationStructureKHR; geometryCount: u32; pGeometries: *VkAccelerationStructureGeometryKHR; ppGeometries: **VkAccelerationStructureGeometryKHR; scratchData: VkDeviceOrHostAddressKHR; } VkAccelerationStructureCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; createFlags: VkAccelerationStructureCreateFlagsKHR; buffer: VkBuffer; offset: VkDeviceSize; size: VkDeviceSize; type: VkAccelerationStructureTypeKHR; deviceAddress: VkDeviceAddress; } VkWriteDescriptorSetAccelerationStructureKHR :: struct { sType: VkStructureType; pNext: *void; accelerationStructureCount: u32; pAccelerationStructures: *VkAccelerationStructureKHR; } VkPhysicalDeviceAccelerationStructureFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; accelerationStructure: VkBool32; accelerationStructureCaptureReplay: VkBool32; accelerationStructureIndirectBuild: VkBool32; accelerationStructureHostCommands: VkBool32; descriptorBindingAccelerationStructureUpdateAfterBind: VkBool32; } VkPhysicalDeviceAccelerationStructurePropertiesKHR :: struct { sType: VkStructureType; pNext: *void; maxGeometryCount: u64; maxInstanceCount: u64; maxPrimitiveCount: u64; maxPerStageDescriptorAccelerationStructures: u32; maxPerStageDescriptorUpdateAfterBindAccelerationStructures: u32; maxDescriptorSetAccelerationStructures: u32; maxDescriptorSetUpdateAfterBindAccelerationStructures: u32; minAccelerationStructureScratchOffsetAlignment: u32; } VkAccelerationStructureDeviceAddressInfoKHR :: struct { sType: VkStructureType; pNext: *void; accelerationStructure: VkAccelerationStructureKHR; } VkAccelerationStructureVersionInfoKHR :: struct { sType: VkStructureType; pNext: *void; pVersionData: *u8; } VkCopyAccelerationStructureToMemoryInfoKHR :: struct { sType: VkStructureType; pNext: *void; src: VkAccelerationStructureKHR; dst: VkDeviceOrHostAddressKHR; mode: VkCopyAccelerationStructureModeKHR; } VkCopyMemoryToAccelerationStructureInfoKHR :: struct { sType: VkStructureType; pNext: *void; src: VkDeviceOrHostAddressConstKHR; dst: VkAccelerationStructureKHR; mode: VkCopyAccelerationStructureModeKHR; } VkCopyAccelerationStructureInfoKHR :: struct { sType: VkStructureType; pNext: *void; src: VkAccelerationStructureKHR; dst: VkAccelerationStructureKHR; mode: VkCopyAccelerationStructureModeKHR; } PFN_vkCreateAccelerationStructureKHR :: #type (device: VkDevice, pCreateInfo: *VkAccelerationStructureCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pAccelerationStructure: *VkAccelerationStructureKHR) -> VkResult #c_call; PFN_vkDestroyAccelerationStructureKHR :: #type (device: VkDevice, accelerationStructure: VkAccelerationStructureKHR, pAllocator: *VkAllocationCallbacks) -> void #c_call; PFN_vkCmdBuildAccelerationStructuresKHR :: #type (commandBuffer: VkCommandBuffer, infoCount: u32, pInfos: *VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: **VkAccelerationStructureBuildRangeInfoKHR) -> void #c_call; PFN_vkCmdBuildAccelerationStructuresIndirectKHR :: #type (commandBuffer: VkCommandBuffer, infoCount: u32, pInfos: *VkAccelerationStructureBuildGeometryInfoKHR, pIndirectDeviceAddresses: *VkDeviceAddress, pIndirectStrides: *u32, ppMaxPrimitiveCounts: **u32) -> void #c_call; PFN_vkBuildAccelerationStructuresKHR :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, infoCount: u32, pInfos: *VkAccelerationStructureBuildGeometryInfoKHR, ppBuildRangeInfos: **VkAccelerationStructureBuildRangeInfoKHR) -> VkResult #c_call; PFN_vkCopyAccelerationStructureKHR :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyAccelerationStructureInfoKHR) -> VkResult #c_call; PFN_vkCopyAccelerationStructureToMemoryKHR :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyAccelerationStructureToMemoryInfoKHR) -> VkResult #c_call; PFN_vkCopyMemoryToAccelerationStructureKHR :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pInfo: *VkCopyMemoryToAccelerationStructureInfoKHR) -> VkResult #c_call; PFN_vkWriteAccelerationStructuresPropertiesKHR :: #type (device: VkDevice, accelerationStructureCount: u32, pAccelerationStructures: *VkAccelerationStructureKHR, queryType: VkQueryType, dataSize: u64, pData: *void, stride: u64) -> VkResult #c_call; PFN_vkCmdCopyAccelerationStructureKHR :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyAccelerationStructureInfoKHR) -> void #c_call; PFN_vkCmdCopyAccelerationStructureToMemoryKHR :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyAccelerationStructureToMemoryInfoKHR) -> void #c_call; PFN_vkCmdCopyMemoryToAccelerationStructureKHR :: #type (commandBuffer: VkCommandBuffer, pInfo: *VkCopyMemoryToAccelerationStructureInfoKHR) -> void #c_call; PFN_vkGetAccelerationStructureDeviceAddressKHR :: #type (device: VkDevice, pInfo: *VkAccelerationStructureDeviceAddressInfoKHR) -> VkDeviceAddress #c_call; PFN_vkCmdWriteAccelerationStructuresPropertiesKHR :: #type (commandBuffer: VkCommandBuffer, accelerationStructureCount: u32, pAccelerationStructures: *VkAccelerationStructureKHR, queryType: VkQueryType, queryPool: VkQueryPool, firstQuery: u32) -> void #c_call; PFN_vkGetDeviceAccelerationStructureCompatibilityKHR :: #type (device: VkDevice, pVersionInfo: *VkAccelerationStructureVersionInfoKHR, pCompatibility: *VkAccelerationStructureCompatibilityKHR) -> void #c_call; PFN_vkGetAccelerationStructureBuildSizesKHR :: #type (device: VkDevice, buildType: VkAccelerationStructureBuildTypeKHR, pBuildInfo: *VkAccelerationStructureBuildGeometryInfoKHR, pMaxPrimitiveCounts: *u32, pSizeInfo: *VkAccelerationStructureBuildSizesInfoKHR) -> void #c_call; VkShaderGroupShaderKHR :: enum u32 { GENERAL_KHR :: 0; CLOSEST_HIT_KHR :: 1; ANY_HIT_KHR :: 2; INTERSECTION_KHR :: 3; MAX_ENUM_KHR :: 2147483647; VK_SHADER_GROUP_SHADER_GENERAL_KHR :: GENERAL_KHR; VK_SHADER_GROUP_SHADER_CLOSEST_HIT_KHR :: CLOSEST_HIT_KHR; VK_SHADER_GROUP_SHADER_ANY_HIT_KHR :: ANY_HIT_KHR; VK_SHADER_GROUP_SHADER_INTERSECTION_KHR :: INTERSECTION_KHR; VK_SHADER_GROUP_SHADER_MAX_ENUM_KHR :: MAX_ENUM_KHR; } VkRayTracingShaderGroupCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; type: VkRayTracingShaderGroupTypeKHR; generalShader: u32; closestHitShader: u32; anyHitShader: u32; intersectionShader: u32; pShaderGroupCaptureReplayHandle: *void; } VkRayTracingPipelineInterfaceCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; maxPipelineRayPayloadSize: u32; maxPipelineRayHitAttributeSize: u32; } VkRayTracingPipelineCreateInfoKHR :: struct { sType: VkStructureType; pNext: *void; flags: VkPipelineCreateFlags; stageCount: u32; pStages: *VkPipelineShaderStageCreateInfo; groupCount: u32; pGroups: *VkRayTracingShaderGroupCreateInfoKHR; maxPipelineRayRecursionDepth: u32; pLibraryInfo: *VkPipelineLibraryCreateInfoKHR; pLibraryInterface: *VkRayTracingPipelineInterfaceCreateInfoKHR; pDynamicState: *VkPipelineDynamicStateCreateInfo; layout: VkPipelineLayout; basePipelineHandle: VkPipeline; basePipelineIndex: s32; } VkPhysicalDeviceRayTracingPipelineFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; rayTracingPipeline: VkBool32; rayTracingPipelineShaderGroupHandleCaptureReplay: VkBool32; rayTracingPipelineShaderGroupHandleCaptureReplayMixed: VkBool32; rayTracingPipelineTraceRaysIndirect: VkBool32; rayTraversalPrimitiveCulling: VkBool32; } VkPhysicalDeviceRayTracingPipelinePropertiesKHR :: struct { sType: VkStructureType; pNext: *void; shaderGroupHandleSize: u32; maxRayRecursionDepth: u32; maxShaderGroupStride: u32; shaderGroupBaseAlignment: u32; shaderGroupHandleCaptureReplaySize: u32; maxRayDispatchInvocationCount: u32; shaderGroupHandleAlignment: u32; maxRayHitAttributeSize: u32; } VkTraceRaysIndirectCommandKHR :: struct { width: u32; height: u32; depth: u32; } PFN_vkCmdTraceRaysKHR :: #type (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: *VkStridedDeviceAddressRegionKHR, width: u32, height: u32, depth: u32) -> void #c_call; PFN_vkCreateRayTracingPipelinesKHR :: #type (device: VkDevice, deferredOperation: VkDeferredOperationKHR, pipelineCache: VkPipelineCache, createInfoCount: u32, pCreateInfos: *VkRayTracingPipelineCreateInfoKHR, pAllocator: *VkAllocationCallbacks, pPipelines: *VkPipeline) -> VkResult #c_call; PFN_vkGetRayTracingCaptureReplayShaderGroupHandlesKHR :: #type (device: VkDevice, pipeline: VkPipeline, firstGroup: u32, groupCount: u32, dataSize: u64, pData: *void) -> VkResult #c_call; PFN_vkCmdTraceRaysIndirectKHR :: #type (commandBuffer: VkCommandBuffer, pRaygenShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pMissShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pHitShaderBindingTable: *VkStridedDeviceAddressRegionKHR, pCallableShaderBindingTable: *VkStridedDeviceAddressRegionKHR, indirectDeviceAddress: VkDeviceAddress) -> void #c_call; PFN_vkGetRayTracingShaderGroupStackSizeKHR :: #type (device: VkDevice, pipeline: VkPipeline, group: u32, groupShader: VkShaderGroupShaderKHR) -> VkDeviceSize #c_call; PFN_vkCmdSetRayTracingPipelineStackSizeKHR :: #type (commandBuffer: VkCommandBuffer, pipelineStackSize: u32) -> void #c_call; VkPhysicalDeviceRayQueryFeaturesKHR :: struct { sType: VkStructureType; pNext: *void; rayQuery: VkBool32; } VkPhysicalDeviceMeshShaderFeaturesEXT :: struct { sType: VkStructureType; pNext: *void; taskShader: VkBool32; meshShader: VkBool32; multiviewMeshShader: VkBool32; primitiveFragmentShadingRateMeshShader: VkBool32; meshShaderQueries: VkBool32; } VkPhysicalDeviceMeshShaderPropertiesEXT :: struct { sType: VkStructureType; pNext: *void; maxTaskWorkGroupTotalCount: u32; maxTaskWorkGroupCount: [3] u32; maxTaskWorkGroupInvocations: u32; maxTaskWorkGroupSize: [3] u32; maxTaskPayloadSize: u32; maxTaskSharedMemorySize: u32; maxTaskPayloadAndSharedMemorySize: u32; maxMeshWorkGroupTotalCount: u32; maxMeshWorkGroupCount: [3] u32; maxMeshWorkGroupInvocations: u32; maxMeshWorkGroupSize: [3] u32; maxMeshSharedMemorySize: u32; maxMeshPayloadAndSharedMemorySize: u32; maxMeshOutputMemorySize: u32; maxMeshPayloadAndOutputMemorySize: u32; maxMeshOutputComponents: u32; maxMeshOutputVertices: u32; maxMeshOutputPrimitives: u32; maxMeshOutputLayers: u32; maxMeshMultiviewViewCount: u32; meshOutputPerVertexGranularity: u32; meshOutputPerPrimitiveGranularity: u32; maxPreferredTaskWorkGroupInvocations: u32; maxPreferredMeshWorkGroupInvocations: u32; prefersLocalInvocationVertexOutput: VkBool32; prefersLocalInvocationPrimitiveOutput: VkBool32; prefersCompactVertexOutput: VkBool32; prefersCompactPrimitiveOutput: VkBool32; } VkDrawMeshTasksIndirectCommandEXT :: struct { groupCountX: u32; groupCountY: u32; groupCountZ: u32; } PFN_vkCmdDrawMeshTasksEXT :: #type (commandBuffer: VkCommandBuffer, groupCountX: u32, groupCountY: u32, groupCountZ: u32) -> void #c_call; PFN_vkCmdDrawMeshTasksIndirectEXT :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, drawCount: u32, stride: u32) -> void #c_call; PFN_vkCmdDrawMeshTasksIndirectCountEXT :: #type (commandBuffer: VkCommandBuffer, buffer: VkBuffer, offset: VkDeviceSize, countBuffer: VkBuffer, countBufferOffset: VkDeviceSize, maxDrawCount: u32, stride: u32) -> void #c_call; #scope_file #import "Basic"; // For assert libvulkan :: #library,system "libvulkan"; #run { { info := type_info(VkExtent2D); for info.members { if it.name == { case "width"; assert(it.offset_in_bytes == 0, "VkExtent2D.width has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtent2D.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 4, "VkExtent2D.height has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtent2D.height has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExtent2D) == 8, "VkExtent2D has size % instead of 8", size_of(VkExtent2D)); } { info := type_info(VkExtent3D); for info.members { if it.name == { case "width"; assert(it.offset_in_bytes == 0, "VkExtent3D.width has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtent3D.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 4, "VkExtent3D.height has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtent3D.height has unexpected size % instead of 4", it.type.runtime_size); case "depth"; assert(it.offset_in_bytes == 8, "VkExtent3D.depth has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtent3D.depth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExtent3D) == 12, "VkExtent3D has size % instead of 12", size_of(VkExtent3D)); } { info := type_info(VkOffset2D); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkOffset2D.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOffset2D.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkOffset2D.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOffset2D.y has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOffset2D) == 8, "VkOffset2D has size % instead of 8", size_of(VkOffset2D)); } { info := type_info(VkOffset3D); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkOffset3D.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOffset3D.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkOffset3D.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOffset3D.y has unexpected size % instead of 4", it.type.runtime_size); case "z"; assert(it.offset_in_bytes == 8, "VkOffset3D.z has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOffset3D.z has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOffset3D) == 12, "VkOffset3D has size % instead of 12", size_of(VkOffset3D)); } { info := type_info(VkRect2D); for info.members { if it.name == { case "offset"; assert(it.offset_in_bytes == 0, "VkRect2D.offset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRect2D.offset has unexpected size % instead of 8", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 8, "VkRect2D.extent has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRect2D.extent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRect2D) == 16, "VkRect2D has size % instead of 16", size_of(VkRect2D)); } { info := type_info(VkBaseInStructure); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBaseInStructure.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBaseInStructure.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBaseInStructure.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBaseInStructure.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBaseInStructure) == 16, "VkBaseInStructure has size % instead of 16", size_of(VkBaseInStructure)); } { info := type_info(VkBaseOutStructure); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBaseOutStructure.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBaseOutStructure.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBaseOutStructure.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBaseOutStructure.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBaseOutStructure) == 16, "VkBaseOutStructure has size % instead of 16", size_of(VkBaseOutStructure)); } { info := type_info(VkBufferMemoryBarrier); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferMemoryBarrier.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferMemoryBarrier.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 16, "VkBufferMemoryBarrier.srcAccessMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier.srcAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 20, "VkBufferMemoryBarrier.dstAccessMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier.dstAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "srcQueueFamilyIndex"; assert(it.offset_in_bytes == 24, "VkBufferMemoryBarrier.srcQueueFamilyIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier.srcQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "dstQueueFamilyIndex"; assert(it.offset_in_bytes == 28, "VkBufferMemoryBarrier.dstQueueFamilyIndex has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier.dstQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 32, "VkBufferMemoryBarrier.buffer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 40, "VkBufferMemoryBarrier.offset has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 48, "VkBufferMemoryBarrier.size has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferMemoryBarrier) == 56, "VkBufferMemoryBarrier has size % instead of 56", size_of(VkBufferMemoryBarrier)); } { info := type_info(VkDispatchIndirectCommand); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkDispatchIndirectCommand.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDispatchIndirectCommand.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkDispatchIndirectCommand.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDispatchIndirectCommand.y has unexpected size % instead of 4", it.type.runtime_size); case "z"; assert(it.offset_in_bytes == 8, "VkDispatchIndirectCommand.z has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDispatchIndirectCommand.z has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDispatchIndirectCommand) == 12, "VkDispatchIndirectCommand has size % instead of 12", size_of(VkDispatchIndirectCommand)); } { info := type_info(VkDrawIndexedIndirectCommand); for info.members { if it.name == { case "indexCount"; assert(it.offset_in_bytes == 0, "VkDrawIndexedIndirectCommand.indexCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndexedIndirectCommand.indexCount has unexpected size % instead of 4", it.type.runtime_size); case "instanceCount"; assert(it.offset_in_bytes == 4, "VkDrawIndexedIndirectCommand.instanceCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndexedIndirectCommand.instanceCount has unexpected size % instead of 4", it.type.runtime_size); case "firstIndex"; assert(it.offset_in_bytes == 8, "VkDrawIndexedIndirectCommand.firstIndex has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndexedIndirectCommand.firstIndex has unexpected size % instead of 4", it.type.runtime_size); case "vertexOffset"; assert(it.offset_in_bytes == 12, "VkDrawIndexedIndirectCommand.vertexOffset has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndexedIndirectCommand.vertexOffset has unexpected size % instead of 4", it.type.runtime_size); case "firstInstance"; assert(it.offset_in_bytes == 16, "VkDrawIndexedIndirectCommand.firstInstance has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndexedIndirectCommand.firstInstance has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrawIndexedIndirectCommand) == 20, "VkDrawIndexedIndirectCommand has size % instead of 20", size_of(VkDrawIndexedIndirectCommand)); } { info := type_info(VkDrawIndirectCommand); for info.members { if it.name == { case "vertexCount"; assert(it.offset_in_bytes == 0, "VkDrawIndirectCommand.vertexCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCommand.vertexCount has unexpected size % instead of 4", it.type.runtime_size); case "instanceCount"; assert(it.offset_in_bytes == 4, "VkDrawIndirectCommand.instanceCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCommand.instanceCount has unexpected size % instead of 4", it.type.runtime_size); case "firstVertex"; assert(it.offset_in_bytes == 8, "VkDrawIndirectCommand.firstVertex has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCommand.firstVertex has unexpected size % instead of 4", it.type.runtime_size); case "firstInstance"; assert(it.offset_in_bytes == 12, "VkDrawIndirectCommand.firstInstance has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCommand.firstInstance has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrawIndirectCommand) == 16, "VkDrawIndirectCommand has size % instead of 16", size_of(VkDrawIndirectCommand)); } { info := type_info(VkImageSubresourceRange); for info.members { if it.name == { case "aspectMask"; assert(it.offset_in_bytes == 0, "VkImageSubresourceRange.aspectMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceRange.aspectMask has unexpected size % instead of 4", it.type.runtime_size); case "baseMipLevel"; assert(it.offset_in_bytes == 4, "VkImageSubresourceRange.baseMipLevel has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceRange.baseMipLevel has unexpected size % instead of 4", it.type.runtime_size); case "levelCount"; assert(it.offset_in_bytes == 8, "VkImageSubresourceRange.levelCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceRange.levelCount has unexpected size % instead of 4", it.type.runtime_size); case "baseArrayLayer"; assert(it.offset_in_bytes == 12, "VkImageSubresourceRange.baseArrayLayer has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceRange.baseArrayLayer has unexpected size % instead of 4", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 16, "VkImageSubresourceRange.layerCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceRange.layerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageSubresourceRange) == 20, "VkImageSubresourceRange has size % instead of 20", size_of(VkImageSubresourceRange)); } { info := type_info(VkImageMemoryBarrier); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageMemoryBarrier.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageMemoryBarrier.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 16, "VkImageMemoryBarrier.srcAccessMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.srcAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 20, "VkImageMemoryBarrier.dstAccessMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.dstAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "oldLayout"; assert(it.offset_in_bytes == 24, "VkImageMemoryBarrier.oldLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.oldLayout has unexpected size % instead of 4", it.type.runtime_size); case "newLayout"; assert(it.offset_in_bytes == 28, "VkImageMemoryBarrier.newLayout has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.newLayout has unexpected size % instead of 4", it.type.runtime_size); case "srcQueueFamilyIndex"; assert(it.offset_in_bytes == 32, "VkImageMemoryBarrier.srcQueueFamilyIndex has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.srcQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "dstQueueFamilyIndex"; assert(it.offset_in_bytes == 36, "VkImageMemoryBarrier.dstQueueFamilyIndex has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier.dstQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 40, "VkImageMemoryBarrier.image has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier.image has unexpected size % instead of 8", it.type.runtime_size); case "subresourceRange"; assert(it.offset_in_bytes == 48, "VkImageMemoryBarrier.subresourceRange has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkImageMemoryBarrier.subresourceRange has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkImageMemoryBarrier) == 72, "VkImageMemoryBarrier has size % instead of 72", size_of(VkImageMemoryBarrier)); } { info := type_info(VkMemoryBarrier); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryBarrier.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryBarrier.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryBarrier.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 16, "VkMemoryBarrier.srcAccessMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryBarrier.srcAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 20, "VkMemoryBarrier.dstAccessMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryBarrier.dstAccessMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryBarrier) == 24, "VkMemoryBarrier has size % instead of 24", size_of(VkMemoryBarrier)); } { info := type_info(VkPipelineCacheHeaderVersionOne); for info.members { if it.name == { case "headerSize"; assert(it.offset_in_bytes == 0, "VkPipelineCacheHeaderVersionOne.headerSize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheHeaderVersionOne.headerSize has unexpected size % instead of 4", it.type.runtime_size); case "headerVersion"; assert(it.offset_in_bytes == 4, "VkPipelineCacheHeaderVersionOne.headerVersion has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheHeaderVersionOne.headerVersion has unexpected size % instead of 4", it.type.runtime_size); case "vendorID"; assert(it.offset_in_bytes == 8, "VkPipelineCacheHeaderVersionOne.vendorID has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheHeaderVersionOne.vendorID has unexpected size % instead of 4", it.type.runtime_size); case "deviceID"; assert(it.offset_in_bytes == 12, "VkPipelineCacheHeaderVersionOne.deviceID has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheHeaderVersionOne.deviceID has unexpected size % instead of 4", it.type.runtime_size); case "pipelineCacheUUID"; assert(it.offset_in_bytes == 16, "VkPipelineCacheHeaderVersionOne.pipelineCacheUUID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPipelineCacheHeaderVersionOne.pipelineCacheUUID has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkPipelineCacheHeaderVersionOne) == 32, "VkPipelineCacheHeaderVersionOne has size % instead of 32", size_of(VkPipelineCacheHeaderVersionOne)); } { info := type_info(VkAllocationCallbacks); for info.members { if it.name == { case "pUserData"; assert(it.offset_in_bytes == 0, "VkAllocationCallbacks.pUserData has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pUserData has unexpected size % instead of 8", it.type.runtime_size); case "pfnAllocation"; assert(it.offset_in_bytes == 8, "VkAllocationCallbacks.pfnAllocation has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pfnAllocation has unexpected size % instead of 8", it.type.runtime_size); case "pfnReallocation"; assert(it.offset_in_bytes == 16, "VkAllocationCallbacks.pfnReallocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pfnReallocation has unexpected size % instead of 8", it.type.runtime_size); case "pfnFree"; assert(it.offset_in_bytes == 24, "VkAllocationCallbacks.pfnFree has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pfnFree has unexpected size % instead of 8", it.type.runtime_size); case "pfnInternalAllocation"; assert(it.offset_in_bytes == 32, "VkAllocationCallbacks.pfnInternalAllocation has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pfnInternalAllocation has unexpected size % instead of 8", it.type.runtime_size); case "pfnInternalFree"; assert(it.offset_in_bytes == 40, "VkAllocationCallbacks.pfnInternalFree has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAllocationCallbacks.pfnInternalFree has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAllocationCallbacks) == 48, "VkAllocationCallbacks has size % instead of 48", size_of(VkAllocationCallbacks)); } { info := type_info(VkApplicationInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkApplicationInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkApplicationInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkApplicationInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkApplicationInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pApplicationName"; assert(it.offset_in_bytes == 16, "VkApplicationInfo.pApplicationName has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkApplicationInfo.pApplicationName has unexpected size % instead of 8", it.type.runtime_size); case "applicationVersion"; assert(it.offset_in_bytes == 24, "VkApplicationInfo.applicationVersion has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkApplicationInfo.applicationVersion has unexpected size % instead of 4", it.type.runtime_size); case "pEngineName"; assert(it.offset_in_bytes == 32, "VkApplicationInfo.pEngineName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkApplicationInfo.pEngineName has unexpected size % instead of 8", it.type.runtime_size); case "engineVersion"; assert(it.offset_in_bytes == 40, "VkApplicationInfo.engineVersion has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkApplicationInfo.engineVersion has unexpected size % instead of 4", it.type.runtime_size); case "apiVersion"; assert(it.offset_in_bytes == 44, "VkApplicationInfo.apiVersion has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkApplicationInfo.apiVersion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkApplicationInfo) == 48, "VkApplicationInfo has size % instead of 48", size_of(VkApplicationInfo)); } { info := type_info(VkFormatProperties); for info.members { if it.name == { case "linearTilingFeatures"; assert(it.offset_in_bytes == 0, "VkFormatProperties.linearTilingFeatures has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFormatProperties.linearTilingFeatures has unexpected size % instead of 4", it.type.runtime_size); case "optimalTilingFeatures"; assert(it.offset_in_bytes == 4, "VkFormatProperties.optimalTilingFeatures has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFormatProperties.optimalTilingFeatures has unexpected size % instead of 4", it.type.runtime_size); case "bufferFeatures"; assert(it.offset_in_bytes == 8, "VkFormatProperties.bufferFeatures has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFormatProperties.bufferFeatures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFormatProperties) == 12, "VkFormatProperties has size % instead of 12", size_of(VkFormatProperties)); } { info := type_info(VkImageFormatProperties); for info.members { if it.name == { case "maxExtent"; assert(it.offset_in_bytes == 0, "VkImageFormatProperties.maxExtent has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageFormatProperties.maxExtent has unexpected size % instead of 12", it.type.runtime_size); case "maxMipLevels"; assert(it.offset_in_bytes == 12, "VkImageFormatProperties.maxMipLevels has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatProperties.maxMipLevels has unexpected size % instead of 4", it.type.runtime_size); case "maxArrayLayers"; assert(it.offset_in_bytes == 16, "VkImageFormatProperties.maxArrayLayers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatProperties.maxArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "sampleCounts"; assert(it.offset_in_bytes == 20, "VkImageFormatProperties.sampleCounts has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatProperties.sampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "maxResourceSize"; assert(it.offset_in_bytes == 24, "VkImageFormatProperties.maxResourceSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageFormatProperties.maxResourceSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageFormatProperties) == 32, "VkImageFormatProperties has size % instead of 32", size_of(VkImageFormatProperties)); } { info := type_info(VkInstanceCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkInstanceCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInstanceCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkInstanceCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInstanceCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkInstanceCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInstanceCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "pApplicationInfo"; assert(it.offset_in_bytes == 24, "VkInstanceCreateInfo.pApplicationInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInstanceCreateInfo.pApplicationInfo has unexpected size % instead of 8", it.type.runtime_size); case "enabledLayerCount"; assert(it.offset_in_bytes == 32, "VkInstanceCreateInfo.enabledLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInstanceCreateInfo.enabledLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "ppEnabledLayerNames"; assert(it.offset_in_bytes == 40, "VkInstanceCreateInfo.ppEnabledLayerNames has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInstanceCreateInfo.ppEnabledLayerNames has unexpected size % instead of 8", it.type.runtime_size); case "enabledExtensionCount"; assert(it.offset_in_bytes == 48, "VkInstanceCreateInfo.enabledExtensionCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInstanceCreateInfo.enabledExtensionCount has unexpected size % instead of 4", it.type.runtime_size); case "ppEnabledExtensionNames"; assert(it.offset_in_bytes == 56, "VkInstanceCreateInfo.ppEnabledExtensionNames has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInstanceCreateInfo.ppEnabledExtensionNames has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkInstanceCreateInfo) == 64, "VkInstanceCreateInfo has size % instead of 64", size_of(VkInstanceCreateInfo)); } { info := type_info(VkMemoryHeap); for info.members { if it.name == { case "size"; assert(it.offset_in_bytes == 0, "VkMemoryHeap.size has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryHeap.size has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 8, "VkMemoryHeap.flags has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryHeap.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryHeap) == 16, "VkMemoryHeap has size % instead of 16", size_of(VkMemoryHeap)); } { info := type_info(VkMemoryType); for info.members { if it.name == { case "propertyFlags"; assert(it.offset_in_bytes == 0, "VkMemoryType.propertyFlags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryType.propertyFlags has unexpected size % instead of 4", it.type.runtime_size); case "heapIndex"; assert(it.offset_in_bytes == 4, "VkMemoryType.heapIndex has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryType.heapIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryType) == 8, "VkMemoryType has size % instead of 8", size_of(VkMemoryType)); } { info := type_info(VkPhysicalDeviceFeatures); for info.members { if it.name == { case "robustBufferAccess"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFeatures.robustBufferAccess has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.robustBufferAccess has unexpected size % instead of 4", it.type.runtime_size); case "fullDrawIndexUint32"; assert(it.offset_in_bytes == 4, "VkPhysicalDeviceFeatures.fullDrawIndexUint32 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.fullDrawIndexUint32 has unexpected size % instead of 4", it.type.runtime_size); case "imageCubeArray"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFeatures.imageCubeArray has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.imageCubeArray has unexpected size % instead of 4", it.type.runtime_size); case "independentBlend"; assert(it.offset_in_bytes == 12, "VkPhysicalDeviceFeatures.independentBlend has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.independentBlend has unexpected size % instead of 4", it.type.runtime_size); case "geometryShader"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFeatures.geometryShader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.geometryShader has unexpected size % instead of 4", it.type.runtime_size); case "tessellationShader"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFeatures.tessellationShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.tessellationShader has unexpected size % instead of 4", it.type.runtime_size); case "sampleRateShading"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFeatures.sampleRateShading has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sampleRateShading has unexpected size % instead of 4", it.type.runtime_size); case "dualSrcBlend"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceFeatures.dualSrcBlend has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.dualSrcBlend has unexpected size % instead of 4", it.type.runtime_size); case "logicOp"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceFeatures.logicOp has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.logicOp has unexpected size % instead of 4", it.type.runtime_size); case "multiDrawIndirect"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceFeatures.multiDrawIndirect has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.multiDrawIndirect has unexpected size % instead of 4", it.type.runtime_size); case "drawIndirectFirstInstance"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceFeatures.drawIndirectFirstInstance has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.drawIndirectFirstInstance has unexpected size % instead of 4", it.type.runtime_size); case "depthClamp"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceFeatures.depthClamp has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.depthClamp has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasClamp"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceFeatures.depthBiasClamp has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.depthBiasClamp has unexpected size % instead of 4", it.type.runtime_size); case "fillModeNonSolid"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceFeatures.fillModeNonSolid has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.fillModeNonSolid has unexpected size % instead of 4", it.type.runtime_size); case "depthBounds"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceFeatures.depthBounds has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.depthBounds has unexpected size % instead of 4", it.type.runtime_size); case "wideLines"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceFeatures.wideLines has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.wideLines has unexpected size % instead of 4", it.type.runtime_size); case "largePoints"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceFeatures.largePoints has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.largePoints has unexpected size % instead of 4", it.type.runtime_size); case "alphaToOne"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceFeatures.alphaToOne has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.alphaToOne has unexpected size % instead of 4", it.type.runtime_size); case "multiViewport"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceFeatures.multiViewport has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.multiViewport has unexpected size % instead of 4", it.type.runtime_size); case "samplerAnisotropy"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceFeatures.samplerAnisotropy has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.samplerAnisotropy has unexpected size % instead of 4", it.type.runtime_size); case "textureCompressionETC2"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceFeatures.textureCompressionETC2 has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.textureCompressionETC2 has unexpected size % instead of 4", it.type.runtime_size); case "textureCompressionASTC_LDR"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceFeatures.textureCompressionASTC_LDR has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.textureCompressionASTC_LDR has unexpected size % instead of 4", it.type.runtime_size); case "textureCompressionBC"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceFeatures.textureCompressionBC has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.textureCompressionBC has unexpected size % instead of 4", it.type.runtime_size); case "occlusionQueryPrecise"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceFeatures.occlusionQueryPrecise has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.occlusionQueryPrecise has unexpected size % instead of 4", it.type.runtime_size); case "pipelineStatisticsQuery"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceFeatures.pipelineStatisticsQuery has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.pipelineStatisticsQuery has unexpected size % instead of 4", it.type.runtime_size); case "vertexPipelineStoresAndAtomics"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceFeatures.vertexPipelineStoresAndAtomics has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.vertexPipelineStoresAndAtomics has unexpected size % instead of 4", it.type.runtime_size); case "fragmentStoresAndAtomics"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceFeatures.fragmentStoresAndAtomics has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.fragmentStoresAndAtomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderTessellationAndGeometryPointSize"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceFeatures.shaderTessellationAndGeometryPointSize has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderTessellationAndGeometryPointSize has unexpected size % instead of 4", it.type.runtime_size); case "shaderImageGatherExtended"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceFeatures.shaderImageGatherExtended has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderImageGatherExtended has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageExtendedFormats"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceFeatures.shaderStorageImageExtendedFormats has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageImageExtendedFormats has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageMultisample"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceFeatures.shaderStorageImageMultisample has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageImageMultisample has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageReadWithoutFormat"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceFeatures.shaderStorageImageReadWithoutFormat has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageImageReadWithoutFormat has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageWriteWithoutFormat"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceFeatures.shaderStorageImageWriteWithoutFormat has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageImageWriteWithoutFormat has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceFeatures.shaderUniformBufferArrayDynamicIndexing has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderUniformBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderSampledImageArrayDynamicIndexing"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceFeatures.shaderSampledImageArrayDynamicIndexing has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderSampledImageArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 140, "VkPhysicalDeviceFeatures.shaderStorageBufferArrayDynamicIndexing has unexpected offset % instead of 140", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageArrayDynamicIndexing"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceFeatures.shaderStorageImageArrayDynamicIndexing has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderStorageImageArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderClipDistance"; assert(it.offset_in_bytes == 148, "VkPhysicalDeviceFeatures.shaderClipDistance has unexpected offset % instead of 148", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderClipDistance has unexpected size % instead of 4", it.type.runtime_size); case "shaderCullDistance"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceFeatures.shaderCullDistance has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderCullDistance has unexpected size % instead of 4", it.type.runtime_size); case "shaderFloat64"; assert(it.offset_in_bytes == 156, "VkPhysicalDeviceFeatures.shaderFloat64 has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderInt64"; assert(it.offset_in_bytes == 160, "VkPhysicalDeviceFeatures.shaderInt64 has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderInt64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderInt16"; assert(it.offset_in_bytes == 164, "VkPhysicalDeviceFeatures.shaderInt16 has unexpected offset % instead of 164", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderInt16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderResourceResidency"; assert(it.offset_in_bytes == 168, "VkPhysicalDeviceFeatures.shaderResourceResidency has unexpected offset % instead of 168", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderResourceResidency has unexpected size % instead of 4", it.type.runtime_size); case "shaderResourceMinLod"; assert(it.offset_in_bytes == 172, "VkPhysicalDeviceFeatures.shaderResourceMinLod has unexpected offset % instead of 172", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.shaderResourceMinLod has unexpected size % instead of 4", it.type.runtime_size); case "sparseBinding"; assert(it.offset_in_bytes == 176, "VkPhysicalDeviceFeatures.sparseBinding has unexpected offset % instead of 176", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseBinding has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidencyBuffer"; assert(it.offset_in_bytes == 180, "VkPhysicalDeviceFeatures.sparseResidencyBuffer has unexpected offset % instead of 180", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidencyBuffer has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidencyImage2D"; assert(it.offset_in_bytes == 184, "VkPhysicalDeviceFeatures.sparseResidencyImage2D has unexpected offset % instead of 184", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidencyImage2D has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidencyImage3D"; assert(it.offset_in_bytes == 188, "VkPhysicalDeviceFeatures.sparseResidencyImage3D has unexpected offset % instead of 188", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidencyImage3D has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidency2Samples"; assert(it.offset_in_bytes == 192, "VkPhysicalDeviceFeatures.sparseResidency2Samples has unexpected offset % instead of 192", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidency2Samples has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidency4Samples"; assert(it.offset_in_bytes == 196, "VkPhysicalDeviceFeatures.sparseResidency4Samples has unexpected offset % instead of 196", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidency4Samples has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidency8Samples"; assert(it.offset_in_bytes == 200, "VkPhysicalDeviceFeatures.sparseResidency8Samples has unexpected offset % instead of 200", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidency8Samples has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidency16Samples"; assert(it.offset_in_bytes == 204, "VkPhysicalDeviceFeatures.sparseResidency16Samples has unexpected offset % instead of 204", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidency16Samples has unexpected size % instead of 4", it.type.runtime_size); case "sparseResidencyAliased"; assert(it.offset_in_bytes == 208, "VkPhysicalDeviceFeatures.sparseResidencyAliased has unexpected offset % instead of 208", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.sparseResidencyAliased has unexpected size % instead of 4", it.type.runtime_size); case "variableMultisampleRate"; assert(it.offset_in_bytes == 212, "VkPhysicalDeviceFeatures.variableMultisampleRate has unexpected offset % instead of 212", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.variableMultisampleRate has unexpected size % instead of 4", it.type.runtime_size); case "inheritedQueries"; assert(it.offset_in_bytes == 216, "VkPhysicalDeviceFeatures.inheritedQueries has unexpected offset % instead of 216", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures.inheritedQueries has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFeatures) == 220, "VkPhysicalDeviceFeatures has size % instead of 220", size_of(VkPhysicalDeviceFeatures)); } { info := type_info(VkPhysicalDeviceLimits); for info.members { if it.name == { case "maxImageDimension1D"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLimits.maxImageDimension1D has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxImageDimension1D has unexpected size % instead of 4", it.type.runtime_size); case "maxImageDimension2D"; assert(it.offset_in_bytes == 4, "VkPhysicalDeviceLimits.maxImageDimension2D has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxImageDimension2D has unexpected size % instead of 4", it.type.runtime_size); case "maxImageDimension3D"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLimits.maxImageDimension3D has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxImageDimension3D has unexpected size % instead of 4", it.type.runtime_size); case "maxImageDimensionCube"; assert(it.offset_in_bytes == 12, "VkPhysicalDeviceLimits.maxImageDimensionCube has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxImageDimensionCube has unexpected size % instead of 4", it.type.runtime_size); case "maxImageArrayLayers"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLimits.maxImageArrayLayers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxImageArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxTexelBufferElements"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceLimits.maxTexelBufferElements has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTexelBufferElements has unexpected size % instead of 4", it.type.runtime_size); case "maxUniformBufferRange"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceLimits.maxUniformBufferRange has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxUniformBufferRange has unexpected size % instead of 4", it.type.runtime_size); case "maxStorageBufferRange"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceLimits.maxStorageBufferRange has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxStorageBufferRange has unexpected size % instead of 4", it.type.runtime_size); case "maxPushConstantsSize"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceLimits.maxPushConstantsSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPushConstantsSize has unexpected size % instead of 4", it.type.runtime_size); case "maxMemoryAllocationCount"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceLimits.maxMemoryAllocationCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxMemoryAllocationCount has unexpected size % instead of 4", it.type.runtime_size); case "maxSamplerAllocationCount"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceLimits.maxSamplerAllocationCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxSamplerAllocationCount has unexpected size % instead of 4", it.type.runtime_size); case "bufferImageGranularity"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceLimits.bufferImageGranularity has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.bufferImageGranularity has unexpected size % instead of 8", it.type.runtime_size); case "sparseAddressSpaceSize"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceLimits.sparseAddressSpaceSize has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.sparseAddressSpaceSize has unexpected size % instead of 8", it.type.runtime_size); case "maxBoundDescriptorSets"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceLimits.maxBoundDescriptorSets has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxBoundDescriptorSets has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorSamplers"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceLimits.maxPerStageDescriptorSamplers has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUniformBuffers"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceLimits.maxPerStageDescriptorUniformBuffers has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorStorageBuffers"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceLimits.maxPerStageDescriptorStorageBuffers has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorSampledImages"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceLimits.maxPerStageDescriptorSampledImages has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorStorageImages"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceLimits.maxPerStageDescriptorStorageImages has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorInputAttachments"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceLimits.maxPerStageDescriptorInputAttachments has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageDescriptorInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageResources"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceLimits.maxPerStageResources has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxPerStageResources has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetSamplers"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceLimits.maxDescriptorSetSamplers has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUniformBuffers"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceLimits.maxDescriptorSetUniformBuffers has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUniformBuffersDynamic"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceLimits.maxDescriptorSetUniformBuffersDynamic has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetUniformBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetStorageBuffers"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceLimits.maxDescriptorSetStorageBuffers has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetStorageBuffersDynamic"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceLimits.maxDescriptorSetStorageBuffersDynamic has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetStorageBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetSampledImages"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceLimits.maxDescriptorSetSampledImages has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetStorageImages"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceLimits.maxDescriptorSetStorageImages has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetInputAttachments"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceLimits.maxDescriptorSetInputAttachments has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDescriptorSetInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexInputAttributes"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceLimits.maxVertexInputAttributes has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxVertexInputAttributes has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexInputBindings"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceLimits.maxVertexInputBindings has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxVertexInputBindings has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexInputAttributeOffset"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceLimits.maxVertexInputAttributeOffset has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxVertexInputAttributeOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexInputBindingStride"; assert(it.offset_in_bytes == 140, "VkPhysicalDeviceLimits.maxVertexInputBindingStride has unexpected offset % instead of 140", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxVertexInputBindingStride has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexOutputComponents"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceLimits.maxVertexOutputComponents has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxVertexOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationGenerationLevel"; assert(it.offset_in_bytes == 148, "VkPhysicalDeviceLimits.maxTessellationGenerationLevel has unexpected offset % instead of 148", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationGenerationLevel has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationPatchSize"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceLimits.maxTessellationPatchSize has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationPatchSize has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationControlPerVertexInputComponents"; assert(it.offset_in_bytes == 156, "VkPhysicalDeviceLimits.maxTessellationControlPerVertexInputComponents has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationControlPerVertexInputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationControlPerVertexOutputComponents"; assert(it.offset_in_bytes == 160, "VkPhysicalDeviceLimits.maxTessellationControlPerVertexOutputComponents has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationControlPerVertexOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationControlPerPatchOutputComponents"; assert(it.offset_in_bytes == 164, "VkPhysicalDeviceLimits.maxTessellationControlPerPatchOutputComponents has unexpected offset % instead of 164", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationControlPerPatchOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationControlTotalOutputComponents"; assert(it.offset_in_bytes == 168, "VkPhysicalDeviceLimits.maxTessellationControlTotalOutputComponents has unexpected offset % instead of 168", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationControlTotalOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationEvaluationInputComponents"; assert(it.offset_in_bytes == 172, "VkPhysicalDeviceLimits.maxTessellationEvaluationInputComponents has unexpected offset % instead of 172", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationEvaluationInputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxTessellationEvaluationOutputComponents"; assert(it.offset_in_bytes == 176, "VkPhysicalDeviceLimits.maxTessellationEvaluationOutputComponents has unexpected offset % instead of 176", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTessellationEvaluationOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryShaderInvocations"; assert(it.offset_in_bytes == 180, "VkPhysicalDeviceLimits.maxGeometryShaderInvocations has unexpected offset % instead of 180", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxGeometryShaderInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryInputComponents"; assert(it.offset_in_bytes == 184, "VkPhysicalDeviceLimits.maxGeometryInputComponents has unexpected offset % instead of 184", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxGeometryInputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryOutputComponents"; assert(it.offset_in_bytes == 188, "VkPhysicalDeviceLimits.maxGeometryOutputComponents has unexpected offset % instead of 188", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxGeometryOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryOutputVertices"; assert(it.offset_in_bytes == 192, "VkPhysicalDeviceLimits.maxGeometryOutputVertices has unexpected offset % instead of 192", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxGeometryOutputVertices has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryTotalOutputComponents"; assert(it.offset_in_bytes == 196, "VkPhysicalDeviceLimits.maxGeometryTotalOutputComponents has unexpected offset % instead of 196", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxGeometryTotalOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentInputComponents"; assert(it.offset_in_bytes == 200, "VkPhysicalDeviceLimits.maxFragmentInputComponents has unexpected offset % instead of 200", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFragmentInputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentOutputAttachments"; assert(it.offset_in_bytes == 204, "VkPhysicalDeviceLimits.maxFragmentOutputAttachments has unexpected offset % instead of 204", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFragmentOutputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentDualSrcAttachments"; assert(it.offset_in_bytes == 208, "VkPhysicalDeviceLimits.maxFragmentDualSrcAttachments has unexpected offset % instead of 208", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFragmentDualSrcAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentCombinedOutputResources"; assert(it.offset_in_bytes == 212, "VkPhysicalDeviceLimits.maxFragmentCombinedOutputResources has unexpected offset % instead of 212", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFragmentCombinedOutputResources has unexpected size % instead of 4", it.type.runtime_size); case "maxComputeSharedMemorySize"; assert(it.offset_in_bytes == 216, "VkPhysicalDeviceLimits.maxComputeSharedMemorySize has unexpected offset % instead of 216", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxComputeSharedMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxComputeWorkGroupCount"; assert(it.offset_in_bytes == 220, "VkPhysicalDeviceLimits.maxComputeWorkGroupCount has unexpected offset % instead of 220", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceLimits.maxComputeWorkGroupCount has unexpected size % instead of 12", it.type.runtime_size); case "maxComputeWorkGroupInvocations"; assert(it.offset_in_bytes == 232, "VkPhysicalDeviceLimits.maxComputeWorkGroupInvocations has unexpected offset % instead of 232", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxComputeWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxComputeWorkGroupSize"; assert(it.offset_in_bytes == 236, "VkPhysicalDeviceLimits.maxComputeWorkGroupSize has unexpected offset % instead of 236", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceLimits.maxComputeWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "subPixelPrecisionBits"; assert(it.offset_in_bytes == 248, "VkPhysicalDeviceLimits.subPixelPrecisionBits has unexpected offset % instead of 248", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.subPixelPrecisionBits has unexpected size % instead of 4", it.type.runtime_size); case "subTexelPrecisionBits"; assert(it.offset_in_bytes == 252, "VkPhysicalDeviceLimits.subTexelPrecisionBits has unexpected offset % instead of 252", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.subTexelPrecisionBits has unexpected size % instead of 4", it.type.runtime_size); case "mipmapPrecisionBits"; assert(it.offset_in_bytes == 256, "VkPhysicalDeviceLimits.mipmapPrecisionBits has unexpected offset % instead of 256", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.mipmapPrecisionBits has unexpected size % instead of 4", it.type.runtime_size); case "maxDrawIndexedIndexValue"; assert(it.offset_in_bytes == 260, "VkPhysicalDeviceLimits.maxDrawIndexedIndexValue has unexpected offset % instead of 260", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDrawIndexedIndexValue has unexpected size % instead of 4", it.type.runtime_size); case "maxDrawIndirectCount"; assert(it.offset_in_bytes == 264, "VkPhysicalDeviceLimits.maxDrawIndirectCount has unexpected offset % instead of 264", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxDrawIndirectCount has unexpected size % instead of 4", it.type.runtime_size); case "maxSamplerLodBias"; assert(it.offset_in_bytes == 268, "VkPhysicalDeviceLimits.maxSamplerLodBias has unexpected offset % instead of 268", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxSamplerLodBias has unexpected size % instead of 4", it.type.runtime_size); case "maxSamplerAnisotropy"; assert(it.offset_in_bytes == 272, "VkPhysicalDeviceLimits.maxSamplerAnisotropy has unexpected offset % instead of 272", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxSamplerAnisotropy has unexpected size % instead of 4", it.type.runtime_size); case "maxViewports"; assert(it.offset_in_bytes == 276, "VkPhysicalDeviceLimits.maxViewports has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxViewports has unexpected size % instead of 4", it.type.runtime_size); case "maxViewportDimensions"; assert(it.offset_in_bytes == 280, "VkPhysicalDeviceLimits.maxViewportDimensions has unexpected offset % instead of 280", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.maxViewportDimensions has unexpected size % instead of 8", it.type.runtime_size); case "viewportBoundsRange"; assert(it.offset_in_bytes == 288, "VkPhysicalDeviceLimits.viewportBoundsRange has unexpected offset % instead of 288", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.viewportBoundsRange has unexpected size % instead of 8", it.type.runtime_size); case "viewportSubPixelBits"; assert(it.offset_in_bytes == 296, "VkPhysicalDeviceLimits.viewportSubPixelBits has unexpected offset % instead of 296", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.viewportSubPixelBits has unexpected size % instead of 4", it.type.runtime_size); case "minMemoryMapAlignment"; assert(it.offset_in_bytes == 304, "VkPhysicalDeviceLimits.minMemoryMapAlignment has unexpected offset % instead of 304", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.minMemoryMapAlignment has unexpected size % instead of 8", it.type.runtime_size); case "minTexelBufferOffsetAlignment"; assert(it.offset_in_bytes == 312, "VkPhysicalDeviceLimits.minTexelBufferOffsetAlignment has unexpected offset % instead of 312", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.minTexelBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "minUniformBufferOffsetAlignment"; assert(it.offset_in_bytes == 320, "VkPhysicalDeviceLimits.minUniformBufferOffsetAlignment has unexpected offset % instead of 320", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.minUniformBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "minStorageBufferOffsetAlignment"; assert(it.offset_in_bytes == 328, "VkPhysicalDeviceLimits.minStorageBufferOffsetAlignment has unexpected offset % instead of 328", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.minStorageBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "minTexelOffset"; assert(it.offset_in_bytes == 336, "VkPhysicalDeviceLimits.minTexelOffset has unexpected offset % instead of 336", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.minTexelOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxTexelOffset"; assert(it.offset_in_bytes == 340, "VkPhysicalDeviceLimits.maxTexelOffset has unexpected offset % instead of 340", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTexelOffset has unexpected size % instead of 4", it.type.runtime_size); case "minTexelGatherOffset"; assert(it.offset_in_bytes == 344, "VkPhysicalDeviceLimits.minTexelGatherOffset has unexpected offset % instead of 344", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.minTexelGatherOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxTexelGatherOffset"; assert(it.offset_in_bytes == 348, "VkPhysicalDeviceLimits.maxTexelGatherOffset has unexpected offset % instead of 348", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxTexelGatherOffset has unexpected size % instead of 4", it.type.runtime_size); case "minInterpolationOffset"; assert(it.offset_in_bytes == 352, "VkPhysicalDeviceLimits.minInterpolationOffset has unexpected offset % instead of 352", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.minInterpolationOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxInterpolationOffset"; assert(it.offset_in_bytes == 356, "VkPhysicalDeviceLimits.maxInterpolationOffset has unexpected offset % instead of 356", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxInterpolationOffset has unexpected size % instead of 4", it.type.runtime_size); case "subPixelInterpolationOffsetBits"; assert(it.offset_in_bytes == 360, "VkPhysicalDeviceLimits.subPixelInterpolationOffsetBits has unexpected offset % instead of 360", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.subPixelInterpolationOffsetBits has unexpected size % instead of 4", it.type.runtime_size); case "maxFramebufferWidth"; assert(it.offset_in_bytes == 364, "VkPhysicalDeviceLimits.maxFramebufferWidth has unexpected offset % instead of 364", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFramebufferWidth has unexpected size % instead of 4", it.type.runtime_size); case "maxFramebufferHeight"; assert(it.offset_in_bytes == 368, "VkPhysicalDeviceLimits.maxFramebufferHeight has unexpected offset % instead of 368", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFramebufferHeight has unexpected size % instead of 4", it.type.runtime_size); case "maxFramebufferLayers"; assert(it.offset_in_bytes == 372, "VkPhysicalDeviceLimits.maxFramebufferLayers has unexpected offset % instead of 372", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxFramebufferLayers has unexpected size % instead of 4", it.type.runtime_size); case "framebufferColorSampleCounts"; assert(it.offset_in_bytes == 376, "VkPhysicalDeviceLimits.framebufferColorSampleCounts has unexpected offset % instead of 376", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.framebufferColorSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "framebufferDepthSampleCounts"; assert(it.offset_in_bytes == 380, "VkPhysicalDeviceLimits.framebufferDepthSampleCounts has unexpected offset % instead of 380", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.framebufferDepthSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "framebufferStencilSampleCounts"; assert(it.offset_in_bytes == 384, "VkPhysicalDeviceLimits.framebufferStencilSampleCounts has unexpected offset % instead of 384", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.framebufferStencilSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "framebufferNoAttachmentsSampleCounts"; assert(it.offset_in_bytes == 388, "VkPhysicalDeviceLimits.framebufferNoAttachmentsSampleCounts has unexpected offset % instead of 388", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.framebufferNoAttachmentsSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "maxColorAttachments"; assert(it.offset_in_bytes == 392, "VkPhysicalDeviceLimits.maxColorAttachments has unexpected offset % instead of 392", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxColorAttachments has unexpected size % instead of 4", it.type.runtime_size); case "sampledImageColorSampleCounts"; assert(it.offset_in_bytes == 396, "VkPhysicalDeviceLimits.sampledImageColorSampleCounts has unexpected offset % instead of 396", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.sampledImageColorSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "sampledImageIntegerSampleCounts"; assert(it.offset_in_bytes == 400, "VkPhysicalDeviceLimits.sampledImageIntegerSampleCounts has unexpected offset % instead of 400", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.sampledImageIntegerSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "sampledImageDepthSampleCounts"; assert(it.offset_in_bytes == 404, "VkPhysicalDeviceLimits.sampledImageDepthSampleCounts has unexpected offset % instead of 404", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.sampledImageDepthSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "sampledImageStencilSampleCounts"; assert(it.offset_in_bytes == 408, "VkPhysicalDeviceLimits.sampledImageStencilSampleCounts has unexpected offset % instead of 408", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.sampledImageStencilSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "storageImageSampleCounts"; assert(it.offset_in_bytes == 412, "VkPhysicalDeviceLimits.storageImageSampleCounts has unexpected offset % instead of 412", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.storageImageSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "maxSampleMaskWords"; assert(it.offset_in_bytes == 416, "VkPhysicalDeviceLimits.maxSampleMaskWords has unexpected offset % instead of 416", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxSampleMaskWords has unexpected size % instead of 4", it.type.runtime_size); case "timestampComputeAndGraphics"; assert(it.offset_in_bytes == 420, "VkPhysicalDeviceLimits.timestampComputeAndGraphics has unexpected offset % instead of 420", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.timestampComputeAndGraphics has unexpected size % instead of 4", it.type.runtime_size); case "timestampPeriod"; assert(it.offset_in_bytes == 424, "VkPhysicalDeviceLimits.timestampPeriod has unexpected offset % instead of 424", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.timestampPeriod has unexpected size % instead of 4", it.type.runtime_size); case "maxClipDistances"; assert(it.offset_in_bytes == 428, "VkPhysicalDeviceLimits.maxClipDistances has unexpected offset % instead of 428", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxClipDistances has unexpected size % instead of 4", it.type.runtime_size); case "maxCullDistances"; assert(it.offset_in_bytes == 432, "VkPhysicalDeviceLimits.maxCullDistances has unexpected offset % instead of 432", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxCullDistances has unexpected size % instead of 4", it.type.runtime_size); case "maxCombinedClipAndCullDistances"; assert(it.offset_in_bytes == 436, "VkPhysicalDeviceLimits.maxCombinedClipAndCullDistances has unexpected offset % instead of 436", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.maxCombinedClipAndCullDistances has unexpected size % instead of 4", it.type.runtime_size); case "discreteQueuePriorities"; assert(it.offset_in_bytes == 440, "VkPhysicalDeviceLimits.discreteQueuePriorities has unexpected offset % instead of 440", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.discreteQueuePriorities has unexpected size % instead of 4", it.type.runtime_size); case "pointSizeRange"; assert(it.offset_in_bytes == 444, "VkPhysicalDeviceLimits.pointSizeRange has unexpected offset % instead of 444", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.pointSizeRange has unexpected size % instead of 8", it.type.runtime_size); case "lineWidthRange"; assert(it.offset_in_bytes == 452, "VkPhysicalDeviceLimits.lineWidthRange has unexpected offset % instead of 452", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.lineWidthRange has unexpected size % instead of 8", it.type.runtime_size); case "pointSizeGranularity"; assert(it.offset_in_bytes == 460, "VkPhysicalDeviceLimits.pointSizeGranularity has unexpected offset % instead of 460", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.pointSizeGranularity has unexpected size % instead of 4", it.type.runtime_size); case "lineWidthGranularity"; assert(it.offset_in_bytes == 464, "VkPhysicalDeviceLimits.lineWidthGranularity has unexpected offset % instead of 464", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.lineWidthGranularity has unexpected size % instead of 4", it.type.runtime_size); case "strictLines"; assert(it.offset_in_bytes == 468, "VkPhysicalDeviceLimits.strictLines has unexpected offset % instead of 468", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.strictLines has unexpected size % instead of 4", it.type.runtime_size); case "standardSampleLocations"; assert(it.offset_in_bytes == 472, "VkPhysicalDeviceLimits.standardSampleLocations has unexpected offset % instead of 472", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLimits.standardSampleLocations has unexpected size % instead of 4", it.type.runtime_size); case "optimalBufferCopyOffsetAlignment"; assert(it.offset_in_bytes == 480, "VkPhysicalDeviceLimits.optimalBufferCopyOffsetAlignment has unexpected offset % instead of 480", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.optimalBufferCopyOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "optimalBufferCopyRowPitchAlignment"; assert(it.offset_in_bytes == 488, "VkPhysicalDeviceLimits.optimalBufferCopyRowPitchAlignment has unexpected offset % instead of 488", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.optimalBufferCopyRowPitchAlignment has unexpected size % instead of 8", it.type.runtime_size); case "nonCoherentAtomSize"; assert(it.offset_in_bytes == 496, "VkPhysicalDeviceLimits.nonCoherentAtomSize has unexpected offset % instead of 496", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLimits.nonCoherentAtomSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLimits) == 504, "VkPhysicalDeviceLimits has size % instead of 504", size_of(VkPhysicalDeviceLimits)); } { info := type_info(VkPhysicalDeviceMemoryProperties); for info.members { if it.name == { case "memoryTypeCount"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryProperties.memoryTypeCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryProperties.memoryTypeCount has unexpected size % instead of 4", it.type.runtime_size); case "memoryTypes"; assert(it.offset_in_bytes == 4, "VkPhysicalDeviceMemoryProperties.memoryTypes has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceMemoryProperties.memoryTypes has unexpected size % instead of 256", it.type.runtime_size); case "memoryHeapCount"; assert(it.offset_in_bytes == 260, "VkPhysicalDeviceMemoryProperties.memoryHeapCount has unexpected offset % instead of 260", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryProperties.memoryHeapCount has unexpected size % instead of 4", it.type.runtime_size); case "memoryHeaps"; assert(it.offset_in_bytes == 264, "VkPhysicalDeviceMemoryProperties.memoryHeaps has unexpected offset % instead of 264", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceMemoryProperties.memoryHeaps has unexpected size % instead of 256", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryProperties) == 520, "VkPhysicalDeviceMemoryProperties has size % instead of 520", size_of(VkPhysicalDeviceMemoryProperties)); } { info := type_info(VkPhysicalDeviceSparseProperties); for info.members { if it.name == { case "residencyStandard2DBlockShape"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSparseProperties.residencyStandard2DBlockShape has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseProperties.residencyStandard2DBlockShape has unexpected size % instead of 4", it.type.runtime_size); case "residencyStandard2DMultisampleBlockShape"; assert(it.offset_in_bytes == 4, "VkPhysicalDeviceSparseProperties.residencyStandard2DMultisampleBlockShape has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseProperties.residencyStandard2DMultisampleBlockShape has unexpected size % instead of 4", it.type.runtime_size); case "residencyStandard3DBlockShape"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSparseProperties.residencyStandard3DBlockShape has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseProperties.residencyStandard3DBlockShape has unexpected size % instead of 4", it.type.runtime_size); case "residencyAlignedMipSize"; assert(it.offset_in_bytes == 12, "VkPhysicalDeviceSparseProperties.residencyAlignedMipSize has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseProperties.residencyAlignedMipSize has unexpected size % instead of 4", it.type.runtime_size); case "residencyNonResidentStrict"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSparseProperties.residencyNonResidentStrict has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseProperties.residencyNonResidentStrict has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSparseProperties) == 20, "VkPhysicalDeviceSparseProperties has size % instead of 20", size_of(VkPhysicalDeviceSparseProperties)); } { info := type_info(VkPhysicalDeviceProperties); for info.members { if it.name == { case "apiVersion"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProperties.apiVersion has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties.apiVersion has unexpected size % instead of 4", it.type.runtime_size); case "driverVersion"; assert(it.offset_in_bytes == 4, "VkPhysicalDeviceProperties.driverVersion has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties.driverVersion has unexpected size % instead of 4", it.type.runtime_size); case "vendorID"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProperties.vendorID has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties.vendorID has unexpected size % instead of 4", it.type.runtime_size); case "deviceID"; assert(it.offset_in_bytes == 12, "VkPhysicalDeviceProperties.deviceID has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties.deviceID has unexpected size % instead of 4", it.type.runtime_size); case "deviceType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProperties.deviceType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties.deviceType has unexpected size % instead of 4", it.type.runtime_size); case "deviceName"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceProperties.deviceName has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceProperties.deviceName has unexpected size % instead of 256", it.type.runtime_size); case "pipelineCacheUUID"; assert(it.offset_in_bytes == 276, "VkPhysicalDeviceProperties.pipelineCacheUUID has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceProperties.pipelineCacheUUID has unexpected size % instead of 16", it.type.runtime_size); case "limits"; assert(it.offset_in_bytes == 296, "VkPhysicalDeviceProperties.limits has unexpected offset % instead of 296", it.offset_in_bytes); assert(it.type.runtime_size == 504, "VkPhysicalDeviceProperties.limits has unexpected size % instead of 504", it.type.runtime_size); case "sparseProperties"; assert(it.offset_in_bytes == 800, "VkPhysicalDeviceProperties.sparseProperties has unexpected offset % instead of 800", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkPhysicalDeviceProperties.sparseProperties has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProperties) == 824, "VkPhysicalDeviceProperties has size % instead of 824", size_of(VkPhysicalDeviceProperties)); } { info := type_info(VkQueueFamilyProperties); for info.members { if it.name == { case "queueFlags"; assert(it.offset_in_bytes == 0, "VkQueueFamilyProperties.queueFlags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyProperties.queueFlags has unexpected size % instead of 4", it.type.runtime_size); case "queueCount"; assert(it.offset_in_bytes == 4, "VkQueueFamilyProperties.queueCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyProperties.queueCount has unexpected size % instead of 4", it.type.runtime_size); case "timestampValidBits"; assert(it.offset_in_bytes == 8, "VkQueueFamilyProperties.timestampValidBits has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyProperties.timestampValidBits has unexpected size % instead of 4", it.type.runtime_size); case "minImageTransferGranularity"; assert(it.offset_in_bytes == 12, "VkQueueFamilyProperties.minImageTransferGranularity has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkQueueFamilyProperties.minImageTransferGranularity has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkQueueFamilyProperties) == 24, "VkQueueFamilyProperties has size % instead of 24", size_of(VkQueueFamilyProperties)); } { info := type_info(VkDeviceQueueCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceQueueCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceQueueCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceQueueCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceQueueCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndex"; assert(it.offset_in_bytes == 20, "VkDeviceQueueCreateInfo.queueFamilyIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueCreateInfo.queueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "queueCount"; assert(it.offset_in_bytes == 24, "VkDeviceQueueCreateInfo.queueCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueCreateInfo.queueCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueuePriorities"; assert(it.offset_in_bytes == 32, "VkDeviceQueueCreateInfo.pQueuePriorities has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceQueueCreateInfo.pQueuePriorities has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceQueueCreateInfo) == 40, "VkDeviceQueueCreateInfo has size % instead of 40", size_of(VkDeviceQueueCreateInfo)); } { info := type_info(VkDeviceCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "queueCreateInfoCount"; assert(it.offset_in_bytes == 20, "VkDeviceCreateInfo.queueCreateInfoCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceCreateInfo.queueCreateInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueCreateInfos"; assert(it.offset_in_bytes == 24, "VkDeviceCreateInfo.pQueueCreateInfos has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceCreateInfo.pQueueCreateInfos has unexpected size % instead of 8", it.type.runtime_size); case "enabledLayerCount"; assert(it.offset_in_bytes == 32, "VkDeviceCreateInfo.enabledLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceCreateInfo.enabledLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "ppEnabledLayerNames"; assert(it.offset_in_bytes == 40, "VkDeviceCreateInfo.ppEnabledLayerNames has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceCreateInfo.ppEnabledLayerNames has unexpected size % instead of 8", it.type.runtime_size); case "enabledExtensionCount"; assert(it.offset_in_bytes == 48, "VkDeviceCreateInfo.enabledExtensionCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceCreateInfo.enabledExtensionCount has unexpected size % instead of 4", it.type.runtime_size); case "ppEnabledExtensionNames"; assert(it.offset_in_bytes == 56, "VkDeviceCreateInfo.ppEnabledExtensionNames has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceCreateInfo.ppEnabledExtensionNames has unexpected size % instead of 8", it.type.runtime_size); case "pEnabledFeatures"; assert(it.offset_in_bytes == 64, "VkDeviceCreateInfo.pEnabledFeatures has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceCreateInfo.pEnabledFeatures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceCreateInfo) == 72, "VkDeviceCreateInfo has size % instead of 72", size_of(VkDeviceCreateInfo)); } { info := type_info(VkExtensionProperties); for info.members { if it.name == { case "extensionName"; assert(it.offset_in_bytes == 0, "VkExtensionProperties.extensionName has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkExtensionProperties.extensionName has unexpected size % instead of 256", it.type.runtime_size); case "specVersion"; assert(it.offset_in_bytes == 256, "VkExtensionProperties.specVersion has unexpected offset % instead of 256", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExtensionProperties.specVersion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExtensionProperties) == 260, "VkExtensionProperties has size % instead of 260", size_of(VkExtensionProperties)); } { info := type_info(VkLayerProperties); for info.members { if it.name == { case "layerName"; assert(it.offset_in_bytes == 0, "VkLayerProperties.layerName has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkLayerProperties.layerName has unexpected size % instead of 256", it.type.runtime_size); case "specVersion"; assert(it.offset_in_bytes == 256, "VkLayerProperties.specVersion has unexpected offset % instead of 256", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerProperties.specVersion has unexpected size % instead of 4", it.type.runtime_size); case "implementationVersion"; assert(it.offset_in_bytes == 260, "VkLayerProperties.implementationVersion has unexpected offset % instead of 260", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerProperties.implementationVersion has unexpected size % instead of 4", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 264, "VkLayerProperties.description has unexpected offset % instead of 264", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkLayerProperties.description has unexpected size % instead of 256", it.type.runtime_size); } } assert(size_of(VkLayerProperties) == 520, "VkLayerProperties has size % instead of 520", size_of(VkLayerProperties)); } { info := type_info(VkSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "waitSemaphoreCount"; assert(it.offset_in_bytes == 16, "VkSubmitInfo.waitSemaphoreCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo.waitSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphores"; assert(it.offset_in_bytes == 24, "VkSubmitInfo.pWaitSemaphores has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo.pWaitSemaphores has unexpected size % instead of 8", it.type.runtime_size); case "pWaitDstStageMask"; assert(it.offset_in_bytes == 32, "VkSubmitInfo.pWaitDstStageMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo.pWaitDstStageMask has unexpected size % instead of 8", it.type.runtime_size); case "commandBufferCount"; assert(it.offset_in_bytes == 40, "VkSubmitInfo.commandBufferCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo.commandBufferCount has unexpected size % instead of 4", it.type.runtime_size); case "pCommandBuffers"; assert(it.offset_in_bytes == 48, "VkSubmitInfo.pCommandBuffers has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo.pCommandBuffers has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphoreCount"; assert(it.offset_in_bytes == 56, "VkSubmitInfo.signalSemaphoreCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo.signalSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pSignalSemaphores"; assert(it.offset_in_bytes == 64, "VkSubmitInfo.pSignalSemaphores has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo.pSignalSemaphores has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubmitInfo) == 72, "VkSubmitInfo has size % instead of 72", size_of(VkSubmitInfo)); } { info := type_info(VkMappedMemoryRange); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMappedMemoryRange.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMappedMemoryRange.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMappedMemoryRange.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMappedMemoryRange.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkMappedMemoryRange.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMappedMemoryRange.memory has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 24, "VkMappedMemoryRange.offset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMappedMemoryRange.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 32, "VkMappedMemoryRange.size has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMappedMemoryRange.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMappedMemoryRange) == 40, "VkMappedMemoryRange has size % instead of 40", size_of(VkMappedMemoryRange)); } { info := type_info(VkMemoryAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "allocationSize"; assert(it.offset_in_bytes == 16, "VkMemoryAllocateInfo.allocationSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryAllocateInfo.allocationSize has unexpected size % instead of 8", it.type.runtime_size); case "memoryTypeIndex"; assert(it.offset_in_bytes == 24, "VkMemoryAllocateInfo.memoryTypeIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryAllocateInfo.memoryTypeIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryAllocateInfo) == 32, "VkMemoryAllocateInfo has size % instead of 32", size_of(VkMemoryAllocateInfo)); } { info := type_info(VkMemoryRequirements); for info.members { if it.name == { case "size"; assert(it.offset_in_bytes == 0, "VkMemoryRequirements.size has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryRequirements.size has unexpected size % instead of 8", it.type.runtime_size); case "alignment"; assert(it.offset_in_bytes == 8, "VkMemoryRequirements.alignment has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryRequirements.alignment has unexpected size % instead of 8", it.type.runtime_size); case "memoryTypeBits"; assert(it.offset_in_bytes == 16, "VkMemoryRequirements.memoryTypeBits has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryRequirements.memoryTypeBits has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryRequirements) == 24, "VkMemoryRequirements has size % instead of 24", size_of(VkMemoryRequirements)); } { info := type_info(VkSparseMemoryBind); for info.members { if it.name == { case "resourceOffset"; assert(it.offset_in_bytes == 0, "VkSparseMemoryBind.resourceOffset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseMemoryBind.resourceOffset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkSparseMemoryBind.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseMemoryBind.size has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkSparseMemoryBind.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseMemoryBind.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 24, "VkSparseMemoryBind.memoryOffset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseMemoryBind.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 32, "VkSparseMemoryBind.flags has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseMemoryBind.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSparseMemoryBind) == 40, "VkSparseMemoryBind has size % instead of 40", size_of(VkSparseMemoryBind)); } { info := type_info(VkSparseBufferMemoryBindInfo); for info.members { if it.name == { case "buffer"; assert(it.offset_in_bytes == 0, "VkSparseBufferMemoryBindInfo.buffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseBufferMemoryBindInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); case "bindCount"; assert(it.offset_in_bytes == 8, "VkSparseBufferMemoryBindInfo.bindCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseBufferMemoryBindInfo.bindCount has unexpected size % instead of 4", it.type.runtime_size); case "pBinds"; assert(it.offset_in_bytes == 16, "VkSparseBufferMemoryBindInfo.pBinds has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseBufferMemoryBindInfo.pBinds has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSparseBufferMemoryBindInfo) == 24, "VkSparseBufferMemoryBindInfo has size % instead of 24", size_of(VkSparseBufferMemoryBindInfo)); } { info := type_info(VkSparseImageOpaqueMemoryBindInfo); for info.members { if it.name == { case "image"; assert(it.offset_in_bytes == 0, "VkSparseImageOpaqueMemoryBindInfo.image has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageOpaqueMemoryBindInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "bindCount"; assert(it.offset_in_bytes == 8, "VkSparseImageOpaqueMemoryBindInfo.bindCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageOpaqueMemoryBindInfo.bindCount has unexpected size % instead of 4", it.type.runtime_size); case "pBinds"; assert(it.offset_in_bytes == 16, "VkSparseImageOpaqueMemoryBindInfo.pBinds has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageOpaqueMemoryBindInfo.pBinds has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSparseImageOpaqueMemoryBindInfo) == 24, "VkSparseImageOpaqueMemoryBindInfo has size % instead of 24", size_of(VkSparseImageOpaqueMemoryBindInfo)); } { info := type_info(VkImageSubresource); for info.members { if it.name == { case "aspectMask"; assert(it.offset_in_bytes == 0, "VkImageSubresource.aspectMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresource.aspectMask has unexpected size % instead of 4", it.type.runtime_size); case "mipLevel"; assert(it.offset_in_bytes == 4, "VkImageSubresource.mipLevel has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresource.mipLevel has unexpected size % instead of 4", it.type.runtime_size); case "arrayLayer"; assert(it.offset_in_bytes == 8, "VkImageSubresource.arrayLayer has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresource.arrayLayer has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageSubresource) == 12, "VkImageSubresource has size % instead of 12", size_of(VkImageSubresource)); } { info := type_info(VkSparseImageMemoryBind); for info.members { if it.name == { case "subresource"; assert(it.offset_in_bytes == 0, "VkSparseImageMemoryBind.subresource has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkSparseImageMemoryBind.subresource has unexpected size % instead of 12", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 12, "VkSparseImageMemoryBind.offset has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkSparseImageMemoryBind.offset has unexpected size % instead of 12", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 24, "VkSparseImageMemoryBind.extent has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkSparseImageMemoryBind.extent has unexpected size % instead of 12", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 40, "VkSparseImageMemoryBind.memory has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryBind.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 48, "VkSparseImageMemoryBind.memoryOffset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryBind.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 56, "VkSparseImageMemoryBind.flags has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageMemoryBind.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSparseImageMemoryBind) == 64, "VkSparseImageMemoryBind has size % instead of 64", size_of(VkSparseImageMemoryBind)); } { info := type_info(VkSparseImageMemoryBindInfo); for info.members { if it.name == { case "image"; assert(it.offset_in_bytes == 0, "VkSparseImageMemoryBindInfo.image has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryBindInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "bindCount"; assert(it.offset_in_bytes == 8, "VkSparseImageMemoryBindInfo.bindCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageMemoryBindInfo.bindCount has unexpected size % instead of 4", it.type.runtime_size); case "pBinds"; assert(it.offset_in_bytes == 16, "VkSparseImageMemoryBindInfo.pBinds has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryBindInfo.pBinds has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSparseImageMemoryBindInfo) == 24, "VkSparseImageMemoryBindInfo has size % instead of 24", size_of(VkSparseImageMemoryBindInfo)); } { info := type_info(VkBindSparseInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindSparseInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindSparseInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "waitSemaphoreCount"; assert(it.offset_in_bytes == 16, "VkBindSparseInfo.waitSemaphoreCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.waitSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphores"; assert(it.offset_in_bytes == 24, "VkBindSparseInfo.pWaitSemaphores has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pWaitSemaphores has unexpected size % instead of 8", it.type.runtime_size); case "bufferBindCount"; assert(it.offset_in_bytes == 32, "VkBindSparseInfo.bufferBindCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.bufferBindCount has unexpected size % instead of 4", it.type.runtime_size); case "pBufferBinds"; assert(it.offset_in_bytes == 40, "VkBindSparseInfo.pBufferBinds has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pBufferBinds has unexpected size % instead of 8", it.type.runtime_size); case "imageOpaqueBindCount"; assert(it.offset_in_bytes == 48, "VkBindSparseInfo.imageOpaqueBindCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.imageOpaqueBindCount has unexpected size % instead of 4", it.type.runtime_size); case "pImageOpaqueBinds"; assert(it.offset_in_bytes == 56, "VkBindSparseInfo.pImageOpaqueBinds has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pImageOpaqueBinds has unexpected size % instead of 8", it.type.runtime_size); case "imageBindCount"; assert(it.offset_in_bytes == 64, "VkBindSparseInfo.imageBindCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.imageBindCount has unexpected size % instead of 4", it.type.runtime_size); case "pImageBinds"; assert(it.offset_in_bytes == 72, "VkBindSparseInfo.pImageBinds has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pImageBinds has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphoreCount"; assert(it.offset_in_bytes == 80, "VkBindSparseInfo.signalSemaphoreCount has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindSparseInfo.signalSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pSignalSemaphores"; assert(it.offset_in_bytes == 88, "VkBindSparseInfo.pSignalSemaphores has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindSparseInfo.pSignalSemaphores has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindSparseInfo) == 96, "VkBindSparseInfo has size % instead of 96", size_of(VkBindSparseInfo)); } { info := type_info(VkSparseImageFormatProperties); for info.members { if it.name == { case "aspectMask"; assert(it.offset_in_bytes == 0, "VkSparseImageFormatProperties.aspectMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageFormatProperties.aspectMask has unexpected size % instead of 4", it.type.runtime_size); case "imageGranularity"; assert(it.offset_in_bytes == 4, "VkSparseImageFormatProperties.imageGranularity has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkSparseImageFormatProperties.imageGranularity has unexpected size % instead of 12", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSparseImageFormatProperties.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageFormatProperties.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSparseImageFormatProperties) == 20, "VkSparseImageFormatProperties has size % instead of 20", size_of(VkSparseImageFormatProperties)); } { info := type_info(VkSparseImageMemoryRequirements); for info.members { if it.name == { case "formatProperties"; assert(it.offset_in_bytes == 0, "VkSparseImageMemoryRequirements.formatProperties has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkSparseImageMemoryRequirements.formatProperties has unexpected size % instead of 20", it.type.runtime_size); case "imageMipTailFirstLod"; assert(it.offset_in_bytes == 20, "VkSparseImageMemoryRequirements.imageMipTailFirstLod has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageMemoryRequirements.imageMipTailFirstLod has unexpected size % instead of 4", it.type.runtime_size); case "imageMipTailSize"; assert(it.offset_in_bytes == 24, "VkSparseImageMemoryRequirements.imageMipTailSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryRequirements.imageMipTailSize has unexpected size % instead of 8", it.type.runtime_size); case "imageMipTailOffset"; assert(it.offset_in_bytes == 32, "VkSparseImageMemoryRequirements.imageMipTailOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryRequirements.imageMipTailOffset has unexpected size % instead of 8", it.type.runtime_size); case "imageMipTailStride"; assert(it.offset_in_bytes == 40, "VkSparseImageMemoryRequirements.imageMipTailStride has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryRequirements.imageMipTailStride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSparseImageMemoryRequirements) == 48, "VkSparseImageMemoryRequirements has size % instead of 48", size_of(VkSparseImageMemoryRequirements)); } { info := type_info(VkFenceCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFenceCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFenceCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFenceCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFenceCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkFenceCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFenceCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFenceCreateInfo) == 24, "VkFenceCreateInfo has size % instead of 24", size_of(VkFenceCreateInfo)); } { info := type_info(VkSemaphoreCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSemaphoreCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSemaphoreCreateInfo) == 24, "VkSemaphoreCreateInfo has size % instead of 24", size_of(VkSemaphoreCreateInfo)); } { info := type_info(VkEventCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkEventCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkEventCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkEventCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkEventCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkEventCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkEventCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkEventCreateInfo) == 24, "VkEventCreateInfo has size % instead of 24", size_of(VkEventCreateInfo)); } { info := type_info(VkQueryPoolCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueryPoolCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueryPoolCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryPoolCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkQueryPoolCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "queryType"; assert(it.offset_in_bytes == 20, "VkQueryPoolCreateInfo.queryType has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolCreateInfo.queryType has unexpected size % instead of 4", it.type.runtime_size); case "queryCount"; assert(it.offset_in_bytes == 24, "VkQueryPoolCreateInfo.queryCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolCreateInfo.queryCount has unexpected size % instead of 4", it.type.runtime_size); case "pipelineStatistics"; assert(it.offset_in_bytes == 28, "VkQueryPoolCreateInfo.pipelineStatistics has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolCreateInfo.pipelineStatistics has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueryPoolCreateInfo) == 32, "VkQueryPoolCreateInfo has size % instead of 32", size_of(VkQueryPoolCreateInfo)); } { info := type_info(VkBufferCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkBufferCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 24, "VkBufferCreateInfo.size has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCreateInfo.size has unexpected size % instead of 8", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 32, "VkBufferCreateInfo.usage has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCreateInfo.usage has unexpected size % instead of 4", it.type.runtime_size); case "sharingMode"; assert(it.offset_in_bytes == 36, "VkBufferCreateInfo.sharingMode has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCreateInfo.sharingMode has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndexCount"; assert(it.offset_in_bytes == 40, "VkBufferCreateInfo.queueFamilyIndexCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCreateInfo.queueFamilyIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueFamilyIndices"; assert(it.offset_in_bytes == 48, "VkBufferCreateInfo.pQueueFamilyIndices has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCreateInfo.pQueueFamilyIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferCreateInfo) == 56, "VkBufferCreateInfo has size % instead of 56", size_of(VkBufferCreateInfo)); } { info := type_info(VkBufferViewCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferViewCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferViewCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferViewCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferViewCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkBufferViewCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferViewCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 24, "VkBufferViewCreateInfo.buffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferViewCreateInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 32, "VkBufferViewCreateInfo.format has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferViewCreateInfo.format has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 40, "VkBufferViewCreateInfo.offset has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferViewCreateInfo.offset has unexpected size % instead of 8", it.type.runtime_size); case "range"; assert(it.offset_in_bytes == 48, "VkBufferViewCreateInfo.range has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferViewCreateInfo.range has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferViewCreateInfo) == 56, "VkBufferViewCreateInfo has size % instead of 56", size_of(VkBufferViewCreateInfo)); } { info := type_info(VkImageCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkImageCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "imageType"; assert(it.offset_in_bytes == 20, "VkImageCreateInfo.imageType has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.imageType has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 24, "VkImageCreateInfo.format has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.format has unexpected size % instead of 4", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 28, "VkImageCreateInfo.extent has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCreateInfo.extent has unexpected size % instead of 12", it.type.runtime_size); case "mipLevels"; assert(it.offset_in_bytes == 40, "VkImageCreateInfo.mipLevels has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.mipLevels has unexpected size % instead of 4", it.type.runtime_size); case "arrayLayers"; assert(it.offset_in_bytes == 44, "VkImageCreateInfo.arrayLayers has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.arrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "samples"; assert(it.offset_in_bytes == 48, "VkImageCreateInfo.samples has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.samples has unexpected size % instead of 4", it.type.runtime_size); case "tiling"; assert(it.offset_in_bytes == 52, "VkImageCreateInfo.tiling has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.tiling has unexpected size % instead of 4", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 56, "VkImageCreateInfo.usage has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.usage has unexpected size % instead of 4", it.type.runtime_size); case "sharingMode"; assert(it.offset_in_bytes == 60, "VkImageCreateInfo.sharingMode has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.sharingMode has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndexCount"; assert(it.offset_in_bytes == 64, "VkImageCreateInfo.queueFamilyIndexCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.queueFamilyIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueFamilyIndices"; assert(it.offset_in_bytes == 72, "VkImageCreateInfo.pQueueFamilyIndices has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCreateInfo.pQueueFamilyIndices has unexpected size % instead of 8", it.type.runtime_size); case "initialLayout"; assert(it.offset_in_bytes == 80, "VkImageCreateInfo.initialLayout has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCreateInfo.initialLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageCreateInfo) == 88, "VkImageCreateInfo has size % instead of 88", size_of(VkImageCreateInfo)); } { info := type_info(VkSubresourceLayout); for info.members { if it.name == { case "offset"; assert(it.offset_in_bytes == 0, "VkSubresourceLayout.offset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkSubresourceLayout.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout.size has unexpected size % instead of 8", it.type.runtime_size); case "rowPitch"; assert(it.offset_in_bytes == 16, "VkSubresourceLayout.rowPitch has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout.rowPitch has unexpected size % instead of 8", it.type.runtime_size); case "arrayPitch"; assert(it.offset_in_bytes == 24, "VkSubresourceLayout.arrayPitch has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout.arrayPitch has unexpected size % instead of 8", it.type.runtime_size); case "depthPitch"; assert(it.offset_in_bytes == 32, "VkSubresourceLayout.depthPitch has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout.depthPitch has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubresourceLayout) == 40, "VkSubresourceLayout has size % instead of 40", size_of(VkSubresourceLayout)); } { info := type_info(VkComponentMapping); for info.members { if it.name == { case "r"; assert(it.offset_in_bytes == 0, "VkComponentMapping.r has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComponentMapping.r has unexpected size % instead of 4", it.type.runtime_size); case "g"; assert(it.offset_in_bytes == 4, "VkComponentMapping.g has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComponentMapping.g has unexpected size % instead of 4", it.type.runtime_size); case "b"; assert(it.offset_in_bytes == 8, "VkComponentMapping.b has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComponentMapping.b has unexpected size % instead of 4", it.type.runtime_size); case "a"; assert(it.offset_in_bytes == 12, "VkComponentMapping.a has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComponentMapping.a has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkComponentMapping) == 16, "VkComponentMapping has size % instead of 16", size_of(VkComponentMapping)); } { info := type_info(VkImageViewCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkImageViewCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 24, "VkImageViewCreateInfo.image has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewCreateInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "viewType"; assert(it.offset_in_bytes == 32, "VkImageViewCreateInfo.viewType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewCreateInfo.viewType has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 36, "VkImageViewCreateInfo.format has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewCreateInfo.format has unexpected size % instead of 4", it.type.runtime_size); case "components"; assert(it.offset_in_bytes == 40, "VkImageViewCreateInfo.components has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageViewCreateInfo.components has unexpected size % instead of 16", it.type.runtime_size); case "subresourceRange"; assert(it.offset_in_bytes == 56, "VkImageViewCreateInfo.subresourceRange has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkImageViewCreateInfo.subresourceRange has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkImageViewCreateInfo) == 80, "VkImageViewCreateInfo has size % instead of 80", size_of(VkImageViewCreateInfo)); } { info := type_info(VkShaderModuleCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkShaderModuleCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderModuleCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkShaderModuleCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkShaderModuleCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderModuleCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "codeSize"; assert(it.offset_in_bytes == 24, "VkShaderModuleCreateInfo.codeSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleCreateInfo.codeSize has unexpected size % instead of 8", it.type.runtime_size); case "pCode"; assert(it.offset_in_bytes == 32, "VkShaderModuleCreateInfo.pCode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleCreateInfo.pCode has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkShaderModuleCreateInfo) == 40, "VkShaderModuleCreateInfo has size % instead of 40", size_of(VkShaderModuleCreateInfo)); } { info := type_info(VkPipelineCacheCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCacheCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCacheCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCacheCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineCacheCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCacheCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "initialDataSize"; assert(it.offset_in_bytes == 24, "VkPipelineCacheCreateInfo.initialDataSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCacheCreateInfo.initialDataSize has unexpected size % instead of 8", it.type.runtime_size); case "pInitialData"; assert(it.offset_in_bytes == 32, "VkPipelineCacheCreateInfo.pInitialData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCacheCreateInfo.pInitialData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCacheCreateInfo) == 40, "VkPipelineCacheCreateInfo has size % instead of 40", size_of(VkPipelineCacheCreateInfo)); } { info := type_info(VkSpecializationMapEntry); for info.members { if it.name == { case "constantID"; assert(it.offset_in_bytes == 0, "VkSpecializationMapEntry.constantID has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSpecializationMapEntry.constantID has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 4, "VkSpecializationMapEntry.offset has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSpecializationMapEntry.offset has unexpected size % instead of 4", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkSpecializationMapEntry.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSpecializationMapEntry.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSpecializationMapEntry) == 16, "VkSpecializationMapEntry has size % instead of 16", size_of(VkSpecializationMapEntry)); } { info := type_info(VkSpecializationInfo); for info.members { if it.name == { case "mapEntryCount"; assert(it.offset_in_bytes == 0, "VkSpecializationInfo.mapEntryCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSpecializationInfo.mapEntryCount has unexpected size % instead of 4", it.type.runtime_size); case "pMapEntries"; assert(it.offset_in_bytes == 8, "VkSpecializationInfo.pMapEntries has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSpecializationInfo.pMapEntries has unexpected size % instead of 8", it.type.runtime_size); case "dataSize"; assert(it.offset_in_bytes == 16, "VkSpecializationInfo.dataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSpecializationInfo.dataSize has unexpected size % instead of 8", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 24, "VkSpecializationInfo.pData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSpecializationInfo.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSpecializationInfo) == 32, "VkSpecializationInfo has size % instead of 32", size_of(VkSpecializationInfo)); } { info := type_info(VkPipelineShaderStageCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineShaderStageCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineShaderStageCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineShaderStageCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 20, "VkPipelineShaderStageCreateInfo.stage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageCreateInfo.stage has unexpected size % instead of 4", it.type.runtime_size); case "module"; assert(it.offset_in_bytes == 24, "VkPipelineShaderStageCreateInfo.module has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageCreateInfo.module has unexpected size % instead of 8", it.type.runtime_size); case "pName"; assert(it.offset_in_bytes == 32, "VkPipelineShaderStageCreateInfo.pName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageCreateInfo.pName has unexpected size % instead of 8", it.type.runtime_size); case "pSpecializationInfo"; assert(it.offset_in_bytes == 40, "VkPipelineShaderStageCreateInfo.pSpecializationInfo has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageCreateInfo.pSpecializationInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineShaderStageCreateInfo) == 48, "VkPipelineShaderStageCreateInfo has size % instead of 48", size_of(VkPipelineShaderStageCreateInfo)); } { info := type_info(VkComputePipelineCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkComputePipelineCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComputePipelineCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkComputePipelineCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkComputePipelineCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComputePipelineCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 24, "VkComputePipelineCreateInfo.stage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkComputePipelineCreateInfo.stage has unexpected size % instead of 48", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 72, "VkComputePipelineCreateInfo.layout has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineCreateInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineHandle"; assert(it.offset_in_bytes == 80, "VkComputePipelineCreateInfo.basePipelineHandle has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineCreateInfo.basePipelineHandle has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineIndex"; assert(it.offset_in_bytes == 88, "VkComputePipelineCreateInfo.basePipelineIndex has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComputePipelineCreateInfo.basePipelineIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkComputePipelineCreateInfo) == 96, "VkComputePipelineCreateInfo has size % instead of 96", size_of(VkComputePipelineCreateInfo)); } { info := type_info(VkVertexInputBindingDescription); for info.members { if it.name == { case "binding"; assert(it.offset_in_bytes == 0, "VkVertexInputBindingDescription.binding has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription.binding has unexpected size % instead of 4", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 4, "VkVertexInputBindingDescription.stride has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription.stride has unexpected size % instead of 4", it.type.runtime_size); case "inputRate"; assert(it.offset_in_bytes == 8, "VkVertexInputBindingDescription.inputRate has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription.inputRate has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVertexInputBindingDescription) == 12, "VkVertexInputBindingDescription has size % instead of 12", size_of(VkVertexInputBindingDescription)); } { info := type_info(VkVertexInputAttributeDescription); for info.members { if it.name == { case "location"; assert(it.offset_in_bytes == 0, "VkVertexInputAttributeDescription.location has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription.location has unexpected size % instead of 4", it.type.runtime_size); case "binding"; assert(it.offset_in_bytes == 4, "VkVertexInputAttributeDescription.binding has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription.binding has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 8, "VkVertexInputAttributeDescription.format has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription.format has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 12, "VkVertexInputAttributeDescription.offset has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription.offset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVertexInputAttributeDescription) == 16, "VkVertexInputAttributeDescription has size % instead of 16", size_of(VkVertexInputAttributeDescription)); } { info := type_info(VkPipelineVertexInputStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineVertexInputStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineVertexInputStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineVertexInputStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineVertexInputStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "vertexBindingDescriptionCount"; assert(it.offset_in_bytes == 20, "VkPipelineVertexInputStateCreateInfo.vertexBindingDescriptionCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputStateCreateInfo.vertexBindingDescriptionCount has unexpected size % instead of 4", it.type.runtime_size); case "pVertexBindingDescriptions"; assert(it.offset_in_bytes == 24, "VkPipelineVertexInputStateCreateInfo.pVertexBindingDescriptions has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineVertexInputStateCreateInfo.pVertexBindingDescriptions has unexpected size % instead of 8", it.type.runtime_size); case "vertexAttributeDescriptionCount"; assert(it.offset_in_bytes == 32, "VkPipelineVertexInputStateCreateInfo.vertexAttributeDescriptionCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputStateCreateInfo.vertexAttributeDescriptionCount has unexpected size % instead of 4", it.type.runtime_size); case "pVertexAttributeDescriptions"; assert(it.offset_in_bytes == 40, "VkPipelineVertexInputStateCreateInfo.pVertexAttributeDescriptions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineVertexInputStateCreateInfo.pVertexAttributeDescriptions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineVertexInputStateCreateInfo) == 48, "VkPipelineVertexInputStateCreateInfo has size % instead of 48", size_of(VkPipelineVertexInputStateCreateInfo)); } { info := type_info(VkPipelineInputAssemblyStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineInputAssemblyStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineInputAssemblyStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineInputAssemblyStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineInputAssemblyStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineInputAssemblyStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineInputAssemblyStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "topology"; assert(it.offset_in_bytes == 20, "VkPipelineInputAssemblyStateCreateInfo.topology has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineInputAssemblyStateCreateInfo.topology has unexpected size % instead of 4", it.type.runtime_size); case "primitiveRestartEnable"; assert(it.offset_in_bytes == 24, "VkPipelineInputAssemblyStateCreateInfo.primitiveRestartEnable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineInputAssemblyStateCreateInfo.primitiveRestartEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineInputAssemblyStateCreateInfo) == 32, "VkPipelineInputAssemblyStateCreateInfo has size % instead of 32", size_of(VkPipelineInputAssemblyStateCreateInfo)); } { info := type_info(VkPipelineTessellationStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineTessellationStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineTessellationStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineTessellationStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineTessellationStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineTessellationStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineTessellationStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "patchControlPoints"; assert(it.offset_in_bytes == 20, "VkPipelineTessellationStateCreateInfo.patchControlPoints has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineTessellationStateCreateInfo.patchControlPoints has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineTessellationStateCreateInfo) == 24, "VkPipelineTessellationStateCreateInfo has size % instead of 24", size_of(VkPipelineTessellationStateCreateInfo)); } { info := type_info(VkViewport); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkViewport.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkViewport.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.y has unexpected size % instead of 4", it.type.runtime_size); case "width"; assert(it.offset_in_bytes == 8, "VkViewport.width has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 12, "VkViewport.height has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.height has unexpected size % instead of 4", it.type.runtime_size); case "minDepth"; assert(it.offset_in_bytes == 16, "VkViewport.minDepth has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.minDepth has unexpected size % instead of 4", it.type.runtime_size); case "maxDepth"; assert(it.offset_in_bytes == 20, "VkViewport.maxDepth has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewport.maxDepth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkViewport) == 24, "VkViewport has size % instead of 24", size_of(VkViewport)); } { info := type_info(VkPipelineViewportStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineViewportStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "viewportCount"; assert(it.offset_in_bytes == 20, "VkPipelineViewportStateCreateInfo.viewportCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportStateCreateInfo.viewportCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewports"; assert(it.offset_in_bytes == 24, "VkPipelineViewportStateCreateInfo.pViewports has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportStateCreateInfo.pViewports has unexpected size % instead of 8", it.type.runtime_size); case "scissorCount"; assert(it.offset_in_bytes == 32, "VkPipelineViewportStateCreateInfo.scissorCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportStateCreateInfo.scissorCount has unexpected size % instead of 4", it.type.runtime_size); case "pScissors"; assert(it.offset_in_bytes == 40, "VkPipelineViewportStateCreateInfo.pScissors has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportStateCreateInfo.pScissors has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportStateCreateInfo) == 48, "VkPipelineViewportStateCreateInfo has size % instead of 48", size_of(VkPipelineViewportStateCreateInfo)); } { info := type_info(VkPipelineRasterizationStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "depthClampEnable"; assert(it.offset_in_bytes == 20, "VkPipelineRasterizationStateCreateInfo.depthClampEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.depthClampEnable has unexpected size % instead of 4", it.type.runtime_size); case "rasterizerDiscardEnable"; assert(it.offset_in_bytes == 24, "VkPipelineRasterizationStateCreateInfo.rasterizerDiscardEnable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.rasterizerDiscardEnable has unexpected size % instead of 4", it.type.runtime_size); case "polygonMode"; assert(it.offset_in_bytes == 28, "VkPipelineRasterizationStateCreateInfo.polygonMode has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.polygonMode has unexpected size % instead of 4", it.type.runtime_size); case "cullMode"; assert(it.offset_in_bytes == 32, "VkPipelineRasterizationStateCreateInfo.cullMode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.cullMode has unexpected size % instead of 4", it.type.runtime_size); case "frontFace"; assert(it.offset_in_bytes == 36, "VkPipelineRasterizationStateCreateInfo.frontFace has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.frontFace has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasEnable"; assert(it.offset_in_bytes == 40, "VkPipelineRasterizationStateCreateInfo.depthBiasEnable has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.depthBiasEnable has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasConstantFactor"; assert(it.offset_in_bytes == 44, "VkPipelineRasterizationStateCreateInfo.depthBiasConstantFactor has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.depthBiasConstantFactor has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasClamp"; assert(it.offset_in_bytes == 48, "VkPipelineRasterizationStateCreateInfo.depthBiasClamp has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.depthBiasClamp has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasSlopeFactor"; assert(it.offset_in_bytes == 52, "VkPipelineRasterizationStateCreateInfo.depthBiasSlopeFactor has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.depthBiasSlopeFactor has unexpected size % instead of 4", it.type.runtime_size); case "lineWidth"; assert(it.offset_in_bytes == 56, "VkPipelineRasterizationStateCreateInfo.lineWidth has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateCreateInfo.lineWidth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationStateCreateInfo) == 64, "VkPipelineRasterizationStateCreateInfo has size % instead of 64", size_of(VkPipelineRasterizationStateCreateInfo)); } { info := type_info(VkPipelineMultisampleStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineMultisampleStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineMultisampleStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineMultisampleStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineMultisampleStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationSamples"; assert(it.offset_in_bytes == 20, "VkPipelineMultisampleStateCreateInfo.rasterizationSamples has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.rasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); case "sampleShadingEnable"; assert(it.offset_in_bytes == 24, "VkPipelineMultisampleStateCreateInfo.sampleShadingEnable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.sampleShadingEnable has unexpected size % instead of 4", it.type.runtime_size); case "minSampleShading"; assert(it.offset_in_bytes == 28, "VkPipelineMultisampleStateCreateInfo.minSampleShading has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.minSampleShading has unexpected size % instead of 4", it.type.runtime_size); case "pSampleMask"; assert(it.offset_in_bytes == 32, "VkPipelineMultisampleStateCreateInfo.pSampleMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineMultisampleStateCreateInfo.pSampleMask has unexpected size % instead of 8", it.type.runtime_size); case "alphaToCoverageEnable"; assert(it.offset_in_bytes == 40, "VkPipelineMultisampleStateCreateInfo.alphaToCoverageEnable has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.alphaToCoverageEnable has unexpected size % instead of 4", it.type.runtime_size); case "alphaToOneEnable"; assert(it.offset_in_bytes == 44, "VkPipelineMultisampleStateCreateInfo.alphaToOneEnable has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineMultisampleStateCreateInfo.alphaToOneEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineMultisampleStateCreateInfo) == 48, "VkPipelineMultisampleStateCreateInfo has size % instead of 48", size_of(VkPipelineMultisampleStateCreateInfo)); } { info := type_info(VkStencilOpState); for info.members { if it.name == { case "failOp"; assert(it.offset_in_bytes == 0, "VkStencilOpState.failOp has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.failOp has unexpected size % instead of 4", it.type.runtime_size); case "passOp"; assert(it.offset_in_bytes == 4, "VkStencilOpState.passOp has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.passOp has unexpected size % instead of 4", it.type.runtime_size); case "depthFailOp"; assert(it.offset_in_bytes == 8, "VkStencilOpState.depthFailOp has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.depthFailOp has unexpected size % instead of 4", it.type.runtime_size); case "compareOp"; assert(it.offset_in_bytes == 12, "VkStencilOpState.compareOp has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.compareOp has unexpected size % instead of 4", it.type.runtime_size); case "compareMask"; assert(it.offset_in_bytes == 16, "VkStencilOpState.compareMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.compareMask has unexpected size % instead of 4", it.type.runtime_size); case "writeMask"; assert(it.offset_in_bytes == 20, "VkStencilOpState.writeMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.writeMask has unexpected size % instead of 4", it.type.runtime_size); case "reference"; assert(it.offset_in_bytes == 24, "VkStencilOpState.reference has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkStencilOpState.reference has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkStencilOpState) == 28, "VkStencilOpState has size % instead of 28", size_of(VkStencilOpState)); } { info := type_info(VkPipelineDepthStencilStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineDepthStencilStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineDepthStencilStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineDepthStencilStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineDepthStencilStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "depthTestEnable"; assert(it.offset_in_bytes == 20, "VkPipelineDepthStencilStateCreateInfo.depthTestEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.depthTestEnable has unexpected size % instead of 4", it.type.runtime_size); case "depthWriteEnable"; assert(it.offset_in_bytes == 24, "VkPipelineDepthStencilStateCreateInfo.depthWriteEnable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.depthWriteEnable has unexpected size % instead of 4", it.type.runtime_size); case "depthCompareOp"; assert(it.offset_in_bytes == 28, "VkPipelineDepthStencilStateCreateInfo.depthCompareOp has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.depthCompareOp has unexpected size % instead of 4", it.type.runtime_size); case "depthBoundsTestEnable"; assert(it.offset_in_bytes == 32, "VkPipelineDepthStencilStateCreateInfo.depthBoundsTestEnable has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.depthBoundsTestEnable has unexpected size % instead of 4", it.type.runtime_size); case "stencilTestEnable"; assert(it.offset_in_bytes == 36, "VkPipelineDepthStencilStateCreateInfo.stencilTestEnable has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.stencilTestEnable has unexpected size % instead of 4", it.type.runtime_size); case "front"; assert(it.offset_in_bytes == 40, "VkPipelineDepthStencilStateCreateInfo.front has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 28, "VkPipelineDepthStencilStateCreateInfo.front has unexpected size % instead of 28", it.type.runtime_size); case "back"; assert(it.offset_in_bytes == 68, "VkPipelineDepthStencilStateCreateInfo.back has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 28, "VkPipelineDepthStencilStateCreateInfo.back has unexpected size % instead of 28", it.type.runtime_size); case "minDepthBounds"; assert(it.offset_in_bytes == 96, "VkPipelineDepthStencilStateCreateInfo.minDepthBounds has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.minDepthBounds has unexpected size % instead of 4", it.type.runtime_size); case "maxDepthBounds"; assert(it.offset_in_bytes == 100, "VkPipelineDepthStencilStateCreateInfo.maxDepthBounds has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDepthStencilStateCreateInfo.maxDepthBounds has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineDepthStencilStateCreateInfo) == 104, "VkPipelineDepthStencilStateCreateInfo has size % instead of 104", size_of(VkPipelineDepthStencilStateCreateInfo)); } { info := type_info(VkPipelineColorBlendAttachmentState); for info.members { if it.name == { case "blendEnable"; assert(it.offset_in_bytes == 0, "VkPipelineColorBlendAttachmentState.blendEnable has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.blendEnable has unexpected size % instead of 4", it.type.runtime_size); case "srcColorBlendFactor"; assert(it.offset_in_bytes == 4, "VkPipelineColorBlendAttachmentState.srcColorBlendFactor has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.srcColorBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "dstColorBlendFactor"; assert(it.offset_in_bytes == 8, "VkPipelineColorBlendAttachmentState.dstColorBlendFactor has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.dstColorBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "colorBlendOp"; assert(it.offset_in_bytes == 12, "VkPipelineColorBlendAttachmentState.colorBlendOp has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.colorBlendOp has unexpected size % instead of 4", it.type.runtime_size); case "srcAlphaBlendFactor"; assert(it.offset_in_bytes == 16, "VkPipelineColorBlendAttachmentState.srcAlphaBlendFactor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.srcAlphaBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "dstAlphaBlendFactor"; assert(it.offset_in_bytes == 20, "VkPipelineColorBlendAttachmentState.dstAlphaBlendFactor has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.dstAlphaBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "alphaBlendOp"; assert(it.offset_in_bytes == 24, "VkPipelineColorBlendAttachmentState.alphaBlendOp has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.alphaBlendOp has unexpected size % instead of 4", it.type.runtime_size); case "colorWriteMask"; assert(it.offset_in_bytes == 28, "VkPipelineColorBlendAttachmentState.colorWriteMask has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAttachmentState.colorWriteMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineColorBlendAttachmentState) == 32, "VkPipelineColorBlendAttachmentState has size % instead of 32", size_of(VkPipelineColorBlendAttachmentState)); } { info := type_info(VkPipelineColorBlendStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineColorBlendStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineColorBlendStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineColorBlendStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineColorBlendStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "logicOpEnable"; assert(it.offset_in_bytes == 20, "VkPipelineColorBlendStateCreateInfo.logicOpEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendStateCreateInfo.logicOpEnable has unexpected size % instead of 4", it.type.runtime_size); case "logicOp"; assert(it.offset_in_bytes == 24, "VkPipelineColorBlendStateCreateInfo.logicOp has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendStateCreateInfo.logicOp has unexpected size % instead of 4", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 28, "VkPipelineColorBlendStateCreateInfo.attachmentCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendStateCreateInfo.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachments"; assert(it.offset_in_bytes == 32, "VkPipelineColorBlendStateCreateInfo.pAttachments has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineColorBlendStateCreateInfo.pAttachments has unexpected size % instead of 8", it.type.runtime_size); case "blendConstants"; assert(it.offset_in_bytes == 40, "VkPipelineColorBlendStateCreateInfo.blendConstants has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPipelineColorBlendStateCreateInfo.blendConstants has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkPipelineColorBlendStateCreateInfo) == 56, "VkPipelineColorBlendStateCreateInfo has size % instead of 56", size_of(VkPipelineColorBlendStateCreateInfo)); } { info := type_info(VkPipelineDynamicStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineDynamicStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDynamicStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineDynamicStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineDynamicStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineDynamicStateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDynamicStateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "dynamicStateCount"; assert(it.offset_in_bytes == 20, "VkPipelineDynamicStateCreateInfo.dynamicStateCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDynamicStateCreateInfo.dynamicStateCount has unexpected size % instead of 4", it.type.runtime_size); case "pDynamicStates"; assert(it.offset_in_bytes == 24, "VkPipelineDynamicStateCreateInfo.pDynamicStates has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineDynamicStateCreateInfo.pDynamicStates has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineDynamicStateCreateInfo) == 32, "VkPipelineDynamicStateCreateInfo has size % instead of 32", size_of(VkPipelineDynamicStateCreateInfo)); } { info := type_info(VkGraphicsPipelineCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGraphicsPipelineCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGraphicsPipelineCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkGraphicsPipelineCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "stageCount"; assert(it.offset_in_bytes == 20, "VkGraphicsPipelineCreateInfo.stageCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineCreateInfo.stageCount has unexpected size % instead of 4", it.type.runtime_size); case "pStages"; assert(it.offset_in_bytes == 24, "VkGraphicsPipelineCreateInfo.pStages has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pStages has unexpected size % instead of 8", it.type.runtime_size); case "pVertexInputState"; assert(it.offset_in_bytes == 32, "VkGraphicsPipelineCreateInfo.pVertexInputState has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pVertexInputState has unexpected size % instead of 8", it.type.runtime_size); case "pInputAssemblyState"; assert(it.offset_in_bytes == 40, "VkGraphicsPipelineCreateInfo.pInputAssemblyState has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pInputAssemblyState has unexpected size % instead of 8", it.type.runtime_size); case "pTessellationState"; assert(it.offset_in_bytes == 48, "VkGraphicsPipelineCreateInfo.pTessellationState has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pTessellationState has unexpected size % instead of 8", it.type.runtime_size); case "pViewportState"; assert(it.offset_in_bytes == 56, "VkGraphicsPipelineCreateInfo.pViewportState has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pViewportState has unexpected size % instead of 8", it.type.runtime_size); case "pRasterizationState"; assert(it.offset_in_bytes == 64, "VkGraphicsPipelineCreateInfo.pRasterizationState has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pRasterizationState has unexpected size % instead of 8", it.type.runtime_size); case "pMultisampleState"; assert(it.offset_in_bytes == 72, "VkGraphicsPipelineCreateInfo.pMultisampleState has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pMultisampleState has unexpected size % instead of 8", it.type.runtime_size); case "pDepthStencilState"; assert(it.offset_in_bytes == 80, "VkGraphicsPipelineCreateInfo.pDepthStencilState has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pDepthStencilState has unexpected size % instead of 8", it.type.runtime_size); case "pColorBlendState"; assert(it.offset_in_bytes == 88, "VkGraphicsPipelineCreateInfo.pColorBlendState has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pColorBlendState has unexpected size % instead of 8", it.type.runtime_size); case "pDynamicState"; assert(it.offset_in_bytes == 96, "VkGraphicsPipelineCreateInfo.pDynamicState has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.pDynamicState has unexpected size % instead of 8", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 104, "VkGraphicsPipelineCreateInfo.layout has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "renderPass"; assert(it.offset_in_bytes == 112, "VkGraphicsPipelineCreateInfo.renderPass has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.renderPass has unexpected size % instead of 8", it.type.runtime_size); case "subpass"; assert(it.offset_in_bytes == 120, "VkGraphicsPipelineCreateInfo.subpass has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineCreateInfo.subpass has unexpected size % instead of 4", it.type.runtime_size); case "basePipelineHandle"; assert(it.offset_in_bytes == 128, "VkGraphicsPipelineCreateInfo.basePipelineHandle has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineCreateInfo.basePipelineHandle has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineIndex"; assert(it.offset_in_bytes == 136, "VkGraphicsPipelineCreateInfo.basePipelineIndex has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineCreateInfo.basePipelineIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGraphicsPipelineCreateInfo) == 144, "VkGraphicsPipelineCreateInfo has size % instead of 144", size_of(VkGraphicsPipelineCreateInfo)); } { info := type_info(VkPushConstantRange); for info.members { if it.name == { case "stageFlags"; assert(it.offset_in_bytes == 0, "VkPushConstantRange.stageFlags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantRange.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 4, "VkPushConstantRange.offset has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantRange.offset has unexpected size % instead of 4", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkPushConstantRange.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantRange.size has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPushConstantRange) == 12, "VkPushConstantRange has size % instead of 12", size_of(VkPushConstantRange)); } { info := type_info(VkPipelineLayoutCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineLayoutCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLayoutCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineLayoutCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineLayoutCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineLayoutCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLayoutCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "setLayoutCount"; assert(it.offset_in_bytes == 20, "VkPipelineLayoutCreateInfo.setLayoutCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLayoutCreateInfo.setLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pSetLayouts"; assert(it.offset_in_bytes == 24, "VkPipelineLayoutCreateInfo.pSetLayouts has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineLayoutCreateInfo.pSetLayouts has unexpected size % instead of 8", it.type.runtime_size); case "pushConstantRangeCount"; assert(it.offset_in_bytes == 32, "VkPipelineLayoutCreateInfo.pushConstantRangeCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLayoutCreateInfo.pushConstantRangeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPushConstantRanges"; assert(it.offset_in_bytes == 40, "VkPipelineLayoutCreateInfo.pPushConstantRanges has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineLayoutCreateInfo.pPushConstantRanges has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineLayoutCreateInfo) == 48, "VkPipelineLayoutCreateInfo has size % instead of 48", size_of(VkPipelineLayoutCreateInfo)); } { info := type_info(VkSamplerCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSamplerCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "magFilter"; assert(it.offset_in_bytes == 20, "VkSamplerCreateInfo.magFilter has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.magFilter has unexpected size % instead of 4", it.type.runtime_size); case "minFilter"; assert(it.offset_in_bytes == 24, "VkSamplerCreateInfo.minFilter has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.minFilter has unexpected size % instead of 4", it.type.runtime_size); case "mipmapMode"; assert(it.offset_in_bytes == 28, "VkSamplerCreateInfo.mipmapMode has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.mipmapMode has unexpected size % instead of 4", it.type.runtime_size); case "addressModeU"; assert(it.offset_in_bytes == 32, "VkSamplerCreateInfo.addressModeU has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.addressModeU has unexpected size % instead of 4", it.type.runtime_size); case "addressModeV"; assert(it.offset_in_bytes == 36, "VkSamplerCreateInfo.addressModeV has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.addressModeV has unexpected size % instead of 4", it.type.runtime_size); case "addressModeW"; assert(it.offset_in_bytes == 40, "VkSamplerCreateInfo.addressModeW has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.addressModeW has unexpected size % instead of 4", it.type.runtime_size); case "mipLodBias"; assert(it.offset_in_bytes == 44, "VkSamplerCreateInfo.mipLodBias has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.mipLodBias has unexpected size % instead of 4", it.type.runtime_size); case "anisotropyEnable"; assert(it.offset_in_bytes == 48, "VkSamplerCreateInfo.anisotropyEnable has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.anisotropyEnable has unexpected size % instead of 4", it.type.runtime_size); case "maxAnisotropy"; assert(it.offset_in_bytes == 52, "VkSamplerCreateInfo.maxAnisotropy has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.maxAnisotropy has unexpected size % instead of 4", it.type.runtime_size); case "compareEnable"; assert(it.offset_in_bytes == 56, "VkSamplerCreateInfo.compareEnable has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.compareEnable has unexpected size % instead of 4", it.type.runtime_size); case "compareOp"; assert(it.offset_in_bytes == 60, "VkSamplerCreateInfo.compareOp has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.compareOp has unexpected size % instead of 4", it.type.runtime_size); case "minLod"; assert(it.offset_in_bytes == 64, "VkSamplerCreateInfo.minLod has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.minLod has unexpected size % instead of 4", it.type.runtime_size); case "maxLod"; assert(it.offset_in_bytes == 68, "VkSamplerCreateInfo.maxLod has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.maxLod has unexpected size % instead of 4", it.type.runtime_size); case "borderColor"; assert(it.offset_in_bytes == 72, "VkSamplerCreateInfo.borderColor has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.borderColor has unexpected size % instead of 4", it.type.runtime_size); case "unnormalizedCoordinates"; assert(it.offset_in_bytes == 76, "VkSamplerCreateInfo.unnormalizedCoordinates has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCreateInfo.unnormalizedCoordinates has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerCreateInfo) == 80, "VkSamplerCreateInfo has size % instead of 80", size_of(VkSamplerCreateInfo)); } { info := type_info(VkCopyDescriptorSet); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyDescriptorSet.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyDescriptorSet.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyDescriptorSet.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSet"; assert(it.offset_in_bytes == 16, "VkCopyDescriptorSet.srcSet has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyDescriptorSet.srcSet has unexpected size % instead of 8", it.type.runtime_size); case "srcBinding"; assert(it.offset_in_bytes == 24, "VkCopyDescriptorSet.srcBinding has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.srcBinding has unexpected size % instead of 4", it.type.runtime_size); case "srcArrayElement"; assert(it.offset_in_bytes == 28, "VkCopyDescriptorSet.srcArrayElement has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.srcArrayElement has unexpected size % instead of 4", it.type.runtime_size); case "dstSet"; assert(it.offset_in_bytes == 32, "VkCopyDescriptorSet.dstSet has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyDescriptorSet.dstSet has unexpected size % instead of 8", it.type.runtime_size); case "dstBinding"; assert(it.offset_in_bytes == 40, "VkCopyDescriptorSet.dstBinding has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.dstBinding has unexpected size % instead of 4", it.type.runtime_size); case "dstArrayElement"; assert(it.offset_in_bytes == 44, "VkCopyDescriptorSet.dstArrayElement has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.dstArrayElement has unexpected size % instead of 4", it.type.runtime_size); case "descriptorCount"; assert(it.offset_in_bytes == 48, "VkCopyDescriptorSet.descriptorCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyDescriptorSet.descriptorCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyDescriptorSet) == 56, "VkCopyDescriptorSet has size % instead of 56", size_of(VkCopyDescriptorSet)); } { info := type_info(VkDescriptorBufferInfo); for info.members { if it.name == { case "buffer"; assert(it.offset_in_bytes == 0, "VkDescriptorBufferInfo.buffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 8, "VkDescriptorBufferInfo.offset has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferInfo.offset has unexpected size % instead of 8", it.type.runtime_size); case "range"; assert(it.offset_in_bytes == 16, "VkDescriptorBufferInfo.range has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferInfo.range has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorBufferInfo) == 24, "VkDescriptorBufferInfo has size % instead of 24", size_of(VkDescriptorBufferInfo)); } { info := type_info(VkDescriptorImageInfo); for info.members { if it.name == { case "sampler"; assert(it.offset_in_bytes == 0, "VkDescriptorImageInfo.sampler has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorImageInfo.sampler has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 8, "VkDescriptorImageInfo.imageView has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorImageInfo.imageView has unexpected size % instead of 8", it.type.runtime_size); case "imageLayout"; assert(it.offset_in_bytes == 16, "VkDescriptorImageInfo.imageLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorImageInfo.imageLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorImageInfo) == 24, "VkDescriptorImageInfo has size % instead of 24", size_of(VkDescriptorImageInfo)); } { info := type_info(VkDescriptorPoolSize); for info.members { if it.name == { case "type"; assert(it.offset_in_bytes == 0, "VkDescriptorPoolSize.type has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolSize.type has unexpected size % instead of 4", it.type.runtime_size); case "descriptorCount"; assert(it.offset_in_bytes == 4, "VkDescriptorPoolSize.descriptorCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolSize.descriptorCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorPoolSize) == 8, "VkDescriptorPoolSize has size % instead of 8", size_of(VkDescriptorPoolSize)); } { info := type_info(VkDescriptorPoolCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorPoolCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorPoolCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorPoolCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDescriptorPoolCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "maxSets"; assert(it.offset_in_bytes == 20, "VkDescriptorPoolCreateInfo.maxSets has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolCreateInfo.maxSets has unexpected size % instead of 4", it.type.runtime_size); case "poolSizeCount"; assert(it.offset_in_bytes == 24, "VkDescriptorPoolCreateInfo.poolSizeCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolCreateInfo.poolSizeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPoolSizes"; assert(it.offset_in_bytes == 32, "VkDescriptorPoolCreateInfo.pPoolSizes has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorPoolCreateInfo.pPoolSizes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorPoolCreateInfo) == 40, "VkDescriptorPoolCreateInfo has size % instead of 40", size_of(VkDescriptorPoolCreateInfo)); } { info := type_info(VkDescriptorSetAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorPool"; assert(it.offset_in_bytes == 16, "VkDescriptorSetAllocateInfo.descriptorPool has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetAllocateInfo.descriptorPool has unexpected size % instead of 8", it.type.runtime_size); case "descriptorSetCount"; assert(it.offset_in_bytes == 24, "VkDescriptorSetAllocateInfo.descriptorSetCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetAllocateInfo.descriptorSetCount has unexpected size % instead of 4", it.type.runtime_size); case "pSetLayouts"; assert(it.offset_in_bytes == 32, "VkDescriptorSetAllocateInfo.pSetLayouts has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetAllocateInfo.pSetLayouts has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorSetAllocateInfo) == 40, "VkDescriptorSetAllocateInfo has size % instead of 40", size_of(VkDescriptorSetAllocateInfo)); } { info := type_info(VkDescriptorSetLayoutBinding); for info.members { if it.name == { case "binding"; assert(it.offset_in_bytes == 0, "VkDescriptorSetLayoutBinding.binding has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBinding.binding has unexpected size % instead of 4", it.type.runtime_size); case "descriptorType"; assert(it.offset_in_bytes == 4, "VkDescriptorSetLayoutBinding.descriptorType has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBinding.descriptorType has unexpected size % instead of 4", it.type.runtime_size); case "descriptorCount"; assert(it.offset_in_bytes == 8, "VkDescriptorSetLayoutBinding.descriptorCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBinding.descriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 12, "VkDescriptorSetLayoutBinding.stageFlags has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBinding.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "pImmutableSamplers"; assert(it.offset_in_bytes == 16, "VkDescriptorSetLayoutBinding.pImmutableSamplers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutBinding.pImmutableSamplers has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorSetLayoutBinding) == 24, "VkDescriptorSetLayoutBinding has size % instead of 24", size_of(VkDescriptorSetLayoutBinding)); } { info := type_info(VkDescriptorSetLayoutCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetLayoutCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetLayoutCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDescriptorSetLayoutCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "bindingCount"; assert(it.offset_in_bytes == 20, "VkDescriptorSetLayoutCreateInfo.bindingCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutCreateInfo.bindingCount has unexpected size % instead of 4", it.type.runtime_size); case "pBindings"; assert(it.offset_in_bytes == 24, "VkDescriptorSetLayoutCreateInfo.pBindings has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutCreateInfo.pBindings has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorSetLayoutCreateInfo) == 32, "VkDescriptorSetLayoutCreateInfo has size % instead of 32", size_of(VkDescriptorSetLayoutCreateInfo)); } { info := type_info(VkWriteDescriptorSet); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteDescriptorSet.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSet.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteDescriptorSet.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSet.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dstSet"; assert(it.offset_in_bytes == 16, "VkWriteDescriptorSet.dstSet has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSet.dstSet has unexpected size % instead of 8", it.type.runtime_size); case "dstBinding"; assert(it.offset_in_bytes == 24, "VkWriteDescriptorSet.dstBinding has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSet.dstBinding has unexpected size % instead of 4", it.type.runtime_size); case "dstArrayElement"; assert(it.offset_in_bytes == 28, "VkWriteDescriptorSet.dstArrayElement has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSet.dstArrayElement has unexpected size % instead of 4", it.type.runtime_size); case "descriptorCount"; assert(it.offset_in_bytes == 32, "VkWriteDescriptorSet.descriptorCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSet.descriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "descriptorType"; assert(it.offset_in_bytes == 36, "VkWriteDescriptorSet.descriptorType has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSet.descriptorType has unexpected size % instead of 4", it.type.runtime_size); case "pImageInfo"; assert(it.offset_in_bytes == 40, "VkWriteDescriptorSet.pImageInfo has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSet.pImageInfo has unexpected size % instead of 8", it.type.runtime_size); case "pBufferInfo"; assert(it.offset_in_bytes == 48, "VkWriteDescriptorSet.pBufferInfo has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSet.pBufferInfo has unexpected size % instead of 8", it.type.runtime_size); case "pTexelBufferView"; assert(it.offset_in_bytes == 56, "VkWriteDescriptorSet.pTexelBufferView has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSet.pTexelBufferView has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteDescriptorSet) == 64, "VkWriteDescriptorSet has size % instead of 64", size_of(VkWriteDescriptorSet)); } { info := type_info(VkAttachmentDescription); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "VkAttachmentDescription.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.flags has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 4, "VkAttachmentDescription.format has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.format has unexpected size % instead of 4", it.type.runtime_size); case "samples"; assert(it.offset_in_bytes == 8, "VkAttachmentDescription.samples has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.samples has unexpected size % instead of 4", it.type.runtime_size); case "loadOp"; assert(it.offset_in_bytes == 12, "VkAttachmentDescription.loadOp has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.loadOp has unexpected size % instead of 4", it.type.runtime_size); case "storeOp"; assert(it.offset_in_bytes == 16, "VkAttachmentDescription.storeOp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.storeOp has unexpected size % instead of 4", it.type.runtime_size); case "stencilLoadOp"; assert(it.offset_in_bytes == 20, "VkAttachmentDescription.stencilLoadOp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.stencilLoadOp has unexpected size % instead of 4", it.type.runtime_size); case "stencilStoreOp"; assert(it.offset_in_bytes == 24, "VkAttachmentDescription.stencilStoreOp has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.stencilStoreOp has unexpected size % instead of 4", it.type.runtime_size); case "initialLayout"; assert(it.offset_in_bytes == 28, "VkAttachmentDescription.initialLayout has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.initialLayout has unexpected size % instead of 4", it.type.runtime_size); case "finalLayout"; assert(it.offset_in_bytes == 32, "VkAttachmentDescription.finalLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription.finalLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentDescription) == 36, "VkAttachmentDescription has size % instead of 36", size_of(VkAttachmentDescription)); } { info := type_info(VkAttachmentReference); for info.members { if it.name == { case "attachment"; assert(it.offset_in_bytes == 0, "VkAttachmentReference.attachment has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference.attachment has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 4, "VkAttachmentReference.layout has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference.layout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentReference) == 8, "VkAttachmentReference has size % instead of 8", size_of(VkAttachmentReference)); } { info := type_info(VkFramebufferCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFramebufferCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFramebufferCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkFramebufferCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "renderPass"; assert(it.offset_in_bytes == 24, "VkFramebufferCreateInfo.renderPass has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferCreateInfo.renderPass has unexpected size % instead of 8", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 32, "VkFramebufferCreateInfo.attachmentCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachments"; assert(it.offset_in_bytes == 40, "VkFramebufferCreateInfo.pAttachments has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferCreateInfo.pAttachments has unexpected size % instead of 8", it.type.runtime_size); case "width"; assert(it.offset_in_bytes == 48, "VkFramebufferCreateInfo.width has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 52, "VkFramebufferCreateInfo.height has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.height has unexpected size % instead of 4", it.type.runtime_size); case "layers"; assert(it.offset_in_bytes == 56, "VkFramebufferCreateInfo.layers has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferCreateInfo.layers has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFramebufferCreateInfo) == 64, "VkFramebufferCreateInfo has size % instead of 64", size_of(VkFramebufferCreateInfo)); } { info := type_info(VkSubpassDescription); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "VkSubpassDescription.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription.flags has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 4, "VkSubpassDescription.pipelineBindPoint has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "inputAttachmentCount"; assert(it.offset_in_bytes == 8, "VkSubpassDescription.inputAttachmentCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription.inputAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pInputAttachments"; assert(it.offset_in_bytes == 16, "VkSubpassDescription.pInputAttachments has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription.pInputAttachments has unexpected size % instead of 8", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 24, "VkSubpassDescription.colorAttachmentCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachments"; assert(it.offset_in_bytes == 32, "VkSubpassDescription.pColorAttachments has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription.pColorAttachments has unexpected size % instead of 8", it.type.runtime_size); case "pResolveAttachments"; assert(it.offset_in_bytes == 40, "VkSubpassDescription.pResolveAttachments has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription.pResolveAttachments has unexpected size % instead of 8", it.type.runtime_size); case "pDepthStencilAttachment"; assert(it.offset_in_bytes == 48, "VkSubpassDescription.pDepthStencilAttachment has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription.pDepthStencilAttachment has unexpected size % instead of 8", it.type.runtime_size); case "preserveAttachmentCount"; assert(it.offset_in_bytes == 56, "VkSubpassDescription.preserveAttachmentCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription.preserveAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pPreserveAttachments"; assert(it.offset_in_bytes == 64, "VkSubpassDescription.pPreserveAttachments has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription.pPreserveAttachments has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubpassDescription) == 72, "VkSubpassDescription has size % instead of 72", size_of(VkSubpassDescription)); } { info := type_info(VkSubpassDependency); for info.members { if it.name == { case "srcSubpass"; assert(it.offset_in_bytes == 0, "VkSubpassDependency.srcSubpass has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.srcSubpass has unexpected size % instead of 4", it.type.runtime_size); case "dstSubpass"; assert(it.offset_in_bytes == 4, "VkSubpassDependency.dstSubpass has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.dstSubpass has unexpected size % instead of 4", it.type.runtime_size); case "srcStageMask"; assert(it.offset_in_bytes == 8, "VkSubpassDependency.srcStageMask has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.srcStageMask has unexpected size % instead of 4", it.type.runtime_size); case "dstStageMask"; assert(it.offset_in_bytes == 12, "VkSubpassDependency.dstStageMask has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.dstStageMask has unexpected size % instead of 4", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 16, "VkSubpassDependency.srcAccessMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.srcAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 20, "VkSubpassDependency.dstAccessMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.dstAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dependencyFlags"; assert(it.offset_in_bytes == 24, "VkSubpassDependency.dependencyFlags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency.dependencyFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSubpassDependency) == 28, "VkSubpassDependency has size % instead of 28", size_of(VkSubpassDependency)); } { info := type_info(VkRenderPassCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRenderPassCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 20, "VkRenderPassCreateInfo.attachmentCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachments"; assert(it.offset_in_bytes == 24, "VkRenderPassCreateInfo.pAttachments has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo.pAttachments has unexpected size % instead of 8", it.type.runtime_size); case "subpassCount"; assert(it.offset_in_bytes == 32, "VkRenderPassCreateInfo.subpassCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo.subpassCount has unexpected size % instead of 4", it.type.runtime_size); case "pSubpasses"; assert(it.offset_in_bytes == 40, "VkRenderPassCreateInfo.pSubpasses has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo.pSubpasses has unexpected size % instead of 8", it.type.runtime_size); case "dependencyCount"; assert(it.offset_in_bytes == 48, "VkRenderPassCreateInfo.dependencyCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo.dependencyCount has unexpected size % instead of 4", it.type.runtime_size); case "pDependencies"; assert(it.offset_in_bytes == 56, "VkRenderPassCreateInfo.pDependencies has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo.pDependencies has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassCreateInfo) == 64, "VkRenderPassCreateInfo has size % instead of 64", size_of(VkRenderPassCreateInfo)); } { info := type_info(VkCommandPoolCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandPoolCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandPoolCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandPoolCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandPoolCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCommandPoolCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandPoolCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndex"; assert(it.offset_in_bytes == 20, "VkCommandPoolCreateInfo.queueFamilyIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandPoolCreateInfo.queueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandPoolCreateInfo) == 24, "VkCommandPoolCreateInfo has size % instead of 24", size_of(VkCommandPoolCreateInfo)); } { info := type_info(VkCommandBufferAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "commandPool"; assert(it.offset_in_bytes == 16, "VkCommandBufferAllocateInfo.commandPool has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferAllocateInfo.commandPool has unexpected size % instead of 8", it.type.runtime_size); case "level"; assert(it.offset_in_bytes == 24, "VkCommandBufferAllocateInfo.level has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferAllocateInfo.level has unexpected size % instead of 4", it.type.runtime_size); case "commandBufferCount"; assert(it.offset_in_bytes == 28, "VkCommandBufferAllocateInfo.commandBufferCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferAllocateInfo.commandBufferCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandBufferAllocateInfo) == 32, "VkCommandBufferAllocateInfo has size % instead of 32", size_of(VkCommandBufferAllocateInfo)); } { info := type_info(VkCommandBufferInheritanceInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferInheritanceInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferInheritanceInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "renderPass"; assert(it.offset_in_bytes == 16, "VkCommandBufferInheritanceInfo.renderPass has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceInfo.renderPass has unexpected size % instead of 8", it.type.runtime_size); case "subpass"; assert(it.offset_in_bytes == 24, "VkCommandBufferInheritanceInfo.subpass has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceInfo.subpass has unexpected size % instead of 4", it.type.runtime_size); case "framebuffer"; assert(it.offset_in_bytes == 32, "VkCommandBufferInheritanceInfo.framebuffer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceInfo.framebuffer has unexpected size % instead of 8", it.type.runtime_size); case "occlusionQueryEnable"; assert(it.offset_in_bytes == 40, "VkCommandBufferInheritanceInfo.occlusionQueryEnable has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceInfo.occlusionQueryEnable has unexpected size % instead of 4", it.type.runtime_size); case "queryFlags"; assert(it.offset_in_bytes == 44, "VkCommandBufferInheritanceInfo.queryFlags has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceInfo.queryFlags has unexpected size % instead of 4", it.type.runtime_size); case "pipelineStatistics"; assert(it.offset_in_bytes == 48, "VkCommandBufferInheritanceInfo.pipelineStatistics has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceInfo.pipelineStatistics has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandBufferInheritanceInfo) == 56, "VkCommandBufferInheritanceInfo has size % instead of 56", size_of(VkCommandBufferInheritanceInfo)); } { info := type_info(VkCommandBufferBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCommandBufferBeginInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferBeginInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "pInheritanceInfo"; assert(it.offset_in_bytes == 24, "VkCommandBufferBeginInfo.pInheritanceInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferBeginInfo.pInheritanceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCommandBufferBeginInfo) == 32, "VkCommandBufferBeginInfo has size % instead of 32", size_of(VkCommandBufferBeginInfo)); } { info := type_info(VkBufferCopy); for info.members { if it.name == { case "srcOffset"; assert(it.offset_in_bytes == 0, "VkBufferCopy.srcOffset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy.srcOffset has unexpected size % instead of 8", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 8, "VkBufferCopy.dstOffset has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy.dstOffset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkBufferCopy.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferCopy) == 24, "VkBufferCopy has size % instead of 24", size_of(VkBufferCopy)); } { info := type_info(VkImageSubresourceLayers); for info.members { if it.name == { case "aspectMask"; assert(it.offset_in_bytes == 0, "VkImageSubresourceLayers.aspectMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceLayers.aspectMask has unexpected size % instead of 4", it.type.runtime_size); case "mipLevel"; assert(it.offset_in_bytes == 4, "VkImageSubresourceLayers.mipLevel has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceLayers.mipLevel has unexpected size % instead of 4", it.type.runtime_size); case "baseArrayLayer"; assert(it.offset_in_bytes == 8, "VkImageSubresourceLayers.baseArrayLayer has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceLayers.baseArrayLayer has unexpected size % instead of 4", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 12, "VkImageSubresourceLayers.layerCount has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresourceLayers.layerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageSubresourceLayers) == 16, "VkImageSubresourceLayers has size % instead of 16", size_of(VkImageSubresourceLayers)); } { info := type_info(VkBufferImageCopy); for info.members { if it.name == { case "bufferOffset"; assert(it.offset_in_bytes == 0, "VkBufferImageCopy.bufferOffset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferImageCopy.bufferOffset has unexpected size % instead of 8", it.type.runtime_size); case "bufferRowLength"; assert(it.offset_in_bytes == 8, "VkBufferImageCopy.bufferRowLength has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferImageCopy.bufferRowLength has unexpected size % instead of 4", it.type.runtime_size); case "bufferImageHeight"; assert(it.offset_in_bytes == 12, "VkBufferImageCopy.bufferImageHeight has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferImageCopy.bufferImageHeight has unexpected size % instead of 4", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 16, "VkBufferImageCopy.imageSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkBufferImageCopy.imageSubresource has unexpected size % instead of 16", it.type.runtime_size); case "imageOffset"; assert(it.offset_in_bytes == 32, "VkBufferImageCopy.imageOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkBufferImageCopy.imageOffset has unexpected size % instead of 12", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 44, "VkBufferImageCopy.imageExtent has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkBufferImageCopy.imageExtent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkBufferImageCopy) == 56, "VkBufferImageCopy has size % instead of 56", size_of(VkBufferImageCopy)); } { info := type_info(VkClearColorValue); for info.members { if it.name == { case "_float32"; assert(it.offset_in_bytes == 0, "VkClearColorValue._float32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearColorValue._float32 has unexpected size % instead of 16", it.type.runtime_size); case "int32"; assert(it.offset_in_bytes == 0, "VkClearColorValue.int32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearColorValue.int32 has unexpected size % instead of 16", it.type.runtime_size); case "uint32"; assert(it.offset_in_bytes == 0, "VkClearColorValue.uint32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearColorValue.uint32 has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkClearColorValue) == 16, "VkClearColorValue has size % instead of 16", size_of(VkClearColorValue)); } { info := type_info(VkClearDepthStencilValue); for info.members { if it.name == { case "depth"; assert(it.offset_in_bytes == 0, "VkClearDepthStencilValue.depth has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearDepthStencilValue.depth has unexpected size % instead of 4", it.type.runtime_size); case "stencil"; assert(it.offset_in_bytes == 4, "VkClearDepthStencilValue.stencil has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearDepthStencilValue.stencil has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClearDepthStencilValue) == 8, "VkClearDepthStencilValue has size % instead of 8", size_of(VkClearDepthStencilValue)); } { info := type_info(VkClearValue); for info.members { if it.name == { case "color"; assert(it.offset_in_bytes == 0, "VkClearValue.color has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearValue.color has unexpected size % instead of 16", it.type.runtime_size); case "depthStencil"; assert(it.offset_in_bytes == 0, "VkClearValue.depthStencil has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClearValue.depthStencil has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClearValue) == 16, "VkClearValue has size % instead of 16", size_of(VkClearValue)); } { info := type_info(VkClearAttachment); for info.members { if it.name == { case "aspectMask"; assert(it.offset_in_bytes == 0, "VkClearAttachment.aspectMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearAttachment.aspectMask has unexpected size % instead of 4", it.type.runtime_size); case "colorAttachment"; assert(it.offset_in_bytes == 4, "VkClearAttachment.colorAttachment has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearAttachment.colorAttachment has unexpected size % instead of 4", it.type.runtime_size); case "clearValue"; assert(it.offset_in_bytes == 8, "VkClearAttachment.clearValue has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearAttachment.clearValue has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkClearAttachment) == 24, "VkClearAttachment has size % instead of 24", size_of(VkClearAttachment)); } { info := type_info(VkClearRect); for info.members { if it.name == { case "rect"; assert(it.offset_in_bytes == 0, "VkClearRect.rect has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClearRect.rect has unexpected size % instead of 16", it.type.runtime_size); case "baseArrayLayer"; assert(it.offset_in_bytes == 16, "VkClearRect.baseArrayLayer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearRect.baseArrayLayer has unexpected size % instead of 4", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 20, "VkClearRect.layerCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClearRect.layerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClearRect) == 24, "VkClearRect has size % instead of 24", size_of(VkClearRect)); } { info := type_info(VkImageBlit); for info.members { if it.name == { case "srcSubresource"; assert(it.offset_in_bytes == 0, "VkImageBlit.srcSubresource has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageBlit.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffsets"; assert(it.offset_in_bytes == 16, "VkImageBlit.srcOffsets has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkImageBlit.srcOffsets has unexpected size % instead of 24", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 40, "VkImageBlit.dstSubresource has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageBlit.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffsets"; assert(it.offset_in_bytes == 56, "VkImageBlit.dstOffsets has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkImageBlit.dstOffsets has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkImageBlit) == 80, "VkImageBlit has size % instead of 80", size_of(VkImageBlit)); } { info := type_info(VkImageCopy); for info.members { if it.name == { case "srcSubresource"; assert(it.offset_in_bytes == 0, "VkImageCopy.srcSubresource has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageCopy.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffset"; assert(it.offset_in_bytes == 16, "VkImageCopy.srcOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy.srcOffset has unexpected size % instead of 12", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 28, "VkImageCopy.dstSubresource has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageCopy.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 44, "VkImageCopy.dstOffset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy.dstOffset has unexpected size % instead of 12", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 56, "VkImageCopy.extent has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy.extent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageCopy) == 68, "VkImageCopy has size % instead of 68", size_of(VkImageCopy)); } { info := type_info(VkImageResolve); for info.members { if it.name == { case "srcSubresource"; assert(it.offset_in_bytes == 0, "VkImageResolve.srcSubresource has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageResolve.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffset"; assert(it.offset_in_bytes == 16, "VkImageResolve.srcOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve.srcOffset has unexpected size % instead of 12", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 28, "VkImageResolve.dstSubresource has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageResolve.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 44, "VkImageResolve.dstOffset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve.dstOffset has unexpected size % instead of 12", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 56, "VkImageResolve.extent has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve.extent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageResolve) == 68, "VkImageResolve has size % instead of 68", size_of(VkImageResolve)); } { info := type_info(VkRenderPassBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "renderPass"; assert(it.offset_in_bytes == 16, "VkRenderPassBeginInfo.renderPass has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassBeginInfo.renderPass has unexpected size % instead of 8", it.type.runtime_size); case "framebuffer"; assert(it.offset_in_bytes == 24, "VkRenderPassBeginInfo.framebuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassBeginInfo.framebuffer has unexpected size % instead of 8", it.type.runtime_size); case "renderArea"; assert(it.offset_in_bytes == 32, "VkRenderPassBeginInfo.renderArea has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkRenderPassBeginInfo.renderArea has unexpected size % instead of 16", it.type.runtime_size); case "clearValueCount"; assert(it.offset_in_bytes == 48, "VkRenderPassBeginInfo.clearValueCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassBeginInfo.clearValueCount has unexpected size % instead of 4", it.type.runtime_size); case "pClearValues"; assert(it.offset_in_bytes == 56, "VkRenderPassBeginInfo.pClearValues has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassBeginInfo.pClearValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassBeginInfo) == 64, "VkRenderPassBeginInfo has size % instead of 64", size_of(VkRenderPassBeginInfo)); } { info := type_info(VkPhysicalDeviceSubgroupProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubgroupProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubgroupProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubgroupProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subgroupSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubgroupProperties.subgroupSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupProperties.subgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "supportedStages"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSubgroupProperties.supportedStages has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupProperties.supportedStages has unexpected size % instead of 4", it.type.runtime_size); case "supportedOperations"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceSubgroupProperties.supportedOperations has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupProperties.supportedOperations has unexpected size % instead of 4", it.type.runtime_size); case "quadOperationsInAllStages"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceSubgroupProperties.quadOperationsInAllStages has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupProperties.quadOperationsInAllStages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubgroupProperties) == 32, "VkPhysicalDeviceSubgroupProperties has size % instead of 32", size_of(VkPhysicalDeviceSubgroupProperties)); } { info := type_info(VkBindBufferMemoryInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindBufferMemoryInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindBufferMemoryInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindBufferMemoryInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkBindBufferMemoryInfo.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkBindBufferMemoryInfo.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryInfo.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 32, "VkBindBufferMemoryInfo.memoryOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryInfo.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindBufferMemoryInfo) == 40, "VkBindBufferMemoryInfo has size % instead of 40", size_of(VkBindBufferMemoryInfo)); } { info := type_info(VkBindImageMemoryInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindImageMemoryInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemoryInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindImageMemoryInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkBindImageMemoryInfo.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkBindImageMemoryInfo.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryInfo.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 32, "VkBindImageMemoryInfo.memoryOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryInfo.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindImageMemoryInfo) == 40, "VkBindImageMemoryInfo has size % instead of 40", size_of(VkBindImageMemoryInfo)); } { info := type_info(VkPhysicalDevice16BitStorageFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevice16BitStorageFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice16BitStorageFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevice16BitStorageFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevice16BitStorageFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "storageBuffer16BitAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDevice16BitStorageFeatures.storageBuffer16BitAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice16BitStorageFeatures.storageBuffer16BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "uniformAndStorageBuffer16BitAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDevice16BitStorageFeatures.uniformAndStorageBuffer16BitAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice16BitStorageFeatures.uniformAndStorageBuffer16BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "storagePushConstant16"; assert(it.offset_in_bytes == 24, "VkPhysicalDevice16BitStorageFeatures.storagePushConstant16 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice16BitStorageFeatures.storagePushConstant16 has unexpected size % instead of 4", it.type.runtime_size); case "storageInputOutput16"; assert(it.offset_in_bytes == 28, "VkPhysicalDevice16BitStorageFeatures.storageInputOutput16 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice16BitStorageFeatures.storageInputOutput16 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevice16BitStorageFeatures) == 32, "VkPhysicalDevice16BitStorageFeatures has size % instead of 32", size_of(VkPhysicalDevice16BitStorageFeatures)); } { info := type_info(VkMemoryDedicatedRequirements); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryDedicatedRequirements.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryDedicatedRequirements.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryDedicatedRequirements.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryDedicatedRequirements.pNext has unexpected size % instead of 8", it.type.runtime_size); case "prefersDedicatedAllocation"; assert(it.offset_in_bytes == 16, "VkMemoryDedicatedRequirements.prefersDedicatedAllocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryDedicatedRequirements.prefersDedicatedAllocation has unexpected size % instead of 4", it.type.runtime_size); case "requiresDedicatedAllocation"; assert(it.offset_in_bytes == 20, "VkMemoryDedicatedRequirements.requiresDedicatedAllocation has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryDedicatedRequirements.requiresDedicatedAllocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryDedicatedRequirements) == 24, "VkMemoryDedicatedRequirements has size % instead of 24", size_of(VkMemoryDedicatedRequirements)); } { info := type_info(VkMemoryDedicatedAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryDedicatedAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryDedicatedAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryDedicatedAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryDedicatedAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkMemoryDedicatedAllocateInfo.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryDedicatedAllocateInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 24, "VkMemoryDedicatedAllocateInfo.buffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryDedicatedAllocateInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryDedicatedAllocateInfo) == 32, "VkMemoryDedicatedAllocateInfo has size % instead of 32", size_of(VkMemoryDedicatedAllocateInfo)); } { info := type_info(VkMemoryAllocateFlagsInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryAllocateFlagsInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryAllocateFlagsInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryAllocateFlagsInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryAllocateFlagsInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkMemoryAllocateFlagsInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryAllocateFlagsInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "deviceMask"; assert(it.offset_in_bytes == 20, "VkMemoryAllocateFlagsInfo.deviceMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryAllocateFlagsInfo.deviceMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryAllocateFlagsInfo) == 24, "VkMemoryAllocateFlagsInfo has size % instead of 24", size_of(VkMemoryAllocateFlagsInfo)); } { info := type_info(VkDeviceGroupRenderPassBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupRenderPassBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupRenderPassBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupRenderPassBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupRenderPassBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceMask"; assert(it.offset_in_bytes == 16, "VkDeviceGroupRenderPassBeginInfo.deviceMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupRenderPassBeginInfo.deviceMask has unexpected size % instead of 4", it.type.runtime_size); case "deviceRenderAreaCount"; assert(it.offset_in_bytes == 20, "VkDeviceGroupRenderPassBeginInfo.deviceRenderAreaCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupRenderPassBeginInfo.deviceRenderAreaCount has unexpected size % instead of 4", it.type.runtime_size); case "pDeviceRenderAreas"; assert(it.offset_in_bytes == 24, "VkDeviceGroupRenderPassBeginInfo.pDeviceRenderAreas has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupRenderPassBeginInfo.pDeviceRenderAreas has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceGroupRenderPassBeginInfo) == 32, "VkDeviceGroupRenderPassBeginInfo has size % instead of 32", size_of(VkDeviceGroupRenderPassBeginInfo)); } { info := type_info(VkDeviceGroupCommandBufferBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupCommandBufferBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupCommandBufferBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupCommandBufferBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupCommandBufferBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceMask"; assert(it.offset_in_bytes == 16, "VkDeviceGroupCommandBufferBeginInfo.deviceMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupCommandBufferBeginInfo.deviceMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceGroupCommandBufferBeginInfo) == 24, "VkDeviceGroupCommandBufferBeginInfo has size % instead of 24", size_of(VkDeviceGroupCommandBufferBeginInfo)); } { info := type_info(VkDeviceGroupSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "waitSemaphoreCount"; assert(it.offset_in_bytes == 16, "VkDeviceGroupSubmitInfo.waitSemaphoreCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSubmitInfo.waitSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphoreDeviceIndices"; assert(it.offset_in_bytes == 24, "VkDeviceGroupSubmitInfo.pWaitSemaphoreDeviceIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupSubmitInfo.pWaitSemaphoreDeviceIndices has unexpected size % instead of 8", it.type.runtime_size); case "commandBufferCount"; assert(it.offset_in_bytes == 32, "VkDeviceGroupSubmitInfo.commandBufferCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSubmitInfo.commandBufferCount has unexpected size % instead of 4", it.type.runtime_size); case "pCommandBufferDeviceMasks"; assert(it.offset_in_bytes == 40, "VkDeviceGroupSubmitInfo.pCommandBufferDeviceMasks has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupSubmitInfo.pCommandBufferDeviceMasks has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphoreCount"; assert(it.offset_in_bytes == 48, "VkDeviceGroupSubmitInfo.signalSemaphoreCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSubmitInfo.signalSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pSignalSemaphoreDeviceIndices"; assert(it.offset_in_bytes == 56, "VkDeviceGroupSubmitInfo.pSignalSemaphoreDeviceIndices has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupSubmitInfo.pSignalSemaphoreDeviceIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceGroupSubmitInfo) == 64, "VkDeviceGroupSubmitInfo has size % instead of 64", size_of(VkDeviceGroupSubmitInfo)); } { info := type_info(VkDeviceGroupBindSparseInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupBindSparseInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupBindSparseInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupBindSparseInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupBindSparseInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "resourceDeviceIndex"; assert(it.offset_in_bytes == 16, "VkDeviceGroupBindSparseInfo.resourceDeviceIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupBindSparseInfo.resourceDeviceIndex has unexpected size % instead of 4", it.type.runtime_size); case "memoryDeviceIndex"; assert(it.offset_in_bytes == 20, "VkDeviceGroupBindSparseInfo.memoryDeviceIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupBindSparseInfo.memoryDeviceIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceGroupBindSparseInfo) == 24, "VkDeviceGroupBindSparseInfo has size % instead of 24", size_of(VkDeviceGroupBindSparseInfo)); } { info := type_info(VkBindBufferMemoryDeviceGroupInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindBufferMemoryDeviceGroupInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindBufferMemoryDeviceGroupInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindBufferMemoryDeviceGroupInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryDeviceGroupInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceIndexCount"; assert(it.offset_in_bytes == 16, "VkBindBufferMemoryDeviceGroupInfo.deviceIndexCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindBufferMemoryDeviceGroupInfo.deviceIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pDeviceIndices"; assert(it.offset_in_bytes == 24, "VkBindBufferMemoryDeviceGroupInfo.pDeviceIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindBufferMemoryDeviceGroupInfo.pDeviceIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindBufferMemoryDeviceGroupInfo) == 32, "VkBindBufferMemoryDeviceGroupInfo has size % instead of 32", size_of(VkBindBufferMemoryDeviceGroupInfo)); } { info := type_info(VkBindImageMemoryDeviceGroupInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindImageMemoryDeviceGroupInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemoryDeviceGroupInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindImageMemoryDeviceGroupInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryDeviceGroupInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceIndexCount"; assert(it.offset_in_bytes == 16, "VkBindImageMemoryDeviceGroupInfo.deviceIndexCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemoryDeviceGroupInfo.deviceIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pDeviceIndices"; assert(it.offset_in_bytes == 24, "VkBindImageMemoryDeviceGroupInfo.pDeviceIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryDeviceGroupInfo.pDeviceIndices has unexpected size % instead of 8", it.type.runtime_size); case "splitInstanceBindRegionCount"; assert(it.offset_in_bytes == 32, "VkBindImageMemoryDeviceGroupInfo.splitInstanceBindRegionCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemoryDeviceGroupInfo.splitInstanceBindRegionCount has unexpected size % instead of 4", it.type.runtime_size); case "pSplitInstanceBindRegions"; assert(it.offset_in_bytes == 40, "VkBindImageMemoryDeviceGroupInfo.pSplitInstanceBindRegions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemoryDeviceGroupInfo.pSplitInstanceBindRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindImageMemoryDeviceGroupInfo) == 48, "VkBindImageMemoryDeviceGroupInfo has size % instead of 48", size_of(VkBindImageMemoryDeviceGroupInfo)); } { info := type_info(VkPhysicalDeviceGroupProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceGroupProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGroupProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceGroupProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceGroupProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "physicalDeviceCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceGroupProperties.physicalDeviceCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGroupProperties.physicalDeviceCount has unexpected size % instead of 4", it.type.runtime_size); case "physicalDevices"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceGroupProperties.physicalDevices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceGroupProperties.physicalDevices has unexpected size % instead of 256", it.type.runtime_size); case "subsetAllocation"; assert(it.offset_in_bytes == 280, "VkPhysicalDeviceGroupProperties.subsetAllocation has unexpected offset % instead of 280", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGroupProperties.subsetAllocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceGroupProperties) == 288, "VkPhysicalDeviceGroupProperties has size % instead of 288", size_of(VkPhysicalDeviceGroupProperties)); } { info := type_info(VkDeviceGroupDeviceCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupDeviceCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupDeviceCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupDeviceCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupDeviceCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "physicalDeviceCount"; assert(it.offset_in_bytes == 16, "VkDeviceGroupDeviceCreateInfo.physicalDeviceCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupDeviceCreateInfo.physicalDeviceCount has unexpected size % instead of 4", it.type.runtime_size); case "pPhysicalDevices"; assert(it.offset_in_bytes == 24, "VkDeviceGroupDeviceCreateInfo.pPhysicalDevices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupDeviceCreateInfo.pPhysicalDevices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceGroupDeviceCreateInfo) == 32, "VkDeviceGroupDeviceCreateInfo has size % instead of 32", size_of(VkDeviceGroupDeviceCreateInfo)); } { info := type_info(VkBufferMemoryRequirementsInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferMemoryRequirementsInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryRequirementsInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferMemoryRequirementsInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryRequirementsInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkBufferMemoryRequirementsInfo2.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryRequirementsInfo2.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferMemoryRequirementsInfo2) == 24, "VkBufferMemoryRequirementsInfo2 has size % instead of 24", size_of(VkBufferMemoryRequirementsInfo2)); } { info := type_info(VkImageMemoryRequirementsInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageMemoryRequirementsInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryRequirementsInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageMemoryRequirementsInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryRequirementsInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkImageMemoryRequirementsInfo2.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryRequirementsInfo2.image has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageMemoryRequirementsInfo2) == 24, "VkImageMemoryRequirementsInfo2 has size % instead of 24", size_of(VkImageMemoryRequirementsInfo2)); } { info := type_info(VkImageSparseMemoryRequirementsInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageSparseMemoryRequirementsInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSparseMemoryRequirementsInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageSparseMemoryRequirementsInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageSparseMemoryRequirementsInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkImageSparseMemoryRequirementsInfo2.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageSparseMemoryRequirementsInfo2.image has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageSparseMemoryRequirementsInfo2) == 24, "VkImageSparseMemoryRequirementsInfo2 has size % instead of 24", size_of(VkImageSparseMemoryRequirementsInfo2)); } { info := type_info(VkMemoryRequirements2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryRequirements2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryRequirements2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryRequirements2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryRequirements2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryRequirements"; assert(it.offset_in_bytes == 16, "VkMemoryRequirements2.memoryRequirements has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkMemoryRequirements2.memoryRequirements has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkMemoryRequirements2) == 40, "VkMemoryRequirements2 has size % instead of 40", size_of(VkMemoryRequirements2)); } { info := type_info(VkSparseImageMemoryRequirements2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSparseImageMemoryRequirements2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageMemoryRequirements2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSparseImageMemoryRequirements2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageMemoryRequirements2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryRequirements"; assert(it.offset_in_bytes == 16, "VkSparseImageMemoryRequirements2.memoryRequirements has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkSparseImageMemoryRequirements2.memoryRequirements has unexpected size % instead of 48", it.type.runtime_size); } } assert(size_of(VkSparseImageMemoryRequirements2) == 64, "VkSparseImageMemoryRequirements2 has size % instead of 64", size_of(VkSparseImageMemoryRequirements2)); } { info := type_info(VkPhysicalDeviceFeatures2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFeatures2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFeatures2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFeatures2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFeatures2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "features"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFeatures2.features has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 220, "VkPhysicalDeviceFeatures2.features has unexpected size % instead of 220", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFeatures2) == 240, "VkPhysicalDeviceFeatures2 has size % instead of 240", size_of(VkPhysicalDeviceFeatures2)); } { info := type_info(VkPhysicalDeviceProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "properties"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProperties2.properties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 824, "VkPhysicalDeviceProperties2.properties has unexpected size % instead of 824", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProperties2) == 840, "VkPhysicalDeviceProperties2 has size % instead of 840", size_of(VkPhysicalDeviceProperties2)); } { info := type_info(VkFormatProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFormatProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFormatProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFormatProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFormatProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "formatProperties"; assert(it.offset_in_bytes == 16, "VkFormatProperties2.formatProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkFormatProperties2.formatProperties has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkFormatProperties2) == 32, "VkFormatProperties2 has size % instead of 32", size_of(VkFormatProperties2)); } { info := type_info(VkImageFormatProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageFormatProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageFormatProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageFormatProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageFormatProperties"; assert(it.offset_in_bytes == 16, "VkImageFormatProperties2.imageFormatProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkImageFormatProperties2.imageFormatProperties has unexpected size % instead of 32", it.type.runtime_size); } } assert(size_of(VkImageFormatProperties2) == 48, "VkImageFormatProperties2 has size % instead of 48", size_of(VkImageFormatProperties2)); } { info := type_info(VkPhysicalDeviceImageFormatInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageFormatInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageFormatInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageFormatInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageFormatInfo2.format has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.format has unexpected size % instead of 4", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceImageFormatInfo2.type has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.type has unexpected size % instead of 4", it.type.runtime_size); case "tiling"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceImageFormatInfo2.tiling has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.tiling has unexpected size % instead of 4", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceImageFormatInfo2.usage has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.usage has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceImageFormatInfo2.flags has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageFormatInfo2.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageFormatInfo2) == 40, "VkPhysicalDeviceImageFormatInfo2 has size % instead of 40", size_of(VkPhysicalDeviceImageFormatInfo2)); } { info := type_info(VkQueueFamilyProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queueFamilyProperties"; assert(it.offset_in_bytes == 16, "VkQueueFamilyProperties2.queueFamilyProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkQueueFamilyProperties2.queueFamilyProperties has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkQueueFamilyProperties2) == 40, "VkQueueFamilyProperties2 has size % instead of 40", size_of(VkQueueFamilyProperties2)); } { info := type_info(VkPhysicalDeviceMemoryProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMemoryProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryProperties"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMemoryProperties2.memoryProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 520, "VkPhysicalDeviceMemoryProperties2.memoryProperties has unexpected size % instead of 520", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryProperties2) == 536, "VkPhysicalDeviceMemoryProperties2 has size % instead of 536", size_of(VkPhysicalDeviceMemoryProperties2)); } { info := type_info(VkSparseImageFormatProperties2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSparseImageFormatProperties2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSparseImageFormatProperties2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSparseImageFormatProperties2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSparseImageFormatProperties2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "properties"; assert(it.offset_in_bytes == 16, "VkSparseImageFormatProperties2.properties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkSparseImageFormatProperties2.properties has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkSparseImageFormatProperties2) == 40, "VkSparseImageFormatProperties2 has size % instead of 40", size_of(VkSparseImageFormatProperties2)); } { info := type_info(VkPhysicalDeviceSparseImageFormatInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSparseImageFormatInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSparseImageFormatInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSparseImageFormatInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSparseImageFormatInfo2.format has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.format has unexpected size % instead of 4", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSparseImageFormatInfo2.type has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.type has unexpected size % instead of 4", it.type.runtime_size); case "samples"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceSparseImageFormatInfo2.samples has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.samples has unexpected size % instead of 4", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceSparseImageFormatInfo2.usage has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.usage has unexpected size % instead of 4", it.type.runtime_size); case "tiling"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceSparseImageFormatInfo2.tiling has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSparseImageFormatInfo2.tiling has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSparseImageFormatInfo2) == 40, "VkPhysicalDeviceSparseImageFormatInfo2 has size % instead of 40", size_of(VkPhysicalDeviceSparseImageFormatInfo2)); } { info := type_info(VkPhysicalDevicePointClippingProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePointClippingProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePointClippingProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePointClippingProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePointClippingProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pointClippingBehavior"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePointClippingProperties.pointClippingBehavior has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePointClippingProperties.pointClippingBehavior has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePointClippingProperties) == 24, "VkPhysicalDevicePointClippingProperties has size % instead of 24", size_of(VkPhysicalDevicePointClippingProperties)); } { info := type_info(VkInputAttachmentAspectReference); for info.members { if it.name == { case "subpass"; assert(it.offset_in_bytes == 0, "VkInputAttachmentAspectReference.subpass has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInputAttachmentAspectReference.subpass has unexpected size % instead of 4", it.type.runtime_size); case "inputAttachmentIndex"; assert(it.offset_in_bytes == 4, "VkInputAttachmentAspectReference.inputAttachmentIndex has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInputAttachmentAspectReference.inputAttachmentIndex has unexpected size % instead of 4", it.type.runtime_size); case "aspectMask"; assert(it.offset_in_bytes == 8, "VkInputAttachmentAspectReference.aspectMask has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInputAttachmentAspectReference.aspectMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkInputAttachmentAspectReference) == 12, "VkInputAttachmentAspectReference has size % instead of 12", size_of(VkInputAttachmentAspectReference)); } { info := type_info(VkRenderPassInputAttachmentAspectCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassInputAttachmentAspectCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassInputAttachmentAspectCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassInputAttachmentAspectCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassInputAttachmentAspectCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "aspectReferenceCount"; assert(it.offset_in_bytes == 16, "VkRenderPassInputAttachmentAspectCreateInfo.aspectReferenceCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassInputAttachmentAspectCreateInfo.aspectReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "pAspectReferences"; assert(it.offset_in_bytes == 24, "VkRenderPassInputAttachmentAspectCreateInfo.pAspectReferences has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassInputAttachmentAspectCreateInfo.pAspectReferences has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassInputAttachmentAspectCreateInfo) == 32, "VkRenderPassInputAttachmentAspectCreateInfo has size % instead of 32", size_of(VkRenderPassInputAttachmentAspectCreateInfo)); } { info := type_info(VkImageViewUsageCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewUsageCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewUsageCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewUsageCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewUsageCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 16, "VkImageViewUsageCreateInfo.usage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewUsageCreateInfo.usage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageViewUsageCreateInfo) == 24, "VkImageViewUsageCreateInfo has size % instead of 24", size_of(VkImageViewUsageCreateInfo)); } { info := type_info(VkPipelineTessellationDomainOriginStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineTessellationDomainOriginStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineTessellationDomainOriginStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineTessellationDomainOriginStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineTessellationDomainOriginStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "domainOrigin"; assert(it.offset_in_bytes == 16, "VkPipelineTessellationDomainOriginStateCreateInfo.domainOrigin has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineTessellationDomainOriginStateCreateInfo.domainOrigin has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineTessellationDomainOriginStateCreateInfo) == 24, "VkPipelineTessellationDomainOriginStateCreateInfo has size % instead of 24", size_of(VkPipelineTessellationDomainOriginStateCreateInfo)); } { info := type_info(VkRenderPassMultiviewCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassMultiviewCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassMultiviewCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassMultiviewCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassMultiviewCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subpassCount"; assert(it.offset_in_bytes == 16, "VkRenderPassMultiviewCreateInfo.subpassCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassMultiviewCreateInfo.subpassCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewMasks"; assert(it.offset_in_bytes == 24, "VkRenderPassMultiviewCreateInfo.pViewMasks has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassMultiviewCreateInfo.pViewMasks has unexpected size % instead of 8", it.type.runtime_size); case "dependencyCount"; assert(it.offset_in_bytes == 32, "VkRenderPassMultiviewCreateInfo.dependencyCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassMultiviewCreateInfo.dependencyCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewOffsets"; assert(it.offset_in_bytes == 40, "VkRenderPassMultiviewCreateInfo.pViewOffsets has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassMultiviewCreateInfo.pViewOffsets has unexpected size % instead of 8", it.type.runtime_size); case "correlationMaskCount"; assert(it.offset_in_bytes == 48, "VkRenderPassMultiviewCreateInfo.correlationMaskCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassMultiviewCreateInfo.correlationMaskCount has unexpected size % instead of 4", it.type.runtime_size); case "pCorrelationMasks"; assert(it.offset_in_bytes == 56, "VkRenderPassMultiviewCreateInfo.pCorrelationMasks has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassMultiviewCreateInfo.pCorrelationMasks has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassMultiviewCreateInfo) == 64, "VkRenderPassMultiviewCreateInfo has size % instead of 64", size_of(VkRenderPassMultiviewCreateInfo)); } { info := type_info(VkPhysicalDeviceMultiviewFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiviewFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiviewFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiviewFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multiview"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiviewFeatures.multiview has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewFeatures.multiview has unexpected size % instead of 4", it.type.runtime_size); case "multiviewGeometryShader"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMultiviewFeatures.multiviewGeometryShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewFeatures.multiviewGeometryShader has unexpected size % instead of 4", it.type.runtime_size); case "multiviewTessellationShader"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMultiviewFeatures.multiviewTessellationShader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewFeatures.multiviewTessellationShader has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiviewFeatures) == 32, "VkPhysicalDeviceMultiviewFeatures has size % instead of 32", size_of(VkPhysicalDeviceMultiviewFeatures)); } { info := type_info(VkPhysicalDeviceMultiviewProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiviewProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiviewProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiviewProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxMultiviewViewCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiviewProperties.maxMultiviewViewCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewProperties.maxMultiviewViewCount has unexpected size % instead of 4", it.type.runtime_size); case "maxMultiviewInstanceIndex"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMultiviewProperties.maxMultiviewInstanceIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewProperties.maxMultiviewInstanceIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiviewProperties) == 24, "VkPhysicalDeviceMultiviewProperties has size % instead of 24", size_of(VkPhysicalDeviceMultiviewProperties)); } { info := type_info(VkPhysicalDeviceVariablePointersFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVariablePointersFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVariablePointersFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVariablePointersFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVariablePointersFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "variablePointersStorageBuffer"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVariablePointersFeatures.variablePointersStorageBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVariablePointersFeatures.variablePointersStorageBuffer has unexpected size % instead of 4", it.type.runtime_size); case "variablePointers"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVariablePointersFeatures.variablePointers has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVariablePointersFeatures.variablePointers has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVariablePointersFeatures) == 24, "VkPhysicalDeviceVariablePointersFeatures has size % instead of 24", size_of(VkPhysicalDeviceVariablePointersFeatures)); } { info := type_info(VkPhysicalDeviceProtectedMemoryFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProtectedMemoryFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProtectedMemoryFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProtectedMemoryFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceProtectedMemoryFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "protectedMemory"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProtectedMemoryFeatures.protectedMemory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProtectedMemoryFeatures.protectedMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProtectedMemoryFeatures) == 24, "VkPhysicalDeviceProtectedMemoryFeatures has size % instead of 24", size_of(VkPhysicalDeviceProtectedMemoryFeatures)); } { info := type_info(VkPhysicalDeviceProtectedMemoryProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProtectedMemoryProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProtectedMemoryProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProtectedMemoryProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceProtectedMemoryProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "protectedNoFault"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProtectedMemoryProperties.protectedNoFault has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProtectedMemoryProperties.protectedNoFault has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProtectedMemoryProperties) == 24, "VkPhysicalDeviceProtectedMemoryProperties has size % instead of 24", size_of(VkPhysicalDeviceProtectedMemoryProperties)); } { info := type_info(VkDeviceQueueInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceQueueInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceQueueInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceQueueInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceQueueInfo2.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueInfo2.flags has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndex"; assert(it.offset_in_bytes == 20, "VkDeviceQueueInfo2.queueFamilyIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueInfo2.queueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "queueIndex"; assert(it.offset_in_bytes == 24, "VkDeviceQueueInfo2.queueIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueInfo2.queueIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceQueueInfo2) == 32, "VkDeviceQueueInfo2 has size % instead of 32", size_of(VkDeviceQueueInfo2)); } { info := type_info(VkProtectedSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkProtectedSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkProtectedSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkProtectedSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkProtectedSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "protectedSubmit"; assert(it.offset_in_bytes == 16, "VkProtectedSubmitInfo.protectedSubmit has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkProtectedSubmitInfo.protectedSubmit has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkProtectedSubmitInfo) == 24, "VkProtectedSubmitInfo has size % instead of 24", size_of(VkProtectedSubmitInfo)); } { info := type_info(VkSamplerYcbcrConversionCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerYcbcrConversionCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerYcbcrConversionCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerYcbcrConversionCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 16, "VkSamplerYcbcrConversionCreateInfo.format has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.format has unexpected size % instead of 4", it.type.runtime_size); case "ycbcrModel"; assert(it.offset_in_bytes == 20, "VkSamplerYcbcrConversionCreateInfo.ycbcrModel has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.ycbcrModel has unexpected size % instead of 4", it.type.runtime_size); case "ycbcrRange"; assert(it.offset_in_bytes == 24, "VkSamplerYcbcrConversionCreateInfo.ycbcrRange has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.ycbcrRange has unexpected size % instead of 4", it.type.runtime_size); case "components"; assert(it.offset_in_bytes == 28, "VkSamplerYcbcrConversionCreateInfo.components has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkSamplerYcbcrConversionCreateInfo.components has unexpected size % instead of 16", it.type.runtime_size); case "xChromaOffset"; assert(it.offset_in_bytes == 44, "VkSamplerYcbcrConversionCreateInfo.xChromaOffset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.xChromaOffset has unexpected size % instead of 4", it.type.runtime_size); case "yChromaOffset"; assert(it.offset_in_bytes == 48, "VkSamplerYcbcrConversionCreateInfo.yChromaOffset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.yChromaOffset has unexpected size % instead of 4", it.type.runtime_size); case "chromaFilter"; assert(it.offset_in_bytes == 52, "VkSamplerYcbcrConversionCreateInfo.chromaFilter has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.chromaFilter has unexpected size % instead of 4", it.type.runtime_size); case "forceExplicitReconstruction"; assert(it.offset_in_bytes == 56, "VkSamplerYcbcrConversionCreateInfo.forceExplicitReconstruction has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionCreateInfo.forceExplicitReconstruction has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerYcbcrConversionCreateInfo) == 64, "VkSamplerYcbcrConversionCreateInfo has size % instead of 64", size_of(VkSamplerYcbcrConversionCreateInfo)); } { info := type_info(VkSamplerYcbcrConversionInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerYcbcrConversionInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerYcbcrConversionInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerYcbcrConversionInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "conversion"; assert(it.offset_in_bytes == 16, "VkSamplerYcbcrConversionInfo.conversion has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerYcbcrConversionInfo.conversion has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSamplerYcbcrConversionInfo) == 24, "VkSamplerYcbcrConversionInfo has size % instead of 24", size_of(VkSamplerYcbcrConversionInfo)); } { info := type_info(VkBindImagePlaneMemoryInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindImagePlaneMemoryInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImagePlaneMemoryInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindImagePlaneMemoryInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImagePlaneMemoryInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "planeAspect"; assert(it.offset_in_bytes == 16, "VkBindImagePlaneMemoryInfo.planeAspect has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImagePlaneMemoryInfo.planeAspect has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindImagePlaneMemoryInfo) == 24, "VkBindImagePlaneMemoryInfo has size % instead of 24", size_of(VkBindImagePlaneMemoryInfo)); } { info := type_info(VkImagePlaneMemoryRequirementsInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImagePlaneMemoryRequirementsInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImagePlaneMemoryRequirementsInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImagePlaneMemoryRequirementsInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImagePlaneMemoryRequirementsInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "planeAspect"; assert(it.offset_in_bytes == 16, "VkImagePlaneMemoryRequirementsInfo.planeAspect has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImagePlaneMemoryRequirementsInfo.planeAspect has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImagePlaneMemoryRequirementsInfo) == 24, "VkImagePlaneMemoryRequirementsInfo has size % instead of 24", size_of(VkImagePlaneMemoryRequirementsInfo)); } { info := type_info(VkPhysicalDeviceSamplerYcbcrConversionFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "samplerYcbcrConversion"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.samplerYcbcrConversion has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSamplerYcbcrConversionFeatures.samplerYcbcrConversion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSamplerYcbcrConversionFeatures) == 24, "VkPhysicalDeviceSamplerYcbcrConversionFeatures has size % instead of 24", size_of(VkPhysicalDeviceSamplerYcbcrConversionFeatures)); } { info := type_info(VkSamplerYcbcrConversionImageFormatProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerYcbcrConversionImageFormatProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionImageFormatProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerYcbcrConversionImageFormatProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerYcbcrConversionImageFormatProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "combinedImageSamplerDescriptorCount"; assert(it.offset_in_bytes == 16, "VkSamplerYcbcrConversionImageFormatProperties.combinedImageSamplerDescriptorCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionImageFormatProperties.combinedImageSamplerDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerYcbcrConversionImageFormatProperties) == 24, "VkSamplerYcbcrConversionImageFormatProperties has size % instead of 24", size_of(VkSamplerYcbcrConversionImageFormatProperties)); } { info := type_info(VkDescriptorUpdateTemplateEntry); for info.members { if it.name == { case "dstBinding"; assert(it.offset_in_bytes == 0, "VkDescriptorUpdateTemplateEntry.dstBinding has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateEntry.dstBinding has unexpected size % instead of 4", it.type.runtime_size); case "dstArrayElement"; assert(it.offset_in_bytes == 4, "VkDescriptorUpdateTemplateEntry.dstArrayElement has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateEntry.dstArrayElement has unexpected size % instead of 4", it.type.runtime_size); case "descriptorCount"; assert(it.offset_in_bytes == 8, "VkDescriptorUpdateTemplateEntry.descriptorCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateEntry.descriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "descriptorType"; assert(it.offset_in_bytes == 12, "VkDescriptorUpdateTemplateEntry.descriptorType has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateEntry.descriptorType has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 16, "VkDescriptorUpdateTemplateEntry.offset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateEntry.offset has unexpected size % instead of 8", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 24, "VkDescriptorUpdateTemplateEntry.stride has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateEntry.stride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorUpdateTemplateEntry) == 32, "VkDescriptorUpdateTemplateEntry has size % instead of 32", size_of(VkDescriptorUpdateTemplateEntry)); } { info := type_info(VkDescriptorUpdateTemplateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorUpdateTemplateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorUpdateTemplateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDescriptorUpdateTemplateCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "descriptorUpdateEntryCount"; assert(it.offset_in_bytes == 20, "VkDescriptorUpdateTemplateCreateInfo.descriptorUpdateEntryCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.descriptorUpdateEntryCount has unexpected size % instead of 4", it.type.runtime_size); case "pDescriptorUpdateEntries"; assert(it.offset_in_bytes == 24, "VkDescriptorUpdateTemplateCreateInfo.pDescriptorUpdateEntries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateCreateInfo.pDescriptorUpdateEntries has unexpected size % instead of 8", it.type.runtime_size); case "templateType"; assert(it.offset_in_bytes == 32, "VkDescriptorUpdateTemplateCreateInfo.templateType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.templateType has unexpected size % instead of 4", it.type.runtime_size); case "descriptorSetLayout"; assert(it.offset_in_bytes == 40, "VkDescriptorUpdateTemplateCreateInfo.descriptorSetLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateCreateInfo.descriptorSetLayout has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 48, "VkDescriptorUpdateTemplateCreateInfo.pipelineBindPoint has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "pipelineLayout"; assert(it.offset_in_bytes == 56, "VkDescriptorUpdateTemplateCreateInfo.pipelineLayout has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorUpdateTemplateCreateInfo.pipelineLayout has unexpected size % instead of 8", it.type.runtime_size); case "set"; assert(it.offset_in_bytes == 64, "VkDescriptorUpdateTemplateCreateInfo.set has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorUpdateTemplateCreateInfo.set has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorUpdateTemplateCreateInfo) == 72, "VkDescriptorUpdateTemplateCreateInfo has size % instead of 72", size_of(VkDescriptorUpdateTemplateCreateInfo)); } { info := type_info(VkExternalMemoryProperties); for info.members { if it.name == { case "externalMemoryFeatures"; assert(it.offset_in_bytes == 0, "VkExternalMemoryProperties.externalMemoryFeatures has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryProperties.externalMemoryFeatures has unexpected size % instead of 4", it.type.runtime_size); case "exportFromImportedHandleTypes"; assert(it.offset_in_bytes == 4, "VkExternalMemoryProperties.exportFromImportedHandleTypes has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryProperties.exportFromImportedHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "compatibleHandleTypes"; assert(it.offset_in_bytes == 8, "VkExternalMemoryProperties.compatibleHandleTypes has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryProperties.compatibleHandleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalMemoryProperties) == 12, "VkExternalMemoryProperties has size % instead of 12", size_of(VkExternalMemoryProperties)); } { info := type_info(VkPhysicalDeviceExternalImageFormatInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalImageFormatInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalImageFormatInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalImageFormatInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalImageFormatInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalImageFormatInfo.handleType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalImageFormatInfo.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalImageFormatInfo) == 24, "VkPhysicalDeviceExternalImageFormatInfo has size % instead of 24", size_of(VkPhysicalDeviceExternalImageFormatInfo)); } { info := type_info(VkExternalImageFormatProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalImageFormatProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalImageFormatProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalImageFormatProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalImageFormatProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "externalMemoryProperties"; assert(it.offset_in_bytes == 16, "VkExternalImageFormatProperties.externalMemoryProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkExternalImageFormatProperties.externalMemoryProperties has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkExternalImageFormatProperties) == 32, "VkExternalImageFormatProperties has size % instead of 32", size_of(VkExternalImageFormatProperties)); } { info := type_info(VkPhysicalDeviceExternalBufferInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalBufferInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalBufferInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalBufferInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalBufferInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalBufferInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalBufferInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceExternalBufferInfo.usage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalBufferInfo.usage has unexpected size % instead of 4", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceExternalBufferInfo.handleType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalBufferInfo.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalBufferInfo) == 32, "VkPhysicalDeviceExternalBufferInfo has size % instead of 32", size_of(VkPhysicalDeviceExternalBufferInfo)); } { info := type_info(VkExternalBufferProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalBufferProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalBufferProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalBufferProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalBufferProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "externalMemoryProperties"; assert(it.offset_in_bytes == 16, "VkExternalBufferProperties.externalMemoryProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkExternalBufferProperties.externalMemoryProperties has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkExternalBufferProperties) == 32, "VkExternalBufferProperties has size % instead of 32", size_of(VkExternalBufferProperties)); } { info := type_info(VkPhysicalDeviceIDProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceIDProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceIDProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceIDProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceIDProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceUUID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceIDProperties.deviceUUID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceIDProperties.deviceUUID has unexpected size % instead of 16", it.type.runtime_size); case "driverUUID"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceIDProperties.driverUUID has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceIDProperties.driverUUID has unexpected size % instead of 16", it.type.runtime_size); case "deviceLUID"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceIDProperties.deviceLUID has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceIDProperties.deviceLUID has unexpected size % instead of 8", it.type.runtime_size); case "deviceNodeMask"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceIDProperties.deviceNodeMask has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceIDProperties.deviceNodeMask has unexpected size % instead of 4", it.type.runtime_size); case "deviceLUIDValid"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceIDProperties.deviceLUIDValid has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceIDProperties.deviceLUIDValid has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceIDProperties) == 64, "VkPhysicalDeviceIDProperties has size % instead of 64", size_of(VkPhysicalDeviceIDProperties)); } { info := type_info(VkExternalMemoryImageCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalMemoryImageCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryImageCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalMemoryImageCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalMemoryImageCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExternalMemoryImageCreateInfo.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryImageCreateInfo.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalMemoryImageCreateInfo) == 24, "VkExternalMemoryImageCreateInfo has size % instead of 24", size_of(VkExternalMemoryImageCreateInfo)); } { info := type_info(VkExternalMemoryBufferCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalMemoryBufferCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryBufferCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalMemoryBufferCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalMemoryBufferCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExternalMemoryBufferCreateInfo.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryBufferCreateInfo.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalMemoryBufferCreateInfo) == 24, "VkExternalMemoryBufferCreateInfo has size % instead of 24", size_of(VkExternalMemoryBufferCreateInfo)); } { info := type_info(VkExportMemoryAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExportMemoryAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportMemoryAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExportMemoryAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExportMemoryAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExportMemoryAllocateInfo.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportMemoryAllocateInfo.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExportMemoryAllocateInfo) == 24, "VkExportMemoryAllocateInfo has size % instead of 24", size_of(VkExportMemoryAllocateInfo)); } { info := type_info(VkPhysicalDeviceExternalFenceInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalFenceInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalFenceInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalFenceInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalFenceInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalFenceInfo.handleType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalFenceInfo.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalFenceInfo) == 24, "VkPhysicalDeviceExternalFenceInfo has size % instead of 24", size_of(VkPhysicalDeviceExternalFenceInfo)); } { info := type_info(VkExternalFenceProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalFenceProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalFenceProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalFenceProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalFenceProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "exportFromImportedHandleTypes"; assert(it.offset_in_bytes == 16, "VkExternalFenceProperties.exportFromImportedHandleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalFenceProperties.exportFromImportedHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "compatibleHandleTypes"; assert(it.offset_in_bytes == 20, "VkExternalFenceProperties.compatibleHandleTypes has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalFenceProperties.compatibleHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "externalFenceFeatures"; assert(it.offset_in_bytes == 24, "VkExternalFenceProperties.externalFenceFeatures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalFenceProperties.externalFenceFeatures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalFenceProperties) == 32, "VkExternalFenceProperties has size % instead of 32", size_of(VkExternalFenceProperties)); } { info := type_info(VkExportFenceCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExportFenceCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportFenceCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExportFenceCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExportFenceCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExportFenceCreateInfo.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportFenceCreateInfo.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExportFenceCreateInfo) == 24, "VkExportFenceCreateInfo has size % instead of 24", size_of(VkExportFenceCreateInfo)); } { info := type_info(VkExportSemaphoreCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExportSemaphoreCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportSemaphoreCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExportSemaphoreCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExportSemaphoreCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExportSemaphoreCreateInfo.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportSemaphoreCreateInfo.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExportSemaphoreCreateInfo) == 24, "VkExportSemaphoreCreateInfo has size % instead of 24", size_of(VkExportSemaphoreCreateInfo)); } { info := type_info(VkPhysicalDeviceExternalSemaphoreInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalSemaphoreInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalSemaphoreInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalSemaphoreInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalSemaphoreInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalSemaphoreInfo.handleType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalSemaphoreInfo.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalSemaphoreInfo) == 24, "VkPhysicalDeviceExternalSemaphoreInfo has size % instead of 24", size_of(VkPhysicalDeviceExternalSemaphoreInfo)); } { info := type_info(VkExternalSemaphoreProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalSemaphoreProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalSemaphoreProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalSemaphoreProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalSemaphoreProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "exportFromImportedHandleTypes"; assert(it.offset_in_bytes == 16, "VkExternalSemaphoreProperties.exportFromImportedHandleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalSemaphoreProperties.exportFromImportedHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "compatibleHandleTypes"; assert(it.offset_in_bytes == 20, "VkExternalSemaphoreProperties.compatibleHandleTypes has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalSemaphoreProperties.compatibleHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "externalSemaphoreFeatures"; assert(it.offset_in_bytes == 24, "VkExternalSemaphoreProperties.externalSemaphoreFeatures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalSemaphoreProperties.externalSemaphoreFeatures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalSemaphoreProperties) == 32, "VkExternalSemaphoreProperties has size % instead of 32", size_of(VkExternalSemaphoreProperties)); } { info := type_info(VkPhysicalDeviceMaintenance3Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance3Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance3Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance3Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance3Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxPerSetDescriptors"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance3Properties.maxPerSetDescriptors has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance3Properties.maxPerSetDescriptors has unexpected size % instead of 4", it.type.runtime_size); case "maxMemoryAllocationSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMaintenance3Properties.maxMemoryAllocationSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance3Properties.maxMemoryAllocationSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance3Properties) == 32, "VkPhysicalDeviceMaintenance3Properties has size % instead of 32", size_of(VkPhysicalDeviceMaintenance3Properties)); } { info := type_info(VkDescriptorSetLayoutSupport); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetLayoutSupport.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutSupport.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetLayoutSupport.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutSupport.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supported"; assert(it.offset_in_bytes == 16, "VkDescriptorSetLayoutSupport.supported has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutSupport.supported has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorSetLayoutSupport) == 24, "VkDescriptorSetLayoutSupport has size % instead of 24", size_of(VkDescriptorSetLayoutSupport)); } { info := type_info(VkPhysicalDeviceShaderDrawParametersFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderDrawParametersFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderDrawParametersFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderDrawParametersFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderDrawParametersFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderDrawParameters"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderDrawParametersFeatures.shaderDrawParameters has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderDrawParametersFeatures.shaderDrawParameters has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderDrawParametersFeatures) == 24, "VkPhysicalDeviceShaderDrawParametersFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderDrawParametersFeatures)); } { info := type_info(VkPhysicalDeviceVulkan11Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan11Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan11Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan11Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "storageBuffer16BitAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan11Features.storageBuffer16BitAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.storageBuffer16BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "uniformAndStorageBuffer16BitAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan11Features.uniformAndStorageBuffer16BitAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.uniformAndStorageBuffer16BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "storagePushConstant16"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan11Features.storagePushConstant16 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.storagePushConstant16 has unexpected size % instead of 4", it.type.runtime_size); case "storageInputOutput16"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan11Features.storageInputOutput16 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.storageInputOutput16 has unexpected size % instead of 4", it.type.runtime_size); case "multiview"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan11Features.multiview has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.multiview has unexpected size % instead of 4", it.type.runtime_size); case "multiviewGeometryShader"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan11Features.multiviewGeometryShader has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.multiviewGeometryShader has unexpected size % instead of 4", it.type.runtime_size); case "multiviewTessellationShader"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan11Features.multiviewTessellationShader has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.multiviewTessellationShader has unexpected size % instead of 4", it.type.runtime_size); case "variablePointersStorageBuffer"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan11Features.variablePointersStorageBuffer has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.variablePointersStorageBuffer has unexpected size % instead of 4", it.type.runtime_size); case "variablePointers"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan11Features.variablePointers has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.variablePointers has unexpected size % instead of 4", it.type.runtime_size); case "protectedMemory"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan11Features.protectedMemory has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.protectedMemory has unexpected size % instead of 4", it.type.runtime_size); case "samplerYcbcrConversion"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan11Features.samplerYcbcrConversion has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.samplerYcbcrConversion has unexpected size % instead of 4", it.type.runtime_size); case "shaderDrawParameters"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan11Features.shaderDrawParameters has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Features.shaderDrawParameters has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan11Features) == 64, "VkPhysicalDeviceVulkan11Features has size % instead of 64", size_of(VkPhysicalDeviceVulkan11Features)); } { info := type_info(VkPhysicalDeviceVulkan11Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan11Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan11Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan11Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceUUID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan11Properties.deviceUUID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceVulkan11Properties.deviceUUID has unexpected size % instead of 16", it.type.runtime_size); case "driverUUID"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan11Properties.driverUUID has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceVulkan11Properties.driverUUID has unexpected size % instead of 16", it.type.runtime_size); case "deviceLUID"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan11Properties.deviceLUID has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan11Properties.deviceLUID has unexpected size % instead of 8", it.type.runtime_size); case "deviceNodeMask"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan11Properties.deviceNodeMask has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.deviceNodeMask has unexpected size % instead of 4", it.type.runtime_size); case "deviceLUIDValid"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan11Properties.deviceLUIDValid has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.deviceLUIDValid has unexpected size % instead of 4", it.type.runtime_size); case "subgroupSize"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan11Properties.subgroupSize has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.subgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "subgroupSupportedStages"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan11Properties.subgroupSupportedStages has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.subgroupSupportedStages has unexpected size % instead of 4", it.type.runtime_size); case "subgroupSupportedOperations"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan11Properties.subgroupSupportedOperations has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.subgroupSupportedOperations has unexpected size % instead of 4", it.type.runtime_size); case "subgroupQuadOperationsInAllStages"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceVulkan11Properties.subgroupQuadOperationsInAllStages has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.subgroupQuadOperationsInAllStages has unexpected size % instead of 4", it.type.runtime_size); case "pointClippingBehavior"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceVulkan11Properties.pointClippingBehavior has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.pointClippingBehavior has unexpected size % instead of 4", it.type.runtime_size); case "maxMultiviewViewCount"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceVulkan11Properties.maxMultiviewViewCount has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.maxMultiviewViewCount has unexpected size % instead of 4", it.type.runtime_size); case "maxMultiviewInstanceIndex"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceVulkan11Properties.maxMultiviewInstanceIndex has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.maxMultiviewInstanceIndex has unexpected size % instead of 4", it.type.runtime_size); case "protectedNoFault"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceVulkan11Properties.protectedNoFault has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.protectedNoFault has unexpected size % instead of 4", it.type.runtime_size); case "maxPerSetDescriptors"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceVulkan11Properties.maxPerSetDescriptors has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan11Properties.maxPerSetDescriptors has unexpected size % instead of 4", it.type.runtime_size); case "maxMemoryAllocationSize"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceVulkan11Properties.maxMemoryAllocationSize has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan11Properties.maxMemoryAllocationSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan11Properties) == 112, "VkPhysicalDeviceVulkan11Properties has size % instead of 112", size_of(VkPhysicalDeviceVulkan11Properties)); } { info := type_info(VkPhysicalDeviceVulkan12Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan12Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan12Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan12Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "samplerMirrorClampToEdge"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan12Features.samplerMirrorClampToEdge has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.samplerMirrorClampToEdge has unexpected size % instead of 4", it.type.runtime_size); case "drawIndirectCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan12Features.drawIndirectCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.drawIndirectCount has unexpected size % instead of 4", it.type.runtime_size); case "storageBuffer8BitAccess"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan12Features.storageBuffer8BitAccess has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.storageBuffer8BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "uniformAndStorageBuffer8BitAccess"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan12Features.uniformAndStorageBuffer8BitAccess has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.uniformAndStorageBuffer8BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "storagePushConstant8"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan12Features.storagePushConstant8 has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.storagePushConstant8 has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferInt64Atomics"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan12Features.shaderBufferInt64Atomics has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderBufferInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedInt64Atomics"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan12Features.shaderSharedInt64Atomics has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderSharedInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderFloat16"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan12Features.shaderFloat16 has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderInt8"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan12Features.shaderInt8 has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderInt8 has unexpected size % instead of 4", it.type.runtime_size); case "descriptorIndexing"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan12Features.descriptorIndexing has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderInputAttachmentArrayDynamicIndexing"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan12Features.shaderInputAttachmentArrayDynamicIndexing has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderInputAttachmentArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformTexelBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan12Features.shaderUniformTexelBufferArrayDynamicIndexing has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderUniformTexelBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageTexelBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan12Features.shaderStorageTexelBufferArrayDynamicIndexing has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderStorageTexelBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan12Features.shaderUniformBufferArrayNonUniformIndexing has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderUniformBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderSampledImageArrayNonUniformIndexing"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan12Features.shaderSampledImageArrayNonUniformIndexing has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderSampledImageArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceVulkan12Features.shaderStorageBufferArrayNonUniformIndexing has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderStorageBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageArrayNonUniformIndexing"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceVulkan12Features.shaderStorageImageArrayNonUniformIndexing has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderStorageImageArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderInputAttachmentArrayNonUniformIndexing"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceVulkan12Features.shaderInputAttachmentArrayNonUniformIndexing has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderInputAttachmentArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformTexelBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceVulkan12Features.shaderUniformTexelBufferArrayNonUniformIndexing has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderUniformTexelBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageTexelBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceVulkan12Features.shaderStorageTexelBufferArrayNonUniformIndexing has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderStorageTexelBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUniformBufferUpdateAfterBind"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceVulkan12Features.descriptorBindingUniformBufferUpdateAfterBind has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingUniformBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingSampledImageUpdateAfterBind"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceVulkan12Features.descriptorBindingSampledImageUpdateAfterBind has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingSampledImageUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageImageUpdateAfterBind"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageImageUpdateAfterBind has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageImageUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageBufferUpdateAfterBind"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageBufferUpdateAfterBind has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUniformTexelBufferUpdateAfterBind"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceVulkan12Features.descriptorBindingUniformTexelBufferUpdateAfterBind has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingUniformTexelBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageTexelBufferUpdateAfterBind"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageTexelBufferUpdateAfterBind has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingStorageTexelBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUpdateUnusedWhilePending"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceVulkan12Features.descriptorBindingUpdateUnusedWhilePending has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingUpdateUnusedWhilePending has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingPartiallyBound"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceVulkan12Features.descriptorBindingPartiallyBound has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingPartiallyBound has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingVariableDescriptorCount"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceVulkan12Features.descriptorBindingVariableDescriptorCount has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.descriptorBindingVariableDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "runtimeDescriptorArray"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceVulkan12Features.runtimeDescriptorArray has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.runtimeDescriptorArray has unexpected size % instead of 4", it.type.runtime_size); case "samplerFilterMinmax"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceVulkan12Features.samplerFilterMinmax has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.samplerFilterMinmax has unexpected size % instead of 4", it.type.runtime_size); case "scalarBlockLayout"; assert(it.offset_in_bytes == 140, "VkPhysicalDeviceVulkan12Features.scalarBlockLayout has unexpected offset % instead of 140", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.scalarBlockLayout has unexpected size % instead of 4", it.type.runtime_size); case "imagelessFramebuffer"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceVulkan12Features.imagelessFramebuffer has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.imagelessFramebuffer has unexpected size % instead of 4", it.type.runtime_size); case "uniformBufferStandardLayout"; assert(it.offset_in_bytes == 148, "VkPhysicalDeviceVulkan12Features.uniformBufferStandardLayout has unexpected offset % instead of 148", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.uniformBufferStandardLayout has unexpected size % instead of 4", it.type.runtime_size); case "shaderSubgroupExtendedTypes"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceVulkan12Features.shaderSubgroupExtendedTypes has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderSubgroupExtendedTypes has unexpected size % instead of 4", it.type.runtime_size); case "separateDepthStencilLayouts"; assert(it.offset_in_bytes == 156, "VkPhysicalDeviceVulkan12Features.separateDepthStencilLayouts has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.separateDepthStencilLayouts has unexpected size % instead of 4", it.type.runtime_size); case "hostQueryReset"; assert(it.offset_in_bytes == 160, "VkPhysicalDeviceVulkan12Features.hostQueryReset has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.hostQueryReset has unexpected size % instead of 4", it.type.runtime_size); case "timelineSemaphore"; assert(it.offset_in_bytes == 164, "VkPhysicalDeviceVulkan12Features.timelineSemaphore has unexpected offset % instead of 164", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.timelineSemaphore has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddress"; assert(it.offset_in_bytes == 168, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddress has unexpected offset % instead of 168", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddress has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressCaptureReplay"; assert(it.offset_in_bytes == 172, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddressCaptureReplay has unexpected offset % instead of 172", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddressCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressMultiDevice"; assert(it.offset_in_bytes == 176, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddressMultiDevice has unexpected offset % instead of 176", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.bufferDeviceAddressMultiDevice has unexpected size % instead of 4", it.type.runtime_size); case "vulkanMemoryModel"; assert(it.offset_in_bytes == 180, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModel has unexpected offset % instead of 180", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModel has unexpected size % instead of 4", it.type.runtime_size); case "vulkanMemoryModelDeviceScope"; assert(it.offset_in_bytes == 184, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModelDeviceScope has unexpected offset % instead of 184", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModelDeviceScope has unexpected size % instead of 4", it.type.runtime_size); case "vulkanMemoryModelAvailabilityVisibilityChains"; assert(it.offset_in_bytes == 188, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModelAvailabilityVisibilityChains has unexpected offset % instead of 188", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.vulkanMemoryModelAvailabilityVisibilityChains has unexpected size % instead of 4", it.type.runtime_size); case "shaderOutputViewportIndex"; assert(it.offset_in_bytes == 192, "VkPhysicalDeviceVulkan12Features.shaderOutputViewportIndex has unexpected offset % instead of 192", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderOutputViewportIndex has unexpected size % instead of 4", it.type.runtime_size); case "shaderOutputLayer"; assert(it.offset_in_bytes == 196, "VkPhysicalDeviceVulkan12Features.shaderOutputLayer has unexpected offset % instead of 196", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.shaderOutputLayer has unexpected size % instead of 4", it.type.runtime_size); case "subgroupBroadcastDynamicId"; assert(it.offset_in_bytes == 200, "VkPhysicalDeviceVulkan12Features.subgroupBroadcastDynamicId has unexpected offset % instead of 200", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Features.subgroupBroadcastDynamicId has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan12Features) == 208, "VkPhysicalDeviceVulkan12Features has size % instead of 208", size_of(VkPhysicalDeviceVulkan12Features)); } { info := type_info(VkConformanceVersion); for info.members { if it.name == { case "major"; assert(it.offset_in_bytes == 0, "VkConformanceVersion.major has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "VkConformanceVersion.major has unexpected size % instead of 1", it.type.runtime_size); case "minor"; assert(it.offset_in_bytes == 1, "VkConformanceVersion.minor has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "VkConformanceVersion.minor has unexpected size % instead of 1", it.type.runtime_size); case "subminor"; assert(it.offset_in_bytes == 2, "VkConformanceVersion.subminor has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 1, "VkConformanceVersion.subminor has unexpected size % instead of 1", it.type.runtime_size); case "patch"; assert(it.offset_in_bytes == 3, "VkConformanceVersion.patch has unexpected offset % instead of 3", it.offset_in_bytes); assert(it.type.runtime_size == 1, "VkConformanceVersion.patch has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(VkConformanceVersion) == 4, "VkConformanceVersion has size % instead of 4", size_of(VkConformanceVersion)); } { info := type_info(VkPhysicalDeviceVulkan12Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan12Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan12Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan12Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "driverID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan12Properties.driverID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.driverID has unexpected size % instead of 4", it.type.runtime_size); case "driverName"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan12Properties.driverName has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceVulkan12Properties.driverName has unexpected size % instead of 256", it.type.runtime_size); case "driverInfo"; assert(it.offset_in_bytes == 276, "VkPhysicalDeviceVulkan12Properties.driverInfo has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceVulkan12Properties.driverInfo has unexpected size % instead of 256", it.type.runtime_size); case "conformanceVersion"; assert(it.offset_in_bytes == 532, "VkPhysicalDeviceVulkan12Properties.conformanceVersion has unexpected offset % instead of 532", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.conformanceVersion has unexpected size % instead of 4", it.type.runtime_size); case "denormBehaviorIndependence"; assert(it.offset_in_bytes == 536, "VkPhysicalDeviceVulkan12Properties.denormBehaviorIndependence has unexpected offset % instead of 536", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.denormBehaviorIndependence has unexpected size % instead of 4", it.type.runtime_size); case "roundingModeIndependence"; assert(it.offset_in_bytes == 540, "VkPhysicalDeviceVulkan12Properties.roundingModeIndependence has unexpected offset % instead of 540", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.roundingModeIndependence has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat16"; assert(it.offset_in_bytes == 544, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat16 has unexpected offset % instead of 544", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat32"; assert(it.offset_in_bytes == 548, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat32 has unexpected offset % instead of 548", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat64"; assert(it.offset_in_bytes == 552, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat64 has unexpected offset % instead of 552", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderSignedZeroInfNanPreserveFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat16"; assert(it.offset_in_bytes == 556, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat16 has unexpected offset % instead of 556", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat32"; assert(it.offset_in_bytes == 560, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat32 has unexpected offset % instead of 560", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat64"; assert(it.offset_in_bytes == 564, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat64 has unexpected offset % instead of 564", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormPreserveFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat16"; assert(it.offset_in_bytes == 568, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat16 has unexpected offset % instead of 568", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat32"; assert(it.offset_in_bytes == 572, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat32 has unexpected offset % instead of 572", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat64"; assert(it.offset_in_bytes == 576, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat64 has unexpected offset % instead of 576", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderDenormFlushToZeroFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat16"; assert(it.offset_in_bytes == 580, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat16 has unexpected offset % instead of 580", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat32"; assert(it.offset_in_bytes == 584, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat32 has unexpected offset % instead of 584", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat64"; assert(it.offset_in_bytes == 588, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat64 has unexpected offset % instead of 588", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTEFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat16"; assert(it.offset_in_bytes == 592, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat16 has unexpected offset % instead of 592", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat32"; assert(it.offset_in_bytes == 596, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat32 has unexpected offset % instead of 596", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat64"; assert(it.offset_in_bytes == 600, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat64 has unexpected offset % instead of 600", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderRoundingModeRTZFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "maxUpdateAfterBindDescriptorsInAllPools"; assert(it.offset_in_bytes == 604, "VkPhysicalDeviceVulkan12Properties.maxUpdateAfterBindDescriptorsInAllPools has unexpected offset % instead of 604", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxUpdateAfterBindDescriptorsInAllPools has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformBufferArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 608, "VkPhysicalDeviceVulkan12Properties.shaderUniformBufferArrayNonUniformIndexingNative has unexpected offset % instead of 608", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderUniformBufferArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderSampledImageArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 612, "VkPhysicalDeviceVulkan12Properties.shaderSampledImageArrayNonUniformIndexingNative has unexpected offset % instead of 612", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderSampledImageArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageBufferArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 616, "VkPhysicalDeviceVulkan12Properties.shaderStorageBufferArrayNonUniformIndexingNative has unexpected offset % instead of 616", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderStorageBufferArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 620, "VkPhysicalDeviceVulkan12Properties.shaderStorageImageArrayNonUniformIndexingNative has unexpected offset % instead of 620", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderStorageImageArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderInputAttachmentArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 624, "VkPhysicalDeviceVulkan12Properties.shaderInputAttachmentArrayNonUniformIndexingNative has unexpected offset % instead of 624", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.shaderInputAttachmentArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "robustBufferAccessUpdateAfterBind"; assert(it.offset_in_bytes == 628, "VkPhysicalDeviceVulkan12Properties.robustBufferAccessUpdateAfterBind has unexpected offset % instead of 628", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.robustBufferAccessUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "quadDivergentImplicitLod"; assert(it.offset_in_bytes == 632, "VkPhysicalDeviceVulkan12Properties.quadDivergentImplicitLod has unexpected offset % instead of 632", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.quadDivergentImplicitLod has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindSamplers"; assert(it.offset_in_bytes == 636, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindSamplers has unexpected offset % instead of 636", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindUniformBuffers"; assert(it.offset_in_bytes == 640, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindUniformBuffers has unexpected offset % instead of 640", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindStorageBuffers"; assert(it.offset_in_bytes == 644, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindStorageBuffers has unexpected offset % instead of 644", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindSampledImages"; assert(it.offset_in_bytes == 648, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindSampledImages has unexpected offset % instead of 648", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindStorageImages"; assert(it.offset_in_bytes == 652, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindStorageImages has unexpected offset % instead of 652", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindInputAttachments"; assert(it.offset_in_bytes == 656, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindInputAttachments has unexpected offset % instead of 656", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageDescriptorUpdateAfterBindInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageUpdateAfterBindResources"; assert(it.offset_in_bytes == 660, "VkPhysicalDeviceVulkan12Properties.maxPerStageUpdateAfterBindResources has unexpected offset % instead of 660", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxPerStageUpdateAfterBindResources has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindSamplers"; assert(it.offset_in_bytes == 664, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindSamplers has unexpected offset % instead of 664", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindUniformBuffers"; assert(it.offset_in_bytes == 668, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindUniformBuffers has unexpected offset % instead of 668", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic"; assert(it.offset_in_bytes == 672, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic has unexpected offset % instead of 672", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageBuffers"; assert(it.offset_in_bytes == 676, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageBuffers has unexpected offset % instead of 676", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic"; assert(it.offset_in_bytes == 680, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic has unexpected offset % instead of 680", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindSampledImages"; assert(it.offset_in_bytes == 684, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindSampledImages has unexpected offset % instead of 684", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageImages"; assert(it.offset_in_bytes == 688, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageImages has unexpected offset % instead of 688", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindInputAttachments"; assert(it.offset_in_bytes == 692, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindInputAttachments has unexpected offset % instead of 692", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.maxDescriptorSetUpdateAfterBindInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "supportedDepthResolveModes"; assert(it.offset_in_bytes == 696, "VkPhysicalDeviceVulkan12Properties.supportedDepthResolveModes has unexpected offset % instead of 696", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.supportedDepthResolveModes has unexpected size % instead of 4", it.type.runtime_size); case "supportedStencilResolveModes"; assert(it.offset_in_bytes == 700, "VkPhysicalDeviceVulkan12Properties.supportedStencilResolveModes has unexpected offset % instead of 700", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.supportedStencilResolveModes has unexpected size % instead of 4", it.type.runtime_size); case "independentResolveNone"; assert(it.offset_in_bytes == 704, "VkPhysicalDeviceVulkan12Properties.independentResolveNone has unexpected offset % instead of 704", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.independentResolveNone has unexpected size % instead of 4", it.type.runtime_size); case "independentResolve"; assert(it.offset_in_bytes == 708, "VkPhysicalDeviceVulkan12Properties.independentResolve has unexpected offset % instead of 708", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.independentResolve has unexpected size % instead of 4", it.type.runtime_size); case "filterMinmaxSingleComponentFormats"; assert(it.offset_in_bytes == 712, "VkPhysicalDeviceVulkan12Properties.filterMinmaxSingleComponentFormats has unexpected offset % instead of 712", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.filterMinmaxSingleComponentFormats has unexpected size % instead of 4", it.type.runtime_size); case "filterMinmaxImageComponentMapping"; assert(it.offset_in_bytes == 716, "VkPhysicalDeviceVulkan12Properties.filterMinmaxImageComponentMapping has unexpected offset % instead of 716", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.filterMinmaxImageComponentMapping has unexpected size % instead of 4", it.type.runtime_size); case "maxTimelineSemaphoreValueDifference"; assert(it.offset_in_bytes == 720, "VkPhysicalDeviceVulkan12Properties.maxTimelineSemaphoreValueDifference has unexpected offset % instead of 720", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan12Properties.maxTimelineSemaphoreValueDifference has unexpected size % instead of 8", it.type.runtime_size); case "framebufferIntegerColorSampleCounts"; assert(it.offset_in_bytes == 728, "VkPhysicalDeviceVulkan12Properties.framebufferIntegerColorSampleCounts has unexpected offset % instead of 728", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan12Properties.framebufferIntegerColorSampleCounts has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan12Properties) == 736, "VkPhysicalDeviceVulkan12Properties has size % instead of 736", size_of(VkPhysicalDeviceVulkan12Properties)); } { info := type_info(VkImageFormatListCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageFormatListCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatListCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageFormatListCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageFormatListCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "viewFormatCount"; assert(it.offset_in_bytes == 16, "VkImageFormatListCreateInfo.viewFormatCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageFormatListCreateInfo.viewFormatCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewFormats"; assert(it.offset_in_bytes == 24, "VkImageFormatListCreateInfo.pViewFormats has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageFormatListCreateInfo.pViewFormats has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageFormatListCreateInfo) == 32, "VkImageFormatListCreateInfo has size % instead of 32", size_of(VkImageFormatListCreateInfo)); } { info := type_info(VkAttachmentDescription2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAttachmentDescription2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAttachmentDescription2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentDescription2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkAttachmentDescription2.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.flags has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 20, "VkAttachmentDescription2.format has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.format has unexpected size % instead of 4", it.type.runtime_size); case "samples"; assert(it.offset_in_bytes == 24, "VkAttachmentDescription2.samples has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.samples has unexpected size % instead of 4", it.type.runtime_size); case "loadOp"; assert(it.offset_in_bytes == 28, "VkAttachmentDescription2.loadOp has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.loadOp has unexpected size % instead of 4", it.type.runtime_size); case "storeOp"; assert(it.offset_in_bytes == 32, "VkAttachmentDescription2.storeOp has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.storeOp has unexpected size % instead of 4", it.type.runtime_size); case "stencilLoadOp"; assert(it.offset_in_bytes == 36, "VkAttachmentDescription2.stencilLoadOp has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.stencilLoadOp has unexpected size % instead of 4", it.type.runtime_size); case "stencilStoreOp"; assert(it.offset_in_bytes == 40, "VkAttachmentDescription2.stencilStoreOp has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.stencilStoreOp has unexpected size % instead of 4", it.type.runtime_size); case "initialLayout"; assert(it.offset_in_bytes == 44, "VkAttachmentDescription2.initialLayout has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.initialLayout has unexpected size % instead of 4", it.type.runtime_size); case "finalLayout"; assert(it.offset_in_bytes == 48, "VkAttachmentDescription2.finalLayout has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescription2.finalLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentDescription2) == 56, "VkAttachmentDescription2 has size % instead of 56", size_of(VkAttachmentDescription2)); } { info := type_info(VkAttachmentReference2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAttachmentReference2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAttachmentReference2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentReference2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachment"; assert(it.offset_in_bytes == 16, "VkAttachmentReference2.attachment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference2.attachment has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 20, "VkAttachmentReference2.layout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference2.layout has unexpected size % instead of 4", it.type.runtime_size); case "aspectMask"; assert(it.offset_in_bytes == 24, "VkAttachmentReference2.aspectMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReference2.aspectMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentReference2) == 32, "VkAttachmentReference2 has size % instead of 32", size_of(VkAttachmentReference2)); } { info := type_info(VkSubpassDescription2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassDescription2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassDescription2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSubpassDescription2.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.flags has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 20, "VkSubpassDescription2.pipelineBindPoint has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "viewMask"; assert(it.offset_in_bytes == 24, "VkSubpassDescription2.viewMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.viewMask has unexpected size % instead of 4", it.type.runtime_size); case "inputAttachmentCount"; assert(it.offset_in_bytes == 28, "VkSubpassDescription2.inputAttachmentCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.inputAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pInputAttachments"; assert(it.offset_in_bytes == 32, "VkSubpassDescription2.pInputAttachments has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pInputAttachments has unexpected size % instead of 8", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 40, "VkSubpassDescription2.colorAttachmentCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachments"; assert(it.offset_in_bytes == 48, "VkSubpassDescription2.pColorAttachments has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pColorAttachments has unexpected size % instead of 8", it.type.runtime_size); case "pResolveAttachments"; assert(it.offset_in_bytes == 56, "VkSubpassDescription2.pResolveAttachments has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pResolveAttachments has unexpected size % instead of 8", it.type.runtime_size); case "pDepthStencilAttachment"; assert(it.offset_in_bytes == 64, "VkSubpassDescription2.pDepthStencilAttachment has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pDepthStencilAttachment has unexpected size % instead of 8", it.type.runtime_size); case "preserveAttachmentCount"; assert(it.offset_in_bytes == 72, "VkSubpassDescription2.preserveAttachmentCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescription2.preserveAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pPreserveAttachments"; assert(it.offset_in_bytes == 80, "VkSubpassDescription2.pPreserveAttachments has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescription2.pPreserveAttachments has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubpassDescription2) == 88, "VkSubpassDescription2 has size % instead of 88", size_of(VkSubpassDescription2)); } { info := type_info(VkSubpassDependency2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassDependency2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassDependency2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDependency2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSubpass"; assert(it.offset_in_bytes == 16, "VkSubpassDependency2.srcSubpass has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.srcSubpass has unexpected size % instead of 4", it.type.runtime_size); case "dstSubpass"; assert(it.offset_in_bytes == 20, "VkSubpassDependency2.dstSubpass has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.dstSubpass has unexpected size % instead of 4", it.type.runtime_size); case "srcStageMask"; assert(it.offset_in_bytes == 24, "VkSubpassDependency2.srcStageMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.srcStageMask has unexpected size % instead of 4", it.type.runtime_size); case "dstStageMask"; assert(it.offset_in_bytes == 28, "VkSubpassDependency2.dstStageMask has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.dstStageMask has unexpected size % instead of 4", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 32, "VkSubpassDependency2.srcAccessMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.srcAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 36, "VkSubpassDependency2.dstAccessMask has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.dstAccessMask has unexpected size % instead of 4", it.type.runtime_size); case "dependencyFlags"; assert(it.offset_in_bytes == 40, "VkSubpassDependency2.dependencyFlags has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.dependencyFlags has unexpected size % instead of 4", it.type.runtime_size); case "viewOffset"; assert(it.offset_in_bytes == 44, "VkSubpassDependency2.viewOffset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDependency2.viewOffset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSubpassDependency2) == 48, "VkSubpassDependency2 has size % instead of 48", size_of(VkSubpassDependency2)); } { info := type_info(VkRenderPassCreateInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassCreateInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassCreateInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRenderPassCreateInfo2.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.flags has unexpected size % instead of 4", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 20, "VkRenderPassCreateInfo2.attachmentCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachments"; assert(it.offset_in_bytes == 24, "VkRenderPassCreateInfo2.pAttachments has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo2.pAttachments has unexpected size % instead of 8", it.type.runtime_size); case "subpassCount"; assert(it.offset_in_bytes == 32, "VkRenderPassCreateInfo2.subpassCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.subpassCount has unexpected size % instead of 4", it.type.runtime_size); case "pSubpasses"; assert(it.offset_in_bytes == 40, "VkRenderPassCreateInfo2.pSubpasses has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo2.pSubpasses has unexpected size % instead of 8", it.type.runtime_size); case "dependencyCount"; assert(it.offset_in_bytes == 48, "VkRenderPassCreateInfo2.dependencyCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.dependencyCount has unexpected size % instead of 4", it.type.runtime_size); case "pDependencies"; assert(it.offset_in_bytes == 56, "VkRenderPassCreateInfo2.pDependencies has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo2.pDependencies has unexpected size % instead of 8", it.type.runtime_size); case "correlatedViewMaskCount"; assert(it.offset_in_bytes == 64, "VkRenderPassCreateInfo2.correlatedViewMaskCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreateInfo2.correlatedViewMaskCount has unexpected size % instead of 4", it.type.runtime_size); case "pCorrelatedViewMasks"; assert(it.offset_in_bytes == 72, "VkRenderPassCreateInfo2.pCorrelatedViewMasks has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreateInfo2.pCorrelatedViewMasks has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassCreateInfo2) == 80, "VkRenderPassCreateInfo2 has size % instead of 80", size_of(VkRenderPassCreateInfo2)); } { info := type_info(VkSubpassBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "contents"; assert(it.offset_in_bytes == 16, "VkSubpassBeginInfo.contents has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassBeginInfo.contents has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSubpassBeginInfo) == 24, "VkSubpassBeginInfo has size % instead of 24", size_of(VkSubpassBeginInfo)); } { info := type_info(VkSubpassEndInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassEndInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassEndInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassEndInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassEndInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubpassEndInfo) == 16, "VkSubpassEndInfo has size % instead of 16", size_of(VkSubpassEndInfo)); } { info := type_info(VkPhysicalDevice8BitStorageFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevice8BitStorageFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice8BitStorageFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevice8BitStorageFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevice8BitStorageFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "storageBuffer8BitAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDevice8BitStorageFeatures.storageBuffer8BitAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice8BitStorageFeatures.storageBuffer8BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "uniformAndStorageBuffer8BitAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDevice8BitStorageFeatures.uniformAndStorageBuffer8BitAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice8BitStorageFeatures.uniformAndStorageBuffer8BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "storagePushConstant8"; assert(it.offset_in_bytes == 24, "VkPhysicalDevice8BitStorageFeatures.storagePushConstant8 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice8BitStorageFeatures.storagePushConstant8 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevice8BitStorageFeatures) == 32, "VkPhysicalDevice8BitStorageFeatures has size % instead of 32", size_of(VkPhysicalDevice8BitStorageFeatures)); } { info := type_info(VkPhysicalDeviceDriverProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDriverProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDriverProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDriverProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDriverProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "driverID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDriverProperties.driverID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDriverProperties.driverID has unexpected size % instead of 4", it.type.runtime_size); case "driverName"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDriverProperties.driverName has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceDriverProperties.driverName has unexpected size % instead of 256", it.type.runtime_size); case "driverInfo"; assert(it.offset_in_bytes == 276, "VkPhysicalDeviceDriverProperties.driverInfo has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceDriverProperties.driverInfo has unexpected size % instead of 256", it.type.runtime_size); case "conformanceVersion"; assert(it.offset_in_bytes == 532, "VkPhysicalDeviceDriverProperties.conformanceVersion has unexpected offset % instead of 532", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDriverProperties.conformanceVersion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDriverProperties) == 536, "VkPhysicalDeviceDriverProperties has size % instead of 536", size_of(VkPhysicalDeviceDriverProperties)); } { info := type_info(VkPhysicalDeviceShaderAtomicInt64Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderAtomicInt64Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicInt64Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderAtomicInt64Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderAtomicInt64Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderBufferInt64Atomics"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderAtomicInt64Features.shaderBufferInt64Atomics has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicInt64Features.shaderBufferInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedInt64Atomics"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderAtomicInt64Features.shaderSharedInt64Atomics has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicInt64Features.shaderSharedInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderAtomicInt64Features) == 24, "VkPhysicalDeviceShaderAtomicInt64Features has size % instead of 24", size_of(VkPhysicalDeviceShaderAtomicInt64Features)); } { info := type_info(VkPhysicalDeviceShaderFloat16Int8Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderFloat16Int8Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderFloat16Int8Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderFloat16Int8Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderFloat16Int8Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderFloat16"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderFloat16Int8Features.shaderFloat16 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderFloat16Int8Features.shaderFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderInt8"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderFloat16Int8Features.shaderInt8 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderFloat16Int8Features.shaderInt8 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderFloat16Int8Features) == 24, "VkPhysicalDeviceShaderFloat16Int8Features has size % instead of 24", size_of(VkPhysicalDeviceShaderFloat16Int8Features)); } { info := type_info(VkPhysicalDeviceFloatControlsProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFloatControlsProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFloatControlsProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFloatControlsProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "denormBehaviorIndependence"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFloatControlsProperties.denormBehaviorIndependence has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.denormBehaviorIndependence has unexpected size % instead of 4", it.type.runtime_size); case "roundingModeIndependence"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFloatControlsProperties.roundingModeIndependence has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.roundingModeIndependence has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat16"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat16 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat32"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat32 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderSignedZeroInfNanPreserveFloat64"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat64 has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderSignedZeroInfNanPreserveFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat16"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat16 has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat32"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat32 has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormPreserveFloat64"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat64 has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormPreserveFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat16"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat16 has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat32"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat32 has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderDenormFlushToZeroFloat64"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat64 has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderDenormFlushToZeroFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat16"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat16 has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat32"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat32 has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTEFloat64"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat64 has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTEFloat64 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat16"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat16 has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat16 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat32"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat32 has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat32 has unexpected size % instead of 4", it.type.runtime_size); case "shaderRoundingModeRTZFloat64"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat64 has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFloatControlsProperties.shaderRoundingModeRTZFloat64 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFloatControlsProperties) == 88, "VkPhysicalDeviceFloatControlsProperties has size % instead of 88", size_of(VkPhysicalDeviceFloatControlsProperties)); } { info := type_info(VkDescriptorSetLayoutBindingFlagsCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetLayoutBindingFlagsCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBindingFlagsCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetLayoutBindingFlagsCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutBindingFlagsCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "bindingCount"; assert(it.offset_in_bytes == 16, "VkDescriptorSetLayoutBindingFlagsCreateInfo.bindingCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutBindingFlagsCreateInfo.bindingCount has unexpected size % instead of 4", it.type.runtime_size); case "pBindingFlags"; assert(it.offset_in_bytes == 24, "VkDescriptorSetLayoutBindingFlagsCreateInfo.pBindingFlags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutBindingFlagsCreateInfo.pBindingFlags has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorSetLayoutBindingFlagsCreateInfo) == 32, "VkDescriptorSetLayoutBindingFlagsCreateInfo has size % instead of 32", size_of(VkDescriptorSetLayoutBindingFlagsCreateInfo)); } { info := type_info(VkPhysicalDeviceDescriptorIndexingFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorIndexingFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorIndexingFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorIndexingFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderInputAttachmentArrayDynamicIndexing"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderInputAttachmentArrayDynamicIndexing has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderInputAttachmentArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformTexelBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformTexelBufferArrayDynamicIndexing has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformTexelBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageTexelBufferArrayDynamicIndexing"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageTexelBufferArrayDynamicIndexing has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageTexelBufferArrayDynamicIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformBufferArrayNonUniformIndexing has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderSampledImageArrayNonUniformIndexing"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderSampledImageArrayNonUniformIndexing has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderSampledImageArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageBufferArrayNonUniformIndexing has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageArrayNonUniformIndexing"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageImageArrayNonUniformIndexing has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageImageArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderInputAttachmentArrayNonUniformIndexing"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderInputAttachmentArrayNonUniformIndexing has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderInputAttachmentArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformTexelBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformTexelBufferArrayNonUniformIndexing has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderUniformTexelBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageTexelBufferArrayNonUniformIndexing"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageTexelBufferArrayNonUniformIndexing has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.shaderStorageTexelBufferArrayNonUniformIndexing has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUniformBufferUpdateAfterBind"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUniformBufferUpdateAfterBind has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUniformBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingSampledImageUpdateAfterBind"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingSampledImageUpdateAfterBind has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingSampledImageUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageImageUpdateAfterBind"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageImageUpdateAfterBind has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageImageUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageBufferUpdateAfterBind"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageBufferUpdateAfterBind has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUniformTexelBufferUpdateAfterBind"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUniformTexelBufferUpdateAfterBind has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUniformTexelBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingStorageTexelBufferUpdateAfterBind"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageTexelBufferUpdateAfterBind has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingStorageTexelBufferUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingUpdateUnusedWhilePending"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUpdateUnusedWhilePending has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingUpdateUnusedWhilePending has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingPartiallyBound"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingPartiallyBound has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingPartiallyBound has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingVariableDescriptorCount"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingVariableDescriptorCount has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.descriptorBindingVariableDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "runtimeDescriptorArray"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceDescriptorIndexingFeatures.runtimeDescriptorArray has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingFeatures.runtimeDescriptorArray has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorIndexingFeatures) == 96, "VkPhysicalDeviceDescriptorIndexingFeatures has size % instead of 96", size_of(VkPhysicalDeviceDescriptorIndexingFeatures)); } { info := type_info(VkPhysicalDeviceDescriptorIndexingProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorIndexingProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorIndexingProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorIndexingProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxUpdateAfterBindDescriptorsInAllPools"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorIndexingProperties.maxUpdateAfterBindDescriptorsInAllPools has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxUpdateAfterBindDescriptorsInAllPools has unexpected size % instead of 4", it.type.runtime_size); case "shaderUniformBufferArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDescriptorIndexingProperties.shaderUniformBufferArrayNonUniformIndexingNative has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.shaderUniformBufferArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderSampledImageArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDescriptorIndexingProperties.shaderSampledImageArrayNonUniformIndexingNative has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.shaderSampledImageArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageBufferArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDescriptorIndexingProperties.shaderStorageBufferArrayNonUniformIndexingNative has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.shaderStorageBufferArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderStorageImageArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDescriptorIndexingProperties.shaderStorageImageArrayNonUniformIndexingNative has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.shaderStorageImageArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "shaderInputAttachmentArrayNonUniformIndexingNative"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceDescriptorIndexingProperties.shaderInputAttachmentArrayNonUniformIndexingNative has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.shaderInputAttachmentArrayNonUniformIndexingNative has unexpected size % instead of 4", it.type.runtime_size); case "robustBufferAccessUpdateAfterBind"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDescriptorIndexingProperties.robustBufferAccessUpdateAfterBind has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.robustBufferAccessUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "quadDivergentImplicitLod"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceDescriptorIndexingProperties.quadDivergentImplicitLod has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.quadDivergentImplicitLod has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindSamplers"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindSamplers has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindUniformBuffers"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindUniformBuffers has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindStorageBuffers"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindStorageBuffers has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindSampledImages"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindSampledImages has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindStorageImages"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindStorageImages has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindInputAttachments"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindInputAttachments has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageDescriptorUpdateAfterBindInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageUpdateAfterBindResources"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageUpdateAfterBindResources has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxPerStageUpdateAfterBindResources has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindSamplers"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindSamplers has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindSamplers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindUniformBuffers"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindUniformBuffers has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindUniformBuffersDynamic"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindUniformBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageBuffers"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageBuffers has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageBuffersDynamic"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindSampledImages"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindSampledImages has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindSampledImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindStorageImages"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageImages has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindStorageImages has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindInputAttachments"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindInputAttachments has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorIndexingProperties.maxDescriptorSetUpdateAfterBindInputAttachments has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorIndexingProperties) == 112, "VkPhysicalDeviceDescriptorIndexingProperties has size % instead of 112", size_of(VkPhysicalDeviceDescriptorIndexingProperties)); } { info := type_info(VkDescriptorSetVariableDescriptorCountAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetVariableDescriptorCountAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetVariableDescriptorCountAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetVariableDescriptorCountAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetVariableDescriptorCountAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorSetCount"; assert(it.offset_in_bytes == 16, "VkDescriptorSetVariableDescriptorCountAllocateInfo.descriptorSetCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetVariableDescriptorCountAllocateInfo.descriptorSetCount has unexpected size % instead of 4", it.type.runtime_size); case "pDescriptorCounts"; assert(it.offset_in_bytes == 24, "VkDescriptorSetVariableDescriptorCountAllocateInfo.pDescriptorCounts has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetVariableDescriptorCountAllocateInfo.pDescriptorCounts has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorSetVariableDescriptorCountAllocateInfo) == 32, "VkDescriptorSetVariableDescriptorCountAllocateInfo has size % instead of 32", size_of(VkDescriptorSetVariableDescriptorCountAllocateInfo)); } { info := type_info(VkDescriptorSetVariableDescriptorCountLayoutSupport); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetVariableDescriptorCountLayoutSupport.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetVariableDescriptorCountLayoutSupport.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetVariableDescriptorCountLayoutSupport.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetVariableDescriptorCountLayoutSupport.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxVariableDescriptorCount"; assert(it.offset_in_bytes == 16, "VkDescriptorSetVariableDescriptorCountLayoutSupport.maxVariableDescriptorCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetVariableDescriptorCountLayoutSupport.maxVariableDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorSetVariableDescriptorCountLayoutSupport) == 24, "VkDescriptorSetVariableDescriptorCountLayoutSupport has size % instead of 24", size_of(VkDescriptorSetVariableDescriptorCountLayoutSupport)); } { info := type_info(VkSubpassDescriptionDepthStencilResolve); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassDescriptionDepthStencilResolve.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescriptionDepthStencilResolve.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassDescriptionDepthStencilResolve.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescriptionDepthStencilResolve.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthResolveMode"; assert(it.offset_in_bytes == 16, "VkSubpassDescriptionDepthStencilResolve.depthResolveMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescriptionDepthStencilResolve.depthResolveMode has unexpected size % instead of 4", it.type.runtime_size); case "stencilResolveMode"; assert(it.offset_in_bytes == 20, "VkSubpassDescriptionDepthStencilResolve.stencilResolveMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassDescriptionDepthStencilResolve.stencilResolveMode has unexpected size % instead of 4", it.type.runtime_size); case "pDepthStencilResolveAttachment"; assert(it.offset_in_bytes == 24, "VkSubpassDescriptionDepthStencilResolve.pDepthStencilResolveAttachment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassDescriptionDepthStencilResolve.pDepthStencilResolveAttachment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubpassDescriptionDepthStencilResolve) == 32, "VkSubpassDescriptionDepthStencilResolve has size % instead of 32", size_of(VkSubpassDescriptionDepthStencilResolve)); } { info := type_info(VkPhysicalDeviceDepthStencilResolveProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthStencilResolveProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthStencilResolveProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthStencilResolveProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthStencilResolveProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportedDepthResolveModes"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthStencilResolveProperties.supportedDepthResolveModes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthStencilResolveProperties.supportedDepthResolveModes has unexpected size % instead of 4", it.type.runtime_size); case "supportedStencilResolveModes"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDepthStencilResolveProperties.supportedStencilResolveModes has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthStencilResolveProperties.supportedStencilResolveModes has unexpected size % instead of 4", it.type.runtime_size); case "independentResolveNone"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDepthStencilResolveProperties.independentResolveNone has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthStencilResolveProperties.independentResolveNone has unexpected size % instead of 4", it.type.runtime_size); case "independentResolve"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDepthStencilResolveProperties.independentResolve has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthStencilResolveProperties.independentResolve has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthStencilResolveProperties) == 32, "VkPhysicalDeviceDepthStencilResolveProperties has size % instead of 32", size_of(VkPhysicalDeviceDepthStencilResolveProperties)); } { info := type_info(VkPhysicalDeviceScalarBlockLayoutFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceScalarBlockLayoutFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceScalarBlockLayoutFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceScalarBlockLayoutFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceScalarBlockLayoutFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "scalarBlockLayout"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceScalarBlockLayoutFeatures.scalarBlockLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceScalarBlockLayoutFeatures.scalarBlockLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceScalarBlockLayoutFeatures) == 24, "VkPhysicalDeviceScalarBlockLayoutFeatures has size % instead of 24", size_of(VkPhysicalDeviceScalarBlockLayoutFeatures)); } { info := type_info(VkImageStencilUsageCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageStencilUsageCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageStencilUsageCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageStencilUsageCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageStencilUsageCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stencilUsage"; assert(it.offset_in_bytes == 16, "VkImageStencilUsageCreateInfo.stencilUsage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageStencilUsageCreateInfo.stencilUsage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageStencilUsageCreateInfo) == 24, "VkImageStencilUsageCreateInfo has size % instead of 24", size_of(VkImageStencilUsageCreateInfo)); } { info := type_info(VkSamplerReductionModeCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerReductionModeCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerReductionModeCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerReductionModeCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerReductionModeCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "reductionMode"; assert(it.offset_in_bytes == 16, "VkSamplerReductionModeCreateInfo.reductionMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerReductionModeCreateInfo.reductionMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerReductionModeCreateInfo) == 24, "VkSamplerReductionModeCreateInfo has size % instead of 24", size_of(VkSamplerReductionModeCreateInfo)); } { info := type_info(VkPhysicalDeviceSamplerFilterMinmaxProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSamplerFilterMinmaxProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSamplerFilterMinmaxProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSamplerFilterMinmaxProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSamplerFilterMinmaxProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "filterMinmaxSingleComponentFormats"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSamplerFilterMinmaxProperties.filterMinmaxSingleComponentFormats has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSamplerFilterMinmaxProperties.filterMinmaxSingleComponentFormats has unexpected size % instead of 4", it.type.runtime_size); case "filterMinmaxImageComponentMapping"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSamplerFilterMinmaxProperties.filterMinmaxImageComponentMapping has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSamplerFilterMinmaxProperties.filterMinmaxImageComponentMapping has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSamplerFilterMinmaxProperties) == 24, "VkPhysicalDeviceSamplerFilterMinmaxProperties has size % instead of 24", size_of(VkPhysicalDeviceSamplerFilterMinmaxProperties)); } { info := type_info(VkPhysicalDeviceVulkanMemoryModelFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkanMemoryModelFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkanMemoryModelFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkanMemoryModelFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkanMemoryModelFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vulkanMemoryModel"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModel has unexpected size % instead of 4", it.type.runtime_size); case "vulkanMemoryModelDeviceScope"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModelDeviceScope has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModelDeviceScope has unexpected size % instead of 4", it.type.runtime_size); case "vulkanMemoryModelAvailabilityVisibilityChains"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModelAvailabilityVisibilityChains has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkanMemoryModelFeatures.vulkanMemoryModelAvailabilityVisibilityChains has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkanMemoryModelFeatures) == 32, "VkPhysicalDeviceVulkanMemoryModelFeatures has size % instead of 32", size_of(VkPhysicalDeviceVulkanMemoryModelFeatures)); } { info := type_info(VkPhysicalDeviceImagelessFramebufferFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImagelessFramebufferFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImagelessFramebufferFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImagelessFramebufferFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImagelessFramebufferFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imagelessFramebuffer"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImagelessFramebufferFeatures.imagelessFramebuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImagelessFramebufferFeatures.imagelessFramebuffer has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImagelessFramebufferFeatures) == 24, "VkPhysicalDeviceImagelessFramebufferFeatures has size % instead of 24", size_of(VkPhysicalDeviceImagelessFramebufferFeatures)); } { info := type_info(VkFramebufferAttachmentImageInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFramebufferAttachmentImageInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFramebufferAttachmentImageInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferAttachmentImageInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkFramebufferAttachmentImageInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 20, "VkFramebufferAttachmentImageInfo.usage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.usage has unexpected size % instead of 4", it.type.runtime_size); case "width"; assert(it.offset_in_bytes == 24, "VkFramebufferAttachmentImageInfo.width has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 28, "VkFramebufferAttachmentImageInfo.height has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.height has unexpected size % instead of 4", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 32, "VkFramebufferAttachmentImageInfo.layerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.layerCount has unexpected size % instead of 4", it.type.runtime_size); case "viewFormatCount"; assert(it.offset_in_bytes == 36, "VkFramebufferAttachmentImageInfo.viewFormatCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentImageInfo.viewFormatCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewFormats"; assert(it.offset_in_bytes == 40, "VkFramebufferAttachmentImageInfo.pViewFormats has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferAttachmentImageInfo.pViewFormats has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkFramebufferAttachmentImageInfo) == 48, "VkFramebufferAttachmentImageInfo has size % instead of 48", size_of(VkFramebufferAttachmentImageInfo)); } { info := type_info(VkFramebufferAttachmentsCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFramebufferAttachmentsCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentsCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFramebufferAttachmentsCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferAttachmentsCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentImageInfoCount"; assert(it.offset_in_bytes == 16, "VkFramebufferAttachmentsCreateInfo.attachmentImageInfoCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferAttachmentsCreateInfo.attachmentImageInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachmentImageInfos"; assert(it.offset_in_bytes == 24, "VkFramebufferAttachmentsCreateInfo.pAttachmentImageInfos has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferAttachmentsCreateInfo.pAttachmentImageInfos has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkFramebufferAttachmentsCreateInfo) == 32, "VkFramebufferAttachmentsCreateInfo has size % instead of 32", size_of(VkFramebufferAttachmentsCreateInfo)); } { info := type_info(VkRenderPassAttachmentBeginInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassAttachmentBeginInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassAttachmentBeginInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassAttachmentBeginInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassAttachmentBeginInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 16, "VkRenderPassAttachmentBeginInfo.attachmentCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassAttachmentBeginInfo.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachments"; assert(it.offset_in_bytes == 24, "VkRenderPassAttachmentBeginInfo.pAttachments has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassAttachmentBeginInfo.pAttachments has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassAttachmentBeginInfo) == 32, "VkRenderPassAttachmentBeginInfo has size % instead of 32", size_of(VkRenderPassAttachmentBeginInfo)); } { info := type_info(VkPhysicalDeviceUniformBufferStandardLayoutFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "uniformBufferStandardLayout"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.uniformBufferStandardLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures.uniformBufferStandardLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceUniformBufferStandardLayoutFeatures) == 24, "VkPhysicalDeviceUniformBufferStandardLayoutFeatures has size % instead of 24", size_of(VkPhysicalDeviceUniformBufferStandardLayoutFeatures)); } { info := type_info(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSubgroupExtendedTypes"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.shaderSubgroupExtendedTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures.shaderSubgroupExtendedTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures) == 24, "VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures)); } { info := type_info(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "separateDepthStencilLayouts"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.separateDepthStencilLayouts has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures.separateDepthStencilLayouts has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures) == 24, "VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures has size % instead of 24", size_of(VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures)); } { info := type_info(VkAttachmentReferenceStencilLayout); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAttachmentReferenceStencilLayout.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReferenceStencilLayout.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAttachmentReferenceStencilLayout.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentReferenceStencilLayout.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stencilLayout"; assert(it.offset_in_bytes == 16, "VkAttachmentReferenceStencilLayout.stencilLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentReferenceStencilLayout.stencilLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentReferenceStencilLayout) == 24, "VkAttachmentReferenceStencilLayout has size % instead of 24", size_of(VkAttachmentReferenceStencilLayout)); } { info := type_info(VkAttachmentDescriptionStencilLayout); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAttachmentDescriptionStencilLayout.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescriptionStencilLayout.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAttachmentDescriptionStencilLayout.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentDescriptionStencilLayout.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stencilInitialLayout"; assert(it.offset_in_bytes == 16, "VkAttachmentDescriptionStencilLayout.stencilInitialLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescriptionStencilLayout.stencilInitialLayout has unexpected size % instead of 4", it.type.runtime_size); case "stencilFinalLayout"; assert(it.offset_in_bytes == 20, "VkAttachmentDescriptionStencilLayout.stencilFinalLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentDescriptionStencilLayout.stencilFinalLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentDescriptionStencilLayout) == 24, "VkAttachmentDescriptionStencilLayout has size % instead of 24", size_of(VkAttachmentDescriptionStencilLayout)); } { info := type_info(VkPhysicalDeviceHostQueryResetFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceHostQueryResetFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostQueryResetFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceHostQueryResetFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHostQueryResetFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hostQueryReset"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceHostQueryResetFeatures.hostQueryReset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostQueryResetFeatures.hostQueryReset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceHostQueryResetFeatures) == 24, "VkPhysicalDeviceHostQueryResetFeatures has size % instead of 24", size_of(VkPhysicalDeviceHostQueryResetFeatures)); } { info := type_info(VkPhysicalDeviceTimelineSemaphoreFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTimelineSemaphoreFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTimelineSemaphoreFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTimelineSemaphoreFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTimelineSemaphoreFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "timelineSemaphore"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTimelineSemaphoreFeatures.timelineSemaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTimelineSemaphoreFeatures.timelineSemaphore has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTimelineSemaphoreFeatures) == 24, "VkPhysicalDeviceTimelineSemaphoreFeatures has size % instead of 24", size_of(VkPhysicalDeviceTimelineSemaphoreFeatures)); } { info := type_info(VkPhysicalDeviceTimelineSemaphoreProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTimelineSemaphoreProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTimelineSemaphoreProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTimelineSemaphoreProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTimelineSemaphoreProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxTimelineSemaphoreValueDifference"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTimelineSemaphoreProperties.maxTimelineSemaphoreValueDifference has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTimelineSemaphoreProperties.maxTimelineSemaphoreValueDifference has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTimelineSemaphoreProperties) == 24, "VkPhysicalDeviceTimelineSemaphoreProperties has size % instead of 24", size_of(VkPhysicalDeviceTimelineSemaphoreProperties)); } { info := type_info(VkSemaphoreTypeCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreTypeCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreTypeCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreTypeCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreTypeCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "semaphoreType"; assert(it.offset_in_bytes == 16, "VkSemaphoreTypeCreateInfo.semaphoreType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreTypeCreateInfo.semaphoreType has unexpected size % instead of 4", it.type.runtime_size); case "initialValue"; assert(it.offset_in_bytes == 24, "VkSemaphoreTypeCreateInfo.initialValue has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreTypeCreateInfo.initialValue has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSemaphoreTypeCreateInfo) == 32, "VkSemaphoreTypeCreateInfo has size % instead of 32", size_of(VkSemaphoreTypeCreateInfo)); } { info := type_info(VkTimelineSemaphoreSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTimelineSemaphoreSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTimelineSemaphoreSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTimelineSemaphoreSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTimelineSemaphoreSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "waitSemaphoreValueCount"; assert(it.offset_in_bytes == 16, "VkTimelineSemaphoreSubmitInfo.waitSemaphoreValueCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTimelineSemaphoreSubmitInfo.waitSemaphoreValueCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphoreValues"; assert(it.offset_in_bytes == 24, "VkTimelineSemaphoreSubmitInfo.pWaitSemaphoreValues has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTimelineSemaphoreSubmitInfo.pWaitSemaphoreValues has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphoreValueCount"; assert(it.offset_in_bytes == 32, "VkTimelineSemaphoreSubmitInfo.signalSemaphoreValueCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTimelineSemaphoreSubmitInfo.signalSemaphoreValueCount has unexpected size % instead of 4", it.type.runtime_size); case "pSignalSemaphoreValues"; assert(it.offset_in_bytes == 40, "VkTimelineSemaphoreSubmitInfo.pSignalSemaphoreValues has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTimelineSemaphoreSubmitInfo.pSignalSemaphoreValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkTimelineSemaphoreSubmitInfo) == 48, "VkTimelineSemaphoreSubmitInfo has size % instead of 48", size_of(VkTimelineSemaphoreSubmitInfo)); } { info := type_info(VkSemaphoreWaitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreWaitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreWaitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreWaitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreWaitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSemaphoreWaitInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreWaitInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "semaphoreCount"; assert(it.offset_in_bytes == 20, "VkSemaphoreWaitInfo.semaphoreCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreWaitInfo.semaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pSemaphores"; assert(it.offset_in_bytes == 24, "VkSemaphoreWaitInfo.pSemaphores has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreWaitInfo.pSemaphores has unexpected size % instead of 8", it.type.runtime_size); case "pValues"; assert(it.offset_in_bytes == 32, "VkSemaphoreWaitInfo.pValues has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreWaitInfo.pValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSemaphoreWaitInfo) == 40, "VkSemaphoreWaitInfo has size % instead of 40", size_of(VkSemaphoreWaitInfo)); } { info := type_info(VkSemaphoreSignalInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreSignalInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreSignalInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreSignalInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSignalInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "semaphore"; assert(it.offset_in_bytes == 16, "VkSemaphoreSignalInfo.semaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSignalInfo.semaphore has unexpected size % instead of 8", it.type.runtime_size); case "value"; assert(it.offset_in_bytes == 24, "VkSemaphoreSignalInfo.value has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSignalInfo.value has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSemaphoreSignalInfo) == 32, "VkSemaphoreSignalInfo has size % instead of 32", size_of(VkSemaphoreSignalInfo)); } { info := type_info(VkPhysicalDeviceBufferDeviceAddressFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceBufferDeviceAddressFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceBufferDeviceAddressFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceBufferDeviceAddressFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "bufferDeviceAddress"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddress has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddressCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddressCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressMultiDevice"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddressMultiDevice has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeatures.bufferDeviceAddressMultiDevice has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceBufferDeviceAddressFeatures) == 32, "VkPhysicalDeviceBufferDeviceAddressFeatures has size % instead of 32", size_of(VkPhysicalDeviceBufferDeviceAddressFeatures)); } { info := type_info(VkBufferDeviceAddressInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferDeviceAddressInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferDeviceAddressInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferDeviceAddressInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferDeviceAddressInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkBufferDeviceAddressInfo.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferDeviceAddressInfo.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferDeviceAddressInfo) == 24, "VkBufferDeviceAddressInfo has size % instead of 24", size_of(VkBufferDeviceAddressInfo)); } { info := type_info(VkBufferOpaqueCaptureAddressCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferOpaqueCaptureAddressCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferOpaqueCaptureAddressCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferOpaqueCaptureAddressCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferOpaqueCaptureAddressCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "opaqueCaptureAddress"; assert(it.offset_in_bytes == 16, "VkBufferOpaqueCaptureAddressCreateInfo.opaqueCaptureAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferOpaqueCaptureAddressCreateInfo.opaqueCaptureAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferOpaqueCaptureAddressCreateInfo) == 24, "VkBufferOpaqueCaptureAddressCreateInfo has size % instead of 24", size_of(VkBufferOpaqueCaptureAddressCreateInfo)); } { info := type_info(VkMemoryOpaqueCaptureAddressAllocateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryOpaqueCaptureAddressAllocateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryOpaqueCaptureAddressAllocateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryOpaqueCaptureAddressAllocateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryOpaqueCaptureAddressAllocateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "opaqueCaptureAddress"; assert(it.offset_in_bytes == 16, "VkMemoryOpaqueCaptureAddressAllocateInfo.opaqueCaptureAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryOpaqueCaptureAddressAllocateInfo.opaqueCaptureAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryOpaqueCaptureAddressAllocateInfo) == 24, "VkMemoryOpaqueCaptureAddressAllocateInfo has size % instead of 24", size_of(VkMemoryOpaqueCaptureAddressAllocateInfo)); } { info := type_info(VkDeviceMemoryOpaqueCaptureAddressInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceMemoryOpaqueCaptureAddressInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryOpaqueCaptureAddressInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceMemoryOpaqueCaptureAddressInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryOpaqueCaptureAddressInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkDeviceMemoryOpaqueCaptureAddressInfo.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryOpaqueCaptureAddressInfo.memory has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceMemoryOpaqueCaptureAddressInfo) == 24, "VkDeviceMemoryOpaqueCaptureAddressInfo has size % instead of 24", size_of(VkDeviceMemoryOpaqueCaptureAddressInfo)); } { info := type_info(VkPhysicalDeviceVulkan13Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan13Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan13Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan13Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "robustImageAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan13Features.robustImageAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.robustImageAccess has unexpected size % instead of 4", it.type.runtime_size); case "inlineUniformBlock"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan13Features.inlineUniformBlock has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.inlineUniformBlock has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingInlineUniformBlockUpdateAfterBind"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan13Features.descriptorBindingInlineUniformBlockUpdateAfterBind has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.descriptorBindingInlineUniformBlockUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); case "pipelineCreationCacheControl"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan13Features.pipelineCreationCacheControl has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.pipelineCreationCacheControl has unexpected size % instead of 4", it.type.runtime_size); case "privateData"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan13Features.privateData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.privateData has unexpected size % instead of 4", it.type.runtime_size); case "shaderDemoteToHelperInvocation"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan13Features.shaderDemoteToHelperInvocation has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.shaderDemoteToHelperInvocation has unexpected size % instead of 4", it.type.runtime_size); case "shaderTerminateInvocation"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan13Features.shaderTerminateInvocation has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.shaderTerminateInvocation has unexpected size % instead of 4", it.type.runtime_size); case "subgroupSizeControl"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan13Features.subgroupSizeControl has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.subgroupSizeControl has unexpected size % instead of 4", it.type.runtime_size); case "computeFullSubgroups"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan13Features.computeFullSubgroups has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.computeFullSubgroups has unexpected size % instead of 4", it.type.runtime_size); case "synchronization2"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan13Features.synchronization2 has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.synchronization2 has unexpected size % instead of 4", it.type.runtime_size); case "textureCompressionASTC_HDR"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan13Features.textureCompressionASTC_HDR has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.textureCompressionASTC_HDR has unexpected size % instead of 4", it.type.runtime_size); case "shaderZeroInitializeWorkgroupMemory"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan13Features.shaderZeroInitializeWorkgroupMemory has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.shaderZeroInitializeWorkgroupMemory has unexpected size % instead of 4", it.type.runtime_size); case "dynamicRendering"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan13Features.dynamicRendering has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.dynamicRendering has unexpected size % instead of 4", it.type.runtime_size); case "shaderIntegerDotProduct"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan13Features.shaderIntegerDotProduct has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.shaderIntegerDotProduct has unexpected size % instead of 4", it.type.runtime_size); case "maintenance4"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan13Features.maintenance4 has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Features.maintenance4 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan13Features) == 80, "VkPhysicalDeviceVulkan13Features has size % instead of 80", size_of(VkPhysicalDeviceVulkan13Features)); } { info := type_info(VkPhysicalDeviceVulkan13Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan13Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan13Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan13Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minSubgroupSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan13Properties.minSubgroupSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.minSubgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "maxSubgroupSize"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan13Properties.maxSubgroupSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxSubgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "maxComputeWorkgroupSubgroups"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan13Properties.maxComputeWorkgroupSubgroups has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxComputeWorkgroupSubgroups has unexpected size % instead of 4", it.type.runtime_size); case "requiredSubgroupSizeStages"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan13Properties.requiredSubgroupSizeStages has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.requiredSubgroupSizeStages has unexpected size % instead of 4", it.type.runtime_size); case "maxInlineUniformBlockSize"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan13Properties.maxInlineUniformBlockSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxInlineUniformBlockSize has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorInlineUniformBlocks"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan13Properties.maxPerStageDescriptorInlineUniformBlocks has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxPerStageDescriptorInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan13Properties.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetInlineUniformBlocks"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan13Properties.maxDescriptorSetInlineUniformBlocks has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxDescriptorSetInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindInlineUniformBlocks"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan13Properties.maxDescriptorSetUpdateAfterBindInlineUniformBlocks has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxDescriptorSetUpdateAfterBindInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxInlineUniformTotalSize"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan13Properties.maxInlineUniformTotalSize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.maxInlineUniformTotalSize has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct8BitUnsignedAccelerated"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitUnsignedAccelerated has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct8BitSignedAccelerated"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitSignedAccelerated has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct8BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitMixedSignednessAccelerated has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct8BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedUnsignedAccelerated"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedUnsignedAccelerated has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedSignedAccelerated"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedSignedAccelerated has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedMixedSignednessAccelerated"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedMixedSignednessAccelerated has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct4x8BitPackedMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitUnsignedAccelerated"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitUnsignedAccelerated has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitSignedAccelerated"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitSignedAccelerated has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitMixedSignednessAccelerated has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct16BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitUnsignedAccelerated"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitUnsignedAccelerated has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitSignedAccelerated"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitSignedAccelerated has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitMixedSignednessAccelerated has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct32BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitUnsignedAccelerated"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitUnsignedAccelerated has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitSignedAccelerated"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitSignedAccelerated has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitMixedSignednessAccelerated has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProduct64BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitUnsignedAccelerated"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitSignedAccelerated"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitSignedAccelerated has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitUnsignedAccelerated"; assert(it.offset_in_bytes == 140, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated has unexpected offset % instead of 140", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitSignedAccelerated"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitSignedAccelerated has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 148, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated has unexpected offset % instead of 148", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitUnsignedAccelerated"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitSignedAccelerated"; assert(it.offset_in_bytes == 156, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitSignedAccelerated has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 160, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitUnsignedAccelerated"; assert(it.offset_in_bytes == 164, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated has unexpected offset % instead of 164", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitSignedAccelerated"; assert(it.offset_in_bytes == 168, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitSignedAccelerated has unexpected offset % instead of 168", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 172, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated has unexpected offset % instead of 172", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "storageTexelBufferOffsetAlignmentBytes"; assert(it.offset_in_bytes == 176, "VkPhysicalDeviceVulkan13Properties.storageTexelBufferOffsetAlignmentBytes has unexpected offset % instead of 176", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan13Properties.storageTexelBufferOffsetAlignmentBytes has unexpected size % instead of 8", it.type.runtime_size); case "storageTexelBufferOffsetSingleTexelAlignment"; assert(it.offset_in_bytes == 184, "VkPhysicalDeviceVulkan13Properties.storageTexelBufferOffsetSingleTexelAlignment has unexpected offset % instead of 184", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.storageTexelBufferOffsetSingleTexelAlignment has unexpected size % instead of 4", it.type.runtime_size); case "uniformTexelBufferOffsetAlignmentBytes"; assert(it.offset_in_bytes == 192, "VkPhysicalDeviceVulkan13Properties.uniformTexelBufferOffsetAlignmentBytes has unexpected offset % instead of 192", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan13Properties.uniformTexelBufferOffsetAlignmentBytes has unexpected size % instead of 8", it.type.runtime_size); case "uniformTexelBufferOffsetSingleTexelAlignment"; assert(it.offset_in_bytes == 200, "VkPhysicalDeviceVulkan13Properties.uniformTexelBufferOffsetSingleTexelAlignment has unexpected offset % instead of 200", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan13Properties.uniformTexelBufferOffsetSingleTexelAlignment has unexpected size % instead of 4", it.type.runtime_size); case "maxBufferSize"; assert(it.offset_in_bytes == 208, "VkPhysicalDeviceVulkan13Properties.maxBufferSize has unexpected offset % instead of 208", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan13Properties.maxBufferSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan13Properties) == 216, "VkPhysicalDeviceVulkan13Properties has size % instead of 216", size_of(VkPhysicalDeviceVulkan13Properties)); } { info := type_info(VkPipelineCreationFeedback); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "VkPipelineCreationFeedback.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCreationFeedback.flags has unexpected size % instead of 4", it.type.runtime_size); case "duration"; assert(it.offset_in_bytes == 8, "VkPipelineCreationFeedback.duration has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreationFeedback.duration has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCreationFeedback) == 16, "VkPipelineCreationFeedback has size % instead of 16", size_of(VkPipelineCreationFeedback)); } { info := type_info(VkPipelineCreationFeedbackCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCreationFeedbackCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCreationFeedbackCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCreationFeedbackCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreationFeedbackCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pPipelineCreationFeedback"; assert(it.offset_in_bytes == 16, "VkPipelineCreationFeedbackCreateInfo.pPipelineCreationFeedback has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreationFeedbackCreateInfo.pPipelineCreationFeedback has unexpected size % instead of 8", it.type.runtime_size); case "pipelineStageCreationFeedbackCount"; assert(it.offset_in_bytes == 24, "VkPipelineCreationFeedbackCreateInfo.pipelineStageCreationFeedbackCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCreationFeedbackCreateInfo.pipelineStageCreationFeedbackCount has unexpected size % instead of 4", it.type.runtime_size); case "pPipelineStageCreationFeedbacks"; assert(it.offset_in_bytes == 32, "VkPipelineCreationFeedbackCreateInfo.pPipelineStageCreationFeedbacks has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreationFeedbackCreateInfo.pPipelineStageCreationFeedbacks has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCreationFeedbackCreateInfo) == 40, "VkPipelineCreationFeedbackCreateInfo has size % instead of 40", size_of(VkPipelineCreationFeedbackCreateInfo)); } { info := type_info(VkPhysicalDeviceShaderTerminateInvocationFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderTerminateInvocationFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTerminateInvocationFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderTerminateInvocationFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderTerminateInvocationFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderTerminateInvocation"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderTerminateInvocationFeatures.shaderTerminateInvocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTerminateInvocationFeatures.shaderTerminateInvocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderTerminateInvocationFeatures) == 24, "VkPhysicalDeviceShaderTerminateInvocationFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderTerminateInvocationFeatures)); } { info := type_info(VkPhysicalDeviceToolProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceToolProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceToolProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceToolProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceToolProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "name"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceToolProperties.name has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceToolProperties.name has unexpected size % instead of 256", it.type.runtime_size); case "version"; assert(it.offset_in_bytes == 272, "VkPhysicalDeviceToolProperties.version has unexpected offset % instead of 272", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceToolProperties.version has unexpected size % instead of 256", it.type.runtime_size); case "purposes"; assert(it.offset_in_bytes == 528, "VkPhysicalDeviceToolProperties.purposes has unexpected offset % instead of 528", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceToolProperties.purposes has unexpected size % instead of 4", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 532, "VkPhysicalDeviceToolProperties.description has unexpected offset % instead of 532", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceToolProperties.description has unexpected size % instead of 256", it.type.runtime_size); case "layer"; assert(it.offset_in_bytes == 788, "VkPhysicalDeviceToolProperties.layer has unexpected offset % instead of 788", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceToolProperties.layer has unexpected size % instead of 256", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceToolProperties) == 1048, "VkPhysicalDeviceToolProperties has size % instead of 1048", size_of(VkPhysicalDeviceToolProperties)); } { info := type_info(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderDemoteToHelperInvocation"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.shaderDemoteToHelperInvocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures.shaderDemoteToHelperInvocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures) == 24, "VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures)); } { info := type_info(VkPhysicalDevicePrivateDataFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePrivateDataFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrivateDataFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePrivateDataFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePrivateDataFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "privateData"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePrivateDataFeatures.privateData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrivateDataFeatures.privateData has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePrivateDataFeatures) == 24, "VkPhysicalDevicePrivateDataFeatures has size % instead of 24", size_of(VkPhysicalDevicePrivateDataFeatures)); } { info := type_info(VkDevicePrivateDataCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDevicePrivateDataCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDevicePrivateDataCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDevicePrivateDataCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDevicePrivateDataCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "privateDataSlotRequestCount"; assert(it.offset_in_bytes == 16, "VkDevicePrivateDataCreateInfo.privateDataSlotRequestCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDevicePrivateDataCreateInfo.privateDataSlotRequestCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDevicePrivateDataCreateInfo) == 24, "VkDevicePrivateDataCreateInfo has size % instead of 24", size_of(VkDevicePrivateDataCreateInfo)); } { info := type_info(VkPrivateDataSlotCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPrivateDataSlotCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPrivateDataSlotCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPrivateDataSlotCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPrivateDataSlotCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPrivateDataSlotCreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPrivateDataSlotCreateInfo.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPrivateDataSlotCreateInfo) == 24, "VkPrivateDataSlotCreateInfo has size % instead of 24", size_of(VkPrivateDataSlotCreateInfo)); } { info := type_info(VkPhysicalDevicePipelineCreationCacheControlFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineCreationCacheControlFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineCreationCacheControlFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineCreationCacheControlFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineCreationCacheControlFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineCreationCacheControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineCreationCacheControlFeatures.pipelineCreationCacheControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineCreationCacheControlFeatures.pipelineCreationCacheControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineCreationCacheControlFeatures) == 24, "VkPhysicalDevicePipelineCreationCacheControlFeatures has size % instead of 24", size_of(VkPhysicalDevicePipelineCreationCacheControlFeatures)); } { info := type_info(VkMemoryBarrier2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryBarrier2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryBarrier2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryBarrier2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcStageMask"; assert(it.offset_in_bytes == 16, "VkMemoryBarrier2.srcStageMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier2.srcStageMask has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 24, "VkMemoryBarrier2.srcAccessMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier2.srcAccessMask has unexpected size % instead of 8", it.type.runtime_size); case "dstStageMask"; assert(it.offset_in_bytes == 32, "VkMemoryBarrier2.dstStageMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier2.dstStageMask has unexpected size % instead of 8", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 40, "VkMemoryBarrier2.dstAccessMask has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrier2.dstAccessMask has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryBarrier2) == 48, "VkMemoryBarrier2 has size % instead of 48", size_of(VkMemoryBarrier2)); } { info := type_info(VkBufferMemoryBarrier2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferMemoryBarrier2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferMemoryBarrier2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcStageMask"; assert(it.offset_in_bytes == 16, "VkBufferMemoryBarrier2.srcStageMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.srcStageMask has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 24, "VkBufferMemoryBarrier2.srcAccessMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.srcAccessMask has unexpected size % instead of 8", it.type.runtime_size); case "dstStageMask"; assert(it.offset_in_bytes == 32, "VkBufferMemoryBarrier2.dstStageMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.dstStageMask has unexpected size % instead of 8", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 40, "VkBufferMemoryBarrier2.dstAccessMask has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.dstAccessMask has unexpected size % instead of 8", it.type.runtime_size); case "srcQueueFamilyIndex"; assert(it.offset_in_bytes == 48, "VkBufferMemoryBarrier2.srcQueueFamilyIndex has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier2.srcQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "dstQueueFamilyIndex"; assert(it.offset_in_bytes == 52, "VkBufferMemoryBarrier2.dstQueueFamilyIndex has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferMemoryBarrier2.dstQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 56, "VkBufferMemoryBarrier2.buffer has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 64, "VkBufferMemoryBarrier2.offset has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 72, "VkBufferMemoryBarrier2.size has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferMemoryBarrier2.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferMemoryBarrier2) == 80, "VkBufferMemoryBarrier2 has size % instead of 80", size_of(VkBufferMemoryBarrier2)); } { info := type_info(VkImageMemoryBarrier2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageMemoryBarrier2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageMemoryBarrier2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcStageMask"; assert(it.offset_in_bytes == 16, "VkImageMemoryBarrier2.srcStageMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.srcStageMask has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask"; assert(it.offset_in_bytes == 24, "VkImageMemoryBarrier2.srcAccessMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.srcAccessMask has unexpected size % instead of 8", it.type.runtime_size); case "dstStageMask"; assert(it.offset_in_bytes == 32, "VkImageMemoryBarrier2.dstStageMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.dstStageMask has unexpected size % instead of 8", it.type.runtime_size); case "dstAccessMask"; assert(it.offset_in_bytes == 40, "VkImageMemoryBarrier2.dstAccessMask has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.dstAccessMask has unexpected size % instead of 8", it.type.runtime_size); case "oldLayout"; assert(it.offset_in_bytes == 48, "VkImageMemoryBarrier2.oldLayout has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier2.oldLayout has unexpected size % instead of 4", it.type.runtime_size); case "newLayout"; assert(it.offset_in_bytes == 52, "VkImageMemoryBarrier2.newLayout has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier2.newLayout has unexpected size % instead of 4", it.type.runtime_size); case "srcQueueFamilyIndex"; assert(it.offset_in_bytes == 56, "VkImageMemoryBarrier2.srcQueueFamilyIndex has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier2.srcQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "dstQueueFamilyIndex"; assert(it.offset_in_bytes == 60, "VkImageMemoryBarrier2.dstQueueFamilyIndex has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageMemoryBarrier2.dstQueueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 64, "VkImageMemoryBarrier2.image has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageMemoryBarrier2.image has unexpected size % instead of 8", it.type.runtime_size); case "subresourceRange"; assert(it.offset_in_bytes == 72, "VkImageMemoryBarrier2.subresourceRange has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkImageMemoryBarrier2.subresourceRange has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkImageMemoryBarrier2) == 96, "VkImageMemoryBarrier2 has size % instead of 96", size_of(VkImageMemoryBarrier2)); } { info := type_info(VkDependencyInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDependencyInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDependencyInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDependencyInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDependencyInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dependencyFlags"; assert(it.offset_in_bytes == 16, "VkDependencyInfo.dependencyFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDependencyInfo.dependencyFlags has unexpected size % instead of 4", it.type.runtime_size); case "memoryBarrierCount"; assert(it.offset_in_bytes == 20, "VkDependencyInfo.memoryBarrierCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDependencyInfo.memoryBarrierCount has unexpected size % instead of 4", it.type.runtime_size); case "pMemoryBarriers"; assert(it.offset_in_bytes == 24, "VkDependencyInfo.pMemoryBarriers has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDependencyInfo.pMemoryBarriers has unexpected size % instead of 8", it.type.runtime_size); case "bufferMemoryBarrierCount"; assert(it.offset_in_bytes == 32, "VkDependencyInfo.bufferMemoryBarrierCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDependencyInfo.bufferMemoryBarrierCount has unexpected size % instead of 4", it.type.runtime_size); case "pBufferMemoryBarriers"; assert(it.offset_in_bytes == 40, "VkDependencyInfo.pBufferMemoryBarriers has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDependencyInfo.pBufferMemoryBarriers has unexpected size % instead of 8", it.type.runtime_size); case "imageMemoryBarrierCount"; assert(it.offset_in_bytes == 48, "VkDependencyInfo.imageMemoryBarrierCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDependencyInfo.imageMemoryBarrierCount has unexpected size % instead of 4", it.type.runtime_size); case "pImageMemoryBarriers"; assert(it.offset_in_bytes == 56, "VkDependencyInfo.pImageMemoryBarriers has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDependencyInfo.pImageMemoryBarriers has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDependencyInfo) == 64, "VkDependencyInfo has size % instead of 64", size_of(VkDependencyInfo)); } { info := type_info(VkSemaphoreSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "semaphore"; assert(it.offset_in_bytes == 16, "VkSemaphoreSubmitInfo.semaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSubmitInfo.semaphore has unexpected size % instead of 8", it.type.runtime_size); case "value"; assert(it.offset_in_bytes == 24, "VkSemaphoreSubmitInfo.value has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSubmitInfo.value has unexpected size % instead of 8", it.type.runtime_size); case "stageMask"; assert(it.offset_in_bytes == 32, "VkSemaphoreSubmitInfo.stageMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreSubmitInfo.stageMask has unexpected size % instead of 8", it.type.runtime_size); case "deviceIndex"; assert(it.offset_in_bytes == 40, "VkSemaphoreSubmitInfo.deviceIndex has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreSubmitInfo.deviceIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSemaphoreSubmitInfo) == 48, "VkSemaphoreSubmitInfo has size % instead of 48", size_of(VkSemaphoreSubmitInfo)); } { info := type_info(VkCommandBufferSubmitInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferSubmitInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferSubmitInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferSubmitInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferSubmitInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "commandBuffer"; assert(it.offset_in_bytes == 16, "VkCommandBufferSubmitInfo.commandBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferSubmitInfo.commandBuffer has unexpected size % instead of 8", it.type.runtime_size); case "deviceMask"; assert(it.offset_in_bytes == 24, "VkCommandBufferSubmitInfo.deviceMask has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferSubmitInfo.deviceMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandBufferSubmitInfo) == 32, "VkCommandBufferSubmitInfo has size % instead of 32", size_of(VkCommandBufferSubmitInfo)); } { info := type_info(VkSubmitInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubmitInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubmitInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSubmitInfo2.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo2.flags has unexpected size % instead of 4", it.type.runtime_size); case "waitSemaphoreInfoCount"; assert(it.offset_in_bytes == 20, "VkSubmitInfo2.waitSemaphoreInfoCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo2.waitSemaphoreInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphoreInfos"; assert(it.offset_in_bytes == 24, "VkSubmitInfo2.pWaitSemaphoreInfos has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo2.pWaitSemaphoreInfos has unexpected size % instead of 8", it.type.runtime_size); case "commandBufferInfoCount"; assert(it.offset_in_bytes == 32, "VkSubmitInfo2.commandBufferInfoCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo2.commandBufferInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pCommandBufferInfos"; assert(it.offset_in_bytes == 40, "VkSubmitInfo2.pCommandBufferInfos has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo2.pCommandBufferInfos has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphoreInfoCount"; assert(it.offset_in_bytes == 48, "VkSubmitInfo2.signalSemaphoreInfoCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubmitInfo2.signalSemaphoreInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pSignalSemaphoreInfos"; assert(it.offset_in_bytes == 56, "VkSubmitInfo2.pSignalSemaphoreInfos has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubmitInfo2.pSignalSemaphoreInfos has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubmitInfo2) == 64, "VkSubmitInfo2 has size % instead of 64", size_of(VkSubmitInfo2)); } { info := type_info(VkPhysicalDeviceSynchronization2Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSynchronization2Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSynchronization2Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSynchronization2Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSynchronization2Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "synchronization2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSynchronization2Features.synchronization2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSynchronization2Features.synchronization2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSynchronization2Features) == 24, "VkPhysicalDeviceSynchronization2Features has size % instead of 24", size_of(VkPhysicalDeviceSynchronization2Features)); } { info := type_info(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderZeroInitializeWorkgroupMemory"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.shaderZeroInitializeWorkgroupMemory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures.shaderZeroInitializeWorkgroupMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures) == 24, "VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures has size % instead of 24", size_of(VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures)); } { info := type_info(VkPhysicalDeviceImageRobustnessFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageRobustnessFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageRobustnessFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageRobustnessFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageRobustnessFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "robustImageAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageRobustnessFeatures.robustImageAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageRobustnessFeatures.robustImageAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageRobustnessFeatures) == 24, "VkPhysicalDeviceImageRobustnessFeatures has size % instead of 24", size_of(VkPhysicalDeviceImageRobustnessFeatures)); } { info := type_info(VkBufferCopy2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferCopy2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCopy2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferCopy2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcOffset"; assert(it.offset_in_bytes == 16, "VkBufferCopy2.srcOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy2.srcOffset has unexpected size % instead of 8", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 24, "VkBufferCopy2.dstOffset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy2.dstOffset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 32, "VkBufferCopy2.size has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCopy2.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferCopy2) == 40, "VkBufferCopy2 has size % instead of 40", size_of(VkBufferCopy2)); } { info := type_info(VkCopyBufferInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyBufferInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyBufferInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyBufferInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcBuffer"; assert(it.offset_in_bytes == 16, "VkCopyBufferInfo2.srcBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferInfo2.srcBuffer has unexpected size % instead of 8", it.type.runtime_size); case "dstBuffer"; assert(it.offset_in_bytes == 24, "VkCopyBufferInfo2.dstBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferInfo2.dstBuffer has unexpected size % instead of 8", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 32, "VkCopyBufferInfo2.regionCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyBufferInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 40, "VkCopyBufferInfo2.pRegions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyBufferInfo2) == 48, "VkCopyBufferInfo2 has size % instead of 48", size_of(VkCopyBufferInfo2)); } { info := type_info(VkImageCopy2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageCopy2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCopy2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageCopy2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCopy2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSubresource"; assert(it.offset_in_bytes == 16, "VkImageCopy2.srcSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageCopy2.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffset"; assert(it.offset_in_bytes == 32, "VkImageCopy2.srcOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy2.srcOffset has unexpected size % instead of 12", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 44, "VkImageCopy2.dstSubresource has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageCopy2.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 60, "VkImageCopy2.dstOffset has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy2.dstOffset has unexpected size % instead of 12", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 72, "VkImageCopy2.extent has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageCopy2.extent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageCopy2) == 88, "VkImageCopy2 has size % instead of 88", size_of(VkImageCopy2)); } { info := type_info(VkCopyImageInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyImageInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyImageInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 16, "VkCopyImageInfo2.srcImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageInfo2.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 24, "VkCopyImageInfo2.srcImageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageInfo2.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 32, "VkCopyImageInfo2.dstImage has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageInfo2.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 40, "VkCopyImageInfo2.dstImageLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageInfo2.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 44, "VkCopyImageInfo2.regionCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 48, "VkCopyImageInfo2.pRegions has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyImageInfo2) == 56, "VkCopyImageInfo2 has size % instead of 56", size_of(VkCopyImageInfo2)); } { info := type_info(VkBufferImageCopy2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferImageCopy2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferImageCopy2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferImageCopy2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferImageCopy2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "bufferOffset"; assert(it.offset_in_bytes == 16, "VkBufferImageCopy2.bufferOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferImageCopy2.bufferOffset has unexpected size % instead of 8", it.type.runtime_size); case "bufferRowLength"; assert(it.offset_in_bytes == 24, "VkBufferImageCopy2.bufferRowLength has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferImageCopy2.bufferRowLength has unexpected size % instead of 4", it.type.runtime_size); case "bufferImageHeight"; assert(it.offset_in_bytes == 28, "VkBufferImageCopy2.bufferImageHeight has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferImageCopy2.bufferImageHeight has unexpected size % instead of 4", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 32, "VkBufferImageCopy2.imageSubresource has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkBufferImageCopy2.imageSubresource has unexpected size % instead of 16", it.type.runtime_size); case "imageOffset"; assert(it.offset_in_bytes == 48, "VkBufferImageCopy2.imageOffset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkBufferImageCopy2.imageOffset has unexpected size % instead of 12", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 60, "VkBufferImageCopy2.imageExtent has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkBufferImageCopy2.imageExtent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkBufferImageCopy2) == 72, "VkBufferImageCopy2 has size % instead of 72", size_of(VkBufferImageCopy2)); } { info := type_info(VkCopyBufferToImageInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyBufferToImageInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyBufferToImageInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyBufferToImageInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferToImageInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcBuffer"; assert(it.offset_in_bytes == 16, "VkCopyBufferToImageInfo2.srcBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferToImageInfo2.srcBuffer has unexpected size % instead of 8", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 24, "VkCopyBufferToImageInfo2.dstImage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferToImageInfo2.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 32, "VkCopyBufferToImageInfo2.dstImageLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyBufferToImageInfo2.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 36, "VkCopyBufferToImageInfo2.regionCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyBufferToImageInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 40, "VkCopyBufferToImageInfo2.pRegions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyBufferToImageInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyBufferToImageInfo2) == 48, "VkCopyBufferToImageInfo2 has size % instead of 48", size_of(VkCopyBufferToImageInfo2)); } { info := type_info(VkCopyImageToBufferInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyImageToBufferInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToBufferInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyImageToBufferInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToBufferInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 16, "VkCopyImageToBufferInfo2.srcImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToBufferInfo2.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 24, "VkCopyImageToBufferInfo2.srcImageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToBufferInfo2.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstBuffer"; assert(it.offset_in_bytes == 32, "VkCopyImageToBufferInfo2.dstBuffer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToBufferInfo2.dstBuffer has unexpected size % instead of 8", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 40, "VkCopyImageToBufferInfo2.regionCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToBufferInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 48, "VkCopyImageToBufferInfo2.pRegions has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToBufferInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyImageToBufferInfo2) == 56, "VkCopyImageToBufferInfo2 has size % instead of 56", size_of(VkCopyImageToBufferInfo2)); } { info := type_info(VkImageBlit2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageBlit2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageBlit2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageBlit2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageBlit2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSubresource"; assert(it.offset_in_bytes == 16, "VkImageBlit2.srcSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageBlit2.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffsets"; assert(it.offset_in_bytes == 32, "VkImageBlit2.srcOffsets has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkImageBlit2.srcOffsets has unexpected size % instead of 24", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 56, "VkImageBlit2.dstSubresource has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageBlit2.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffsets"; assert(it.offset_in_bytes == 72, "VkImageBlit2.dstOffsets has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkImageBlit2.dstOffsets has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkImageBlit2) == 96, "VkImageBlit2 has size % instead of 96", size_of(VkImageBlit2)); } { info := type_info(VkBlitImageInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBlitImageInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBlitImageInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBlitImageInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 16, "VkBlitImageInfo2.srcImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBlitImageInfo2.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 24, "VkBlitImageInfo2.srcImageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageInfo2.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 32, "VkBlitImageInfo2.dstImage has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBlitImageInfo2.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 40, "VkBlitImageInfo2.dstImageLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageInfo2.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 44, "VkBlitImageInfo2.regionCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 48, "VkBlitImageInfo2.pRegions has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBlitImageInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); case "filter"; assert(it.offset_in_bytes == 56, "VkBlitImageInfo2.filter has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageInfo2.filter has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBlitImageInfo2) == 64, "VkBlitImageInfo2 has size % instead of 64", size_of(VkBlitImageInfo2)); } { info := type_info(VkImageResolve2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageResolve2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageResolve2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageResolve2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageResolve2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSubresource"; assert(it.offset_in_bytes == 16, "VkImageResolve2.srcSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageResolve2.srcSubresource has unexpected size % instead of 16", it.type.runtime_size); case "srcOffset"; assert(it.offset_in_bytes == 32, "VkImageResolve2.srcOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve2.srcOffset has unexpected size % instead of 12", it.type.runtime_size); case "dstSubresource"; assert(it.offset_in_bytes == 44, "VkImageResolve2.dstSubresource has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageResolve2.dstSubresource has unexpected size % instead of 16", it.type.runtime_size); case "dstOffset"; assert(it.offset_in_bytes == 60, "VkImageResolve2.dstOffset has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve2.dstOffset has unexpected size % instead of 12", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 72, "VkImageResolve2.extent has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageResolve2.extent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageResolve2) == 88, "VkImageResolve2 has size % instead of 88", size_of(VkImageResolve2)); } { info := type_info(VkResolveImageInfo2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkResolveImageInfo2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkResolveImageInfo2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkResolveImageInfo2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkResolveImageInfo2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 16, "VkResolveImageInfo2.srcImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkResolveImageInfo2.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 24, "VkResolveImageInfo2.srcImageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkResolveImageInfo2.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 32, "VkResolveImageInfo2.dstImage has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkResolveImageInfo2.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 40, "VkResolveImageInfo2.dstImageLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkResolveImageInfo2.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 44, "VkResolveImageInfo2.regionCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkResolveImageInfo2.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 48, "VkResolveImageInfo2.pRegions has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkResolveImageInfo2.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkResolveImageInfo2) == 56, "VkResolveImageInfo2 has size % instead of 56", size_of(VkResolveImageInfo2)); } { info := type_info(VkPhysicalDeviceSubgroupSizeControlFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubgroupSizeControlFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubgroupSizeControlFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubgroupSizeControlFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subgroupSizeControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubgroupSizeControlFeatures.subgroupSizeControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlFeatures.subgroupSizeControl has unexpected size % instead of 4", it.type.runtime_size); case "computeFullSubgroups"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSubgroupSizeControlFeatures.computeFullSubgroups has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlFeatures.computeFullSubgroups has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubgroupSizeControlFeatures) == 24, "VkPhysicalDeviceSubgroupSizeControlFeatures has size % instead of 24", size_of(VkPhysicalDeviceSubgroupSizeControlFeatures)); } { info := type_info(VkPhysicalDeviceSubgroupSizeControlProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubgroupSizeControlProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubgroupSizeControlProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubgroupSizeControlProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minSubgroupSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubgroupSizeControlProperties.minSubgroupSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlProperties.minSubgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "maxSubgroupSize"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSubgroupSizeControlProperties.maxSubgroupSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlProperties.maxSubgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "maxComputeWorkgroupSubgroups"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceSubgroupSizeControlProperties.maxComputeWorkgroupSubgroups has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlProperties.maxComputeWorkgroupSubgroups has unexpected size % instead of 4", it.type.runtime_size); case "requiredSubgroupSizeStages"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceSubgroupSizeControlProperties.requiredSubgroupSizeStages has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubgroupSizeControlProperties.requiredSubgroupSizeStages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubgroupSizeControlProperties) == 32, "VkPhysicalDeviceSubgroupSizeControlProperties has size % instead of 32", size_of(VkPhysicalDeviceSubgroupSizeControlProperties)); } { info := type_info(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "requiredSubgroupSize"; assert(it.offset_in_bytes == 16, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.requiredSubgroupSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo.requiredSubgroupSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo) == 24, "VkPipelineShaderStageRequiredSubgroupSizeCreateInfo has size % instead of 24", size_of(VkPipelineShaderStageRequiredSubgroupSizeCreateInfo)); } { info := type_info(VkPhysicalDeviceInlineUniformBlockFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceInlineUniformBlockFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceInlineUniformBlockFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceInlineUniformBlockFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "inlineUniformBlock"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceInlineUniformBlockFeatures.inlineUniformBlock has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockFeatures.inlineUniformBlock has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingInlineUniformBlockUpdateAfterBind"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceInlineUniformBlockFeatures.descriptorBindingInlineUniformBlockUpdateAfterBind has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockFeatures.descriptorBindingInlineUniformBlockUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceInlineUniformBlockFeatures) == 24, "VkPhysicalDeviceInlineUniformBlockFeatures has size % instead of 24", size_of(VkPhysicalDeviceInlineUniformBlockFeatures)); } { info := type_info(VkPhysicalDeviceInlineUniformBlockProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceInlineUniformBlockProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceInlineUniformBlockProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceInlineUniformBlockProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxInlineUniformBlockSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceInlineUniformBlockProperties.maxInlineUniformBlockSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.maxInlineUniformBlockSize has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorInlineUniformBlocks"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceInlineUniformBlockProperties.maxPerStageDescriptorInlineUniformBlocks has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.maxPerStageDescriptorInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceInlineUniformBlockProperties.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetInlineUniformBlocks"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceInlineUniformBlockProperties.maxDescriptorSetInlineUniformBlocks has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.maxDescriptorSetInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindInlineUniformBlocks"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceInlineUniformBlockProperties.maxDescriptorSetUpdateAfterBindInlineUniformBlocks has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInlineUniformBlockProperties.maxDescriptorSetUpdateAfterBindInlineUniformBlocks has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceInlineUniformBlockProperties) == 40, "VkPhysicalDeviceInlineUniformBlockProperties has size % instead of 40", size_of(VkPhysicalDeviceInlineUniformBlockProperties)); } { info := type_info(VkWriteDescriptorSetInlineUniformBlock); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteDescriptorSetInlineUniformBlock.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetInlineUniformBlock.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteDescriptorSetInlineUniformBlock.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetInlineUniformBlock.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dataSize"; assert(it.offset_in_bytes == 16, "VkWriteDescriptorSetInlineUniformBlock.dataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetInlineUniformBlock.dataSize has unexpected size % instead of 4", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 24, "VkWriteDescriptorSetInlineUniformBlock.pData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetInlineUniformBlock.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteDescriptorSetInlineUniformBlock) == 32, "VkWriteDescriptorSetInlineUniformBlock has size % instead of 32", size_of(VkWriteDescriptorSetInlineUniformBlock)); } { info := type_info(VkDescriptorPoolInlineUniformBlockCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorPoolInlineUniformBlockCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolInlineUniformBlockCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorPoolInlineUniformBlockCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorPoolInlineUniformBlockCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxInlineUniformBlockBindings"; assert(it.offset_in_bytes == 16, "VkDescriptorPoolInlineUniformBlockCreateInfo.maxInlineUniformBlockBindings has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorPoolInlineUniformBlockCreateInfo.maxInlineUniformBlockBindings has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorPoolInlineUniformBlockCreateInfo) == 24, "VkDescriptorPoolInlineUniformBlockCreateInfo has size % instead of 24", size_of(VkDescriptorPoolInlineUniformBlockCreateInfo)); } { info := type_info(VkPhysicalDeviceTextureCompressionASTCHDRFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "textureCompressionASTC_HDR"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.textureCompressionASTC_HDR has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures.textureCompressionASTC_HDR has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTextureCompressionASTCHDRFeatures) == 24, "VkPhysicalDeviceTextureCompressionASTCHDRFeatures has size % instead of 24", size_of(VkPhysicalDeviceTextureCompressionASTCHDRFeatures)); } { info := type_info(VkRenderingAttachmentInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingAttachmentInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingAttachmentInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAttachmentInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 16, "VkRenderingAttachmentInfo.imageView has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAttachmentInfo.imageView has unexpected size % instead of 8", it.type.runtime_size); case "imageLayout"; assert(it.offset_in_bytes == 24, "VkRenderingAttachmentInfo.imageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.imageLayout has unexpected size % instead of 4", it.type.runtime_size); case "resolveMode"; assert(it.offset_in_bytes == 28, "VkRenderingAttachmentInfo.resolveMode has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.resolveMode has unexpected size % instead of 4", it.type.runtime_size); case "resolveImageView"; assert(it.offset_in_bytes == 32, "VkRenderingAttachmentInfo.resolveImageView has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAttachmentInfo.resolveImageView has unexpected size % instead of 8", it.type.runtime_size); case "resolveImageLayout"; assert(it.offset_in_bytes == 40, "VkRenderingAttachmentInfo.resolveImageLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.resolveImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "loadOp"; assert(it.offset_in_bytes == 44, "VkRenderingAttachmentInfo.loadOp has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.loadOp has unexpected size % instead of 4", it.type.runtime_size); case "storeOp"; assert(it.offset_in_bytes == 48, "VkRenderingAttachmentInfo.storeOp has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentInfo.storeOp has unexpected size % instead of 4", it.type.runtime_size); case "clearValue"; assert(it.offset_in_bytes == 52, "VkRenderingAttachmentInfo.clearValue has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkRenderingAttachmentInfo.clearValue has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkRenderingAttachmentInfo) == 72, "VkRenderingAttachmentInfo has size % instead of 72", size_of(VkRenderingAttachmentInfo)); } { info := type_info(VkRenderingInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRenderingInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "renderArea"; assert(it.offset_in_bytes == 20, "VkRenderingInfo.renderArea has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkRenderingInfo.renderArea has unexpected size % instead of 16", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 36, "VkRenderingInfo.layerCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInfo.layerCount has unexpected size % instead of 4", it.type.runtime_size); case "viewMask"; assert(it.offset_in_bytes == 40, "VkRenderingInfo.viewMask has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInfo.viewMask has unexpected size % instead of 4", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 44, "VkRenderingInfo.colorAttachmentCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachments"; assert(it.offset_in_bytes == 48, "VkRenderingInfo.pColorAttachments has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInfo.pColorAttachments has unexpected size % instead of 8", it.type.runtime_size); case "pDepthAttachment"; assert(it.offset_in_bytes == 56, "VkRenderingInfo.pDepthAttachment has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInfo.pDepthAttachment has unexpected size % instead of 8", it.type.runtime_size); case "pStencilAttachment"; assert(it.offset_in_bytes == 64, "VkRenderingInfo.pStencilAttachment has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInfo.pStencilAttachment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderingInfo) == 72, "VkRenderingInfo has size % instead of 72", size_of(VkRenderingInfo)); } { info := type_info(VkPipelineRenderingCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRenderingCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRenderingCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRenderingCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRenderingCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "viewMask"; assert(it.offset_in_bytes == 16, "VkPipelineRenderingCreateInfo.viewMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRenderingCreateInfo.viewMask has unexpected size % instead of 4", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 20, "VkPipelineRenderingCreateInfo.colorAttachmentCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRenderingCreateInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentFormats"; assert(it.offset_in_bytes == 24, "VkPipelineRenderingCreateInfo.pColorAttachmentFormats has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRenderingCreateInfo.pColorAttachmentFormats has unexpected size % instead of 8", it.type.runtime_size); case "depthAttachmentFormat"; assert(it.offset_in_bytes == 32, "VkPipelineRenderingCreateInfo.depthAttachmentFormat has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRenderingCreateInfo.depthAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); case "stencilAttachmentFormat"; assert(it.offset_in_bytes == 36, "VkPipelineRenderingCreateInfo.stencilAttachmentFormat has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRenderingCreateInfo.stencilAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRenderingCreateInfo) == 40, "VkPipelineRenderingCreateInfo has size % instead of 40", size_of(VkPipelineRenderingCreateInfo)); } { info := type_info(VkPhysicalDeviceDynamicRenderingFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDynamicRenderingFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDynamicRenderingFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDynamicRenderingFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dynamicRendering"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDynamicRenderingFeatures.dynamicRendering has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingFeatures.dynamicRendering has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDynamicRenderingFeatures) == 24, "VkPhysicalDeviceDynamicRenderingFeatures has size % instead of 24", size_of(VkPhysicalDeviceDynamicRenderingFeatures)); } { info := type_info(VkCommandBufferInheritanceRenderingInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferInheritanceRenderingInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferInheritanceRenderingInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceRenderingInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCommandBufferInheritanceRenderingInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "viewMask"; assert(it.offset_in_bytes == 20, "VkCommandBufferInheritanceRenderingInfo.viewMask has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.viewMask has unexpected size % instead of 4", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 24, "VkCommandBufferInheritanceRenderingInfo.colorAttachmentCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentFormats"; assert(it.offset_in_bytes == 32, "VkCommandBufferInheritanceRenderingInfo.pColorAttachmentFormats has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceRenderingInfo.pColorAttachmentFormats has unexpected size % instead of 8", it.type.runtime_size); case "depthAttachmentFormat"; assert(it.offset_in_bytes == 40, "VkCommandBufferInheritanceRenderingInfo.depthAttachmentFormat has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.depthAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); case "stencilAttachmentFormat"; assert(it.offset_in_bytes == 44, "VkCommandBufferInheritanceRenderingInfo.stencilAttachmentFormat has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.stencilAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationSamples"; assert(it.offset_in_bytes == 48, "VkCommandBufferInheritanceRenderingInfo.rasterizationSamples has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderingInfo.rasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandBufferInheritanceRenderingInfo) == 56, "VkCommandBufferInheritanceRenderingInfo has size % instead of 56", size_of(VkCommandBufferInheritanceRenderingInfo)); } { info := type_info(VkPhysicalDeviceShaderIntegerDotProductFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderIntegerDotProductFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderIntegerDotProductFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderIntegerDotProductFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderIntegerDotProduct"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderIntegerDotProductFeatures.shaderIntegerDotProduct has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductFeatures.shaderIntegerDotProduct has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderIntegerDotProductFeatures) == 24, "VkPhysicalDeviceShaderIntegerDotProductFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderIntegerDotProductFeatures)); } { info := type_info(VkPhysicalDeviceShaderIntegerDotProductProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderIntegerDotProductProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderIntegerDotProductProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderIntegerDotProductProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "integerDotProduct8BitUnsignedAccelerated"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitUnsignedAccelerated has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct8BitSignedAccelerated"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitSignedAccelerated has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct8BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitMixedSignednessAccelerated has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct8BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedUnsignedAccelerated"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedUnsignedAccelerated has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedSignedAccelerated"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedSignedAccelerated has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct4x8BitPackedMixedSignednessAccelerated"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedMixedSignednessAccelerated has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct4x8BitPackedMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitUnsignedAccelerated"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitUnsignedAccelerated has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitSignedAccelerated"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitSignedAccelerated has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct16BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitMixedSignednessAccelerated has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct16BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitUnsignedAccelerated"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitUnsignedAccelerated has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitSignedAccelerated"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitSignedAccelerated has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct32BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitMixedSignednessAccelerated has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct32BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitUnsignedAccelerated"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitUnsignedAccelerated has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitSignedAccelerated"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitSignedAccelerated has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProduct64BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitMixedSignednessAccelerated has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProduct64BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitUnsignedAccelerated"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitSignedAccelerated"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitSignedAccelerated has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitUnsignedAccelerated"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitSignedAccelerated"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitSignedAccelerated has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitUnsignedAccelerated"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitSignedAccelerated"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitSignedAccelerated has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitUnsignedAccelerated"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitUnsignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitSignedAccelerated"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitSignedAccelerated has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitSignedAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerDotProductProperties.integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderIntegerDotProductProperties) == 136, "VkPhysicalDeviceShaderIntegerDotProductProperties has size % instead of 136", size_of(VkPhysicalDeviceShaderIntegerDotProductProperties)); } { info := type_info(VkPhysicalDeviceTexelBufferAlignmentProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTexelBufferAlignmentProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTexelBufferAlignmentProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTexelBufferAlignmentProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTexelBufferAlignmentProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "storageTexelBufferOffsetAlignmentBytes"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTexelBufferAlignmentProperties.storageTexelBufferOffsetAlignmentBytes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTexelBufferAlignmentProperties.storageTexelBufferOffsetAlignmentBytes has unexpected size % instead of 8", it.type.runtime_size); case "storageTexelBufferOffsetSingleTexelAlignment"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceTexelBufferAlignmentProperties.storageTexelBufferOffsetSingleTexelAlignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTexelBufferAlignmentProperties.storageTexelBufferOffsetSingleTexelAlignment has unexpected size % instead of 4", it.type.runtime_size); case "uniformTexelBufferOffsetAlignmentBytes"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceTexelBufferAlignmentProperties.uniformTexelBufferOffsetAlignmentBytes has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTexelBufferAlignmentProperties.uniformTexelBufferOffsetAlignmentBytes has unexpected size % instead of 8", it.type.runtime_size); case "uniformTexelBufferOffsetSingleTexelAlignment"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceTexelBufferAlignmentProperties.uniformTexelBufferOffsetSingleTexelAlignment has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTexelBufferAlignmentProperties.uniformTexelBufferOffsetSingleTexelAlignment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTexelBufferAlignmentProperties) == 48, "VkPhysicalDeviceTexelBufferAlignmentProperties has size % instead of 48", size_of(VkPhysicalDeviceTexelBufferAlignmentProperties)); } { info := type_info(VkFormatProperties3); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFormatProperties3.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFormatProperties3.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFormatProperties3.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFormatProperties3.pNext has unexpected size % instead of 8", it.type.runtime_size); case "linearTilingFeatures"; assert(it.offset_in_bytes == 16, "VkFormatProperties3.linearTilingFeatures has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFormatProperties3.linearTilingFeatures has unexpected size % instead of 8", it.type.runtime_size); case "optimalTilingFeatures"; assert(it.offset_in_bytes == 24, "VkFormatProperties3.optimalTilingFeatures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFormatProperties3.optimalTilingFeatures has unexpected size % instead of 8", it.type.runtime_size); case "bufferFeatures"; assert(it.offset_in_bytes == 32, "VkFormatProperties3.bufferFeatures has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFormatProperties3.bufferFeatures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkFormatProperties3) == 40, "VkFormatProperties3 has size % instead of 40", size_of(VkFormatProperties3)); } { info := type_info(VkPhysicalDeviceMaintenance4Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance4Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance4Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance4Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance4Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maintenance4"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance4Features.maintenance4 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance4Features.maintenance4 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance4Features) == 24, "VkPhysicalDeviceMaintenance4Features has size % instead of 24", size_of(VkPhysicalDeviceMaintenance4Features)); } { info := type_info(VkPhysicalDeviceMaintenance4Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance4Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance4Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance4Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance4Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxBufferSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance4Properties.maxBufferSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance4Properties.maxBufferSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance4Properties) == 24, "VkPhysicalDeviceMaintenance4Properties has size % instead of 24", size_of(VkPhysicalDeviceMaintenance4Properties)); } { info := type_info(VkDeviceBufferMemoryRequirements); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceBufferMemoryRequirements.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceBufferMemoryRequirements.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceBufferMemoryRequirements.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceBufferMemoryRequirements.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pCreateInfo"; assert(it.offset_in_bytes == 16, "VkDeviceBufferMemoryRequirements.pCreateInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceBufferMemoryRequirements.pCreateInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceBufferMemoryRequirements) == 24, "VkDeviceBufferMemoryRequirements has size % instead of 24", size_of(VkDeviceBufferMemoryRequirements)); } { info := type_info(VkDeviceImageMemoryRequirements); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceImageMemoryRequirements.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceImageMemoryRequirements.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceImageMemoryRequirements.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceImageMemoryRequirements.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pCreateInfo"; assert(it.offset_in_bytes == 16, "VkDeviceImageMemoryRequirements.pCreateInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceImageMemoryRequirements.pCreateInfo has unexpected size % instead of 8", it.type.runtime_size); case "planeAspect"; assert(it.offset_in_bytes == 24, "VkDeviceImageMemoryRequirements.planeAspect has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceImageMemoryRequirements.planeAspect has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceImageMemoryRequirements) == 32, "VkDeviceImageMemoryRequirements has size % instead of 32", size_of(VkDeviceImageMemoryRequirements)); } { info := type_info(VkPhysicalDeviceVulkan14Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan14Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan14Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan14Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "globalPriorityQuery"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan14Features.globalPriorityQuery has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.globalPriorityQuery has unexpected size % instead of 4", it.type.runtime_size); case "shaderSubgroupRotate"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan14Features.shaderSubgroupRotate has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.shaderSubgroupRotate has unexpected size % instead of 4", it.type.runtime_size); case "shaderSubgroupRotateClustered"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan14Features.shaderSubgroupRotateClustered has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.shaderSubgroupRotateClustered has unexpected size % instead of 4", it.type.runtime_size); case "shaderFloatControls2"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan14Features.shaderFloatControls2 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.shaderFloatControls2 has unexpected size % instead of 4", it.type.runtime_size); case "shaderExpectAssume"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan14Features.shaderExpectAssume has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.shaderExpectAssume has unexpected size % instead of 4", it.type.runtime_size); case "rectangularLines"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan14Features.rectangularLines has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.rectangularLines has unexpected size % instead of 4", it.type.runtime_size); case "bresenhamLines"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan14Features.bresenhamLines has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.bresenhamLines has unexpected size % instead of 4", it.type.runtime_size); case "smoothLines"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan14Features.smoothLines has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.smoothLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledRectangularLines"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan14Features.stippledRectangularLines has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.stippledRectangularLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledBresenhamLines"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan14Features.stippledBresenhamLines has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.stippledBresenhamLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledSmoothLines"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan14Features.stippledSmoothLines has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.stippledSmoothLines has unexpected size % instead of 4", it.type.runtime_size); case "vertexAttributeInstanceRateDivisor"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan14Features.vertexAttributeInstanceRateDivisor has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.vertexAttributeInstanceRateDivisor has unexpected size % instead of 4", it.type.runtime_size); case "vertexAttributeInstanceRateZeroDivisor"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan14Features.vertexAttributeInstanceRateZeroDivisor has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.vertexAttributeInstanceRateZeroDivisor has unexpected size % instead of 4", it.type.runtime_size); case "indexTypeUint8"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan14Features.indexTypeUint8 has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.indexTypeUint8 has unexpected size % instead of 4", it.type.runtime_size); case "dynamicRenderingLocalRead"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan14Features.dynamicRenderingLocalRead has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.dynamicRenderingLocalRead has unexpected size % instead of 4", it.type.runtime_size); case "maintenance5"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceVulkan14Features.maintenance5 has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.maintenance5 has unexpected size % instead of 4", it.type.runtime_size); case "maintenance6"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceVulkan14Features.maintenance6 has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.maintenance6 has unexpected size % instead of 4", it.type.runtime_size); case "pipelineProtectedAccess"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceVulkan14Features.pipelineProtectedAccess has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.pipelineProtectedAccess has unexpected size % instead of 4", it.type.runtime_size); case "pipelineRobustness"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceVulkan14Features.pipelineRobustness has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.pipelineRobustness has unexpected size % instead of 4", it.type.runtime_size); case "hostImageCopy"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceVulkan14Features.hostImageCopy has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.hostImageCopy has unexpected size % instead of 4", it.type.runtime_size); case "pushDescriptor"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceVulkan14Features.pushDescriptor has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Features.pushDescriptor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan14Features) == 104, "VkPhysicalDeviceVulkan14Features has size % instead of 104", size_of(VkPhysicalDeviceVulkan14Features)); } { info := type_info(VkPhysicalDeviceVulkan14Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVulkan14Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVulkan14Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan14Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "lineSubPixelPrecisionBits"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVulkan14Properties.lineSubPixelPrecisionBits has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.lineSubPixelPrecisionBits has unexpected size % instead of 4", it.type.runtime_size); case "maxVertexAttribDivisor"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVulkan14Properties.maxVertexAttribDivisor has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.maxVertexAttribDivisor has unexpected size % instead of 4", it.type.runtime_size); case "supportsNonZeroFirstInstance"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVulkan14Properties.supportsNonZeroFirstInstance has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.supportsNonZeroFirstInstance has unexpected size % instead of 4", it.type.runtime_size); case "maxPushDescriptors"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceVulkan14Properties.maxPushDescriptors has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.maxPushDescriptors has unexpected size % instead of 4", it.type.runtime_size); case "dynamicRenderingLocalReadDepthStencilAttachments"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceVulkan14Properties.dynamicRenderingLocalReadDepthStencilAttachments has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.dynamicRenderingLocalReadDepthStencilAttachments has unexpected size % instead of 4", it.type.runtime_size); case "dynamicRenderingLocalReadMultisampledAttachments"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceVulkan14Properties.dynamicRenderingLocalReadMultisampledAttachments has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.dynamicRenderingLocalReadMultisampledAttachments has unexpected size % instead of 4", it.type.runtime_size); case "earlyFragmentMultisampleCoverageAfterSampleCounting"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceVulkan14Properties.earlyFragmentMultisampleCoverageAfterSampleCounting has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.earlyFragmentMultisampleCoverageAfterSampleCounting has unexpected size % instead of 4", it.type.runtime_size); case "earlyFragmentSampleMaskTestBeforeSampleCounting"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceVulkan14Properties.earlyFragmentSampleMaskTestBeforeSampleCounting has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.earlyFragmentSampleMaskTestBeforeSampleCounting has unexpected size % instead of 4", it.type.runtime_size); case "depthStencilSwizzleOneSupport"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceVulkan14Properties.depthStencilSwizzleOneSupport has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.depthStencilSwizzleOneSupport has unexpected size % instead of 4", it.type.runtime_size); case "polygonModePointSize"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceVulkan14Properties.polygonModePointSize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.polygonModePointSize has unexpected size % instead of 4", it.type.runtime_size); case "nonStrictSinglePixelWideLinesUseParallelogram"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceVulkan14Properties.nonStrictSinglePixelWideLinesUseParallelogram has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.nonStrictSinglePixelWideLinesUseParallelogram has unexpected size % instead of 4", it.type.runtime_size); case "nonStrictWideLinesUseParallelogram"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceVulkan14Properties.nonStrictWideLinesUseParallelogram has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.nonStrictWideLinesUseParallelogram has unexpected size % instead of 4", it.type.runtime_size); case "blockTexelViewCompatibleMultipleLayers"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceVulkan14Properties.blockTexelViewCompatibleMultipleLayers has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.blockTexelViewCompatibleMultipleLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxCombinedImageSamplerDescriptorCount"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceVulkan14Properties.maxCombinedImageSamplerDescriptorCount has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.maxCombinedImageSamplerDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateClampCombinerInputs"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceVulkan14Properties.fragmentShadingRateClampCombinerInputs has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.fragmentShadingRateClampCombinerInputs has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessStorageBuffers"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessStorageBuffers has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessUniformBuffers"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessUniformBuffers has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessVertexInputs"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessVertexInputs has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessVertexInputs has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessImages"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessImages has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.defaultRobustnessImages has unexpected size % instead of 4", it.type.runtime_size); case "copySrcLayoutCount"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceVulkan14Properties.copySrcLayoutCount has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.copySrcLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pCopySrcLayouts"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceVulkan14Properties.pCopySrcLayouts has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan14Properties.pCopySrcLayouts has unexpected size % instead of 8", it.type.runtime_size); case "copyDstLayoutCount"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceVulkan14Properties.copyDstLayoutCount has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.copyDstLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pCopyDstLayouts"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceVulkan14Properties.pCopyDstLayouts has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVulkan14Properties.pCopyDstLayouts has unexpected size % instead of 8", it.type.runtime_size); case "optimalTilingLayoutUUID"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceVulkan14Properties.optimalTilingLayoutUUID has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceVulkan14Properties.optimalTilingLayoutUUID has unexpected size % instead of 16", it.type.runtime_size); case "identicalMemoryTypeRequirements"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceVulkan14Properties.identicalMemoryTypeRequirements has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVulkan14Properties.identicalMemoryTypeRequirements has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVulkan14Properties) == 144, "VkPhysicalDeviceVulkan14Properties has size % instead of 144", size_of(VkPhysicalDeviceVulkan14Properties)); } { info := type_info(VkDeviceQueueGlobalPriorityCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceQueueGlobalPriorityCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueGlobalPriorityCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceQueueGlobalPriorityCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceQueueGlobalPriorityCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "globalPriority"; assert(it.offset_in_bytes == 16, "VkDeviceQueueGlobalPriorityCreateInfo.globalPriority has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueGlobalPriorityCreateInfo.globalPriority has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceQueueGlobalPriorityCreateInfo) == 24, "VkDeviceQueueGlobalPriorityCreateInfo has size % instead of 24", size_of(VkDeviceQueueGlobalPriorityCreateInfo)); } { info := type_info(VkPhysicalDeviceGlobalPriorityQueryFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceGlobalPriorityQueryFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGlobalPriorityQueryFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceGlobalPriorityQueryFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceGlobalPriorityQueryFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "globalPriorityQuery"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceGlobalPriorityQueryFeatures.globalPriorityQuery has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGlobalPriorityQueryFeatures.globalPriorityQuery has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceGlobalPriorityQueryFeatures) == 24, "VkPhysicalDeviceGlobalPriorityQueryFeatures has size % instead of 24", size_of(VkPhysicalDeviceGlobalPriorityQueryFeatures)); } { info := type_info(VkQueueFamilyGlobalPriorityProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyGlobalPriorityProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyGlobalPriorityProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyGlobalPriorityProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyGlobalPriorityProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "priorityCount"; assert(it.offset_in_bytes == 16, "VkQueueFamilyGlobalPriorityProperties.priorityCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyGlobalPriorityProperties.priorityCount has unexpected size % instead of 4", it.type.runtime_size); case "priorities"; assert(it.offset_in_bytes == 20, "VkQueueFamilyGlobalPriorityProperties.priorities has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkQueueFamilyGlobalPriorityProperties.priorities has unexpected size % instead of 64", it.type.runtime_size); } } assert(size_of(VkQueueFamilyGlobalPriorityProperties) == 88, "VkQueueFamilyGlobalPriorityProperties has size % instead of 88", size_of(VkQueueFamilyGlobalPriorityProperties)); } { info := type_info(VkPhysicalDeviceShaderSubgroupRotateFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderSubgroupRotateFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupRotateFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderSubgroupRotateFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderSubgroupRotateFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSubgroupRotate"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderSubgroupRotateFeatures.shaderSubgroupRotate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupRotateFeatures.shaderSubgroupRotate has unexpected size % instead of 4", it.type.runtime_size); case "shaderSubgroupRotateClustered"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderSubgroupRotateFeatures.shaderSubgroupRotateClustered has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupRotateFeatures.shaderSubgroupRotateClustered has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderSubgroupRotateFeatures) == 24, "VkPhysicalDeviceShaderSubgroupRotateFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderSubgroupRotateFeatures)); } { info := type_info(VkPhysicalDeviceShaderFloatControls2Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderFloatControls2Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderFloatControls2Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderFloatControls2Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderFloatControls2Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderFloatControls2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderFloatControls2Features.shaderFloatControls2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderFloatControls2Features.shaderFloatControls2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderFloatControls2Features) == 24, "VkPhysicalDeviceShaderFloatControls2Features has size % instead of 24", size_of(VkPhysicalDeviceShaderFloatControls2Features)); } { info := type_info(VkPhysicalDeviceShaderExpectAssumeFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderExpectAssumeFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderExpectAssumeFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderExpectAssumeFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderExpectAssumeFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderExpectAssume"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderExpectAssumeFeatures.shaderExpectAssume has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderExpectAssumeFeatures.shaderExpectAssume has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderExpectAssumeFeatures) == 24, "VkPhysicalDeviceShaderExpectAssumeFeatures has size % instead of 24", size_of(VkPhysicalDeviceShaderExpectAssumeFeatures)); } { info := type_info(VkPhysicalDeviceLineRasterizationFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLineRasterizationFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLineRasterizationFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLineRasterizationFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rectangularLines"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLineRasterizationFeatures.rectangularLines has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.rectangularLines has unexpected size % instead of 4", it.type.runtime_size); case "bresenhamLines"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceLineRasterizationFeatures.bresenhamLines has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.bresenhamLines has unexpected size % instead of 4", it.type.runtime_size); case "smoothLines"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceLineRasterizationFeatures.smoothLines has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.smoothLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledRectangularLines"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceLineRasterizationFeatures.stippledRectangularLines has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.stippledRectangularLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledBresenhamLines"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceLineRasterizationFeatures.stippledBresenhamLines has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.stippledBresenhamLines has unexpected size % instead of 4", it.type.runtime_size); case "stippledSmoothLines"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceLineRasterizationFeatures.stippledSmoothLines has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationFeatures.stippledSmoothLines has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLineRasterizationFeatures) == 40, "VkPhysicalDeviceLineRasterizationFeatures has size % instead of 40", size_of(VkPhysicalDeviceLineRasterizationFeatures)); } { info := type_info(VkPhysicalDeviceLineRasterizationProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLineRasterizationProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLineRasterizationProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLineRasterizationProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "lineSubPixelPrecisionBits"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLineRasterizationProperties.lineSubPixelPrecisionBits has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLineRasterizationProperties.lineSubPixelPrecisionBits has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLineRasterizationProperties) == 24, "VkPhysicalDeviceLineRasterizationProperties has size % instead of 24", size_of(VkPhysicalDeviceLineRasterizationProperties)); } { info := type_info(VkPipelineRasterizationLineStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationLineStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationLineStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationLineStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationLineStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "lineRasterizationMode"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationLineStateCreateInfo.lineRasterizationMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationLineStateCreateInfo.lineRasterizationMode has unexpected size % instead of 4", it.type.runtime_size); case "stippledLineEnable"; assert(it.offset_in_bytes == 20, "VkPipelineRasterizationLineStateCreateInfo.stippledLineEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationLineStateCreateInfo.stippledLineEnable has unexpected size % instead of 4", it.type.runtime_size); case "lineStippleFactor"; assert(it.offset_in_bytes == 24, "VkPipelineRasterizationLineStateCreateInfo.lineStippleFactor has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationLineStateCreateInfo.lineStippleFactor has unexpected size % instead of 4", it.type.runtime_size); case "lineStipplePattern"; assert(it.offset_in_bytes == 28, "VkPipelineRasterizationLineStateCreateInfo.lineStipplePattern has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkPipelineRasterizationLineStateCreateInfo.lineStipplePattern has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationLineStateCreateInfo) == 32, "VkPipelineRasterizationLineStateCreateInfo has size % instead of 32", size_of(VkPipelineRasterizationLineStateCreateInfo)); } { info := type_info(VkPhysicalDeviceVertexAttributeDivisorProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVertexAttributeDivisorProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVertexAttributeDivisorProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVertexAttributeDivisorProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxVertexAttribDivisor"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVertexAttributeDivisorProperties.maxVertexAttribDivisor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorProperties.maxVertexAttribDivisor has unexpected size % instead of 4", it.type.runtime_size); case "supportsNonZeroFirstInstance"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVertexAttributeDivisorProperties.supportsNonZeroFirstInstance has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorProperties.supportsNonZeroFirstInstance has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVertexAttributeDivisorProperties) == 24, "VkPhysicalDeviceVertexAttributeDivisorProperties has size % instead of 24", size_of(VkPhysicalDeviceVertexAttributeDivisorProperties)); } { info := type_info(VkVertexInputBindingDivisorDescription); for info.members { if it.name == { case "binding"; assert(it.offset_in_bytes == 0, "VkVertexInputBindingDivisorDescription.binding has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDivisorDescription.binding has unexpected size % instead of 4", it.type.runtime_size); case "divisor"; assert(it.offset_in_bytes == 4, "VkVertexInputBindingDivisorDescription.divisor has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDivisorDescription.divisor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVertexInputBindingDivisorDescription) == 8, "VkVertexInputBindingDivisorDescription has size % instead of 8", size_of(VkVertexInputBindingDivisorDescription)); } { info := type_info(VkPipelineVertexInputDivisorStateCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineVertexInputDivisorStateCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputDivisorStateCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineVertexInputDivisorStateCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineVertexInputDivisorStateCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexBindingDivisorCount"; assert(it.offset_in_bytes == 16, "VkPipelineVertexInputDivisorStateCreateInfo.vertexBindingDivisorCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineVertexInputDivisorStateCreateInfo.vertexBindingDivisorCount has unexpected size % instead of 4", it.type.runtime_size); case "pVertexBindingDivisors"; assert(it.offset_in_bytes == 24, "VkPipelineVertexInputDivisorStateCreateInfo.pVertexBindingDivisors has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineVertexInputDivisorStateCreateInfo.pVertexBindingDivisors has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineVertexInputDivisorStateCreateInfo) == 32, "VkPipelineVertexInputDivisorStateCreateInfo has size % instead of 32", size_of(VkPipelineVertexInputDivisorStateCreateInfo)); } { info := type_info(VkPhysicalDeviceVertexAttributeDivisorFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVertexAttributeDivisorFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVertexAttributeDivisorFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVertexAttributeDivisorFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexAttributeInstanceRateDivisor"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVertexAttributeDivisorFeatures.vertexAttributeInstanceRateDivisor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorFeatures.vertexAttributeInstanceRateDivisor has unexpected size % instead of 4", it.type.runtime_size); case "vertexAttributeInstanceRateZeroDivisor"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceVertexAttributeDivisorFeatures.vertexAttributeInstanceRateZeroDivisor has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorFeatures.vertexAttributeInstanceRateZeroDivisor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVertexAttributeDivisorFeatures) == 24, "VkPhysicalDeviceVertexAttributeDivisorFeatures has size % instead of 24", size_of(VkPhysicalDeviceVertexAttributeDivisorFeatures)); } { info := type_info(VkPhysicalDeviceIndexTypeUint8Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceIndexTypeUint8Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceIndexTypeUint8Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceIndexTypeUint8Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceIndexTypeUint8Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "indexTypeUint8"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceIndexTypeUint8Features.indexTypeUint8 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceIndexTypeUint8Features.indexTypeUint8 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceIndexTypeUint8Features) == 24, "VkPhysicalDeviceIndexTypeUint8Features has size % instead of 24", size_of(VkPhysicalDeviceIndexTypeUint8Features)); } { info := type_info(VkMemoryMapInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryMapInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryMapInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryMapInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkMemoryMapInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryMapInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkMemoryMapInfo.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapInfo.memory has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 32, "VkMemoryMapInfo.offset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapInfo.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 40, "VkMemoryMapInfo.size has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapInfo.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryMapInfo) == 48, "VkMemoryMapInfo has size % instead of 48", size_of(VkMemoryMapInfo)); } { info := type_info(VkMemoryUnmapInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryUnmapInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryUnmapInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryUnmapInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryUnmapInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkMemoryUnmapInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryUnmapInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkMemoryUnmapInfo.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryUnmapInfo.memory has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryUnmapInfo) == 32, "VkMemoryUnmapInfo has size % instead of 32", size_of(VkMemoryUnmapInfo)); } { info := type_info(VkPhysicalDeviceMaintenance5Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance5Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance5Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance5Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maintenance5"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance5Features.maintenance5 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Features.maintenance5 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance5Features) == 24, "VkPhysicalDeviceMaintenance5Features has size % instead of 24", size_of(VkPhysicalDeviceMaintenance5Features)); } { info := type_info(VkPhysicalDeviceMaintenance5Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance5Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance5Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance5Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "earlyFragmentMultisampleCoverageAfterSampleCounting"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance5Properties.earlyFragmentMultisampleCoverageAfterSampleCounting has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.earlyFragmentMultisampleCoverageAfterSampleCounting has unexpected size % instead of 4", it.type.runtime_size); case "earlyFragmentSampleMaskTestBeforeSampleCounting"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMaintenance5Properties.earlyFragmentSampleMaskTestBeforeSampleCounting has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.earlyFragmentSampleMaskTestBeforeSampleCounting has unexpected size % instead of 4", it.type.runtime_size); case "depthStencilSwizzleOneSupport"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMaintenance5Properties.depthStencilSwizzleOneSupport has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.depthStencilSwizzleOneSupport has unexpected size % instead of 4", it.type.runtime_size); case "polygonModePointSize"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceMaintenance5Properties.polygonModePointSize has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.polygonModePointSize has unexpected size % instead of 4", it.type.runtime_size); case "nonStrictSinglePixelWideLinesUseParallelogram"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceMaintenance5Properties.nonStrictSinglePixelWideLinesUseParallelogram has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.nonStrictSinglePixelWideLinesUseParallelogram has unexpected size % instead of 4", it.type.runtime_size); case "nonStrictWideLinesUseParallelogram"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceMaintenance5Properties.nonStrictWideLinesUseParallelogram has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance5Properties.nonStrictWideLinesUseParallelogram has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance5Properties) == 40, "VkPhysicalDeviceMaintenance5Properties has size % instead of 40", size_of(VkPhysicalDeviceMaintenance5Properties)); } { info := type_info(VkRenderingAreaInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingAreaInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAreaInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingAreaInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAreaInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "viewMask"; assert(it.offset_in_bytes == 16, "VkRenderingAreaInfo.viewMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAreaInfo.viewMask has unexpected size % instead of 4", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 20, "VkRenderingAreaInfo.colorAttachmentCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAreaInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentFormats"; assert(it.offset_in_bytes == 24, "VkRenderingAreaInfo.pColorAttachmentFormats has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAreaInfo.pColorAttachmentFormats has unexpected size % instead of 8", it.type.runtime_size); case "depthAttachmentFormat"; assert(it.offset_in_bytes == 32, "VkRenderingAreaInfo.depthAttachmentFormat has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAreaInfo.depthAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); case "stencilAttachmentFormat"; assert(it.offset_in_bytes == 36, "VkRenderingAreaInfo.stencilAttachmentFormat has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAreaInfo.stencilAttachmentFormat has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderingAreaInfo) == 40, "VkRenderingAreaInfo has size % instead of 40", size_of(VkRenderingAreaInfo)); } { info := type_info(VkImageSubresource2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageSubresource2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSubresource2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageSubresource2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageSubresource2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 16, "VkImageSubresource2.imageSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageSubresource2.imageSubresource has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageSubresource2) == 32, "VkImageSubresource2 has size % instead of 32", size_of(VkImageSubresource2)); } { info := type_info(VkDeviceImageSubresourceInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceImageSubresourceInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceImageSubresourceInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceImageSubresourceInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceImageSubresourceInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pCreateInfo"; assert(it.offset_in_bytes == 16, "VkDeviceImageSubresourceInfo.pCreateInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceImageSubresourceInfo.pCreateInfo has unexpected size % instead of 8", it.type.runtime_size); case "pSubresource"; assert(it.offset_in_bytes == 24, "VkDeviceImageSubresourceInfo.pSubresource has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceImageSubresourceInfo.pSubresource has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceImageSubresourceInfo) == 32, "VkDeviceImageSubresourceInfo has size % instead of 32", size_of(VkDeviceImageSubresourceInfo)); } { info := type_info(VkSubresourceLayout2); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubresourceLayout2.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubresourceLayout2.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubresourceLayout2.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceLayout2.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subresourceLayout"; assert(it.offset_in_bytes == 16, "VkSubresourceLayout2.subresourceLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkSubresourceLayout2.subresourceLayout has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkSubresourceLayout2) == 56, "VkSubresourceLayout2 has size % instead of 56", size_of(VkSubresourceLayout2)); } { info := type_info(VkPipelineCreateFlags2CreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCreateFlags2CreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCreateFlags2CreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCreateFlags2CreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreateFlags2CreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineCreateFlags2CreateInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreateFlags2CreateInfo.flags has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCreateFlags2CreateInfo) == 24, "VkPipelineCreateFlags2CreateInfo has size % instead of 24", size_of(VkPipelineCreateFlags2CreateInfo)); } { info := type_info(VkBufferUsageFlags2CreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferUsageFlags2CreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferUsageFlags2CreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferUsageFlags2CreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferUsageFlags2CreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 16, "VkBufferUsageFlags2CreateInfo.usage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferUsageFlags2CreateInfo.usage has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferUsageFlags2CreateInfo) == 24, "VkBufferUsageFlags2CreateInfo has size % instead of 24", size_of(VkBufferUsageFlags2CreateInfo)); } { info := type_info(VkPhysicalDevicePushDescriptorProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePushDescriptorProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePushDescriptorProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePushDescriptorProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePushDescriptorProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxPushDescriptors"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePushDescriptorProperties.maxPushDescriptors has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePushDescriptorProperties.maxPushDescriptors has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePushDescriptorProperties) == 24, "VkPhysicalDevicePushDescriptorProperties has size % instead of 24", size_of(VkPhysicalDevicePushDescriptorProperties)); } { info := type_info(VkPhysicalDeviceDynamicRenderingLocalReadFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dynamicRenderingLocalRead"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.dynamicRenderingLocalRead has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures.dynamicRenderingLocalRead has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDynamicRenderingLocalReadFeatures) == 24, "VkPhysicalDeviceDynamicRenderingLocalReadFeatures has size % instead of 24", size_of(VkPhysicalDeviceDynamicRenderingLocalReadFeatures)); } { info := type_info(VkRenderingAttachmentLocationInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingAttachmentLocationInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentLocationInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingAttachmentLocationInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAttachmentLocationInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 16, "VkRenderingAttachmentLocationInfo.colorAttachmentCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingAttachmentLocationInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentLocations"; assert(it.offset_in_bytes == 24, "VkRenderingAttachmentLocationInfo.pColorAttachmentLocations has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingAttachmentLocationInfo.pColorAttachmentLocations has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderingAttachmentLocationInfo) == 32, "VkRenderingAttachmentLocationInfo has size % instead of 32", size_of(VkRenderingAttachmentLocationInfo)); } { info := type_info(VkRenderingInputAttachmentIndexInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingInputAttachmentIndexInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInputAttachmentIndexInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingInputAttachmentIndexInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInputAttachmentIndexInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 16, "VkRenderingInputAttachmentIndexInfo.colorAttachmentCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingInputAttachmentIndexInfo.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentInputIndices"; assert(it.offset_in_bytes == 24, "VkRenderingInputAttachmentIndexInfo.pColorAttachmentInputIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInputAttachmentIndexInfo.pColorAttachmentInputIndices has unexpected size % instead of 8", it.type.runtime_size); case "pDepthInputAttachmentIndex"; assert(it.offset_in_bytes == 32, "VkRenderingInputAttachmentIndexInfo.pDepthInputAttachmentIndex has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInputAttachmentIndexInfo.pDepthInputAttachmentIndex has unexpected size % instead of 8", it.type.runtime_size); case "pStencilInputAttachmentIndex"; assert(it.offset_in_bytes == 40, "VkRenderingInputAttachmentIndexInfo.pStencilInputAttachmentIndex has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingInputAttachmentIndexInfo.pStencilInputAttachmentIndex has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderingInputAttachmentIndexInfo) == 48, "VkRenderingInputAttachmentIndexInfo has size % instead of 48", size_of(VkRenderingInputAttachmentIndexInfo)); } { info := type_info(VkPhysicalDeviceMaintenance6Features); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance6Features.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Features.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance6Features.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance6Features.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maintenance6"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance6Features.maintenance6 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Features.maintenance6 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance6Features) == 24, "VkPhysicalDeviceMaintenance6Features has size % instead of 24", size_of(VkPhysicalDeviceMaintenance6Features)); } { info := type_info(VkPhysicalDeviceMaintenance6Properties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance6Properties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Properties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance6Properties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance6Properties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "blockTexelViewCompatibleMultipleLayers"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance6Properties.blockTexelViewCompatibleMultipleLayers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Properties.blockTexelViewCompatibleMultipleLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxCombinedImageSamplerDescriptorCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMaintenance6Properties.maxCombinedImageSamplerDescriptorCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Properties.maxCombinedImageSamplerDescriptorCount has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateClampCombinerInputs"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMaintenance6Properties.fragmentShadingRateClampCombinerInputs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance6Properties.fragmentShadingRateClampCombinerInputs has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance6Properties) == 32, "VkPhysicalDeviceMaintenance6Properties has size % instead of 32", size_of(VkPhysicalDeviceMaintenance6Properties)); } { info := type_info(VkBindMemoryStatus); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindMemoryStatus.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindMemoryStatus.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindMemoryStatus.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindMemoryStatus.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pResult"; assert(it.offset_in_bytes == 16, "VkBindMemoryStatus.pResult has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindMemoryStatus.pResult has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindMemoryStatus) == 24, "VkBindMemoryStatus has size % instead of 24", size_of(VkBindMemoryStatus)); } { info := type_info(VkBindDescriptorSetsInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindDescriptorSetsInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorSetsInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindDescriptorSetsInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorSetsInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 16, "VkBindDescriptorSetsInfo.stageFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorSetsInfo.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 24, "VkBindDescriptorSetsInfo.layout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorSetsInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "firstSet"; assert(it.offset_in_bytes == 32, "VkBindDescriptorSetsInfo.firstSet has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorSetsInfo.firstSet has unexpected size % instead of 4", it.type.runtime_size); case "descriptorSetCount"; assert(it.offset_in_bytes == 36, "VkBindDescriptorSetsInfo.descriptorSetCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorSetsInfo.descriptorSetCount has unexpected size % instead of 4", it.type.runtime_size); case "pDescriptorSets"; assert(it.offset_in_bytes == 40, "VkBindDescriptorSetsInfo.pDescriptorSets has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorSetsInfo.pDescriptorSets has unexpected size % instead of 8", it.type.runtime_size); case "dynamicOffsetCount"; assert(it.offset_in_bytes == 48, "VkBindDescriptorSetsInfo.dynamicOffsetCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorSetsInfo.dynamicOffsetCount has unexpected size % instead of 4", it.type.runtime_size); case "pDynamicOffsets"; assert(it.offset_in_bytes == 56, "VkBindDescriptorSetsInfo.pDynamicOffsets has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorSetsInfo.pDynamicOffsets has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindDescriptorSetsInfo) == 64, "VkBindDescriptorSetsInfo has size % instead of 64", size_of(VkBindDescriptorSetsInfo)); } { info := type_info(VkPushConstantsInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPushConstantsInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantsInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPushConstantsInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushConstantsInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 16, "VkPushConstantsInfo.layout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushConstantsInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 24, "VkPushConstantsInfo.stageFlags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantsInfo.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 28, "VkPushConstantsInfo.offset has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantsInfo.offset has unexpected size % instead of 4", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 32, "VkPushConstantsInfo.size has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushConstantsInfo.size has unexpected size % instead of 4", it.type.runtime_size); case "pValues"; assert(it.offset_in_bytes == 40, "VkPushConstantsInfo.pValues has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushConstantsInfo.pValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPushConstantsInfo) == 48, "VkPushConstantsInfo has size % instead of 48", size_of(VkPushConstantsInfo)); } { info := type_info(VkPushDescriptorSetInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPushDescriptorSetInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPushDescriptorSetInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 16, "VkPushDescriptorSetInfo.stageFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetInfo.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 24, "VkPushDescriptorSetInfo.layout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "set"; assert(it.offset_in_bytes == 32, "VkPushDescriptorSetInfo.set has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetInfo.set has unexpected size % instead of 4", it.type.runtime_size); case "descriptorWriteCount"; assert(it.offset_in_bytes == 36, "VkPushDescriptorSetInfo.descriptorWriteCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetInfo.descriptorWriteCount has unexpected size % instead of 4", it.type.runtime_size); case "pDescriptorWrites"; assert(it.offset_in_bytes == 40, "VkPushDescriptorSetInfo.pDescriptorWrites has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetInfo.pDescriptorWrites has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPushDescriptorSetInfo) == 48, "VkPushDescriptorSetInfo has size % instead of 48", size_of(VkPushDescriptorSetInfo)); } { info := type_info(VkPushDescriptorSetWithTemplateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPushDescriptorSetWithTemplateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetWithTemplateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPushDescriptorSetWithTemplateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetWithTemplateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorUpdateTemplate"; assert(it.offset_in_bytes == 16, "VkPushDescriptorSetWithTemplateInfo.descriptorUpdateTemplate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetWithTemplateInfo.descriptorUpdateTemplate has unexpected size % instead of 8", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 24, "VkPushDescriptorSetWithTemplateInfo.layout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetWithTemplateInfo.layout has unexpected size % instead of 8", it.type.runtime_size); case "set"; assert(it.offset_in_bytes == 32, "VkPushDescriptorSetWithTemplateInfo.set has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPushDescriptorSetWithTemplateInfo.set has unexpected size % instead of 4", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 40, "VkPushDescriptorSetWithTemplateInfo.pData has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPushDescriptorSetWithTemplateInfo.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPushDescriptorSetWithTemplateInfo) == 48, "VkPushDescriptorSetWithTemplateInfo has size % instead of 48", size_of(VkPushDescriptorSetWithTemplateInfo)); } { info := type_info(VkPhysicalDevicePipelineProtectedAccessFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineProtectedAccessFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineProtectedAccessFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineProtectedAccessFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineProtectedAccessFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineProtectedAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineProtectedAccessFeatures.pipelineProtectedAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineProtectedAccessFeatures.pipelineProtectedAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineProtectedAccessFeatures) == 24, "VkPhysicalDevicePipelineProtectedAccessFeatures has size % instead of 24", size_of(VkPhysicalDevicePipelineProtectedAccessFeatures)); } { info := type_info(VkPhysicalDevicePipelineRobustnessFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineRobustnessFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineRobustnessFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineRobustnessFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineRobustness"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineRobustnessFeatures.pipelineRobustness has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessFeatures.pipelineRobustness has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineRobustnessFeatures) == 24, "VkPhysicalDevicePipelineRobustnessFeatures has size % instead of 24", size_of(VkPhysicalDevicePipelineRobustnessFeatures)); } { info := type_info(VkPhysicalDevicePipelineRobustnessProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineRobustnessProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineRobustnessProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineRobustnessProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "defaultRobustnessStorageBuffers"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessStorageBuffers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessStorageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessUniformBuffers"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessUniformBuffers has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessUniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessVertexInputs"; assert(it.offset_in_bytes == 24, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessVertexInputs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessVertexInputs has unexpected size % instead of 4", it.type.runtime_size); case "defaultRobustnessImages"; assert(it.offset_in_bytes == 28, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessImages has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineRobustnessProperties.defaultRobustnessImages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineRobustnessProperties) == 32, "VkPhysicalDevicePipelineRobustnessProperties has size % instead of 32", size_of(VkPhysicalDevicePipelineRobustnessProperties)); } { info := type_info(VkPipelineRobustnessCreateInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRobustnessCreateInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRobustnessCreateInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRobustnessCreateInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRobustnessCreateInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "storageBuffers"; assert(it.offset_in_bytes == 16, "VkPipelineRobustnessCreateInfo.storageBuffers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRobustnessCreateInfo.storageBuffers has unexpected size % instead of 4", it.type.runtime_size); case "uniformBuffers"; assert(it.offset_in_bytes == 20, "VkPipelineRobustnessCreateInfo.uniformBuffers has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRobustnessCreateInfo.uniformBuffers has unexpected size % instead of 4", it.type.runtime_size); case "vertexInputs"; assert(it.offset_in_bytes == 24, "VkPipelineRobustnessCreateInfo.vertexInputs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRobustnessCreateInfo.vertexInputs has unexpected size % instead of 4", it.type.runtime_size); case "images"; assert(it.offset_in_bytes == 28, "VkPipelineRobustnessCreateInfo.images has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRobustnessCreateInfo.images has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRobustnessCreateInfo) == 32, "VkPipelineRobustnessCreateInfo has size % instead of 32", size_of(VkPipelineRobustnessCreateInfo)); } { info := type_info(VkPhysicalDeviceHostImageCopyFeatures); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceHostImageCopyFeatures.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyFeatures.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceHostImageCopyFeatures.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHostImageCopyFeatures.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hostImageCopy"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceHostImageCopyFeatures.hostImageCopy has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyFeatures.hostImageCopy has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceHostImageCopyFeatures) == 24, "VkPhysicalDeviceHostImageCopyFeatures has size % instead of 24", size_of(VkPhysicalDeviceHostImageCopyFeatures)); } { info := type_info(VkPhysicalDeviceHostImageCopyProperties); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceHostImageCopyProperties.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyProperties.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceHostImageCopyProperties.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHostImageCopyProperties.pNext has unexpected size % instead of 8", it.type.runtime_size); case "copySrcLayoutCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceHostImageCopyProperties.copySrcLayoutCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyProperties.copySrcLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pCopySrcLayouts"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceHostImageCopyProperties.pCopySrcLayouts has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHostImageCopyProperties.pCopySrcLayouts has unexpected size % instead of 8", it.type.runtime_size); case "copyDstLayoutCount"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceHostImageCopyProperties.copyDstLayoutCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyProperties.copyDstLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pCopyDstLayouts"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceHostImageCopyProperties.pCopyDstLayouts has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHostImageCopyProperties.pCopyDstLayouts has unexpected size % instead of 8", it.type.runtime_size); case "optimalTilingLayoutUUID"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceHostImageCopyProperties.optimalTilingLayoutUUID has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceHostImageCopyProperties.optimalTilingLayoutUUID has unexpected size % instead of 16", it.type.runtime_size); case "identicalMemoryTypeRequirements"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceHostImageCopyProperties.identicalMemoryTypeRequirements has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHostImageCopyProperties.identicalMemoryTypeRequirements has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceHostImageCopyProperties) == 72, "VkPhysicalDeviceHostImageCopyProperties has size % instead of 72", size_of(VkPhysicalDeviceHostImageCopyProperties)); } { info := type_info(VkMemoryToImageCopy); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryToImageCopy.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryToImageCopy.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryToImageCopy.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryToImageCopy.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pHostPointer"; assert(it.offset_in_bytes == 16, "VkMemoryToImageCopy.pHostPointer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryToImageCopy.pHostPointer has unexpected size % instead of 8", it.type.runtime_size); case "memoryRowLength"; assert(it.offset_in_bytes == 24, "VkMemoryToImageCopy.memoryRowLength has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryToImageCopy.memoryRowLength has unexpected size % instead of 4", it.type.runtime_size); case "memoryImageHeight"; assert(it.offset_in_bytes == 28, "VkMemoryToImageCopy.memoryImageHeight has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryToImageCopy.memoryImageHeight has unexpected size % instead of 4", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 32, "VkMemoryToImageCopy.imageSubresource has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkMemoryToImageCopy.imageSubresource has unexpected size % instead of 16", it.type.runtime_size); case "imageOffset"; assert(it.offset_in_bytes == 48, "VkMemoryToImageCopy.imageOffset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkMemoryToImageCopy.imageOffset has unexpected size % instead of 12", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 60, "VkMemoryToImageCopy.imageExtent has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkMemoryToImageCopy.imageExtent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkMemoryToImageCopy) == 72, "VkMemoryToImageCopy has size % instead of 72", size_of(VkMemoryToImageCopy)); } { info := type_info(VkImageToMemoryCopy); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageToMemoryCopy.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageToMemoryCopy.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageToMemoryCopy.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageToMemoryCopy.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pHostPointer"; assert(it.offset_in_bytes == 16, "VkImageToMemoryCopy.pHostPointer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageToMemoryCopy.pHostPointer has unexpected size % instead of 8", it.type.runtime_size); case "memoryRowLength"; assert(it.offset_in_bytes == 24, "VkImageToMemoryCopy.memoryRowLength has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageToMemoryCopy.memoryRowLength has unexpected size % instead of 4", it.type.runtime_size); case "memoryImageHeight"; assert(it.offset_in_bytes == 28, "VkImageToMemoryCopy.memoryImageHeight has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageToMemoryCopy.memoryImageHeight has unexpected size % instead of 4", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 32, "VkImageToMemoryCopy.imageSubresource has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkImageToMemoryCopy.imageSubresource has unexpected size % instead of 16", it.type.runtime_size); case "imageOffset"; assert(it.offset_in_bytes == 48, "VkImageToMemoryCopy.imageOffset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageToMemoryCopy.imageOffset has unexpected size % instead of 12", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 60, "VkImageToMemoryCopy.imageExtent has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkImageToMemoryCopy.imageExtent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkImageToMemoryCopy) == 72, "VkImageToMemoryCopy has size % instead of 72", size_of(VkImageToMemoryCopy)); } { info := type_info(VkCopyMemoryToImageInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyMemoryToImageInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyMemoryToImageInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToImageInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCopyMemoryToImageInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 24, "VkCopyMemoryToImageInfo.dstImage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToImageInfo.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 32, "VkCopyMemoryToImageInfo.dstImageLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageInfo.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 36, "VkCopyMemoryToImageInfo.regionCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageInfo.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 40, "VkCopyMemoryToImageInfo.pRegions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToImageInfo.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyMemoryToImageInfo) == 48, "VkCopyMemoryToImageInfo has size % instead of 48", size_of(VkCopyMemoryToImageInfo)); } { info := type_info(VkCopyImageToMemoryInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyImageToMemoryInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToMemoryInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyImageToMemoryInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToMemoryInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCopyImageToMemoryInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToMemoryInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 24, "VkCopyImageToMemoryInfo.srcImage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToMemoryInfo.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 32, "VkCopyImageToMemoryInfo.srcImageLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToMemoryInfo.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 36, "VkCopyImageToMemoryInfo.regionCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToMemoryInfo.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 40, "VkCopyImageToMemoryInfo.pRegions has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToMemoryInfo.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyImageToMemoryInfo) == 48, "VkCopyImageToMemoryInfo has size % instead of 48", size_of(VkCopyImageToMemoryInfo)); } { info := type_info(VkCopyImageToImageInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyImageToImageInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToImageInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyImageToImageInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToImageInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkCopyImageToImageInfo.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToImageInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "srcImage"; assert(it.offset_in_bytes == 24, "VkCopyImageToImageInfo.srcImage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToImageInfo.srcImage has unexpected size % instead of 8", it.type.runtime_size); case "srcImageLayout"; assert(it.offset_in_bytes == 32, "VkCopyImageToImageInfo.srcImageLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToImageInfo.srcImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstImage"; assert(it.offset_in_bytes == 40, "VkCopyImageToImageInfo.dstImage has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToImageInfo.dstImage has unexpected size % instead of 8", it.type.runtime_size); case "dstImageLayout"; assert(it.offset_in_bytes == 48, "VkCopyImageToImageInfo.dstImageLayout has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToImageInfo.dstImageLayout has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 52, "VkCopyImageToImageInfo.regionCount has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyImageToImageInfo.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 56, "VkCopyImageToImageInfo.pRegions has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyImageToImageInfo.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyImageToImageInfo) == 64, "VkCopyImageToImageInfo has size % instead of 64", size_of(VkCopyImageToImageInfo)); } { info := type_info(VkHostImageLayoutTransitionInfo); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkHostImageLayoutTransitionInfo.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageLayoutTransitionInfo.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkHostImageLayoutTransitionInfo.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHostImageLayoutTransitionInfo.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkHostImageLayoutTransitionInfo.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHostImageLayoutTransitionInfo.image has unexpected size % instead of 8", it.type.runtime_size); case "oldLayout"; assert(it.offset_in_bytes == 24, "VkHostImageLayoutTransitionInfo.oldLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageLayoutTransitionInfo.oldLayout has unexpected size % instead of 4", it.type.runtime_size); case "newLayout"; assert(it.offset_in_bytes == 28, "VkHostImageLayoutTransitionInfo.newLayout has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageLayoutTransitionInfo.newLayout has unexpected size % instead of 4", it.type.runtime_size); case "subresourceRange"; assert(it.offset_in_bytes == 32, "VkHostImageLayoutTransitionInfo.subresourceRange has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 20, "VkHostImageLayoutTransitionInfo.subresourceRange has unexpected size % instead of 20", it.type.runtime_size); } } assert(size_of(VkHostImageLayoutTransitionInfo) == 56, "VkHostImageLayoutTransitionInfo has size % instead of 56", size_of(VkHostImageLayoutTransitionInfo)); } { info := type_info(VkSubresourceHostMemcpySize); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubresourceHostMemcpySize.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubresourceHostMemcpySize.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubresourceHostMemcpySize.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceHostMemcpySize.pNext has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkSubresourceHostMemcpySize.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubresourceHostMemcpySize.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSubresourceHostMemcpySize) == 24, "VkSubresourceHostMemcpySize has size % instead of 24", size_of(VkSubresourceHostMemcpySize)); } { info := type_info(VkHostImageCopyDevicePerformanceQuery); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkHostImageCopyDevicePerformanceQuery.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageCopyDevicePerformanceQuery.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkHostImageCopyDevicePerformanceQuery.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHostImageCopyDevicePerformanceQuery.pNext has unexpected size % instead of 8", it.type.runtime_size); case "optimalDeviceAccess"; assert(it.offset_in_bytes == 16, "VkHostImageCopyDevicePerformanceQuery.optimalDeviceAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageCopyDevicePerformanceQuery.optimalDeviceAccess has unexpected size % instead of 4", it.type.runtime_size); case "identicalMemoryLayout"; assert(it.offset_in_bytes == 20, "VkHostImageCopyDevicePerformanceQuery.identicalMemoryLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHostImageCopyDevicePerformanceQuery.identicalMemoryLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkHostImageCopyDevicePerformanceQuery) == 24, "VkHostImageCopyDevicePerformanceQuery has size % instead of 24", size_of(VkHostImageCopyDevicePerformanceQuery)); } { info := type_info(VkSurfaceCapabilitiesKHR); for info.members { if it.name == { case "minImageCount"; assert(it.offset_in_bytes == 0, "VkSurfaceCapabilitiesKHR.minImageCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.minImageCount has unexpected size % instead of 4", it.type.runtime_size); case "maxImageCount"; assert(it.offset_in_bytes == 4, "VkSurfaceCapabilitiesKHR.maxImageCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.maxImageCount has unexpected size % instead of 4", it.type.runtime_size); case "currentExtent"; assert(it.offset_in_bytes == 8, "VkSurfaceCapabilitiesKHR.currentExtent has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilitiesKHR.currentExtent has unexpected size % instead of 8", it.type.runtime_size); case "minImageExtent"; assert(it.offset_in_bytes == 16, "VkSurfaceCapabilitiesKHR.minImageExtent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilitiesKHR.minImageExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxImageExtent"; assert(it.offset_in_bytes == 24, "VkSurfaceCapabilitiesKHR.maxImageExtent has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilitiesKHR.maxImageExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxImageArrayLayers"; assert(it.offset_in_bytes == 32, "VkSurfaceCapabilitiesKHR.maxImageArrayLayers has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.maxImageArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "supportedTransforms"; assert(it.offset_in_bytes == 36, "VkSurfaceCapabilitiesKHR.supportedTransforms has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.supportedTransforms has unexpected size % instead of 4", it.type.runtime_size); case "currentTransform"; assert(it.offset_in_bytes == 40, "VkSurfaceCapabilitiesKHR.currentTransform has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.currentTransform has unexpected size % instead of 4", it.type.runtime_size); case "supportedCompositeAlpha"; assert(it.offset_in_bytes == 44, "VkSurfaceCapabilitiesKHR.supportedCompositeAlpha has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.supportedCompositeAlpha has unexpected size % instead of 4", it.type.runtime_size); case "supportedUsageFlags"; assert(it.offset_in_bytes == 48, "VkSurfaceCapabilitiesKHR.supportedUsageFlags has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesKHR.supportedUsageFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfaceCapabilitiesKHR) == 52, "VkSurfaceCapabilitiesKHR has size % instead of 52", size_of(VkSurfaceCapabilitiesKHR)); } { info := type_info(VkSurfaceFormatKHR); for info.members { if it.name == { case "format"; assert(it.offset_in_bytes == 0, "VkSurfaceFormatKHR.format has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceFormatKHR.format has unexpected size % instead of 4", it.type.runtime_size); case "colorSpace"; assert(it.offset_in_bytes == 4, "VkSurfaceFormatKHR.colorSpace has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceFormatKHR.colorSpace has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfaceFormatKHR) == 8, "VkSurfaceFormatKHR has size % instead of 8", size_of(VkSurfaceFormatKHR)); } { info := type_info(VkSwapchainCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkSwapchainCreateInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "surface"; assert(it.offset_in_bytes == 24, "VkSwapchainCreateInfoKHR.surface has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCreateInfoKHR.surface has unexpected size % instead of 8", it.type.runtime_size); case "minImageCount"; assert(it.offset_in_bytes == 32, "VkSwapchainCreateInfoKHR.minImageCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.minImageCount has unexpected size % instead of 4", it.type.runtime_size); case "imageFormat"; assert(it.offset_in_bytes == 36, "VkSwapchainCreateInfoKHR.imageFormat has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.imageFormat has unexpected size % instead of 4", it.type.runtime_size); case "imageColorSpace"; assert(it.offset_in_bytes == 40, "VkSwapchainCreateInfoKHR.imageColorSpace has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.imageColorSpace has unexpected size % instead of 4", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 44, "VkSwapchainCreateInfoKHR.imageExtent has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCreateInfoKHR.imageExtent has unexpected size % instead of 8", it.type.runtime_size); case "imageArrayLayers"; assert(it.offset_in_bytes == 52, "VkSwapchainCreateInfoKHR.imageArrayLayers has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.imageArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "imageUsage"; assert(it.offset_in_bytes == 56, "VkSwapchainCreateInfoKHR.imageUsage has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.imageUsage has unexpected size % instead of 4", it.type.runtime_size); case "imageSharingMode"; assert(it.offset_in_bytes == 60, "VkSwapchainCreateInfoKHR.imageSharingMode has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.imageSharingMode has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndexCount"; assert(it.offset_in_bytes == 64, "VkSwapchainCreateInfoKHR.queueFamilyIndexCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.queueFamilyIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueFamilyIndices"; assert(it.offset_in_bytes == 72, "VkSwapchainCreateInfoKHR.pQueueFamilyIndices has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCreateInfoKHR.pQueueFamilyIndices has unexpected size % instead of 8", it.type.runtime_size); case "preTransform"; assert(it.offset_in_bytes == 80, "VkSwapchainCreateInfoKHR.preTransform has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.preTransform has unexpected size % instead of 4", it.type.runtime_size); case "compositeAlpha"; assert(it.offset_in_bytes == 84, "VkSwapchainCreateInfoKHR.compositeAlpha has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.compositeAlpha has unexpected size % instead of 4", it.type.runtime_size); case "presentMode"; assert(it.offset_in_bytes == 88, "VkSwapchainCreateInfoKHR.presentMode has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.presentMode has unexpected size % instead of 4", it.type.runtime_size); case "clipped"; assert(it.offset_in_bytes == 92, "VkSwapchainCreateInfoKHR.clipped has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCreateInfoKHR.clipped has unexpected size % instead of 4", it.type.runtime_size); case "oldSwapchain"; assert(it.offset_in_bytes == 96, "VkSwapchainCreateInfoKHR.oldSwapchain has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCreateInfoKHR.oldSwapchain has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSwapchainCreateInfoKHR) == 104, "VkSwapchainCreateInfoKHR has size % instead of 104", size_of(VkSwapchainCreateInfoKHR)); } { info := type_info(VkPresentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPresentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPresentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "waitSemaphoreCount"; assert(it.offset_in_bytes == 16, "VkPresentInfoKHR.waitSemaphoreCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentInfoKHR.waitSemaphoreCount has unexpected size % instead of 4", it.type.runtime_size); case "pWaitSemaphores"; assert(it.offset_in_bytes == 24, "VkPresentInfoKHR.pWaitSemaphores has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentInfoKHR.pWaitSemaphores has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 32, "VkPresentInfoKHR.swapchainCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentInfoKHR.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pSwapchains"; assert(it.offset_in_bytes == 40, "VkPresentInfoKHR.pSwapchains has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentInfoKHR.pSwapchains has unexpected size % instead of 8", it.type.runtime_size); case "pImageIndices"; assert(it.offset_in_bytes == 48, "VkPresentInfoKHR.pImageIndices has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentInfoKHR.pImageIndices has unexpected size % instead of 8", it.type.runtime_size); case "pResults"; assert(it.offset_in_bytes == 56, "VkPresentInfoKHR.pResults has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentInfoKHR.pResults has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentInfoKHR) == 64, "VkPresentInfoKHR has size % instead of 64", size_of(VkPresentInfoKHR)); } { info := type_info(VkImageSwapchainCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageSwapchainCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageSwapchainCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageSwapchainCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageSwapchainCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchain"; assert(it.offset_in_bytes == 16, "VkImageSwapchainCreateInfoKHR.swapchain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageSwapchainCreateInfoKHR.swapchain has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageSwapchainCreateInfoKHR) == 24, "VkImageSwapchainCreateInfoKHR has size % instead of 24", size_of(VkImageSwapchainCreateInfoKHR)); } { info := type_info(VkBindImageMemorySwapchainInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindImageMemorySwapchainInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemorySwapchainInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindImageMemorySwapchainInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemorySwapchainInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchain"; assert(it.offset_in_bytes == 16, "VkBindImageMemorySwapchainInfoKHR.swapchain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindImageMemorySwapchainInfoKHR.swapchain has unexpected size % instead of 8", it.type.runtime_size); case "imageIndex"; assert(it.offset_in_bytes == 24, "VkBindImageMemorySwapchainInfoKHR.imageIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindImageMemorySwapchainInfoKHR.imageIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindImageMemorySwapchainInfoKHR) == 32, "VkBindImageMemorySwapchainInfoKHR has size % instead of 32", size_of(VkBindImageMemorySwapchainInfoKHR)); } { info := type_info(VkAcquireNextImageInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAcquireNextImageInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAcquireNextImageInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAcquireNextImageInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireNextImageInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchain"; assert(it.offset_in_bytes == 16, "VkAcquireNextImageInfoKHR.swapchain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireNextImageInfoKHR.swapchain has unexpected size % instead of 8", it.type.runtime_size); case "timeout"; assert(it.offset_in_bytes == 24, "VkAcquireNextImageInfoKHR.timeout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireNextImageInfoKHR.timeout has unexpected size % instead of 8", it.type.runtime_size); case "semaphore"; assert(it.offset_in_bytes == 32, "VkAcquireNextImageInfoKHR.semaphore has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireNextImageInfoKHR.semaphore has unexpected size % instead of 8", it.type.runtime_size); case "fence"; assert(it.offset_in_bytes == 40, "VkAcquireNextImageInfoKHR.fence has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireNextImageInfoKHR.fence has unexpected size % instead of 8", it.type.runtime_size); case "deviceMask"; assert(it.offset_in_bytes == 48, "VkAcquireNextImageInfoKHR.deviceMask has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAcquireNextImageInfoKHR.deviceMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAcquireNextImageInfoKHR) == 56, "VkAcquireNextImageInfoKHR has size % instead of 56", size_of(VkAcquireNextImageInfoKHR)); } { info := type_info(VkDeviceGroupPresentCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupPresentCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupPresentCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupPresentCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupPresentCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentMask"; assert(it.offset_in_bytes == 16, "VkDeviceGroupPresentCapabilitiesKHR.presentMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 128, "VkDeviceGroupPresentCapabilitiesKHR.presentMask has unexpected size % instead of 128", it.type.runtime_size); case "modes"; assert(it.offset_in_bytes == 144, "VkDeviceGroupPresentCapabilitiesKHR.modes has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupPresentCapabilitiesKHR.modes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceGroupPresentCapabilitiesKHR) == 152, "VkDeviceGroupPresentCapabilitiesKHR has size % instead of 152", size_of(VkDeviceGroupPresentCapabilitiesKHR)); } { info := type_info(VkDeviceGroupPresentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupPresentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupPresentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupPresentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupPresentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkDeviceGroupPresentInfoKHR.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupPresentInfoKHR.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pDeviceMasks"; assert(it.offset_in_bytes == 24, "VkDeviceGroupPresentInfoKHR.pDeviceMasks has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupPresentInfoKHR.pDeviceMasks has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkDeviceGroupPresentInfoKHR.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupPresentInfoKHR.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceGroupPresentInfoKHR) == 40, "VkDeviceGroupPresentInfoKHR has size % instead of 40", size_of(VkDeviceGroupPresentInfoKHR)); } { info := type_info(VkDeviceGroupSwapchainCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceGroupSwapchainCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSwapchainCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceGroupSwapchainCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceGroupSwapchainCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "modes"; assert(it.offset_in_bytes == 16, "VkDeviceGroupSwapchainCreateInfoKHR.modes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceGroupSwapchainCreateInfoKHR.modes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceGroupSwapchainCreateInfoKHR) == 24, "VkDeviceGroupSwapchainCreateInfoKHR has size % instead of 24", size_of(VkDeviceGroupSwapchainCreateInfoKHR)); } { info := type_info(VkDisplayModeParametersKHR); for info.members { if it.name == { case "visibleRegion"; assert(it.offset_in_bytes == 0, "VkDisplayModeParametersKHR.visibleRegion has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayModeParametersKHR.visibleRegion has unexpected size % instead of 8", it.type.runtime_size); case "refreshRate"; assert(it.offset_in_bytes == 8, "VkDisplayModeParametersKHR.refreshRate has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeParametersKHR.refreshRate has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayModeParametersKHR) == 12, "VkDisplayModeParametersKHR has size % instead of 12", size_of(VkDisplayModeParametersKHR)); } { info := type_info(VkDisplayModeCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayModeCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayModeCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayModeCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDisplayModeCreateInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "parameters"; assert(it.offset_in_bytes == 20, "VkDisplayModeCreateInfoKHR.parameters has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkDisplayModeCreateInfoKHR.parameters has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkDisplayModeCreateInfoKHR) == 32, "VkDisplayModeCreateInfoKHR has size % instead of 32", size_of(VkDisplayModeCreateInfoKHR)); } { info := type_info(VkDisplayModePropertiesKHR); for info.members { if it.name == { case "displayMode"; assert(it.offset_in_bytes == 0, "VkDisplayModePropertiesKHR.displayMode has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayModePropertiesKHR.displayMode has unexpected size % instead of 8", it.type.runtime_size); case "parameters"; assert(it.offset_in_bytes == 8, "VkDisplayModePropertiesKHR.parameters has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkDisplayModePropertiesKHR.parameters has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkDisplayModePropertiesKHR) == 24, "VkDisplayModePropertiesKHR has size % instead of 24", size_of(VkDisplayModePropertiesKHR)); } { info := type_info(VkDisplayPlaneCapabilitiesKHR); for info.members { if it.name == { case "supportedAlpha"; assert(it.offset_in_bytes == 0, "VkDisplayPlaneCapabilitiesKHR.supportedAlpha has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlaneCapabilitiesKHR.supportedAlpha has unexpected size % instead of 4", it.type.runtime_size); case "minSrcPosition"; assert(it.offset_in_bytes == 4, "VkDisplayPlaneCapabilitiesKHR.minSrcPosition has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.minSrcPosition has unexpected size % instead of 8", it.type.runtime_size); case "maxSrcPosition"; assert(it.offset_in_bytes == 12, "VkDisplayPlaneCapabilitiesKHR.maxSrcPosition has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.maxSrcPosition has unexpected size % instead of 8", it.type.runtime_size); case "minSrcExtent"; assert(it.offset_in_bytes == 20, "VkDisplayPlaneCapabilitiesKHR.minSrcExtent has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.minSrcExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxSrcExtent"; assert(it.offset_in_bytes == 28, "VkDisplayPlaneCapabilitiesKHR.maxSrcExtent has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.maxSrcExtent has unexpected size % instead of 8", it.type.runtime_size); case "minDstPosition"; assert(it.offset_in_bytes == 36, "VkDisplayPlaneCapabilitiesKHR.minDstPosition has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.minDstPosition has unexpected size % instead of 8", it.type.runtime_size); case "maxDstPosition"; assert(it.offset_in_bytes == 44, "VkDisplayPlaneCapabilitiesKHR.maxDstPosition has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.maxDstPosition has unexpected size % instead of 8", it.type.runtime_size); case "minDstExtent"; assert(it.offset_in_bytes == 52, "VkDisplayPlaneCapabilitiesKHR.minDstExtent has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.minDstExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxDstExtent"; assert(it.offset_in_bytes == 60, "VkDisplayPlaneCapabilitiesKHR.maxDstExtent has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilitiesKHR.maxDstExtent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDisplayPlaneCapabilitiesKHR) == 68, "VkDisplayPlaneCapabilitiesKHR has size % instead of 68", size_of(VkDisplayPlaneCapabilitiesKHR)); } { info := type_info(VkDisplayPlanePropertiesKHR); for info.members { if it.name == { case "currentDisplay"; assert(it.offset_in_bytes == 0, "VkDisplayPlanePropertiesKHR.currentDisplay has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlanePropertiesKHR.currentDisplay has unexpected size % instead of 8", it.type.runtime_size); case "currentStackIndex"; assert(it.offset_in_bytes == 8, "VkDisplayPlanePropertiesKHR.currentStackIndex has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlanePropertiesKHR.currentStackIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayPlanePropertiesKHR) == 16, "VkDisplayPlanePropertiesKHR has size % instead of 16", size_of(VkDisplayPlanePropertiesKHR)); } { info := type_info(VkDisplayPropertiesKHR); for info.members { if it.name == { case "display"; assert(it.offset_in_bytes == 0, "VkDisplayPropertiesKHR.display has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPropertiesKHR.display has unexpected size % instead of 8", it.type.runtime_size); case "displayName"; assert(it.offset_in_bytes == 8, "VkDisplayPropertiesKHR.displayName has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPropertiesKHR.displayName has unexpected size % instead of 8", it.type.runtime_size); case "physicalDimensions"; assert(it.offset_in_bytes == 16, "VkDisplayPropertiesKHR.physicalDimensions has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPropertiesKHR.physicalDimensions has unexpected size % instead of 8", it.type.runtime_size); case "physicalResolution"; assert(it.offset_in_bytes == 24, "VkDisplayPropertiesKHR.physicalResolution has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPropertiesKHR.physicalResolution has unexpected size % instead of 8", it.type.runtime_size); case "supportedTransforms"; assert(it.offset_in_bytes == 32, "VkDisplayPropertiesKHR.supportedTransforms has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPropertiesKHR.supportedTransforms has unexpected size % instead of 4", it.type.runtime_size); case "planeReorderPossible"; assert(it.offset_in_bytes == 36, "VkDisplayPropertiesKHR.planeReorderPossible has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPropertiesKHR.planeReorderPossible has unexpected size % instead of 4", it.type.runtime_size); case "persistentContent"; assert(it.offset_in_bytes == 40, "VkDisplayPropertiesKHR.persistentContent has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPropertiesKHR.persistentContent has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayPropertiesKHR) == 48, "VkDisplayPropertiesKHR has size % instead of 48", size_of(VkDisplayPropertiesKHR)); } { info := type_info(VkDisplaySurfaceCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplaySurfaceCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplaySurfaceCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplaySurfaceCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDisplaySurfaceCreateInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "displayMode"; assert(it.offset_in_bytes == 24, "VkDisplaySurfaceCreateInfoKHR.displayMode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplaySurfaceCreateInfoKHR.displayMode has unexpected size % instead of 8", it.type.runtime_size); case "planeIndex"; assert(it.offset_in_bytes == 32, "VkDisplaySurfaceCreateInfoKHR.planeIndex has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.planeIndex has unexpected size % instead of 4", it.type.runtime_size); case "planeStackIndex"; assert(it.offset_in_bytes == 36, "VkDisplaySurfaceCreateInfoKHR.planeStackIndex has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.planeStackIndex has unexpected size % instead of 4", it.type.runtime_size); case "transform"; assert(it.offset_in_bytes == 40, "VkDisplaySurfaceCreateInfoKHR.transform has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.transform has unexpected size % instead of 4", it.type.runtime_size); case "globalAlpha"; assert(it.offset_in_bytes == 44, "VkDisplaySurfaceCreateInfoKHR.globalAlpha has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.globalAlpha has unexpected size % instead of 4", it.type.runtime_size); case "alphaMode"; assert(it.offset_in_bytes == 48, "VkDisplaySurfaceCreateInfoKHR.alphaMode has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceCreateInfoKHR.alphaMode has unexpected size % instead of 4", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 52, "VkDisplaySurfaceCreateInfoKHR.imageExtent has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplaySurfaceCreateInfoKHR.imageExtent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDisplaySurfaceCreateInfoKHR) == 64, "VkDisplaySurfaceCreateInfoKHR has size % instead of 64", size_of(VkDisplaySurfaceCreateInfoKHR)); } { info := type_info(VkDisplayPresentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayPresentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPresentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayPresentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPresentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcRect"; assert(it.offset_in_bytes == 16, "VkDisplayPresentInfoKHR.srcRect has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDisplayPresentInfoKHR.srcRect has unexpected size % instead of 16", it.type.runtime_size); case "dstRect"; assert(it.offset_in_bytes == 32, "VkDisplayPresentInfoKHR.dstRect has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDisplayPresentInfoKHR.dstRect has unexpected size % instead of 16", it.type.runtime_size); case "persistent"; assert(it.offset_in_bytes == 48, "VkDisplayPresentInfoKHR.persistent has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPresentInfoKHR.persistent has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayPresentInfoKHR) == 56, "VkDisplayPresentInfoKHR has size % instead of 56", size_of(VkDisplayPresentInfoKHR)); } { info := type_info(VkQueueFamilyQueryResultStatusPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyQueryResultStatusPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyQueryResultStatusPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyQueryResultStatusPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyQueryResultStatusPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queryResultStatusSupport"; assert(it.offset_in_bytes == 16, "VkQueueFamilyQueryResultStatusPropertiesKHR.queryResultStatusSupport has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyQueryResultStatusPropertiesKHR.queryResultStatusSupport has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueueFamilyQueryResultStatusPropertiesKHR) == 24, "VkQueueFamilyQueryResultStatusPropertiesKHR has size % instead of 24", size_of(VkQueueFamilyQueryResultStatusPropertiesKHR)); } { info := type_info(VkQueueFamilyVideoPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyVideoPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyVideoPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyVideoPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyVideoPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoCodecOperations"; assert(it.offset_in_bytes == 16, "VkQueueFamilyVideoPropertiesKHR.videoCodecOperations has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyVideoPropertiesKHR.videoCodecOperations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueueFamilyVideoPropertiesKHR) == 24, "VkQueueFamilyVideoPropertiesKHR has size % instead of 24", size_of(VkQueueFamilyVideoPropertiesKHR)); } { info := type_info(VkVideoProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoCodecOperation"; assert(it.offset_in_bytes == 16, "VkVideoProfileInfoKHR.videoCodecOperation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileInfoKHR.videoCodecOperation has unexpected size % instead of 4", it.type.runtime_size); case "chromaSubsampling"; assert(it.offset_in_bytes == 20, "VkVideoProfileInfoKHR.chromaSubsampling has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileInfoKHR.chromaSubsampling has unexpected size % instead of 4", it.type.runtime_size); case "lumaBitDepth"; assert(it.offset_in_bytes == 24, "VkVideoProfileInfoKHR.lumaBitDepth has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileInfoKHR.lumaBitDepth has unexpected size % instead of 4", it.type.runtime_size); case "chromaBitDepth"; assert(it.offset_in_bytes == 28, "VkVideoProfileInfoKHR.chromaBitDepth has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileInfoKHR.chromaBitDepth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoProfileInfoKHR) == 32, "VkVideoProfileInfoKHR has size % instead of 32", size_of(VkVideoProfileInfoKHR)); } { info := type_info(VkVideoProfileListInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoProfileListInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileListInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoProfileListInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoProfileListInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "profileCount"; assert(it.offset_in_bytes == 16, "VkVideoProfileListInfoKHR.profileCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoProfileListInfoKHR.profileCount has unexpected size % instead of 4", it.type.runtime_size); case "pProfiles"; assert(it.offset_in_bytes == 24, "VkVideoProfileListInfoKHR.pProfiles has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoProfileListInfoKHR.pProfiles has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoProfileListInfoKHR) == 32, "VkVideoProfileListInfoKHR has size % instead of 32", size_of(VkVideoProfileListInfoKHR)); } { info := type_info(VkVideoCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoCapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "minBitstreamBufferOffsetAlignment"; assert(it.offset_in_bytes == 24, "VkVideoCapabilitiesKHR.minBitstreamBufferOffsetAlignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.minBitstreamBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "minBitstreamBufferSizeAlignment"; assert(it.offset_in_bytes == 32, "VkVideoCapabilitiesKHR.minBitstreamBufferSizeAlignment has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.minBitstreamBufferSizeAlignment has unexpected size % instead of 8", it.type.runtime_size); case "pictureAccessGranularity"; assert(it.offset_in_bytes == 40, "VkVideoCapabilitiesKHR.pictureAccessGranularity has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.pictureAccessGranularity has unexpected size % instead of 8", it.type.runtime_size); case "minCodedExtent"; assert(it.offset_in_bytes == 48, "VkVideoCapabilitiesKHR.minCodedExtent has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.minCodedExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxCodedExtent"; assert(it.offset_in_bytes == 56, "VkVideoCapabilitiesKHR.maxCodedExtent has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCapabilitiesKHR.maxCodedExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxDpbSlots"; assert(it.offset_in_bytes == 64, "VkVideoCapabilitiesKHR.maxDpbSlots has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCapabilitiesKHR.maxDpbSlots has unexpected size % instead of 4", it.type.runtime_size); case "maxActiveReferencePictures"; assert(it.offset_in_bytes == 68, "VkVideoCapabilitiesKHR.maxActiveReferencePictures has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCapabilitiesKHR.maxActiveReferencePictures has unexpected size % instead of 4", it.type.runtime_size); case "stdHeaderVersion"; assert(it.offset_in_bytes == 72, "VkVideoCapabilitiesKHR.stdHeaderVersion has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 260, "VkVideoCapabilitiesKHR.stdHeaderVersion has unexpected size % instead of 260", it.type.runtime_size); } } assert(size_of(VkVideoCapabilitiesKHR) == 336, "VkVideoCapabilitiesKHR has size % instead of 336", size_of(VkVideoCapabilitiesKHR)); } { info := type_info(VkPhysicalDeviceVideoFormatInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoFormatInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoFormatInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoFormatInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoFormatInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageUsage"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoFormatInfoKHR.imageUsage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoFormatInfoKHR.imageUsage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoFormatInfoKHR) == 24, "VkPhysicalDeviceVideoFormatInfoKHR has size % instead of 24", size_of(VkPhysicalDeviceVideoFormatInfoKHR)); } { info := type_info(VkVideoFormatPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoFormatPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoFormatPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoFormatPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 16, "VkVideoFormatPropertiesKHR.format has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.format has unexpected size % instead of 4", it.type.runtime_size); case "componentMapping"; assert(it.offset_in_bytes == 20, "VkVideoFormatPropertiesKHR.componentMapping has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkVideoFormatPropertiesKHR.componentMapping has unexpected size % instead of 16", it.type.runtime_size); case "imageCreateFlags"; assert(it.offset_in_bytes == 36, "VkVideoFormatPropertiesKHR.imageCreateFlags has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.imageCreateFlags has unexpected size % instead of 4", it.type.runtime_size); case "imageType"; assert(it.offset_in_bytes == 40, "VkVideoFormatPropertiesKHR.imageType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.imageType has unexpected size % instead of 4", it.type.runtime_size); case "imageTiling"; assert(it.offset_in_bytes == 44, "VkVideoFormatPropertiesKHR.imageTiling has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.imageTiling has unexpected size % instead of 4", it.type.runtime_size); case "imageUsageFlags"; assert(it.offset_in_bytes == 48, "VkVideoFormatPropertiesKHR.imageUsageFlags has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatPropertiesKHR.imageUsageFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoFormatPropertiesKHR) == 56, "VkVideoFormatPropertiesKHR has size % instead of 56", size_of(VkVideoFormatPropertiesKHR)); } { info := type_info(VkVideoPictureResourceInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoPictureResourceInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoPictureResourceInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoPictureResourceInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoPictureResourceInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "codedOffset"; assert(it.offset_in_bytes == 16, "VkVideoPictureResourceInfoKHR.codedOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoPictureResourceInfoKHR.codedOffset has unexpected size % instead of 8", it.type.runtime_size); case "codedExtent"; assert(it.offset_in_bytes == 24, "VkVideoPictureResourceInfoKHR.codedExtent has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoPictureResourceInfoKHR.codedExtent has unexpected size % instead of 8", it.type.runtime_size); case "baseArrayLayer"; assert(it.offset_in_bytes == 32, "VkVideoPictureResourceInfoKHR.baseArrayLayer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoPictureResourceInfoKHR.baseArrayLayer has unexpected size % instead of 4", it.type.runtime_size); case "imageViewBinding"; assert(it.offset_in_bytes == 40, "VkVideoPictureResourceInfoKHR.imageViewBinding has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoPictureResourceInfoKHR.imageViewBinding has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoPictureResourceInfoKHR) == 48, "VkVideoPictureResourceInfoKHR has size % instead of 48", size_of(VkVideoPictureResourceInfoKHR)); } { info := type_info(VkVideoReferenceSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoReferenceSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoReferenceSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoReferenceSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoReferenceSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "slotIndex"; assert(it.offset_in_bytes == 16, "VkVideoReferenceSlotInfoKHR.slotIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoReferenceSlotInfoKHR.slotIndex has unexpected size % instead of 4", it.type.runtime_size); case "pPictureResource"; assert(it.offset_in_bytes == 24, "VkVideoReferenceSlotInfoKHR.pPictureResource has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoReferenceSlotInfoKHR.pPictureResource has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoReferenceSlotInfoKHR) == 32, "VkVideoReferenceSlotInfoKHR has size % instead of 32", size_of(VkVideoReferenceSlotInfoKHR)); } { info := type_info(VkVideoSessionMemoryRequirementsKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoSessionMemoryRequirementsKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionMemoryRequirementsKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoSessionMemoryRequirementsKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionMemoryRequirementsKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryBindIndex"; assert(it.offset_in_bytes == 16, "VkVideoSessionMemoryRequirementsKHR.memoryBindIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionMemoryRequirementsKHR.memoryBindIndex has unexpected size % instead of 4", it.type.runtime_size); case "memoryRequirements"; assert(it.offset_in_bytes == 24, "VkVideoSessionMemoryRequirementsKHR.memoryRequirements has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkVideoSessionMemoryRequirementsKHR.memoryRequirements has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkVideoSessionMemoryRequirementsKHR) == 48, "VkVideoSessionMemoryRequirementsKHR has size % instead of 48", size_of(VkVideoSessionMemoryRequirementsKHR)); } { info := type_info(VkBindVideoSessionMemoryInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindVideoSessionMemoryInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVideoSessionMemoryInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindVideoSessionMemoryInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVideoSessionMemoryInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryBindIndex"; assert(it.offset_in_bytes == 16, "VkBindVideoSessionMemoryInfoKHR.memoryBindIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVideoSessionMemoryInfoKHR.memoryBindIndex has unexpected size % instead of 4", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkBindVideoSessionMemoryInfoKHR.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVideoSessionMemoryInfoKHR.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 32, "VkBindVideoSessionMemoryInfoKHR.memoryOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVideoSessionMemoryInfoKHR.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); case "memorySize"; assert(it.offset_in_bytes == 40, "VkBindVideoSessionMemoryInfoKHR.memorySize has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVideoSessionMemoryInfoKHR.memorySize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindVideoSessionMemoryInfoKHR) == 48, "VkBindVideoSessionMemoryInfoKHR has size % instead of 48", size_of(VkBindVideoSessionMemoryInfoKHR)); } { info := type_info(VkVideoSessionCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoSessionCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoSessionCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queueFamilyIndex"; assert(it.offset_in_bytes == 16, "VkVideoSessionCreateInfoKHR.queueFamilyIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.queueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkVideoSessionCreateInfoKHR.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "pVideoProfile"; assert(it.offset_in_bytes == 24, "VkVideoSessionCreateInfoKHR.pVideoProfile has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionCreateInfoKHR.pVideoProfile has unexpected size % instead of 8", it.type.runtime_size); case "pictureFormat"; assert(it.offset_in_bytes == 32, "VkVideoSessionCreateInfoKHR.pictureFormat has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.pictureFormat has unexpected size % instead of 4", it.type.runtime_size); case "maxCodedExtent"; assert(it.offset_in_bytes == 36, "VkVideoSessionCreateInfoKHR.maxCodedExtent has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionCreateInfoKHR.maxCodedExtent has unexpected size % instead of 8", it.type.runtime_size); case "referencePictureFormat"; assert(it.offset_in_bytes == 44, "VkVideoSessionCreateInfoKHR.referencePictureFormat has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.referencePictureFormat has unexpected size % instead of 4", it.type.runtime_size); case "maxDpbSlots"; assert(it.offset_in_bytes == 48, "VkVideoSessionCreateInfoKHR.maxDpbSlots has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.maxDpbSlots has unexpected size % instead of 4", it.type.runtime_size); case "maxActiveReferencePictures"; assert(it.offset_in_bytes == 52, "VkVideoSessionCreateInfoKHR.maxActiveReferencePictures has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionCreateInfoKHR.maxActiveReferencePictures has unexpected size % instead of 4", it.type.runtime_size); case "pStdHeaderVersion"; assert(it.offset_in_bytes == 56, "VkVideoSessionCreateInfoKHR.pStdHeaderVersion has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionCreateInfoKHR.pStdHeaderVersion has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoSessionCreateInfoKHR) == 64, "VkVideoSessionCreateInfoKHR has size % instead of 64", size_of(VkVideoSessionCreateInfoKHR)); } { info := type_info(VkVideoSessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoSessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoSessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoSessionParametersCreateInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionParametersCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "videoSessionParametersTemplate"; assert(it.offset_in_bytes == 24, "VkVideoSessionParametersCreateInfoKHR.videoSessionParametersTemplate has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionParametersCreateInfoKHR.videoSessionParametersTemplate has unexpected size % instead of 8", it.type.runtime_size); case "videoSession"; assert(it.offset_in_bytes == 32, "VkVideoSessionParametersCreateInfoKHR.videoSession has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionParametersCreateInfoKHR.videoSession has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoSessionParametersCreateInfoKHR) == 40, "VkVideoSessionParametersCreateInfoKHR has size % instead of 40", size_of(VkVideoSessionParametersCreateInfoKHR)); } { info := type_info(VkVideoSessionParametersUpdateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoSessionParametersUpdateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionParametersUpdateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoSessionParametersUpdateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoSessionParametersUpdateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "updateSequenceCount"; assert(it.offset_in_bytes == 16, "VkVideoSessionParametersUpdateInfoKHR.updateSequenceCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoSessionParametersUpdateInfoKHR.updateSequenceCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoSessionParametersUpdateInfoKHR) == 24, "VkVideoSessionParametersUpdateInfoKHR has size % instead of 24", size_of(VkVideoSessionParametersUpdateInfoKHR)); } { info := type_info(VkVideoBeginCodingInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoBeginCodingInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoBeginCodingInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoBeginCodingInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoBeginCodingInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoBeginCodingInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoBeginCodingInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "videoSession"; assert(it.offset_in_bytes == 24, "VkVideoBeginCodingInfoKHR.videoSession has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoBeginCodingInfoKHR.videoSession has unexpected size % instead of 8", it.type.runtime_size); case "videoSessionParameters"; assert(it.offset_in_bytes == 32, "VkVideoBeginCodingInfoKHR.videoSessionParameters has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoBeginCodingInfoKHR.videoSessionParameters has unexpected size % instead of 8", it.type.runtime_size); case "referenceSlotCount"; assert(it.offset_in_bytes == 40, "VkVideoBeginCodingInfoKHR.referenceSlotCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoBeginCodingInfoKHR.referenceSlotCount has unexpected size % instead of 4", it.type.runtime_size); case "pReferenceSlots"; assert(it.offset_in_bytes == 48, "VkVideoBeginCodingInfoKHR.pReferenceSlots has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoBeginCodingInfoKHR.pReferenceSlots has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoBeginCodingInfoKHR) == 56, "VkVideoBeginCodingInfoKHR has size % instead of 56", size_of(VkVideoBeginCodingInfoKHR)); } { info := type_info(VkVideoEndCodingInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEndCodingInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEndCodingInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEndCodingInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEndCodingInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEndCodingInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEndCodingInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEndCodingInfoKHR) == 24, "VkVideoEndCodingInfoKHR has size % instead of 24", size_of(VkVideoEndCodingInfoKHR)); } { info := type_info(VkVideoCodingControlInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoCodingControlInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCodingControlInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoCodingControlInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoCodingControlInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoCodingControlInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoCodingControlInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoCodingControlInfoKHR) == 24, "VkVideoCodingControlInfoKHR has size % instead of 24", size_of(VkVideoCodingControlInfoKHR)); } { info := type_info(VkVideoDecodeCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoDecodeCapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeCapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeCapabilitiesKHR) == 24, "VkVideoDecodeCapabilitiesKHR has size % instead of 24", size_of(VkVideoDecodeCapabilitiesKHR)); } { info := type_info(VkVideoDecodeUsageInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeUsageInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeUsageInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeUsageInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeUsageInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoUsageHints"; assert(it.offset_in_bytes == 16, "VkVideoDecodeUsageInfoKHR.videoUsageHints has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeUsageInfoKHR.videoUsageHints has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeUsageInfoKHR) == 24, "VkVideoDecodeUsageInfoKHR has size % instead of 24", size_of(VkVideoDecodeUsageInfoKHR)); } { info := type_info(VkVideoDecodeInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoDecodeInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "srcBuffer"; assert(it.offset_in_bytes == 24, "VkVideoDecodeInfoKHR.srcBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.srcBuffer has unexpected size % instead of 8", it.type.runtime_size); case "srcBufferOffset"; assert(it.offset_in_bytes == 32, "VkVideoDecodeInfoKHR.srcBufferOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.srcBufferOffset has unexpected size % instead of 8", it.type.runtime_size); case "srcBufferRange"; assert(it.offset_in_bytes == 40, "VkVideoDecodeInfoKHR.srcBufferRange has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.srcBufferRange has unexpected size % instead of 8", it.type.runtime_size); case "dstPictureResource"; assert(it.offset_in_bytes == 48, "VkVideoDecodeInfoKHR.dstPictureResource has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkVideoDecodeInfoKHR.dstPictureResource has unexpected size % instead of 48", it.type.runtime_size); case "pSetupReferenceSlot"; assert(it.offset_in_bytes == 96, "VkVideoDecodeInfoKHR.pSetupReferenceSlot has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.pSetupReferenceSlot has unexpected size % instead of 8", it.type.runtime_size); case "referenceSlotCount"; assert(it.offset_in_bytes == 104, "VkVideoDecodeInfoKHR.referenceSlotCount has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeInfoKHR.referenceSlotCount has unexpected size % instead of 4", it.type.runtime_size); case "pReferenceSlots"; assert(it.offset_in_bytes == 112, "VkVideoDecodeInfoKHR.pReferenceSlots has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeInfoKHR.pReferenceSlots has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeInfoKHR) == 120, "VkVideoDecodeInfoKHR has size % instead of 120", size_of(VkVideoDecodeInfoKHR)); } { info := type_info(StdVideoH264SpsVuiFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH264SpsVuiFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264SpsVuiFlags.__bitfield has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoH264SpsVuiFlags) == 4, "StdVideoH264SpsVuiFlags has size % instead of 4", size_of(StdVideoH264SpsVuiFlags)); } { info := type_info(StdVideoH264HrdParameters); for info.members { if it.name == { case "cpb_cnt_minus1"; assert(it.offset_in_bytes == 0, "StdVideoH264HrdParameters.cpb_cnt_minus1 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264HrdParameters.cpb_cnt_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "bit_rate_scale"; assert(it.offset_in_bytes == 1, "StdVideoH264HrdParameters.bit_rate_scale has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264HrdParameters.bit_rate_scale has unexpected size % instead of 1", it.type.runtime_size); case "cpb_size_scale"; assert(it.offset_in_bytes == 2, "StdVideoH264HrdParameters.cpb_size_scale has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264HrdParameters.cpb_size_scale has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 3, "StdVideoH264HrdParameters.reserved1 has unexpected offset % instead of 3", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264HrdParameters.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "bit_rate_value_minus1"; assert(it.offset_in_bytes == 4, "StdVideoH264HrdParameters.bit_rate_value_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH264HrdParameters.bit_rate_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "cpb_size_value_minus1"; assert(it.offset_in_bytes == 132, "StdVideoH264HrdParameters.cpb_size_value_minus1 has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH264HrdParameters.cpb_size_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "cbr_flag"; assert(it.offset_in_bytes == 260, "StdVideoH264HrdParameters.cbr_flag has unexpected offset % instead of 260", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoH264HrdParameters.cbr_flag has unexpected size % instead of 32", it.type.runtime_size); case "initial_cpb_removal_delay_length_minus1"; assert(it.offset_in_bytes == 292, "StdVideoH264HrdParameters.initial_cpb_removal_delay_length_minus1 has unexpected offset % instead of 292", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264HrdParameters.initial_cpb_removal_delay_length_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "cpb_removal_delay_length_minus1"; assert(it.offset_in_bytes == 296, "StdVideoH264HrdParameters.cpb_removal_delay_length_minus1 has unexpected offset % instead of 296", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264HrdParameters.cpb_removal_delay_length_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "dpb_output_delay_length_minus1"; assert(it.offset_in_bytes == 300, "StdVideoH264HrdParameters.dpb_output_delay_length_minus1 has unexpected offset % instead of 300", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264HrdParameters.dpb_output_delay_length_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "time_offset_length"; assert(it.offset_in_bytes == 304, "StdVideoH264HrdParameters.time_offset_length has unexpected offset % instead of 304", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264HrdParameters.time_offset_length has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH264HrdParameters) == 308, "StdVideoH264HrdParameters has size % instead of 308", size_of(StdVideoH264HrdParameters)); } { info := type_info(StdVideoH264SequenceParameterSetVui); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH264SequenceParameterSetVui.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSetVui.flags has unexpected size % instead of 4", it.type.runtime_size); case "aspect_ratio_idc"; assert(it.offset_in_bytes == 4, "StdVideoH264SequenceParameterSetVui.aspect_ratio_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSetVui.aspect_ratio_idc has unexpected size % instead of 4", it.type.runtime_size); case "sar_width"; assert(it.offset_in_bytes == 8, "StdVideoH264SequenceParameterSetVui.sar_width has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264SequenceParameterSetVui.sar_width has unexpected size % instead of 2", it.type.runtime_size); case "sar_height"; assert(it.offset_in_bytes == 10, "StdVideoH264SequenceParameterSetVui.sar_height has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264SequenceParameterSetVui.sar_height has unexpected size % instead of 2", it.type.runtime_size); case "video_format"; assert(it.offset_in_bytes == 12, "StdVideoH264SequenceParameterSetVui.video_format has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.video_format has unexpected size % instead of 1", it.type.runtime_size); case "colour_primaries"; assert(it.offset_in_bytes == 13, "StdVideoH264SequenceParameterSetVui.colour_primaries has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.colour_primaries has unexpected size % instead of 1", it.type.runtime_size); case "transfer_characteristics"; assert(it.offset_in_bytes == 14, "StdVideoH264SequenceParameterSetVui.transfer_characteristics has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.transfer_characteristics has unexpected size % instead of 1", it.type.runtime_size); case "matrix_coefficients"; assert(it.offset_in_bytes == 15, "StdVideoH264SequenceParameterSetVui.matrix_coefficients has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.matrix_coefficients has unexpected size % instead of 1", it.type.runtime_size); case "num_units_in_tick"; assert(it.offset_in_bytes == 16, "StdVideoH264SequenceParameterSetVui.num_units_in_tick has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSetVui.num_units_in_tick has unexpected size % instead of 4", it.type.runtime_size); case "time_scale"; assert(it.offset_in_bytes == 20, "StdVideoH264SequenceParameterSetVui.time_scale has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSetVui.time_scale has unexpected size % instead of 4", it.type.runtime_size); case "max_num_reorder_frames"; assert(it.offset_in_bytes == 24, "StdVideoH264SequenceParameterSetVui.max_num_reorder_frames has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.max_num_reorder_frames has unexpected size % instead of 1", it.type.runtime_size); case "max_dec_frame_buffering"; assert(it.offset_in_bytes == 25, "StdVideoH264SequenceParameterSetVui.max_dec_frame_buffering has unexpected offset % instead of 25", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.max_dec_frame_buffering has unexpected size % instead of 1", it.type.runtime_size); case "chroma_sample_loc_type_top_field"; assert(it.offset_in_bytes == 26, "StdVideoH264SequenceParameterSetVui.chroma_sample_loc_type_top_field has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.chroma_sample_loc_type_top_field has unexpected size % instead of 1", it.type.runtime_size); case "chroma_sample_loc_type_bottom_field"; assert(it.offset_in_bytes == 27, "StdVideoH264SequenceParameterSetVui.chroma_sample_loc_type_bottom_field has unexpected offset % instead of 27", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSetVui.chroma_sample_loc_type_bottom_field has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 28, "StdVideoH264SequenceParameterSetVui.reserved1 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSetVui.reserved1 has unexpected size % instead of 4", it.type.runtime_size); case "pHrdParameters"; assert(it.offset_in_bytes == 32, "StdVideoH264SequenceParameterSetVui.pHrdParameters has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH264SequenceParameterSetVui.pHrdParameters has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH264SequenceParameterSetVui) == 40, "StdVideoH264SequenceParameterSetVui has size % instead of 40", size_of(StdVideoH264SequenceParameterSetVui)); } { info := type_info(StdVideoH264SpsFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH264SpsFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264SpsFlags.__bitfield has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoH264SpsFlags) == 4, "StdVideoH264SpsFlags has size % instead of 4", size_of(StdVideoH264SpsFlags)); } { info := type_info(StdVideoH264ScalingLists); for info.members { if it.name == { case "scaling_list_present_mask"; assert(it.offset_in_bytes == 0, "StdVideoH264ScalingLists.scaling_list_present_mask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264ScalingLists.scaling_list_present_mask has unexpected size % instead of 2", it.type.runtime_size); case "use_default_scaling_matrix_mask"; assert(it.offset_in_bytes == 2, "StdVideoH264ScalingLists.use_default_scaling_matrix_mask has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH264ScalingLists.use_default_scaling_matrix_mask has unexpected size % instead of 2", it.type.runtime_size); case "ScalingList4x4"; assert(it.offset_in_bytes == 4, "StdVideoH264ScalingLists.ScalingList4x4 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 96, "StdVideoH264ScalingLists.ScalingList4x4 has unexpected size % instead of 96", it.type.runtime_size); case "ScalingList8x8"; assert(it.offset_in_bytes == 100, "StdVideoH264ScalingLists.ScalingList8x8 has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 384, "StdVideoH264ScalingLists.ScalingList8x8 has unexpected size % instead of 384", it.type.runtime_size); } } assert(size_of(StdVideoH264ScalingLists) == 484, "StdVideoH264ScalingLists has size % instead of 484", size_of(StdVideoH264ScalingLists)); } { info := type_info(StdVideoH264SequenceParameterSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH264SequenceParameterSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "profile_idc"; assert(it.offset_in_bytes == 4, "StdVideoH264SequenceParameterSet.profile_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.profile_idc has unexpected size % instead of 4", it.type.runtime_size); case "level_idc"; assert(it.offset_in_bytes == 8, "StdVideoH264SequenceParameterSet.level_idc has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.level_idc has unexpected size % instead of 4", it.type.runtime_size); case "chroma_format_idc"; assert(it.offset_in_bytes == 12, "StdVideoH264SequenceParameterSet.chroma_format_idc has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.chroma_format_idc has unexpected size % instead of 4", it.type.runtime_size); case "seq_parameter_set_id"; assert(it.offset_in_bytes == 16, "StdVideoH264SequenceParameterSet.seq_parameter_set_id has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "bit_depth_luma_minus8"; assert(it.offset_in_bytes == 17, "StdVideoH264SequenceParameterSet.bit_depth_luma_minus8 has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.bit_depth_luma_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "bit_depth_chroma_minus8"; assert(it.offset_in_bytes == 18, "StdVideoH264SequenceParameterSet.bit_depth_chroma_minus8 has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.bit_depth_chroma_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "log2_max_frame_num_minus4"; assert(it.offset_in_bytes == 19, "StdVideoH264SequenceParameterSet.log2_max_frame_num_minus4 has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.log2_max_frame_num_minus4 has unexpected size % instead of 1", it.type.runtime_size); case "pic_order_cnt_type"; assert(it.offset_in_bytes == 20, "StdVideoH264SequenceParameterSet.pic_order_cnt_type has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.pic_order_cnt_type has unexpected size % instead of 4", it.type.runtime_size); case "offset_for_non_ref_pic"; assert(it.offset_in_bytes == 24, "StdVideoH264SequenceParameterSet.offset_for_non_ref_pic has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.offset_for_non_ref_pic has unexpected size % instead of 4", it.type.runtime_size); case "offset_for_top_to_bottom_field"; assert(it.offset_in_bytes == 28, "StdVideoH264SequenceParameterSet.offset_for_top_to_bottom_field has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.offset_for_top_to_bottom_field has unexpected size % instead of 4", it.type.runtime_size); case "log2_max_pic_order_cnt_lsb_minus4"; assert(it.offset_in_bytes == 32, "StdVideoH264SequenceParameterSet.log2_max_pic_order_cnt_lsb_minus4 has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.log2_max_pic_order_cnt_lsb_minus4 has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_frames_in_pic_order_cnt_cycle"; assert(it.offset_in_bytes == 33, "StdVideoH264SequenceParameterSet.num_ref_frames_in_pic_order_cnt_cycle has unexpected offset % instead of 33", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.num_ref_frames_in_pic_order_cnt_cycle has unexpected size % instead of 1", it.type.runtime_size); case "max_num_ref_frames"; assert(it.offset_in_bytes == 34, "StdVideoH264SequenceParameterSet.max_num_ref_frames has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.max_num_ref_frames has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 35, "StdVideoH264SequenceParameterSet.reserved1 has unexpected offset % instead of 35", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264SequenceParameterSet.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "pic_width_in_mbs_minus1"; assert(it.offset_in_bytes == 36, "StdVideoH264SequenceParameterSet.pic_width_in_mbs_minus1 has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.pic_width_in_mbs_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "pic_height_in_map_units_minus1"; assert(it.offset_in_bytes == 40, "StdVideoH264SequenceParameterSet.pic_height_in_map_units_minus1 has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.pic_height_in_map_units_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "frame_crop_left_offset"; assert(it.offset_in_bytes == 44, "StdVideoH264SequenceParameterSet.frame_crop_left_offset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.frame_crop_left_offset has unexpected size % instead of 4", it.type.runtime_size); case "frame_crop_right_offset"; assert(it.offset_in_bytes == 48, "StdVideoH264SequenceParameterSet.frame_crop_right_offset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.frame_crop_right_offset has unexpected size % instead of 4", it.type.runtime_size); case "frame_crop_top_offset"; assert(it.offset_in_bytes == 52, "StdVideoH264SequenceParameterSet.frame_crop_top_offset has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.frame_crop_top_offset has unexpected size % instead of 4", it.type.runtime_size); case "frame_crop_bottom_offset"; assert(it.offset_in_bytes == 56, "StdVideoH264SequenceParameterSet.frame_crop_bottom_offset has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.frame_crop_bottom_offset has unexpected size % instead of 4", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 60, "StdVideoH264SequenceParameterSet.reserved2 has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264SequenceParameterSet.reserved2 has unexpected size % instead of 4", it.type.runtime_size); case "pOffsetForRefFrame"; assert(it.offset_in_bytes == 64, "StdVideoH264SequenceParameterSet.pOffsetForRefFrame has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH264SequenceParameterSet.pOffsetForRefFrame has unexpected size % instead of 8", it.type.runtime_size); case "pScalingLists"; assert(it.offset_in_bytes == 72, "StdVideoH264SequenceParameterSet.pScalingLists has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH264SequenceParameterSet.pScalingLists has unexpected size % instead of 8", it.type.runtime_size); case "pSequenceParameterSetVui"; assert(it.offset_in_bytes == 80, "StdVideoH264SequenceParameterSet.pSequenceParameterSetVui has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH264SequenceParameterSet.pSequenceParameterSetVui has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH264SequenceParameterSet) == 88, "StdVideoH264SequenceParameterSet has size % instead of 88", size_of(StdVideoH264SequenceParameterSet)); } { info := type_info(StdVideoH264PpsFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH264PpsFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PpsFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoH264PpsFlags) == 4, "StdVideoH264PpsFlags has size % instead of 4", size_of(StdVideoH264PpsFlags)); } { info := type_info(StdVideoH264PictureParameterSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH264PictureParameterSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264PictureParameterSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "seq_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoH264PictureParameterSet.seq_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pic_parameter_set_id"; assert(it.offset_in_bytes == 5, "StdVideoH264PictureParameterSet.pic_parameter_set_id has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l0_default_active_minus1"; assert(it.offset_in_bytes == 6, "StdVideoH264PictureParameterSet.num_ref_idx_l0_default_active_minus1 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.num_ref_idx_l0_default_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l1_default_active_minus1"; assert(it.offset_in_bytes == 7, "StdVideoH264PictureParameterSet.num_ref_idx_l1_default_active_minus1 has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.num_ref_idx_l1_default_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "weighted_bipred_idc"; assert(it.offset_in_bytes == 8, "StdVideoH264PictureParameterSet.weighted_bipred_idc has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH264PictureParameterSet.weighted_bipred_idc has unexpected size % instead of 4", it.type.runtime_size); case "pic_init_qp_minus26"; assert(it.offset_in_bytes == 12, "StdVideoH264PictureParameterSet.pic_init_qp_minus26 has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.pic_init_qp_minus26 has unexpected size % instead of 1", it.type.runtime_size); case "pic_init_qs_minus26"; assert(it.offset_in_bytes == 13, "StdVideoH264PictureParameterSet.pic_init_qs_minus26 has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.pic_init_qs_minus26 has unexpected size % instead of 1", it.type.runtime_size); case "chroma_qp_index_offset"; assert(it.offset_in_bytes == 14, "StdVideoH264PictureParameterSet.chroma_qp_index_offset has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.chroma_qp_index_offset has unexpected size % instead of 1", it.type.runtime_size); case "second_chroma_qp_index_offset"; assert(it.offset_in_bytes == 15, "StdVideoH264PictureParameterSet.second_chroma_qp_index_offset has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH264PictureParameterSet.second_chroma_qp_index_offset has unexpected size % instead of 1", it.type.runtime_size); case "pScalingLists"; assert(it.offset_in_bytes == 16, "StdVideoH264PictureParameterSet.pScalingLists has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH264PictureParameterSet.pScalingLists has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH264PictureParameterSet) == 24, "StdVideoH264PictureParameterSet has size % instead of 24", size_of(StdVideoH264PictureParameterSet)); } { info := type_info(StdVideoEncodeH264WeightTableFlags); for info.members { if it.name == { case "luma_weight_l0_flag"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264WeightTableFlags.luma_weight_l0_flag has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264WeightTableFlags.luma_weight_l0_flag has unexpected size % instead of 4", it.type.runtime_size); case "chroma_weight_l0_flag"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264WeightTableFlags.chroma_weight_l0_flag has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264WeightTableFlags.chroma_weight_l0_flag has unexpected size % instead of 4", it.type.runtime_size); case "luma_weight_l1_flag"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH264WeightTableFlags.luma_weight_l1_flag has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264WeightTableFlags.luma_weight_l1_flag has unexpected size % instead of 4", it.type.runtime_size); case "chroma_weight_l1_flag"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH264WeightTableFlags.chroma_weight_l1_flag has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264WeightTableFlags.chroma_weight_l1_flag has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264WeightTableFlags) == 16, "StdVideoEncodeH264WeightTableFlags has size % instead of 16", size_of(StdVideoEncodeH264WeightTableFlags)); } { info := type_info(StdVideoEncodeH264WeightTable); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264WeightTable.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 16, "StdVideoEncodeH264WeightTable.flags has unexpected size % instead of 16", it.type.runtime_size); case "luma_log2_weight_denom"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH264WeightTable.luma_log2_weight_denom has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264WeightTable.luma_log2_weight_denom has unexpected size % instead of 1", it.type.runtime_size); case "chroma_log2_weight_denom"; assert(it.offset_in_bytes == 17, "StdVideoEncodeH264WeightTable.chroma_log2_weight_denom has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264WeightTable.chroma_log2_weight_denom has unexpected size % instead of 1", it.type.runtime_size); case "luma_weight_l0"; assert(it.offset_in_bytes == 18, "StdVideoEncodeH264WeightTable.luma_weight_l0 has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264WeightTable.luma_weight_l0 has unexpected size % instead of 32", it.type.runtime_size); case "luma_offset_l0"; assert(it.offset_in_bytes == 50, "StdVideoEncodeH264WeightTable.luma_offset_l0 has unexpected offset % instead of 50", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264WeightTable.luma_offset_l0 has unexpected size % instead of 32", it.type.runtime_size); case "chroma_weight_l0"; assert(it.offset_in_bytes == 82, "StdVideoEncodeH264WeightTable.chroma_weight_l0 has unexpected offset % instead of 82", it.offset_in_bytes); assert(it.type.runtime_size == 64, "StdVideoEncodeH264WeightTable.chroma_weight_l0 has unexpected size % instead of 64", it.type.runtime_size); case "chroma_offset_l0"; assert(it.offset_in_bytes == 146, "StdVideoEncodeH264WeightTable.chroma_offset_l0 has unexpected offset % instead of 146", it.offset_in_bytes); assert(it.type.runtime_size == 64, "StdVideoEncodeH264WeightTable.chroma_offset_l0 has unexpected size % instead of 64", it.type.runtime_size); case "luma_weight_l1"; assert(it.offset_in_bytes == 210, "StdVideoEncodeH264WeightTable.luma_weight_l1 has unexpected offset % instead of 210", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264WeightTable.luma_weight_l1 has unexpected size % instead of 32", it.type.runtime_size); case "luma_offset_l1"; assert(it.offset_in_bytes == 242, "StdVideoEncodeH264WeightTable.luma_offset_l1 has unexpected offset % instead of 242", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264WeightTable.luma_offset_l1 has unexpected size % instead of 32", it.type.runtime_size); case "chroma_weight_l1"; assert(it.offset_in_bytes == 274, "StdVideoEncodeH264WeightTable.chroma_weight_l1 has unexpected offset % instead of 274", it.offset_in_bytes); assert(it.type.runtime_size == 64, "StdVideoEncodeH264WeightTable.chroma_weight_l1 has unexpected size % instead of 64", it.type.runtime_size); case "chroma_offset_l1"; assert(it.offset_in_bytes == 338, "StdVideoEncodeH264WeightTable.chroma_offset_l1 has unexpected offset % instead of 338", it.offset_in_bytes); assert(it.type.runtime_size == 64, "StdVideoEncodeH264WeightTable.chroma_offset_l1 has unexpected size % instead of 64", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264WeightTable) == 404, "StdVideoEncodeH264WeightTable has size % instead of 404", size_of(StdVideoEncodeH264WeightTable)); } { info := type_info(StdVideoEncodeH264SliceHeaderFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264SliceHeaderFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeaderFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264SliceHeaderFlags) == 4, "StdVideoEncodeH264SliceHeaderFlags has size % instead of 4", size_of(StdVideoEncodeH264SliceHeaderFlags)); } { info := type_info(StdVideoEncodeH264PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264PictureInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264PictureInfoFlags) == 4, "StdVideoEncodeH264PictureInfoFlags has size % instead of 4", size_of(StdVideoEncodeH264PictureInfoFlags)); } { info := type_info(StdVideoEncodeH264ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264ReferenceInfoFlags) == 4, "StdVideoEncodeH264ReferenceInfoFlags has size % instead of 4", size_of(StdVideoEncodeH264ReferenceInfoFlags)); } { info := type_info(StdVideoEncodeH264ReferenceListsInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264ReferenceListsInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceListsInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264ReferenceListsInfoFlags) == 4, "StdVideoEncodeH264ReferenceListsInfoFlags has size % instead of 4", size_of(StdVideoEncodeH264ReferenceListsInfoFlags)); } { info := type_info(StdVideoEncodeH264RefListModEntry); for info.members { if it.name == { case "modification_of_pic_nums_idc"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264RefListModEntry.modification_of_pic_nums_idc has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264RefListModEntry.modification_of_pic_nums_idc has unexpected size % instead of 4", it.type.runtime_size); case "abs_diff_pic_num_minus1"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264RefListModEntry.abs_diff_pic_num_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefListModEntry.abs_diff_pic_num_minus1 has unexpected size % instead of 2", it.type.runtime_size); case "long_term_pic_num"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH264RefListModEntry.long_term_pic_num has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefListModEntry.long_term_pic_num has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264RefListModEntry) == 8, "StdVideoEncodeH264RefListModEntry has size % instead of 8", size_of(StdVideoEncodeH264RefListModEntry)); } { info := type_info(StdVideoEncodeH264RefPicMarkingEntry); for info.members { if it.name == { case "memory_management_control_operation"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264RefPicMarkingEntry.memory_management_control_operation has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264RefPicMarkingEntry.memory_management_control_operation has unexpected size % instead of 4", it.type.runtime_size); case "difference_of_pic_nums_minus1"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264RefPicMarkingEntry.difference_of_pic_nums_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefPicMarkingEntry.difference_of_pic_nums_minus1 has unexpected size % instead of 2", it.type.runtime_size); case "long_term_pic_num"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH264RefPicMarkingEntry.long_term_pic_num has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefPicMarkingEntry.long_term_pic_num has unexpected size % instead of 2", it.type.runtime_size); case "long_term_frame_idx"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH264RefPicMarkingEntry.long_term_frame_idx has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefPicMarkingEntry.long_term_frame_idx has unexpected size % instead of 2", it.type.runtime_size); case "max_long_term_frame_idx_plus1"; assert(it.offset_in_bytes == 10, "StdVideoEncodeH264RefPicMarkingEntry.max_long_term_frame_idx_plus1 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264RefPicMarkingEntry.max_long_term_frame_idx_plus1 has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264RefPicMarkingEntry) == 12, "StdVideoEncodeH264RefPicMarkingEntry has size % instead of 12", size_of(StdVideoEncodeH264RefPicMarkingEntry)); } { info := type_info(StdVideoEncodeH264ReferenceListsInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264ReferenceListsInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceListsInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "num_ref_idx_l0_active_minus1"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264ReferenceListsInfo.num_ref_idx_l0_active_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceListsInfo.num_ref_idx_l0_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l1_active_minus1"; assert(it.offset_in_bytes == 5, "StdVideoEncodeH264ReferenceListsInfo.num_ref_idx_l1_active_minus1 has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceListsInfo.num_ref_idx_l1_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "RefPicList0"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH264ReferenceListsInfo.RefPicList0 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264ReferenceListsInfo.RefPicList0 has unexpected size % instead of 32", it.type.runtime_size); case "RefPicList1"; assert(it.offset_in_bytes == 38, "StdVideoEncodeH264ReferenceListsInfo.RefPicList1 has unexpected offset % instead of 38", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH264ReferenceListsInfo.RefPicList1 has unexpected size % instead of 32", it.type.runtime_size); case "refList0ModOpCount"; assert(it.offset_in_bytes == 70, "StdVideoEncodeH264ReferenceListsInfo.refList0ModOpCount has unexpected offset % instead of 70", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceListsInfo.refList0ModOpCount has unexpected size % instead of 1", it.type.runtime_size); case "refList1ModOpCount"; assert(it.offset_in_bytes == 71, "StdVideoEncodeH264ReferenceListsInfo.refList1ModOpCount has unexpected offset % instead of 71", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceListsInfo.refList1ModOpCount has unexpected size % instead of 1", it.type.runtime_size); case "refPicMarkingOpCount"; assert(it.offset_in_bytes == 72, "StdVideoEncodeH264ReferenceListsInfo.refPicMarkingOpCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceListsInfo.refPicMarkingOpCount has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 73, "StdVideoEncodeH264ReferenceListsInfo.reserved1 has unexpected offset % instead of 73", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoEncodeH264ReferenceListsInfo.reserved1 has unexpected size % instead of 7", it.type.runtime_size); case "pRefList0ModOperations"; assert(it.offset_in_bytes == 80, "StdVideoEncodeH264ReferenceListsInfo.pRefList0ModOperations has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH264ReferenceListsInfo.pRefList0ModOperations has unexpected size % instead of 8", it.type.runtime_size); case "pRefList1ModOperations"; assert(it.offset_in_bytes == 88, "StdVideoEncodeH264ReferenceListsInfo.pRefList1ModOperations has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH264ReferenceListsInfo.pRefList1ModOperations has unexpected size % instead of 8", it.type.runtime_size); case "pRefPicMarkingOperations"; assert(it.offset_in_bytes == 96, "StdVideoEncodeH264ReferenceListsInfo.pRefPicMarkingOperations has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH264ReferenceListsInfo.pRefPicMarkingOperations has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264ReferenceListsInfo) == 104, "StdVideoEncodeH264ReferenceListsInfo has size % instead of 104", size_of(StdVideoEncodeH264ReferenceListsInfo)); } { info := type_info(StdVideoEncodeH264PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "seq_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264PictureInfo.seq_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264PictureInfo.seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pic_parameter_set_id"; assert(it.offset_in_bytes == 5, "StdVideoEncodeH264PictureInfo.pic_parameter_set_id has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264PictureInfo.pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "idr_pic_id"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH264PictureInfo.idr_pic_id has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264PictureInfo.idr_pic_id has unexpected size % instead of 2", it.type.runtime_size); case "primary_pic_type"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH264PictureInfo.primary_pic_type has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264PictureInfo.primary_pic_type has unexpected size % instead of 4", it.type.runtime_size); case "frame_num"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH264PictureInfo.frame_num has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264PictureInfo.frame_num has unexpected size % instead of 4", it.type.runtime_size); case "PicOrderCnt"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH264PictureInfo.PicOrderCnt has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264PictureInfo.PicOrderCnt has unexpected size % instead of 4", it.type.runtime_size); case "temporal_id"; assert(it.offset_in_bytes == 20, "StdVideoEncodeH264PictureInfo.temporal_id has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264PictureInfo.temporal_id has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 21, "StdVideoEncodeH264PictureInfo.reserved1 has unexpected offset % instead of 21", it.offset_in_bytes); assert(it.type.runtime_size == 3, "StdVideoEncodeH264PictureInfo.reserved1 has unexpected size % instead of 3", it.type.runtime_size); case "pRefLists"; assert(it.offset_in_bytes == 24, "StdVideoEncodeH264PictureInfo.pRefLists has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH264PictureInfo.pRefLists has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264PictureInfo) == 32, "StdVideoEncodeH264PictureInfo has size % instead of 32", size_of(StdVideoEncodeH264PictureInfo)); } { info := type_info(StdVideoEncodeH264ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "primary_pic_type"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264ReferenceInfo.primary_pic_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceInfo.primary_pic_type has unexpected size % instead of 4", it.type.runtime_size); case "FrameNum"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH264ReferenceInfo.FrameNum has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceInfo.FrameNum has unexpected size % instead of 4", it.type.runtime_size); case "PicOrderCnt"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH264ReferenceInfo.PicOrderCnt has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264ReferenceInfo.PicOrderCnt has unexpected size % instead of 4", it.type.runtime_size); case "long_term_pic_num"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH264ReferenceInfo.long_term_pic_num has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264ReferenceInfo.long_term_pic_num has unexpected size % instead of 2", it.type.runtime_size); case "long_term_frame_idx"; assert(it.offset_in_bytes == 18, "StdVideoEncodeH264ReferenceInfo.long_term_frame_idx has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH264ReferenceInfo.long_term_frame_idx has unexpected size % instead of 2", it.type.runtime_size); case "temporal_id"; assert(it.offset_in_bytes == 20, "StdVideoEncodeH264ReferenceInfo.temporal_id has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264ReferenceInfo.temporal_id has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264ReferenceInfo) == 24, "StdVideoEncodeH264ReferenceInfo has size % instead of 24", size_of(StdVideoEncodeH264ReferenceInfo)); } { info := type_info(StdVideoEncodeH264SliceHeader); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH264SliceHeader.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeader.flags has unexpected size % instead of 4", it.type.runtime_size); case "first_mb_in_slice"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH264SliceHeader.first_mb_in_slice has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeader.first_mb_in_slice has unexpected size % instead of 4", it.type.runtime_size); case "slice_type"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH264SliceHeader.slice_type has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeader.slice_type has unexpected size % instead of 4", it.type.runtime_size); case "slice_alpha_c0_offset_div2"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH264SliceHeader.slice_alpha_c0_offset_div2 has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264SliceHeader.slice_alpha_c0_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "slice_beta_offset_div2"; assert(it.offset_in_bytes == 13, "StdVideoEncodeH264SliceHeader.slice_beta_offset_div2 has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264SliceHeader.slice_beta_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "slice_qp_delta"; assert(it.offset_in_bytes == 14, "StdVideoEncodeH264SliceHeader.slice_qp_delta has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264SliceHeader.slice_qp_delta has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 15, "StdVideoEncodeH264SliceHeader.reserved1 has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH264SliceHeader.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "cabac_init_idc"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH264SliceHeader.cabac_init_idc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeader.cabac_init_idc has unexpected size % instead of 4", it.type.runtime_size); case "disable_deblocking_filter_idc"; assert(it.offset_in_bytes == 20, "StdVideoEncodeH264SliceHeader.disable_deblocking_filter_idc has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH264SliceHeader.disable_deblocking_filter_idc has unexpected size % instead of 4", it.type.runtime_size); case "pWeightTable"; assert(it.offset_in_bytes == 24, "StdVideoEncodeH264SliceHeader.pWeightTable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH264SliceHeader.pWeightTable has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH264SliceHeader) == 32, "StdVideoEncodeH264SliceHeader has size % instead of 32", size_of(StdVideoEncodeH264SliceHeader)); } { info := type_info(VkVideoEncodeH264CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264CapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264CapabilitiesKHR.maxLevelIdc has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); case "maxSliceCount"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264CapabilitiesKHR.maxSliceCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxSliceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxPPictureL0ReferenceCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH264CapabilitiesKHR.maxPPictureL0ReferenceCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxPPictureL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxBPictureL0ReferenceCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264CapabilitiesKHR.maxBPictureL0ReferenceCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxBPictureL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxL1ReferenceCount"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH264CapabilitiesKHR.maxL1ReferenceCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxL1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTemporalLayerCount"; assert(it.offset_in_bytes == 40, "VkVideoEncodeH264CapabilitiesKHR.maxTemporalLayerCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxTemporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "expectDyadicTemporalLayerPattern"; assert(it.offset_in_bytes == 44, "VkVideoEncodeH264CapabilitiesKHR.expectDyadicTemporalLayerPattern has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.expectDyadicTemporalLayerPattern has unexpected size % instead of 4", it.type.runtime_size); case "minQp"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH264CapabilitiesKHR.minQp has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.minQp has unexpected size % instead of 4", it.type.runtime_size); case "maxQp"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH264CapabilitiesKHR.maxQp has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.maxQp has unexpected size % instead of 4", it.type.runtime_size); case "prefersGopRemainingFrames"; assert(it.offset_in_bytes == 56, "VkVideoEncodeH264CapabilitiesKHR.prefersGopRemainingFrames has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.prefersGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "requiresGopRemainingFrames"; assert(it.offset_in_bytes == 60, "VkVideoEncodeH264CapabilitiesKHR.requiresGopRemainingFrames has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.requiresGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "stdSyntaxFlags"; assert(it.offset_in_bytes == 64, "VkVideoEncodeH264CapabilitiesKHR.stdSyntaxFlags has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264CapabilitiesKHR.stdSyntaxFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264CapabilitiesKHR) == 72, "VkVideoEncodeH264CapabilitiesKHR has size % instead of 72", size_of(VkVideoEncodeH264CapabilitiesKHR)); } { info := type_info(VkVideoEncodeH264QpKHR); for info.members { if it.name == { case "qpI"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264QpKHR.qpI has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QpKHR.qpI has unexpected size % instead of 4", it.type.runtime_size); case "qpP"; assert(it.offset_in_bytes == 4, "VkVideoEncodeH264QpKHR.qpP has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QpKHR.qpP has unexpected size % instead of 4", it.type.runtime_size); case "qpB"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264QpKHR.qpB has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QpKHR.qpB has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264QpKHR) == 12, "VkVideoEncodeH264QpKHR has size % instead of 12", size_of(VkVideoEncodeH264QpKHR)); } { info := type_info(VkVideoEncodeH264QualityLevelPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264QualityLevelPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264QualityLevelPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264QualityLevelPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "preferredRateControlFlags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected size % instead of 4", it.type.runtime_size); case "preferredGopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredIdrPeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredIdrPeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredIdrPeriod has unexpected size % instead of 4", it.type.runtime_size); case "preferredConsecutiveBFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredConsecutiveBFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredConsecutiveBFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredTemporalLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredTemporalLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredTemporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredConstantQp"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredConstantQp has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredConstantQp has unexpected size % instead of 12", it.type.runtime_size); case "preferredMaxL0ReferenceCount"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredMaxL0ReferenceCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredMaxL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxL1ReferenceCount"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredMaxL1ReferenceCount has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredMaxL1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredStdEntropyCodingModeFlag"; assert(it.offset_in_bytes == 56, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredStdEntropyCodingModeFlag has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QualityLevelPropertiesKHR.preferredStdEntropyCodingModeFlag has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264QualityLevelPropertiesKHR) == 64, "VkVideoEncodeH264QualityLevelPropertiesKHR has size % instead of 64", size_of(VkVideoEncodeH264QualityLevelPropertiesKHR)); } { info := type_info(VkVideoEncodeH264SessionCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264SessionCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264SessionCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMaxLevelIdc"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264SessionCreateInfoKHR.useMaxLevelIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionCreateInfoKHR.useMaxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264SessionCreateInfoKHR.maxLevelIdc has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionCreateInfoKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264SessionCreateInfoKHR) == 24, "VkVideoEncodeH264SessionCreateInfoKHR has size % instead of 24", size_of(VkVideoEncodeH264SessionCreateInfoKHR)); } { info := type_info(VkVideoEncodeH264SessionParametersAddInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264SessionParametersAddInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersAddInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264SessionParametersAddInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersAddInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdSPSCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264SessionParametersAddInfoKHR.stdSPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersAddInfoKHR.stdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdSPSs"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264SessionParametersAddInfoKHR.pStdSPSs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersAddInfoKHR.pStdSPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdPPSCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264SessionParametersAddInfoKHR.stdPPSCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersAddInfoKHR.stdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdPPSs"; assert(it.offset_in_bytes == 40, "VkVideoEncodeH264SessionParametersAddInfoKHR.pStdPPSs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersAddInfoKHR.pStdPPSs has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264SessionParametersAddInfoKHR) == 48, "VkVideoEncodeH264SessionParametersAddInfoKHR has size % instead of 48", size_of(VkVideoEncodeH264SessionParametersAddInfoKHR)); } { info := type_info(VkVideoEncodeH264SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxStdSPSCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdPPSCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pParametersAddInfo"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264SessionParametersCreateInfoKHR) == 32, "VkVideoEncodeH264SessionParametersCreateInfoKHR has size % instead of 32", size_of(VkVideoEncodeH264SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoEncodeH264SessionParametersGetInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264SessionParametersGetInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersGetInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264SessionParametersGetInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersGetInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "writeStdSPS"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264SessionParametersGetInfoKHR.writeStdSPS has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersGetInfoKHR.writeStdSPS has unexpected size % instead of 4", it.type.runtime_size); case "writeStdPPS"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264SessionParametersGetInfoKHR.writeStdPPS has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersGetInfoKHR.writeStdPPS has unexpected size % instead of 4", it.type.runtime_size); case "stdSPSId"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264SessionParametersGetInfoKHR.stdSPSId has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersGetInfoKHR.stdSPSId has unexpected size % instead of 4", it.type.runtime_size); case "stdPPSId"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH264SessionParametersGetInfoKHR.stdPPSId has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersGetInfoKHR.stdPPSId has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264SessionParametersGetInfoKHR) == 32, "VkVideoEncodeH264SessionParametersGetInfoKHR has size % instead of 32", size_of(VkVideoEncodeH264SessionParametersGetInfoKHR)); } { info := type_info(VkVideoEncodeH264SessionParametersFeedbackInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hasStdSPSOverrides"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.hasStdSPSOverrides has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.hasStdSPSOverrides has unexpected size % instead of 4", it.type.runtime_size); case "hasStdPPSOverrides"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.hasStdPPSOverrides has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR.hasStdPPSOverrides has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264SessionParametersFeedbackInfoKHR) == 24, "VkVideoEncodeH264SessionParametersFeedbackInfoKHR has size % instead of 24", size_of(VkVideoEncodeH264SessionParametersFeedbackInfoKHR)); } { info := type_info(VkVideoEncodeH264NaluSliceInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264NaluSliceInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264NaluSliceInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264NaluSliceInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264NaluSliceInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "constantQp"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264NaluSliceInfoKHR.constantQp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264NaluSliceInfoKHR.constantQp has unexpected size % instead of 4", it.type.runtime_size); case "pStdSliceHeader"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264NaluSliceInfoKHR.pStdSliceHeader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264NaluSliceInfoKHR.pStdSliceHeader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264NaluSliceInfoKHR) == 32, "VkVideoEncodeH264NaluSliceInfoKHR has size % instead of 32", size_of(VkVideoEncodeH264NaluSliceInfoKHR)); } { info := type_info(VkVideoEncodeH264PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "naluSliceEntryCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264PictureInfoKHR.naluSliceEntryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264PictureInfoKHR.naluSliceEntryCount has unexpected size % instead of 4", it.type.runtime_size); case "pNaluSliceEntries"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264PictureInfoKHR.pNaluSliceEntries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264PictureInfoKHR.pNaluSliceEntries has unexpected size % instead of 8", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); case "generatePrefixNalu"; assert(it.offset_in_bytes == 40, "VkVideoEncodeH264PictureInfoKHR.generatePrefixNalu has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264PictureInfoKHR.generatePrefixNalu has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264PictureInfoKHR) == 48, "VkVideoEncodeH264PictureInfoKHR has size % instead of 48", size_of(VkVideoEncodeH264PictureInfoKHR)); } { info := type_info(VkVideoEncodeH264DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264DpbSlotInfoKHR) == 24, "VkVideoEncodeH264DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoEncodeH264DpbSlotInfoKHR)); } { info := type_info(VkVideoEncodeH264ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfileIdc"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264ProfileInfoKHR.stdProfileIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264ProfileInfoKHR.stdProfileIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264ProfileInfoKHR) == 24, "VkVideoEncodeH264ProfileInfoKHR has size % instead of 24", size_of(VkVideoEncodeH264ProfileInfoKHR)); } { info := type_info(VkVideoEncodeH264RateControlInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264RateControlInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264RateControlInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264RateControlInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264RateControlInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "gopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264RateControlInfoKHR.gopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.gopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "idrPeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264RateControlInfoKHR.idrPeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.idrPeriod has unexpected size % instead of 4", it.type.runtime_size); case "consecutiveBFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH264RateControlInfoKHR.consecutiveBFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.consecutiveBFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "temporalLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264RateControlInfoKHR.temporalLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlInfoKHR.temporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264RateControlInfoKHR) == 40, "VkVideoEncodeH264RateControlInfoKHR has size % instead of 40", size_of(VkVideoEncodeH264RateControlInfoKHR)); } { info := type_info(VkVideoEncodeH264FrameSizeKHR); for info.members { if it.name == { case "frameISize"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264FrameSizeKHR.frameISize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264FrameSizeKHR.frameISize has unexpected size % instead of 4", it.type.runtime_size); case "framePSize"; assert(it.offset_in_bytes == 4, "VkVideoEncodeH264FrameSizeKHR.framePSize has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264FrameSizeKHR.framePSize has unexpected size % instead of 4", it.type.runtime_size); case "frameBSize"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264FrameSizeKHR.frameBSize has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264FrameSizeKHR.frameBSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264FrameSizeKHR) == 12, "VkVideoEncodeH264FrameSizeKHR has size % instead of 12", size_of(VkVideoEncodeH264FrameSizeKHR)); } { info := type_info(VkVideoEncodeH264RateControlLayerInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264RateControlLayerInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlLayerInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264RateControlLayerInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264RateControlLayerInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMinQp"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264RateControlLayerInfoKHR.useMinQp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlLayerInfoKHR.useMinQp has unexpected size % instead of 4", it.type.runtime_size); case "minQp"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264RateControlLayerInfoKHR.minQp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH264RateControlLayerInfoKHR.minQp has unexpected size % instead of 12", it.type.runtime_size); case "useMaxQp"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH264RateControlLayerInfoKHR.useMaxQp has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlLayerInfoKHR.useMaxQp has unexpected size % instead of 4", it.type.runtime_size); case "maxQp"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH264RateControlLayerInfoKHR.maxQp has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH264RateControlLayerInfoKHR.maxQp has unexpected size % instead of 12", it.type.runtime_size); case "useMaxFrameSize"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH264RateControlLayerInfoKHR.useMaxFrameSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264RateControlLayerInfoKHR.useMaxFrameSize has unexpected size % instead of 4", it.type.runtime_size); case "maxFrameSize"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH264RateControlLayerInfoKHR.maxFrameSize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH264RateControlLayerInfoKHR.maxFrameSize has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264RateControlLayerInfoKHR) == 64, "VkVideoEncodeH264RateControlLayerInfoKHR has size % instead of 64", size_of(VkVideoEncodeH264RateControlLayerInfoKHR)); } { info := type_info(VkVideoEncodeH264GopRemainingFrameInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264GopRemainingFrameInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264GopRemainingFrameInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264GopRemainingFrameInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264GopRemainingFrameInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useGopRemainingFrames"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingI"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingI has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingI has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingP"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingP has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingP has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingB"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingB has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264GopRemainingFrameInfoKHR.gopRemainingB has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264GopRemainingFrameInfoKHR) == 32, "VkVideoEncodeH264GopRemainingFrameInfoKHR has size % instead of 32", size_of(VkVideoEncodeH264GopRemainingFrameInfoKHR)); } { info := type_info(StdVideoH265DecPicBufMgr); for info.members { if it.name == { case "max_latency_increase_plus1"; assert(it.offset_in_bytes == 0, "StdVideoH265DecPicBufMgr.max_latency_increase_plus1 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 28, "StdVideoH265DecPicBufMgr.max_latency_increase_plus1 has unexpected size % instead of 28", it.type.runtime_size); case "max_dec_pic_buffering_minus1"; assert(it.offset_in_bytes == 28, "StdVideoH265DecPicBufMgr.max_dec_pic_buffering_minus1 has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoH265DecPicBufMgr.max_dec_pic_buffering_minus1 has unexpected size % instead of 7", it.type.runtime_size); case "max_num_reorder_pics"; assert(it.offset_in_bytes == 35, "StdVideoH265DecPicBufMgr.max_num_reorder_pics has unexpected offset % instead of 35", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoH265DecPicBufMgr.max_num_reorder_pics has unexpected size % instead of 7", it.type.runtime_size); } } assert(size_of(StdVideoH265DecPicBufMgr) == 44, "StdVideoH265DecPicBufMgr has size % instead of 44", size_of(StdVideoH265DecPicBufMgr)); } { info := type_info(StdVideoH265SubLayerHrdParameters); for info.members { if it.name == { case "bit_rate_value_minus1"; assert(it.offset_in_bytes == 0, "StdVideoH265SubLayerHrdParameters.bit_rate_value_minus1 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265SubLayerHrdParameters.bit_rate_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "cpb_size_value_minus1"; assert(it.offset_in_bytes == 128, "StdVideoH265SubLayerHrdParameters.cpb_size_value_minus1 has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265SubLayerHrdParameters.cpb_size_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "cpb_size_du_value_minus1"; assert(it.offset_in_bytes == 256, "StdVideoH265SubLayerHrdParameters.cpb_size_du_value_minus1 has unexpected offset % instead of 256", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265SubLayerHrdParameters.cpb_size_du_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "bit_rate_du_value_minus1"; assert(it.offset_in_bytes == 384, "StdVideoH265SubLayerHrdParameters.bit_rate_du_value_minus1 has unexpected offset % instead of 384", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265SubLayerHrdParameters.bit_rate_du_value_minus1 has unexpected size % instead of 128", it.type.runtime_size); case "cbr_flag"; assert(it.offset_in_bytes == 512, "StdVideoH265SubLayerHrdParameters.cbr_flag has unexpected offset % instead of 512", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SubLayerHrdParameters.cbr_flag has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265SubLayerHrdParameters) == 516, "StdVideoH265SubLayerHrdParameters has size % instead of 516", size_of(StdVideoH265SubLayerHrdParameters)); } { info := type_info(StdVideoH265HrdFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265HrdFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265HrdFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265HrdFlags) == 4, "StdVideoH265HrdFlags has size % instead of 4", size_of(StdVideoH265HrdFlags)); } { info := type_info(StdVideoH265HrdParameters); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265HrdParameters.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265HrdParameters.flags has unexpected size % instead of 4", it.type.runtime_size); case "tick_divisor_minus2"; assert(it.offset_in_bytes == 4, "StdVideoH265HrdParameters.tick_divisor_minus2 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.tick_divisor_minus2 has unexpected size % instead of 1", it.type.runtime_size); case "du_cpb_removal_delay_increment_length_minus1"; assert(it.offset_in_bytes == 5, "StdVideoH265HrdParameters.du_cpb_removal_delay_increment_length_minus1 has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.du_cpb_removal_delay_increment_length_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "dpb_output_delay_du_length_minus1"; assert(it.offset_in_bytes == 6, "StdVideoH265HrdParameters.dpb_output_delay_du_length_minus1 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.dpb_output_delay_du_length_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "bit_rate_scale"; assert(it.offset_in_bytes == 7, "StdVideoH265HrdParameters.bit_rate_scale has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.bit_rate_scale has unexpected size % instead of 1", it.type.runtime_size); case "cpb_size_scale"; assert(it.offset_in_bytes == 8, "StdVideoH265HrdParameters.cpb_size_scale has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.cpb_size_scale has unexpected size % instead of 1", it.type.runtime_size); case "cpb_size_du_scale"; assert(it.offset_in_bytes == 9, "StdVideoH265HrdParameters.cpb_size_du_scale has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.cpb_size_du_scale has unexpected size % instead of 1", it.type.runtime_size); case "initial_cpb_removal_delay_length_minus1"; assert(it.offset_in_bytes == 10, "StdVideoH265HrdParameters.initial_cpb_removal_delay_length_minus1 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.initial_cpb_removal_delay_length_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "au_cpb_removal_delay_length_minus1"; assert(it.offset_in_bytes == 11, "StdVideoH265HrdParameters.au_cpb_removal_delay_length_minus1 has unexpected offset % instead of 11", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.au_cpb_removal_delay_length_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "dpb_output_delay_length_minus1"; assert(it.offset_in_bytes == 12, "StdVideoH265HrdParameters.dpb_output_delay_length_minus1 has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265HrdParameters.dpb_output_delay_length_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "cpb_cnt_minus1"; assert(it.offset_in_bytes == 13, "StdVideoH265HrdParameters.cpb_cnt_minus1 has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoH265HrdParameters.cpb_cnt_minus1 has unexpected size % instead of 7", it.type.runtime_size); case "elemental_duration_in_tc_minus1"; assert(it.offset_in_bytes == 20, "StdVideoH265HrdParameters.elemental_duration_in_tc_minus1 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 14, "StdVideoH265HrdParameters.elemental_duration_in_tc_minus1 has unexpected size % instead of 14", it.type.runtime_size); case "reserved"; assert(it.offset_in_bytes == 34, "StdVideoH265HrdParameters.reserved has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 6, "StdVideoH265HrdParameters.reserved has unexpected size % instead of 6", it.type.runtime_size); case "pSubLayerHrdParametersNal"; assert(it.offset_in_bytes == 40, "StdVideoH265HrdParameters.pSubLayerHrdParametersNal has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265HrdParameters.pSubLayerHrdParametersNal has unexpected size % instead of 8", it.type.runtime_size); case "pSubLayerHrdParametersVcl"; assert(it.offset_in_bytes == 48, "StdVideoH265HrdParameters.pSubLayerHrdParametersVcl has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265HrdParameters.pSubLayerHrdParametersVcl has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH265HrdParameters) == 56, "StdVideoH265HrdParameters has size % instead of 56", size_of(StdVideoH265HrdParameters)); } { info := type_info(StdVideoH265VpsFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265VpsFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265VpsFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoH265VpsFlags) == 4, "StdVideoH265VpsFlags has size % instead of 4", size_of(StdVideoH265VpsFlags)); } { info := type_info(StdVideoH265ProfileTierLevelFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265ProfileTierLevelFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ProfileTierLevelFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoH265ProfileTierLevelFlags) == 4, "StdVideoH265ProfileTierLevelFlags has size % instead of 4", size_of(StdVideoH265ProfileTierLevelFlags)); } { info := type_info(StdVideoH265ProfileTierLevel); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265ProfileTierLevel.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265ProfileTierLevel.flags has unexpected size % instead of 4", it.type.runtime_size); case "general_profile_idc"; assert(it.offset_in_bytes == 4, "StdVideoH265ProfileTierLevel.general_profile_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265ProfileTierLevel.general_profile_idc has unexpected size % instead of 4", it.type.runtime_size); case "general_level_idc"; assert(it.offset_in_bytes == 8, "StdVideoH265ProfileTierLevel.general_level_idc has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265ProfileTierLevel.general_level_idc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265ProfileTierLevel) == 12, "StdVideoH265ProfileTierLevel has size % instead of 12", size_of(StdVideoH265ProfileTierLevel)); } { info := type_info(StdVideoH265VideoParameterSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265VideoParameterSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265VideoParameterSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "vps_video_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoH265VideoParameterSet.vps_video_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265VideoParameterSet.vps_video_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "vps_max_sub_layers_minus1"; assert(it.offset_in_bytes == 5, "StdVideoH265VideoParameterSet.vps_max_sub_layers_minus1 has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265VideoParameterSet.vps_max_sub_layers_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 6, "StdVideoH265VideoParameterSet.reserved1 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265VideoParameterSet.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 7, "StdVideoH265VideoParameterSet.reserved2 has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265VideoParameterSet.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "vps_num_units_in_tick"; assert(it.offset_in_bytes == 8, "StdVideoH265VideoParameterSet.vps_num_units_in_tick has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265VideoParameterSet.vps_num_units_in_tick has unexpected size % instead of 4", it.type.runtime_size); case "vps_time_scale"; assert(it.offset_in_bytes == 12, "StdVideoH265VideoParameterSet.vps_time_scale has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265VideoParameterSet.vps_time_scale has unexpected size % instead of 4", it.type.runtime_size); case "vps_num_ticks_poc_diff_one_minus1"; assert(it.offset_in_bytes == 16, "StdVideoH265VideoParameterSet.vps_num_ticks_poc_diff_one_minus1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265VideoParameterSet.vps_num_ticks_poc_diff_one_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "reserved3"; assert(it.offset_in_bytes == 20, "StdVideoH265VideoParameterSet.reserved3 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265VideoParameterSet.reserved3 has unexpected size % instead of 4", it.type.runtime_size); case "pDecPicBufMgr"; assert(it.offset_in_bytes == 24, "StdVideoH265VideoParameterSet.pDecPicBufMgr has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265VideoParameterSet.pDecPicBufMgr has unexpected size % instead of 8", it.type.runtime_size); case "pHrdParameters"; assert(it.offset_in_bytes == 32, "StdVideoH265VideoParameterSet.pHrdParameters has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265VideoParameterSet.pHrdParameters has unexpected size % instead of 8", it.type.runtime_size); case "pProfileTierLevel"; assert(it.offset_in_bytes == 40, "StdVideoH265VideoParameterSet.pProfileTierLevel has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265VideoParameterSet.pProfileTierLevel has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH265VideoParameterSet) == 48, "StdVideoH265VideoParameterSet has size % instead of 48", size_of(StdVideoH265VideoParameterSet)); } { info := type_info(StdVideoH265ScalingLists); for info.members { if it.name == { case "ScalingList4x4"; assert(it.offset_in_bytes == 0, "StdVideoH265ScalingLists.ScalingList4x4 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 96, "StdVideoH265ScalingLists.ScalingList4x4 has unexpected size % instead of 96", it.type.runtime_size); case "ScalingList8x8"; assert(it.offset_in_bytes == 96, "StdVideoH265ScalingLists.ScalingList8x8 has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 384, "StdVideoH265ScalingLists.ScalingList8x8 has unexpected size % instead of 384", it.type.runtime_size); case "ScalingList16x16"; assert(it.offset_in_bytes == 480, "StdVideoH265ScalingLists.ScalingList16x16 has unexpected offset % instead of 480", it.offset_in_bytes); assert(it.type.runtime_size == 384, "StdVideoH265ScalingLists.ScalingList16x16 has unexpected size % instead of 384", it.type.runtime_size); case "ScalingList32x32"; assert(it.offset_in_bytes == 864, "StdVideoH265ScalingLists.ScalingList32x32 has unexpected offset % instead of 864", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265ScalingLists.ScalingList32x32 has unexpected size % instead of 128", it.type.runtime_size); case "ScalingListDCCoef16x16"; assert(it.offset_in_bytes == 992, "StdVideoH265ScalingLists.ScalingListDCCoef16x16 has unexpected offset % instead of 992", it.offset_in_bytes); assert(it.type.runtime_size == 6, "StdVideoH265ScalingLists.ScalingListDCCoef16x16 has unexpected size % instead of 6", it.type.runtime_size); case "ScalingListDCCoef32x32"; assert(it.offset_in_bytes == 998, "StdVideoH265ScalingLists.ScalingListDCCoef32x32 has unexpected offset % instead of 998", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ScalingLists.ScalingListDCCoef32x32 has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoH265ScalingLists) == 1000, "StdVideoH265ScalingLists has size % instead of 1000", size_of(StdVideoH265ScalingLists)); } { info := type_info(StdVideoH265SpsVuiFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265SpsVuiFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SpsVuiFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265SpsVuiFlags) == 4, "StdVideoH265SpsVuiFlags has size % instead of 4", size_of(StdVideoH265SpsVuiFlags)); } { info := type_info(StdVideoH265SequenceParameterSetVui); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265SequenceParameterSetVui.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSetVui.flags has unexpected size % instead of 4", it.type.runtime_size); case "aspect_ratio_idc"; assert(it.offset_in_bytes == 4, "StdVideoH265SequenceParameterSetVui.aspect_ratio_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSetVui.aspect_ratio_idc has unexpected size % instead of 4", it.type.runtime_size); case "sar_width"; assert(it.offset_in_bytes == 8, "StdVideoH265SequenceParameterSetVui.sar_width has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.sar_width has unexpected size % instead of 2", it.type.runtime_size); case "sar_height"; assert(it.offset_in_bytes == 10, "StdVideoH265SequenceParameterSetVui.sar_height has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.sar_height has unexpected size % instead of 2", it.type.runtime_size); case "video_format"; assert(it.offset_in_bytes == 12, "StdVideoH265SequenceParameterSetVui.video_format has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.video_format has unexpected size % instead of 1", it.type.runtime_size); case "colour_primaries"; assert(it.offset_in_bytes == 13, "StdVideoH265SequenceParameterSetVui.colour_primaries has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.colour_primaries has unexpected size % instead of 1", it.type.runtime_size); case "transfer_characteristics"; assert(it.offset_in_bytes == 14, "StdVideoH265SequenceParameterSetVui.transfer_characteristics has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.transfer_characteristics has unexpected size % instead of 1", it.type.runtime_size); case "matrix_coeffs"; assert(it.offset_in_bytes == 15, "StdVideoH265SequenceParameterSetVui.matrix_coeffs has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.matrix_coeffs has unexpected size % instead of 1", it.type.runtime_size); case "chroma_sample_loc_type_top_field"; assert(it.offset_in_bytes == 16, "StdVideoH265SequenceParameterSetVui.chroma_sample_loc_type_top_field has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.chroma_sample_loc_type_top_field has unexpected size % instead of 1", it.type.runtime_size); case "chroma_sample_loc_type_bottom_field"; assert(it.offset_in_bytes == 17, "StdVideoH265SequenceParameterSetVui.chroma_sample_loc_type_bottom_field has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.chroma_sample_loc_type_bottom_field has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 18, "StdVideoH265SequenceParameterSetVui.reserved1 has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 19, "StdVideoH265SequenceParameterSetVui.reserved2 has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "def_disp_win_left_offset"; assert(it.offset_in_bytes == 20, "StdVideoH265SequenceParameterSetVui.def_disp_win_left_offset has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.def_disp_win_left_offset has unexpected size % instead of 2", it.type.runtime_size); case "def_disp_win_right_offset"; assert(it.offset_in_bytes == 22, "StdVideoH265SequenceParameterSetVui.def_disp_win_right_offset has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.def_disp_win_right_offset has unexpected size % instead of 2", it.type.runtime_size); case "def_disp_win_top_offset"; assert(it.offset_in_bytes == 24, "StdVideoH265SequenceParameterSetVui.def_disp_win_top_offset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.def_disp_win_top_offset has unexpected size % instead of 2", it.type.runtime_size); case "def_disp_win_bottom_offset"; assert(it.offset_in_bytes == 26, "StdVideoH265SequenceParameterSetVui.def_disp_win_bottom_offset has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.def_disp_win_bottom_offset has unexpected size % instead of 2", it.type.runtime_size); case "vui_num_units_in_tick"; assert(it.offset_in_bytes == 28, "StdVideoH265SequenceParameterSetVui.vui_num_units_in_tick has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSetVui.vui_num_units_in_tick has unexpected size % instead of 4", it.type.runtime_size); case "vui_time_scale"; assert(it.offset_in_bytes == 32, "StdVideoH265SequenceParameterSetVui.vui_time_scale has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSetVui.vui_time_scale has unexpected size % instead of 4", it.type.runtime_size); case "vui_num_ticks_poc_diff_one_minus1"; assert(it.offset_in_bytes == 36, "StdVideoH265SequenceParameterSetVui.vui_num_ticks_poc_diff_one_minus1 has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSetVui.vui_num_ticks_poc_diff_one_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "min_spatial_segmentation_idc"; assert(it.offset_in_bytes == 40, "StdVideoH265SequenceParameterSetVui.min_spatial_segmentation_idc has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.min_spatial_segmentation_idc has unexpected size % instead of 2", it.type.runtime_size); case "reserved3"; assert(it.offset_in_bytes == 42, "StdVideoH265SequenceParameterSetVui.reserved3 has unexpected offset % instead of 42", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265SequenceParameterSetVui.reserved3 has unexpected size % instead of 2", it.type.runtime_size); case "max_bytes_per_pic_denom"; assert(it.offset_in_bytes == 44, "StdVideoH265SequenceParameterSetVui.max_bytes_per_pic_denom has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.max_bytes_per_pic_denom has unexpected size % instead of 1", it.type.runtime_size); case "max_bits_per_min_cu_denom"; assert(it.offset_in_bytes == 45, "StdVideoH265SequenceParameterSetVui.max_bits_per_min_cu_denom has unexpected offset % instead of 45", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.max_bits_per_min_cu_denom has unexpected size % instead of 1", it.type.runtime_size); case "log2_max_mv_length_horizontal"; assert(it.offset_in_bytes == 46, "StdVideoH265SequenceParameterSetVui.log2_max_mv_length_horizontal has unexpected offset % instead of 46", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.log2_max_mv_length_horizontal has unexpected size % instead of 1", it.type.runtime_size); case "log2_max_mv_length_vertical"; assert(it.offset_in_bytes == 47, "StdVideoH265SequenceParameterSetVui.log2_max_mv_length_vertical has unexpected offset % instead of 47", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSetVui.log2_max_mv_length_vertical has unexpected size % instead of 1", it.type.runtime_size); case "pHrdParameters"; assert(it.offset_in_bytes == 48, "StdVideoH265SequenceParameterSetVui.pHrdParameters has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSetVui.pHrdParameters has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH265SequenceParameterSetVui) == 56, "StdVideoH265SequenceParameterSetVui has size % instead of 56", size_of(StdVideoH265SequenceParameterSetVui)); } { info := type_info(StdVideoH265PredictorPaletteEntries); for info.members { if it.name == { case "PredictorPaletteEntries"; assert(it.offset_in_bytes == 0, "StdVideoH265PredictorPaletteEntries.PredictorPaletteEntries has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 768, "StdVideoH265PredictorPaletteEntries.PredictorPaletteEntries has unexpected size % instead of 768", it.type.runtime_size); } } assert(size_of(StdVideoH265PredictorPaletteEntries) == 768, "StdVideoH265PredictorPaletteEntries has size % instead of 768", size_of(StdVideoH265PredictorPaletteEntries)); } { info := type_info(StdVideoH265SpsFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265SpsFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SpsFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265SpsFlags) == 4, "StdVideoH265SpsFlags has size % instead of 4", size_of(StdVideoH265SpsFlags)); } { info := type_info(StdVideoH265ShortTermRefPicSetFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265ShortTermRefPicSetFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ShortTermRefPicSetFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoH265ShortTermRefPicSetFlags) == 4, "StdVideoH265ShortTermRefPicSetFlags has size % instead of 4", size_of(StdVideoH265ShortTermRefPicSetFlags)); } { info := type_info(StdVideoH265ShortTermRefPicSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265ShortTermRefPicSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265ShortTermRefPicSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "delta_idx_minus1"; assert(it.offset_in_bytes == 4, "StdVideoH265ShortTermRefPicSet.delta_idx_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265ShortTermRefPicSet.delta_idx_minus1 has unexpected size % instead of 4", it.type.runtime_size); case "use_delta_flag"; assert(it.offset_in_bytes == 8, "StdVideoH265ShortTermRefPicSet.use_delta_flag has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.use_delta_flag has unexpected size % instead of 2", it.type.runtime_size); case "abs_delta_rps_minus1"; assert(it.offset_in_bytes == 10, "StdVideoH265ShortTermRefPicSet.abs_delta_rps_minus1 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.abs_delta_rps_minus1 has unexpected size % instead of 2", it.type.runtime_size); case "used_by_curr_pic_flag"; assert(it.offset_in_bytes == 12, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_flag has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_flag has unexpected size % instead of 2", it.type.runtime_size); case "used_by_curr_pic_s0_flag"; assert(it.offset_in_bytes == 14, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_s0_flag has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_s0_flag has unexpected size % instead of 2", it.type.runtime_size); case "used_by_curr_pic_s1_flag"; assert(it.offset_in_bytes == 16, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_s1_flag has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.used_by_curr_pic_s1_flag has unexpected size % instead of 2", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 18, "StdVideoH265ShortTermRefPicSet.reserved1 has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoH265ShortTermRefPicSet.reserved1 has unexpected size % instead of 2", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 20, "StdVideoH265ShortTermRefPicSet.reserved2 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ShortTermRefPicSet.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "reserved3"; assert(it.offset_in_bytes == 21, "StdVideoH265ShortTermRefPicSet.reserved3 has unexpected offset % instead of 21", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ShortTermRefPicSet.reserved3 has unexpected size % instead of 1", it.type.runtime_size); case "num_negative_pics"; assert(it.offset_in_bytes == 22, "StdVideoH265ShortTermRefPicSet.num_negative_pics has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ShortTermRefPicSet.num_negative_pics has unexpected size % instead of 1", it.type.runtime_size); case "num_positive_pics"; assert(it.offset_in_bytes == 23, "StdVideoH265ShortTermRefPicSet.num_positive_pics has unexpected offset % instead of 23", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265ShortTermRefPicSet.num_positive_pics has unexpected size % instead of 1", it.type.runtime_size); case "delta_poc_s0_minus1"; assert(it.offset_in_bytes == 24, "StdVideoH265ShortTermRefPicSet.delta_poc_s0_minus1 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoH265ShortTermRefPicSet.delta_poc_s0_minus1 has unexpected size % instead of 32", it.type.runtime_size); case "delta_poc_s1_minus1"; assert(it.offset_in_bytes == 56, "StdVideoH265ShortTermRefPicSet.delta_poc_s1_minus1 has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoH265ShortTermRefPicSet.delta_poc_s1_minus1 has unexpected size % instead of 32", it.type.runtime_size); } } assert(size_of(StdVideoH265ShortTermRefPicSet) == 88, "StdVideoH265ShortTermRefPicSet has size % instead of 88", size_of(StdVideoH265ShortTermRefPicSet)); } { info := type_info(StdVideoH265LongTermRefPicsSps); for info.members { if it.name == { case "used_by_curr_pic_lt_sps_flag"; assert(it.offset_in_bytes == 0, "StdVideoH265LongTermRefPicsSps.used_by_curr_pic_lt_sps_flag has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265LongTermRefPicsSps.used_by_curr_pic_lt_sps_flag has unexpected size % instead of 4", it.type.runtime_size); case "lt_ref_pic_poc_lsb_sps"; assert(it.offset_in_bytes == 4, "StdVideoH265LongTermRefPicsSps.lt_ref_pic_poc_lsb_sps has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoH265LongTermRefPicsSps.lt_ref_pic_poc_lsb_sps has unexpected size % instead of 128", it.type.runtime_size); } } assert(size_of(StdVideoH265LongTermRefPicsSps) == 132, "StdVideoH265LongTermRefPicsSps has size % instead of 132", size_of(StdVideoH265LongTermRefPicsSps)); } { info := type_info(StdVideoH265SequenceParameterSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265SequenceParameterSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "chroma_format_idc"; assert(it.offset_in_bytes == 4, "StdVideoH265SequenceParameterSet.chroma_format_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.chroma_format_idc has unexpected size % instead of 4", it.type.runtime_size); case "pic_width_in_luma_samples"; assert(it.offset_in_bytes == 8, "StdVideoH265SequenceParameterSet.pic_width_in_luma_samples has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.pic_width_in_luma_samples has unexpected size % instead of 4", it.type.runtime_size); case "pic_height_in_luma_samples"; assert(it.offset_in_bytes == 12, "StdVideoH265SequenceParameterSet.pic_height_in_luma_samples has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.pic_height_in_luma_samples has unexpected size % instead of 4", it.type.runtime_size); case "sps_video_parameter_set_id"; assert(it.offset_in_bytes == 16, "StdVideoH265SequenceParameterSet.sps_video_parameter_set_id has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.sps_video_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "sps_max_sub_layers_minus1"; assert(it.offset_in_bytes == 17, "StdVideoH265SequenceParameterSet.sps_max_sub_layers_minus1 has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.sps_max_sub_layers_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "sps_seq_parameter_set_id"; assert(it.offset_in_bytes == 18, "StdVideoH265SequenceParameterSet.sps_seq_parameter_set_id has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.sps_seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "bit_depth_luma_minus8"; assert(it.offset_in_bytes == 19, "StdVideoH265SequenceParameterSet.bit_depth_luma_minus8 has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.bit_depth_luma_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "bit_depth_chroma_minus8"; assert(it.offset_in_bytes == 20, "StdVideoH265SequenceParameterSet.bit_depth_chroma_minus8 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.bit_depth_chroma_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "log2_max_pic_order_cnt_lsb_minus4"; assert(it.offset_in_bytes == 21, "StdVideoH265SequenceParameterSet.log2_max_pic_order_cnt_lsb_minus4 has unexpected offset % instead of 21", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_max_pic_order_cnt_lsb_minus4 has unexpected size % instead of 1", it.type.runtime_size); case "log2_min_luma_coding_block_size_minus3"; assert(it.offset_in_bytes == 22, "StdVideoH265SequenceParameterSet.log2_min_luma_coding_block_size_minus3 has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_min_luma_coding_block_size_minus3 has unexpected size % instead of 1", it.type.runtime_size); case "log2_diff_max_min_luma_coding_block_size"; assert(it.offset_in_bytes == 23, "StdVideoH265SequenceParameterSet.log2_diff_max_min_luma_coding_block_size has unexpected offset % instead of 23", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_diff_max_min_luma_coding_block_size has unexpected size % instead of 1", it.type.runtime_size); case "log2_min_luma_transform_block_size_minus2"; assert(it.offset_in_bytes == 24, "StdVideoH265SequenceParameterSet.log2_min_luma_transform_block_size_minus2 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_min_luma_transform_block_size_minus2 has unexpected size % instead of 1", it.type.runtime_size); case "log2_diff_max_min_luma_transform_block_size"; assert(it.offset_in_bytes == 25, "StdVideoH265SequenceParameterSet.log2_diff_max_min_luma_transform_block_size has unexpected offset % instead of 25", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_diff_max_min_luma_transform_block_size has unexpected size % instead of 1", it.type.runtime_size); case "max_transform_hierarchy_depth_inter"; assert(it.offset_in_bytes == 26, "StdVideoH265SequenceParameterSet.max_transform_hierarchy_depth_inter has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.max_transform_hierarchy_depth_inter has unexpected size % instead of 1", it.type.runtime_size); case "max_transform_hierarchy_depth_intra"; assert(it.offset_in_bytes == 27, "StdVideoH265SequenceParameterSet.max_transform_hierarchy_depth_intra has unexpected offset % instead of 27", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.max_transform_hierarchy_depth_intra has unexpected size % instead of 1", it.type.runtime_size); case "num_short_term_ref_pic_sets"; assert(it.offset_in_bytes == 28, "StdVideoH265SequenceParameterSet.num_short_term_ref_pic_sets has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.num_short_term_ref_pic_sets has unexpected size % instead of 1", it.type.runtime_size); case "num_long_term_ref_pics_sps"; assert(it.offset_in_bytes == 29, "StdVideoH265SequenceParameterSet.num_long_term_ref_pics_sps has unexpected offset % instead of 29", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.num_long_term_ref_pics_sps has unexpected size % instead of 1", it.type.runtime_size); case "pcm_sample_bit_depth_luma_minus1"; assert(it.offset_in_bytes == 30, "StdVideoH265SequenceParameterSet.pcm_sample_bit_depth_luma_minus1 has unexpected offset % instead of 30", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.pcm_sample_bit_depth_luma_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "pcm_sample_bit_depth_chroma_minus1"; assert(it.offset_in_bytes == 31, "StdVideoH265SequenceParameterSet.pcm_sample_bit_depth_chroma_minus1 has unexpected offset % instead of 31", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.pcm_sample_bit_depth_chroma_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "log2_min_pcm_luma_coding_block_size_minus3"; assert(it.offset_in_bytes == 32, "StdVideoH265SequenceParameterSet.log2_min_pcm_luma_coding_block_size_minus3 has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_min_pcm_luma_coding_block_size_minus3 has unexpected size % instead of 1", it.type.runtime_size); case "log2_diff_max_min_pcm_luma_coding_block_size"; assert(it.offset_in_bytes == 33, "StdVideoH265SequenceParameterSet.log2_diff_max_min_pcm_luma_coding_block_size has unexpected offset % instead of 33", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.log2_diff_max_min_pcm_luma_coding_block_size has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 34, "StdVideoH265SequenceParameterSet.reserved1 has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 35, "StdVideoH265SequenceParameterSet.reserved2 has unexpected offset % instead of 35", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "palette_max_size"; assert(it.offset_in_bytes == 36, "StdVideoH265SequenceParameterSet.palette_max_size has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.palette_max_size has unexpected size % instead of 1", it.type.runtime_size); case "delta_palette_max_predictor_size"; assert(it.offset_in_bytes == 37, "StdVideoH265SequenceParameterSet.delta_palette_max_predictor_size has unexpected offset % instead of 37", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.delta_palette_max_predictor_size has unexpected size % instead of 1", it.type.runtime_size); case "motion_vector_resolution_control_idc"; assert(it.offset_in_bytes == 38, "StdVideoH265SequenceParameterSet.motion_vector_resolution_control_idc has unexpected offset % instead of 38", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.motion_vector_resolution_control_idc has unexpected size % instead of 1", it.type.runtime_size); case "sps_num_palette_predictor_initializers_minus1"; assert(it.offset_in_bytes == 39, "StdVideoH265SequenceParameterSet.sps_num_palette_predictor_initializers_minus1 has unexpected offset % instead of 39", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265SequenceParameterSet.sps_num_palette_predictor_initializers_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "conf_win_left_offset"; assert(it.offset_in_bytes == 40, "StdVideoH265SequenceParameterSet.conf_win_left_offset has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.conf_win_left_offset has unexpected size % instead of 4", it.type.runtime_size); case "conf_win_right_offset"; assert(it.offset_in_bytes == 44, "StdVideoH265SequenceParameterSet.conf_win_right_offset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.conf_win_right_offset has unexpected size % instead of 4", it.type.runtime_size); case "conf_win_top_offset"; assert(it.offset_in_bytes == 48, "StdVideoH265SequenceParameterSet.conf_win_top_offset has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.conf_win_top_offset has unexpected size % instead of 4", it.type.runtime_size); case "conf_win_bottom_offset"; assert(it.offset_in_bytes == 52, "StdVideoH265SequenceParameterSet.conf_win_bottom_offset has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265SequenceParameterSet.conf_win_bottom_offset has unexpected size % instead of 4", it.type.runtime_size); case "pProfileTierLevel"; assert(it.offset_in_bytes == 56, "StdVideoH265SequenceParameterSet.pProfileTierLevel has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pProfileTierLevel has unexpected size % instead of 8", it.type.runtime_size); case "pDecPicBufMgr"; assert(it.offset_in_bytes == 64, "StdVideoH265SequenceParameterSet.pDecPicBufMgr has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pDecPicBufMgr has unexpected size % instead of 8", it.type.runtime_size); case "pScalingLists"; assert(it.offset_in_bytes == 72, "StdVideoH265SequenceParameterSet.pScalingLists has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pScalingLists has unexpected size % instead of 8", it.type.runtime_size); case "pShortTermRefPicSet"; assert(it.offset_in_bytes == 80, "StdVideoH265SequenceParameterSet.pShortTermRefPicSet has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pShortTermRefPicSet has unexpected size % instead of 8", it.type.runtime_size); case "pLongTermRefPicsSps"; assert(it.offset_in_bytes == 88, "StdVideoH265SequenceParameterSet.pLongTermRefPicsSps has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pLongTermRefPicsSps has unexpected size % instead of 8", it.type.runtime_size); case "pSequenceParameterSetVui"; assert(it.offset_in_bytes == 96, "StdVideoH265SequenceParameterSet.pSequenceParameterSetVui has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pSequenceParameterSetVui has unexpected size % instead of 8", it.type.runtime_size); case "pPredictorPaletteEntries"; assert(it.offset_in_bytes == 104, "StdVideoH265SequenceParameterSet.pPredictorPaletteEntries has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265SequenceParameterSet.pPredictorPaletteEntries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH265SequenceParameterSet) == 112, "StdVideoH265SequenceParameterSet has size % instead of 112", size_of(StdVideoH265SequenceParameterSet)); } { info := type_info(StdVideoH265PpsFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoH265PpsFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265PpsFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoH265PpsFlags) == 4, "StdVideoH265PpsFlags has size % instead of 4", size_of(StdVideoH265PpsFlags)); } { info := type_info(StdVideoH265PictureParameterSet); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoH265PictureParameterSet.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265PictureParameterSet.flags has unexpected size % instead of 4", it.type.runtime_size); case "pps_pic_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoH265PictureParameterSet.pps_pic_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pps_seq_parameter_set_id"; assert(it.offset_in_bytes == 5, "StdVideoH265PictureParameterSet.pps_seq_parameter_set_id has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "sps_video_parameter_set_id"; assert(it.offset_in_bytes == 6, "StdVideoH265PictureParameterSet.sps_video_parameter_set_id has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.sps_video_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "num_extra_slice_header_bits"; assert(it.offset_in_bytes == 7, "StdVideoH265PictureParameterSet.num_extra_slice_header_bits has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.num_extra_slice_header_bits has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l0_default_active_minus1"; assert(it.offset_in_bytes == 8, "StdVideoH265PictureParameterSet.num_ref_idx_l0_default_active_minus1 has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.num_ref_idx_l0_default_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l1_default_active_minus1"; assert(it.offset_in_bytes == 9, "StdVideoH265PictureParameterSet.num_ref_idx_l1_default_active_minus1 has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.num_ref_idx_l1_default_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "init_qp_minus26"; assert(it.offset_in_bytes == 10, "StdVideoH265PictureParameterSet.init_qp_minus26 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.init_qp_minus26 has unexpected size % instead of 1", it.type.runtime_size); case "diff_cu_qp_delta_depth"; assert(it.offset_in_bytes == 11, "StdVideoH265PictureParameterSet.diff_cu_qp_delta_depth has unexpected offset % instead of 11", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.diff_cu_qp_delta_depth has unexpected size % instead of 1", it.type.runtime_size); case "pps_cb_qp_offset"; assert(it.offset_in_bytes == 12, "StdVideoH265PictureParameterSet.pps_cb_qp_offset has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_cb_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "pps_cr_qp_offset"; assert(it.offset_in_bytes == 13, "StdVideoH265PictureParameterSet.pps_cr_qp_offset has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_cr_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "pps_beta_offset_div2"; assert(it.offset_in_bytes == 14, "StdVideoH265PictureParameterSet.pps_beta_offset_div2 has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_beta_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "pps_tc_offset_div2"; assert(it.offset_in_bytes == 15, "StdVideoH265PictureParameterSet.pps_tc_offset_div2 has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_tc_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "log2_parallel_merge_level_minus2"; assert(it.offset_in_bytes == 16, "StdVideoH265PictureParameterSet.log2_parallel_merge_level_minus2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.log2_parallel_merge_level_minus2 has unexpected size % instead of 1", it.type.runtime_size); case "log2_max_transform_skip_block_size_minus2"; assert(it.offset_in_bytes == 17, "StdVideoH265PictureParameterSet.log2_max_transform_skip_block_size_minus2 has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.log2_max_transform_skip_block_size_minus2 has unexpected size % instead of 1", it.type.runtime_size); case "diff_cu_chroma_qp_offset_depth"; assert(it.offset_in_bytes == 18, "StdVideoH265PictureParameterSet.diff_cu_chroma_qp_offset_depth has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.diff_cu_chroma_qp_offset_depth has unexpected size % instead of 1", it.type.runtime_size); case "chroma_qp_offset_list_len_minus1"; assert(it.offset_in_bytes == 19, "StdVideoH265PictureParameterSet.chroma_qp_offset_list_len_minus1 has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.chroma_qp_offset_list_len_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "cb_qp_offset_list"; assert(it.offset_in_bytes == 20, "StdVideoH265PictureParameterSet.cb_qp_offset_list has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 6, "StdVideoH265PictureParameterSet.cb_qp_offset_list has unexpected size % instead of 6", it.type.runtime_size); case "cr_qp_offset_list"; assert(it.offset_in_bytes == 26, "StdVideoH265PictureParameterSet.cr_qp_offset_list has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 6, "StdVideoH265PictureParameterSet.cr_qp_offset_list has unexpected size % instead of 6", it.type.runtime_size); case "log2_sao_offset_scale_luma"; assert(it.offset_in_bytes == 32, "StdVideoH265PictureParameterSet.log2_sao_offset_scale_luma has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.log2_sao_offset_scale_luma has unexpected size % instead of 1", it.type.runtime_size); case "log2_sao_offset_scale_chroma"; assert(it.offset_in_bytes == 33, "StdVideoH265PictureParameterSet.log2_sao_offset_scale_chroma has unexpected offset % instead of 33", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.log2_sao_offset_scale_chroma has unexpected size % instead of 1", it.type.runtime_size); case "pps_act_y_qp_offset_plus5"; assert(it.offset_in_bytes == 34, "StdVideoH265PictureParameterSet.pps_act_y_qp_offset_plus5 has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_act_y_qp_offset_plus5 has unexpected size % instead of 1", it.type.runtime_size); case "pps_act_cb_qp_offset_plus5"; assert(it.offset_in_bytes == 35, "StdVideoH265PictureParameterSet.pps_act_cb_qp_offset_plus5 has unexpected offset % instead of 35", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_act_cb_qp_offset_plus5 has unexpected size % instead of 1", it.type.runtime_size); case "pps_act_cr_qp_offset_plus3"; assert(it.offset_in_bytes == 36, "StdVideoH265PictureParameterSet.pps_act_cr_qp_offset_plus3 has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_act_cr_qp_offset_plus3 has unexpected size % instead of 1", it.type.runtime_size); case "pps_num_palette_predictor_initializers"; assert(it.offset_in_bytes == 37, "StdVideoH265PictureParameterSet.pps_num_palette_predictor_initializers has unexpected offset % instead of 37", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.pps_num_palette_predictor_initializers has unexpected size % instead of 1", it.type.runtime_size); case "luma_bit_depth_entry_minus8"; assert(it.offset_in_bytes == 38, "StdVideoH265PictureParameterSet.luma_bit_depth_entry_minus8 has unexpected offset % instead of 38", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.luma_bit_depth_entry_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "chroma_bit_depth_entry_minus8"; assert(it.offset_in_bytes == 39, "StdVideoH265PictureParameterSet.chroma_bit_depth_entry_minus8 has unexpected offset % instead of 39", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.chroma_bit_depth_entry_minus8 has unexpected size % instead of 1", it.type.runtime_size); case "num_tile_columns_minus1"; assert(it.offset_in_bytes == 40, "StdVideoH265PictureParameterSet.num_tile_columns_minus1 has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.num_tile_columns_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "num_tile_rows_minus1"; assert(it.offset_in_bytes == 41, "StdVideoH265PictureParameterSet.num_tile_rows_minus1 has unexpected offset % instead of 41", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.num_tile_rows_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 42, "StdVideoH265PictureParameterSet.reserved1 has unexpected offset % instead of 42", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 43, "StdVideoH265PictureParameterSet.reserved2 has unexpected offset % instead of 43", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoH265PictureParameterSet.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "column_width_minus1"; assert(it.offset_in_bytes == 44, "StdVideoH265PictureParameterSet.column_width_minus1 has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 38, "StdVideoH265PictureParameterSet.column_width_minus1 has unexpected size % instead of 38", it.type.runtime_size); case "row_height_minus1"; assert(it.offset_in_bytes == 82, "StdVideoH265PictureParameterSet.row_height_minus1 has unexpected offset % instead of 82", it.offset_in_bytes); assert(it.type.runtime_size == 42, "StdVideoH265PictureParameterSet.row_height_minus1 has unexpected size % instead of 42", it.type.runtime_size); case "reserved3"; assert(it.offset_in_bytes == 124, "StdVideoH265PictureParameterSet.reserved3 has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoH265PictureParameterSet.reserved3 has unexpected size % instead of 4", it.type.runtime_size); case "pScalingLists"; assert(it.offset_in_bytes == 128, "StdVideoH265PictureParameterSet.pScalingLists has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265PictureParameterSet.pScalingLists has unexpected size % instead of 8", it.type.runtime_size); case "pPredictorPaletteEntries"; assert(it.offset_in_bytes == 136, "StdVideoH265PictureParameterSet.pPredictorPaletteEntries has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoH265PictureParameterSet.pPredictorPaletteEntries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoH265PictureParameterSet) == 144, "StdVideoH265PictureParameterSet has size % instead of 144", size_of(StdVideoH265PictureParameterSet)); } { info := type_info(StdVideoEncodeH265WeightTableFlags); for info.members { if it.name == { case "luma_weight_l0_flag"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265WeightTableFlags.luma_weight_l0_flag has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265WeightTableFlags.luma_weight_l0_flag has unexpected size % instead of 2", it.type.runtime_size); case "chroma_weight_l0_flag"; assert(it.offset_in_bytes == 2, "StdVideoEncodeH265WeightTableFlags.chroma_weight_l0_flag has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265WeightTableFlags.chroma_weight_l0_flag has unexpected size % instead of 2", it.type.runtime_size); case "luma_weight_l1_flag"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH265WeightTableFlags.luma_weight_l1_flag has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265WeightTableFlags.luma_weight_l1_flag has unexpected size % instead of 2", it.type.runtime_size); case "chroma_weight_l1_flag"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH265WeightTableFlags.chroma_weight_l1_flag has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265WeightTableFlags.chroma_weight_l1_flag has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265WeightTableFlags) == 8, "StdVideoEncodeH265WeightTableFlags has size % instead of 8", size_of(StdVideoEncodeH265WeightTableFlags)); } { info := type_info(StdVideoEncodeH265WeightTable); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265WeightTable.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH265WeightTable.flags has unexpected size % instead of 8", it.type.runtime_size); case "luma_log2_weight_denom"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH265WeightTable.luma_log2_weight_denom has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265WeightTable.luma_log2_weight_denom has unexpected size % instead of 1", it.type.runtime_size); case "delta_chroma_log2_weight_denom"; assert(it.offset_in_bytes == 9, "StdVideoEncodeH265WeightTable.delta_chroma_log2_weight_denom has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265WeightTable.delta_chroma_log2_weight_denom has unexpected size % instead of 1", it.type.runtime_size); case "delta_luma_weight_l0"; assert(it.offset_in_bytes == 10, "StdVideoEncodeH265WeightTable.delta_luma_weight_l0 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265WeightTable.delta_luma_weight_l0 has unexpected size % instead of 15", it.type.runtime_size); case "luma_offset_l0"; assert(it.offset_in_bytes == 25, "StdVideoEncodeH265WeightTable.luma_offset_l0 has unexpected offset % instead of 25", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265WeightTable.luma_offset_l0 has unexpected size % instead of 15", it.type.runtime_size); case "delta_chroma_weight_l0"; assert(it.offset_in_bytes == 40, "StdVideoEncodeH265WeightTable.delta_chroma_weight_l0 has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 30, "StdVideoEncodeH265WeightTable.delta_chroma_weight_l0 has unexpected size % instead of 30", it.type.runtime_size); case "delta_chroma_offset_l0"; assert(it.offset_in_bytes == 70, "StdVideoEncodeH265WeightTable.delta_chroma_offset_l0 has unexpected offset % instead of 70", it.offset_in_bytes); assert(it.type.runtime_size == 30, "StdVideoEncodeH265WeightTable.delta_chroma_offset_l0 has unexpected size % instead of 30", it.type.runtime_size); case "delta_luma_weight_l1"; assert(it.offset_in_bytes == 100, "StdVideoEncodeH265WeightTable.delta_luma_weight_l1 has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265WeightTable.delta_luma_weight_l1 has unexpected size % instead of 15", it.type.runtime_size); case "luma_offset_l1"; assert(it.offset_in_bytes == 115, "StdVideoEncodeH265WeightTable.luma_offset_l1 has unexpected offset % instead of 115", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265WeightTable.luma_offset_l1 has unexpected size % instead of 15", it.type.runtime_size); case "delta_chroma_weight_l1"; assert(it.offset_in_bytes == 130, "StdVideoEncodeH265WeightTable.delta_chroma_weight_l1 has unexpected offset % instead of 130", it.offset_in_bytes); assert(it.type.runtime_size == 30, "StdVideoEncodeH265WeightTable.delta_chroma_weight_l1 has unexpected size % instead of 30", it.type.runtime_size); case "delta_chroma_offset_l1"; assert(it.offset_in_bytes == 160, "StdVideoEncodeH265WeightTable.delta_chroma_offset_l1 has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 30, "StdVideoEncodeH265WeightTable.delta_chroma_offset_l1 has unexpected size % instead of 30", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265WeightTable) == 190, "StdVideoEncodeH265WeightTable has size % instead of 190", size_of(StdVideoEncodeH265WeightTable)); } { info := type_info(StdVideoEncodeH265SliceSegmentHeaderFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265SliceSegmentHeaderFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265SliceSegmentHeaderFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265SliceSegmentHeaderFlags) == 4, "StdVideoEncodeH265SliceSegmentHeaderFlags has size % instead of 4", size_of(StdVideoEncodeH265SliceSegmentHeaderFlags)); } { info := type_info(StdVideoEncodeH265SliceSegmentHeader); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265SliceSegmentHeader.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265SliceSegmentHeader.flags has unexpected size % instead of 4", it.type.runtime_size); case "slice_type"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH265SliceSegmentHeader.slice_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265SliceSegmentHeader.slice_type has unexpected size % instead of 4", it.type.runtime_size); case "slice_segment_address"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH265SliceSegmentHeader.slice_segment_address has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265SliceSegmentHeader.slice_segment_address has unexpected size % instead of 4", it.type.runtime_size); case "collocated_ref_idx"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH265SliceSegmentHeader.collocated_ref_idx has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.collocated_ref_idx has unexpected size % instead of 1", it.type.runtime_size); case "MaxNumMergeCand"; assert(it.offset_in_bytes == 13, "StdVideoEncodeH265SliceSegmentHeader.MaxNumMergeCand has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.MaxNumMergeCand has unexpected size % instead of 1", it.type.runtime_size); case "slice_cb_qp_offset"; assert(it.offset_in_bytes == 14, "StdVideoEncodeH265SliceSegmentHeader.slice_cb_qp_offset has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_cb_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "slice_cr_qp_offset"; assert(it.offset_in_bytes == 15, "StdVideoEncodeH265SliceSegmentHeader.slice_cr_qp_offset has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_cr_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "slice_beta_offset_div2"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH265SliceSegmentHeader.slice_beta_offset_div2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_beta_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "slice_tc_offset_div2"; assert(it.offset_in_bytes == 17, "StdVideoEncodeH265SliceSegmentHeader.slice_tc_offset_div2 has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_tc_offset_div2 has unexpected size % instead of 1", it.type.runtime_size); case "slice_act_y_qp_offset"; assert(it.offset_in_bytes == 18, "StdVideoEncodeH265SliceSegmentHeader.slice_act_y_qp_offset has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_act_y_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "slice_act_cb_qp_offset"; assert(it.offset_in_bytes == 19, "StdVideoEncodeH265SliceSegmentHeader.slice_act_cb_qp_offset has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_act_cb_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "slice_act_cr_qp_offset"; assert(it.offset_in_bytes == 20, "StdVideoEncodeH265SliceSegmentHeader.slice_act_cr_qp_offset has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_act_cr_qp_offset has unexpected size % instead of 1", it.type.runtime_size); case "slice_qp_delta"; assert(it.offset_in_bytes == 21, "StdVideoEncodeH265SliceSegmentHeader.slice_qp_delta has unexpected offset % instead of 21", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265SliceSegmentHeader.slice_qp_delta has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 22, "StdVideoEncodeH265SliceSegmentHeader.reserved1 has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265SliceSegmentHeader.reserved1 has unexpected size % instead of 2", it.type.runtime_size); case "pWeightTable"; assert(it.offset_in_bytes == 24, "StdVideoEncodeH265SliceSegmentHeader.pWeightTable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH265SliceSegmentHeader.pWeightTable has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265SliceSegmentHeader) == 32, "StdVideoEncodeH265SliceSegmentHeader has size % instead of 32", size_of(StdVideoEncodeH265SliceSegmentHeader)); } { info := type_info(StdVideoEncodeH265ReferenceListsInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265ReferenceListsInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceListsInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265ReferenceListsInfoFlags) == 4, "StdVideoEncodeH265ReferenceListsInfoFlags has size % instead of 4", size_of(StdVideoEncodeH265ReferenceListsInfoFlags)); } { info := type_info(StdVideoEncodeH265ReferenceListsInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265ReferenceListsInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceListsInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "num_ref_idx_l0_active_minus1"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH265ReferenceListsInfo.num_ref_idx_l0_active_minus1 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265ReferenceListsInfo.num_ref_idx_l0_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "num_ref_idx_l1_active_minus1"; assert(it.offset_in_bytes == 5, "StdVideoEncodeH265ReferenceListsInfo.num_ref_idx_l1_active_minus1 has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265ReferenceListsInfo.num_ref_idx_l1_active_minus1 has unexpected size % instead of 1", it.type.runtime_size); case "RefPicList0"; assert(it.offset_in_bytes == 6, "StdVideoEncodeH265ReferenceListsInfo.RefPicList0 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265ReferenceListsInfo.RefPicList0 has unexpected size % instead of 15", it.type.runtime_size); case "RefPicList1"; assert(it.offset_in_bytes == 21, "StdVideoEncodeH265ReferenceListsInfo.RefPicList1 has unexpected offset % instead of 21", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265ReferenceListsInfo.RefPicList1 has unexpected size % instead of 15", it.type.runtime_size); case "list_entry_l0"; assert(it.offset_in_bytes == 36, "StdVideoEncodeH265ReferenceListsInfo.list_entry_l0 has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265ReferenceListsInfo.list_entry_l0 has unexpected size % instead of 15", it.type.runtime_size); case "list_entry_l1"; assert(it.offset_in_bytes == 51, "StdVideoEncodeH265ReferenceListsInfo.list_entry_l1 has unexpected offset % instead of 51", it.offset_in_bytes); assert(it.type.runtime_size == 15, "StdVideoEncodeH265ReferenceListsInfo.list_entry_l1 has unexpected size % instead of 15", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265ReferenceListsInfo) == 68, "StdVideoEncodeH265ReferenceListsInfo has size % instead of 68", size_of(StdVideoEncodeH265ReferenceListsInfo)); } { info := type_info(StdVideoEncodeH265PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265PictureInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265PictureInfoFlags) == 4, "StdVideoEncodeH265PictureInfoFlags has size % instead of 4", size_of(StdVideoEncodeH265PictureInfoFlags)); } { info := type_info(StdVideoEncodeH265LongTermRefPics); for info.members { if it.name == { case "num_long_term_sps"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265LongTermRefPics.num_long_term_sps has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265LongTermRefPics.num_long_term_sps has unexpected size % instead of 1", it.type.runtime_size); case "num_long_term_pics"; assert(it.offset_in_bytes == 1, "StdVideoEncodeH265LongTermRefPics.num_long_term_pics has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265LongTermRefPics.num_long_term_pics has unexpected size % instead of 1", it.type.runtime_size); case "lt_idx_sps"; assert(it.offset_in_bytes == 2, "StdVideoEncodeH265LongTermRefPics.lt_idx_sps has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoEncodeH265LongTermRefPics.lt_idx_sps has unexpected size % instead of 32", it.type.runtime_size); case "poc_lsb_lt"; assert(it.offset_in_bytes == 34, "StdVideoEncodeH265LongTermRefPics.poc_lsb_lt has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 16, "StdVideoEncodeH265LongTermRefPics.poc_lsb_lt has unexpected size % instead of 16", it.type.runtime_size); case "used_by_curr_pic_lt_flag"; assert(it.offset_in_bytes == 50, "StdVideoEncodeH265LongTermRefPics.used_by_curr_pic_lt_flag has unexpected offset % instead of 50", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeH265LongTermRefPics.used_by_curr_pic_lt_flag has unexpected size % instead of 2", it.type.runtime_size); case "delta_poc_msb_present_flag"; assert(it.offset_in_bytes == 52, "StdVideoEncodeH265LongTermRefPics.delta_poc_msb_present_flag has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 48, "StdVideoEncodeH265LongTermRefPics.delta_poc_msb_present_flag has unexpected size % instead of 48", it.type.runtime_size); case "delta_poc_msb_cycle_lt"; assert(it.offset_in_bytes == 100, "StdVideoEncodeH265LongTermRefPics.delta_poc_msb_cycle_lt has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 48, "StdVideoEncodeH265LongTermRefPics.delta_poc_msb_cycle_lt has unexpected size % instead of 48", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265LongTermRefPics) == 148, "StdVideoEncodeH265LongTermRefPics has size % instead of 148", size_of(StdVideoEncodeH265LongTermRefPics)); } { info := type_info(StdVideoEncodeH265PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "pic_type"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH265PictureInfo.pic_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265PictureInfo.pic_type has unexpected size % instead of 4", it.type.runtime_size); case "sps_video_parameter_set_id"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH265PictureInfo.sps_video_parameter_set_id has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265PictureInfo.sps_video_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pps_seq_parameter_set_id"; assert(it.offset_in_bytes == 9, "StdVideoEncodeH265PictureInfo.pps_seq_parameter_set_id has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265PictureInfo.pps_seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pps_pic_parameter_set_id"; assert(it.offset_in_bytes == 10, "StdVideoEncodeH265PictureInfo.pps_pic_parameter_set_id has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265PictureInfo.pps_pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "short_term_ref_pic_set_idx"; assert(it.offset_in_bytes == 11, "StdVideoEncodeH265PictureInfo.short_term_ref_pic_set_idx has unexpected offset % instead of 11", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265PictureInfo.short_term_ref_pic_set_idx has unexpected size % instead of 1", it.type.runtime_size); case "PicOrderCntVal"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH265PictureInfo.PicOrderCntVal has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265PictureInfo.PicOrderCntVal has unexpected size % instead of 4", it.type.runtime_size); case "TemporalId"; assert(it.offset_in_bytes == 16, "StdVideoEncodeH265PictureInfo.TemporalId has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265PictureInfo.TemporalId has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 17, "StdVideoEncodeH265PictureInfo.reserved1 has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoEncodeH265PictureInfo.reserved1 has unexpected size % instead of 7", it.type.runtime_size); case "pRefLists"; assert(it.offset_in_bytes == 24, "StdVideoEncodeH265PictureInfo.pRefLists has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH265PictureInfo.pRefLists has unexpected size % instead of 8", it.type.runtime_size); case "pShortTermRefPicSet"; assert(it.offset_in_bytes == 32, "StdVideoEncodeH265PictureInfo.pShortTermRefPicSet has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH265PictureInfo.pShortTermRefPicSet has unexpected size % instead of 8", it.type.runtime_size); case "pLongTermRefPics"; assert(it.offset_in_bytes == 40, "StdVideoEncodeH265PictureInfo.pLongTermRefPics has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeH265PictureInfo.pLongTermRefPics has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265PictureInfo) == 48, "StdVideoEncodeH265PictureInfo has size % instead of 48", size_of(StdVideoEncodeH265PictureInfo)); } { info := type_info(StdVideoEncodeH265ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265ReferenceInfoFlags) == 4, "StdVideoEncodeH265ReferenceInfoFlags has size % instead of 4", size_of(StdVideoEncodeH265ReferenceInfoFlags)); } { info := type_info(StdVideoEncodeH265ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeH265ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "pic_type"; assert(it.offset_in_bytes == 4, "StdVideoEncodeH265ReferenceInfo.pic_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceInfo.pic_type has unexpected size % instead of 4", it.type.runtime_size); case "PicOrderCntVal"; assert(it.offset_in_bytes == 8, "StdVideoEncodeH265ReferenceInfo.PicOrderCntVal has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeH265ReferenceInfo.PicOrderCntVal has unexpected size % instead of 4", it.type.runtime_size); case "TemporalId"; assert(it.offset_in_bytes == 12, "StdVideoEncodeH265ReferenceInfo.TemporalId has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeH265ReferenceInfo.TemporalId has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoEncodeH265ReferenceInfo) == 16, "StdVideoEncodeH265ReferenceInfo has size % instead of 16", size_of(StdVideoEncodeH265ReferenceInfo)); } { info := type_info(VkVideoEncodeH265CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265CapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265CapabilitiesKHR.maxLevelIdc has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); case "maxSliceSegmentCount"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265CapabilitiesKHR.maxSliceSegmentCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxSliceSegmentCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTiles"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH265CapabilitiesKHR.maxTiles has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265CapabilitiesKHR.maxTiles has unexpected size % instead of 8", it.type.runtime_size); case "ctbSizes"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH265CapabilitiesKHR.ctbSizes has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.ctbSizes has unexpected size % instead of 4", it.type.runtime_size); case "transformBlockSizes"; assert(it.offset_in_bytes == 40, "VkVideoEncodeH265CapabilitiesKHR.transformBlockSizes has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.transformBlockSizes has unexpected size % instead of 4", it.type.runtime_size); case "maxPPictureL0ReferenceCount"; assert(it.offset_in_bytes == 44, "VkVideoEncodeH265CapabilitiesKHR.maxPPictureL0ReferenceCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxPPictureL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxBPictureL0ReferenceCount"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH265CapabilitiesKHR.maxBPictureL0ReferenceCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxBPictureL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxL1ReferenceCount"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH265CapabilitiesKHR.maxL1ReferenceCount has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxL1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxSubLayerCount"; assert(it.offset_in_bytes == 56, "VkVideoEncodeH265CapabilitiesKHR.maxSubLayerCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxSubLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "expectDyadicTemporalSubLayerPattern"; assert(it.offset_in_bytes == 60, "VkVideoEncodeH265CapabilitiesKHR.expectDyadicTemporalSubLayerPattern has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.expectDyadicTemporalSubLayerPattern has unexpected size % instead of 4", it.type.runtime_size); case "minQp"; assert(it.offset_in_bytes == 64, "VkVideoEncodeH265CapabilitiesKHR.minQp has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.minQp has unexpected size % instead of 4", it.type.runtime_size); case "maxQp"; assert(it.offset_in_bytes == 68, "VkVideoEncodeH265CapabilitiesKHR.maxQp has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.maxQp has unexpected size % instead of 4", it.type.runtime_size); case "prefersGopRemainingFrames"; assert(it.offset_in_bytes == 72, "VkVideoEncodeH265CapabilitiesKHR.prefersGopRemainingFrames has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.prefersGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "requiresGopRemainingFrames"; assert(it.offset_in_bytes == 76, "VkVideoEncodeH265CapabilitiesKHR.requiresGopRemainingFrames has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.requiresGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "stdSyntaxFlags"; assert(it.offset_in_bytes == 80, "VkVideoEncodeH265CapabilitiesKHR.stdSyntaxFlags has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265CapabilitiesKHR.stdSyntaxFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265CapabilitiesKHR) == 88, "VkVideoEncodeH265CapabilitiesKHR has size % instead of 88", size_of(VkVideoEncodeH265CapabilitiesKHR)); } { info := type_info(VkVideoEncodeH265SessionCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265SessionCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265SessionCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMaxLevelIdc"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265SessionCreateInfoKHR.useMaxLevelIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionCreateInfoKHR.useMaxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265SessionCreateInfoKHR.maxLevelIdc has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionCreateInfoKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265SessionCreateInfoKHR) == 24, "VkVideoEncodeH265SessionCreateInfoKHR has size % instead of 24", size_of(VkVideoEncodeH265SessionCreateInfoKHR)); } { info := type_info(VkVideoEncodeH265QpKHR); for info.members { if it.name == { case "qpI"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265QpKHR.qpI has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QpKHR.qpI has unexpected size % instead of 4", it.type.runtime_size); case "qpP"; assert(it.offset_in_bytes == 4, "VkVideoEncodeH265QpKHR.qpP has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QpKHR.qpP has unexpected size % instead of 4", it.type.runtime_size); case "qpB"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265QpKHR.qpB has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QpKHR.qpB has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265QpKHR) == 12, "VkVideoEncodeH265QpKHR has size % instead of 12", size_of(VkVideoEncodeH265QpKHR)); } { info := type_info(VkVideoEncodeH265QualityLevelPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265QualityLevelPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265QualityLevelPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265QualityLevelPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "preferredRateControlFlags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected size % instead of 4", it.type.runtime_size); case "preferredGopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredIdrPeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredIdrPeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredIdrPeriod has unexpected size % instead of 4", it.type.runtime_size); case "preferredConsecutiveBFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredConsecutiveBFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredConsecutiveBFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredSubLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredSubLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredSubLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredConstantQp"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredConstantQp has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredConstantQp has unexpected size % instead of 12", it.type.runtime_size); case "preferredMaxL0ReferenceCount"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredMaxL0ReferenceCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredMaxL0ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxL1ReferenceCount"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredMaxL1ReferenceCount has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QualityLevelPropertiesKHR.preferredMaxL1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265QualityLevelPropertiesKHR) == 56, "VkVideoEncodeH265QualityLevelPropertiesKHR has size % instead of 56", size_of(VkVideoEncodeH265QualityLevelPropertiesKHR)); } { info := type_info(VkVideoEncodeH265SessionParametersAddInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265SessionParametersAddInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersAddInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265SessionParametersAddInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersAddInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdVPSCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdVPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdVPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdVPSs"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdVPSs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdVPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdSPSCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdSPSCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdSPSs"; assert(it.offset_in_bytes == 40, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdSPSs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdSPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdPPSCount"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdPPSCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersAddInfoKHR.stdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdPPSs"; assert(it.offset_in_bytes == 56, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdPPSs has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersAddInfoKHR.pStdPPSs has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265SessionParametersAddInfoKHR) == 64, "VkVideoEncodeH265SessionParametersAddInfoKHR has size % instead of 64", size_of(VkVideoEncodeH265SessionParametersAddInfoKHR)); } { info := type_info(VkVideoEncodeH265SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxStdVPSCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdVPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdVPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdSPSCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdPPSCount"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pParametersAddInfo"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265SessionParametersCreateInfoKHR) == 40, "VkVideoEncodeH265SessionParametersCreateInfoKHR has size % instead of 40", size_of(VkVideoEncodeH265SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoEncodeH265SessionParametersGetInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265SessionParametersGetInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265SessionParametersGetInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersGetInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "writeStdVPS"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdVPS has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdVPS has unexpected size % instead of 4", it.type.runtime_size); case "writeStdSPS"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdSPS has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdSPS has unexpected size % instead of 4", it.type.runtime_size); case "writeStdPPS"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdPPS has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.writeStdPPS has unexpected size % instead of 4", it.type.runtime_size); case "stdVPSId"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdVPSId has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdVPSId has unexpected size % instead of 4", it.type.runtime_size); case "stdSPSId"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdSPSId has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdSPSId has unexpected size % instead of 4", it.type.runtime_size); case "stdPPSId"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdPPSId has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersGetInfoKHR.stdPPSId has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265SessionParametersGetInfoKHR) == 40, "VkVideoEncodeH265SessionParametersGetInfoKHR has size % instead of 40", size_of(VkVideoEncodeH265SessionParametersGetInfoKHR)); } { info := type_info(VkVideoEncodeH265SessionParametersFeedbackInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hasStdVPSOverrides"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdVPSOverrides has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdVPSOverrides has unexpected size % instead of 4", it.type.runtime_size); case "hasStdSPSOverrides"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdSPSOverrides has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdSPSOverrides has unexpected size % instead of 4", it.type.runtime_size); case "hasStdPPSOverrides"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdPPSOverrides has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR.hasStdPPSOverrides has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265SessionParametersFeedbackInfoKHR) == 32, "VkVideoEncodeH265SessionParametersFeedbackInfoKHR has size % instead of 32", size_of(VkVideoEncodeH265SessionParametersFeedbackInfoKHR)); } { info := type_info(VkVideoEncodeH265NaluSliceSegmentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "constantQp"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.constantQp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.constantQp has unexpected size % instead of 4", it.type.runtime_size); case "pStdSliceSegmentHeader"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.pStdSliceSegmentHeader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265NaluSliceSegmentInfoKHR.pStdSliceSegmentHeader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265NaluSliceSegmentInfoKHR) == 32, "VkVideoEncodeH265NaluSliceSegmentInfoKHR has size % instead of 32", size_of(VkVideoEncodeH265NaluSliceSegmentInfoKHR)); } { info := type_info(VkVideoEncodeH265PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "naluSliceSegmentEntryCount"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265PictureInfoKHR.naluSliceSegmentEntryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265PictureInfoKHR.naluSliceSegmentEntryCount has unexpected size % instead of 4", it.type.runtime_size); case "pNaluSliceSegmentEntries"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265PictureInfoKHR.pNaluSliceSegmentEntries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265PictureInfoKHR.pNaluSliceSegmentEntries has unexpected size % instead of 8", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265PictureInfoKHR) == 40, "VkVideoEncodeH265PictureInfoKHR has size % instead of 40", size_of(VkVideoEncodeH265PictureInfoKHR)); } { info := type_info(VkVideoEncodeH265DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265DpbSlotInfoKHR) == 24, "VkVideoEncodeH265DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoEncodeH265DpbSlotInfoKHR)); } { info := type_info(VkVideoEncodeH265ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfileIdc"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265ProfileInfoKHR.stdProfileIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265ProfileInfoKHR.stdProfileIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265ProfileInfoKHR) == 24, "VkVideoEncodeH265ProfileInfoKHR has size % instead of 24", size_of(VkVideoEncodeH265ProfileInfoKHR)); } { info := type_info(VkVideoEncodeH265RateControlInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265RateControlInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265RateControlInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265RateControlInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265RateControlInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "gopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265RateControlInfoKHR.gopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.gopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "idrPeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265RateControlInfoKHR.idrPeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.idrPeriod has unexpected size % instead of 4", it.type.runtime_size); case "consecutiveBFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH265RateControlInfoKHR.consecutiveBFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.consecutiveBFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "subLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265RateControlInfoKHR.subLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlInfoKHR.subLayerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265RateControlInfoKHR) == 40, "VkVideoEncodeH265RateControlInfoKHR has size % instead of 40", size_of(VkVideoEncodeH265RateControlInfoKHR)); } { info := type_info(VkVideoEncodeH265FrameSizeKHR); for info.members { if it.name == { case "frameISize"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265FrameSizeKHR.frameISize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265FrameSizeKHR.frameISize has unexpected size % instead of 4", it.type.runtime_size); case "framePSize"; assert(it.offset_in_bytes == 4, "VkVideoEncodeH265FrameSizeKHR.framePSize has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265FrameSizeKHR.framePSize has unexpected size % instead of 4", it.type.runtime_size); case "frameBSize"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265FrameSizeKHR.frameBSize has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265FrameSizeKHR.frameBSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265FrameSizeKHR) == 12, "VkVideoEncodeH265FrameSizeKHR has size % instead of 12", size_of(VkVideoEncodeH265FrameSizeKHR)); } { info := type_info(VkVideoEncodeH265RateControlLayerInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265RateControlLayerInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlLayerInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265RateControlLayerInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265RateControlLayerInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMinQp"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265RateControlLayerInfoKHR.useMinQp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlLayerInfoKHR.useMinQp has unexpected size % instead of 4", it.type.runtime_size); case "minQp"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265RateControlLayerInfoKHR.minQp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH265RateControlLayerInfoKHR.minQp has unexpected size % instead of 12", it.type.runtime_size); case "useMaxQp"; assert(it.offset_in_bytes == 32, "VkVideoEncodeH265RateControlLayerInfoKHR.useMaxQp has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlLayerInfoKHR.useMaxQp has unexpected size % instead of 4", it.type.runtime_size); case "maxQp"; assert(it.offset_in_bytes == 36, "VkVideoEncodeH265RateControlLayerInfoKHR.maxQp has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH265RateControlLayerInfoKHR.maxQp has unexpected size % instead of 12", it.type.runtime_size); case "useMaxFrameSize"; assert(it.offset_in_bytes == 48, "VkVideoEncodeH265RateControlLayerInfoKHR.useMaxFrameSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265RateControlLayerInfoKHR.useMaxFrameSize has unexpected size % instead of 4", it.type.runtime_size); case "maxFrameSize"; assert(it.offset_in_bytes == 52, "VkVideoEncodeH265RateControlLayerInfoKHR.maxFrameSize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeH265RateControlLayerInfoKHR.maxFrameSize has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265RateControlLayerInfoKHR) == 64, "VkVideoEncodeH265RateControlLayerInfoKHR has size % instead of 64", size_of(VkVideoEncodeH265RateControlLayerInfoKHR)); } { info := type_info(VkVideoEncodeH265GopRemainingFrameInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265GopRemainingFrameInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265GopRemainingFrameInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265GopRemainingFrameInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265GopRemainingFrameInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useGopRemainingFrames"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingI"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingI has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingI has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingP"; assert(it.offset_in_bytes == 24, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingP has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingP has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingB"; assert(it.offset_in_bytes == 28, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingB has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265GopRemainingFrameInfoKHR.gopRemainingB has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265GopRemainingFrameInfoKHR) == 32, "VkVideoEncodeH265GopRemainingFrameInfoKHR has size % instead of 32", size_of(VkVideoEncodeH265GopRemainingFrameInfoKHR)); } { info := type_info(StdVideoDecodeH264PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH264PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264PictureInfoFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH264PictureInfoFlags) == 4, "StdVideoDecodeH264PictureInfoFlags has size % instead of 4", size_of(StdVideoDecodeH264PictureInfoFlags)); } { info := type_info(StdVideoDecodeH264PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH264PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH264PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "seq_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoDecodeH264PictureInfo.seq_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264PictureInfo.seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pic_parameter_set_id"; assert(it.offset_in_bytes == 5, "StdVideoDecodeH264PictureInfo.pic_parameter_set_id has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264PictureInfo.pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 6, "StdVideoDecodeH264PictureInfo.reserved1 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264PictureInfo.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 7, "StdVideoDecodeH264PictureInfo.reserved2 has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264PictureInfo.reserved2 has unexpected size % instead of 1", it.type.runtime_size); case "frame_num"; assert(it.offset_in_bytes == 8, "StdVideoDecodeH264PictureInfo.frame_num has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH264PictureInfo.frame_num has unexpected size % instead of 2", it.type.runtime_size); case "idr_pic_id"; assert(it.offset_in_bytes == 10, "StdVideoDecodeH264PictureInfo.idr_pic_id has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH264PictureInfo.idr_pic_id has unexpected size % instead of 2", it.type.runtime_size); case "PicOrderCnt"; assert(it.offset_in_bytes == 12, "StdVideoDecodeH264PictureInfo.PicOrderCnt has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeH264PictureInfo.PicOrderCnt has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH264PictureInfo) == 20, "StdVideoDecodeH264PictureInfo has size % instead of 20", size_of(StdVideoDecodeH264PictureInfo)); } { info := type_info(StdVideoDecodeH264ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH264ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH264ReferenceInfoFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH264ReferenceInfoFlags) == 4, "StdVideoDecodeH264ReferenceInfoFlags has size % instead of 4", size_of(StdVideoDecodeH264ReferenceInfoFlags)); } { info := type_info(StdVideoDecodeH264ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH264ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH264ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "FrameNum"; assert(it.offset_in_bytes == 4, "StdVideoDecodeH264ReferenceInfo.FrameNum has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH264ReferenceInfo.FrameNum has unexpected size % instead of 2", it.type.runtime_size); case "reserved"; assert(it.offset_in_bytes == 6, "StdVideoDecodeH264ReferenceInfo.reserved has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH264ReferenceInfo.reserved has unexpected size % instead of 2", it.type.runtime_size); case "PicOrderCnt"; assert(it.offset_in_bytes == 8, "StdVideoDecodeH264ReferenceInfo.PicOrderCnt has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeH264ReferenceInfo.PicOrderCnt has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH264ReferenceInfo) == 16, "StdVideoDecodeH264ReferenceInfo has size % instead of 16", size_of(StdVideoDecodeH264ReferenceInfo)); } { info := type_info(VkVideoDecodeH264ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfileIdc"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264ProfileInfoKHR.stdProfileIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264ProfileInfoKHR.stdProfileIdc has unexpected size % instead of 4", it.type.runtime_size); case "pictureLayout"; assert(it.offset_in_bytes == 20, "VkVideoDecodeH264ProfileInfoKHR.pictureLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264ProfileInfoKHR.pictureLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264ProfileInfoKHR) == 24, "VkVideoDecodeH264ProfileInfoKHR has size % instead of 24", size_of(VkVideoDecodeH264ProfileInfoKHR)); } { info := type_info(VkVideoDecodeH264CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264CapabilitiesKHR.maxLevelIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264CapabilitiesKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); case "fieldOffsetGranularity"; assert(it.offset_in_bytes == 20, "VkVideoDecodeH264CapabilitiesKHR.fieldOffsetGranularity has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264CapabilitiesKHR.fieldOffsetGranularity has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264CapabilitiesKHR) == 32, "VkVideoDecodeH264CapabilitiesKHR has size % instead of 32", size_of(VkVideoDecodeH264CapabilitiesKHR)); } { info := type_info(VkVideoDecodeH264SessionParametersAddInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264SessionParametersAddInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersAddInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264SessionParametersAddInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264SessionParametersAddInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdSPSCount"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264SessionParametersAddInfoKHR.stdSPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersAddInfoKHR.stdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdSPSs"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH264SessionParametersAddInfoKHR.pStdSPSs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264SessionParametersAddInfoKHR.pStdSPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdPPSCount"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH264SessionParametersAddInfoKHR.stdPPSCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersAddInfoKHR.stdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdPPSs"; assert(it.offset_in_bytes == 40, "VkVideoDecodeH264SessionParametersAddInfoKHR.pStdPPSs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264SessionParametersAddInfoKHR.pStdPPSs has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264SessionParametersAddInfoKHR) == 48, "VkVideoDecodeH264SessionParametersAddInfoKHR has size % instead of 48", size_of(VkVideoDecodeH264SessionParametersAddInfoKHR)); } { info := type_info(VkVideoDecodeH264SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxStdSPSCount"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdPPSCount"; assert(it.offset_in_bytes == 20, "VkVideoDecodeH264SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pParametersAddInfo"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH264SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264SessionParametersCreateInfoKHR) == 32, "VkVideoDecodeH264SessionParametersCreateInfoKHR has size % instead of 32", size_of(VkVideoDecodeH264SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoDecodeH264PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); case "sliceCount"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH264PictureInfoKHR.sliceCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264PictureInfoKHR.sliceCount has unexpected size % instead of 4", it.type.runtime_size); case "pSliceOffsets"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH264PictureInfoKHR.pSliceOffsets has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264PictureInfoKHR.pSliceOffsets has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264PictureInfoKHR) == 40, "VkVideoDecodeH264PictureInfoKHR has size % instead of 40", size_of(VkVideoDecodeH264PictureInfoKHR)); } { info := type_info(VkVideoDecodeH264DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264DpbSlotInfoKHR) == 24, "VkVideoDecodeH264DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoDecodeH264DpbSlotInfoKHR)); } { info := type_info(VkImportMemoryFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImportMemoryFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportMemoryFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImportMemoryFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportMemoryFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 16, "VkImportMemoryFdInfoKHR.handleType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportMemoryFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); case "fd"; assert(it.offset_in_bytes == 20, "VkImportMemoryFdInfoKHR.fd has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportMemoryFdInfoKHR.fd has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImportMemoryFdInfoKHR) == 24, "VkImportMemoryFdInfoKHR has size % instead of 24", size_of(VkImportMemoryFdInfoKHR)); } { info := type_info(VkMemoryFdPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryFdPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryFdPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryFdPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryFdPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryTypeBits"; assert(it.offset_in_bytes == 16, "VkMemoryFdPropertiesKHR.memoryTypeBits has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryFdPropertiesKHR.memoryTypeBits has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryFdPropertiesKHR) == 24, "VkMemoryFdPropertiesKHR has size % instead of 24", size_of(VkMemoryFdPropertiesKHR)); } { info := type_info(VkMemoryGetFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryGetFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryGetFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryGetFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryGetFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkMemoryGetFdInfoKHR.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryGetFdInfoKHR.memory has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 24, "VkMemoryGetFdInfoKHR.handleType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryGetFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryGetFdInfoKHR) == 32, "VkMemoryGetFdInfoKHR has size % instead of 32", size_of(VkMemoryGetFdInfoKHR)); } { info := type_info(VkImportSemaphoreFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImportSemaphoreFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportSemaphoreFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImportSemaphoreFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportSemaphoreFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "semaphore"; assert(it.offset_in_bytes == 16, "VkImportSemaphoreFdInfoKHR.semaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportSemaphoreFdInfoKHR.semaphore has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 24, "VkImportSemaphoreFdInfoKHR.flags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportSemaphoreFdInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 28, "VkImportSemaphoreFdInfoKHR.handleType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportSemaphoreFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); case "fd"; assert(it.offset_in_bytes == 32, "VkImportSemaphoreFdInfoKHR.fd has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportSemaphoreFdInfoKHR.fd has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImportSemaphoreFdInfoKHR) == 40, "VkImportSemaphoreFdInfoKHR has size % instead of 40", size_of(VkImportSemaphoreFdInfoKHR)); } { info := type_info(VkSemaphoreGetFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSemaphoreGetFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreGetFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSemaphoreGetFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreGetFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "semaphore"; assert(it.offset_in_bytes == 16, "VkSemaphoreGetFdInfoKHR.semaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSemaphoreGetFdInfoKHR.semaphore has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 24, "VkSemaphoreGetFdInfoKHR.handleType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSemaphoreGetFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSemaphoreGetFdInfoKHR) == 32, "VkSemaphoreGetFdInfoKHR has size % instead of 32", size_of(VkSemaphoreGetFdInfoKHR)); } { info := type_info(VkRectLayerKHR); for info.members { if it.name == { case "offset"; assert(it.offset_in_bytes == 0, "VkRectLayerKHR.offset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRectLayerKHR.offset has unexpected size % instead of 8", it.type.runtime_size); case "extent"; assert(it.offset_in_bytes == 8, "VkRectLayerKHR.extent has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRectLayerKHR.extent has unexpected size % instead of 8", it.type.runtime_size); case "layer"; assert(it.offset_in_bytes == 16, "VkRectLayerKHR.layer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRectLayerKHR.layer has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRectLayerKHR) == 20, "VkRectLayerKHR has size % instead of 20", size_of(VkRectLayerKHR)); } { info := type_info(VkPresentRegionKHR); for info.members { if it.name == { case "rectangleCount"; assert(it.offset_in_bytes == 0, "VkPresentRegionKHR.rectangleCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentRegionKHR.rectangleCount has unexpected size % instead of 4", it.type.runtime_size); case "pRectangles"; assert(it.offset_in_bytes == 8, "VkPresentRegionKHR.pRectangles has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentRegionKHR.pRectangles has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentRegionKHR) == 16, "VkPresentRegionKHR has size % instead of 16", size_of(VkPresentRegionKHR)); } { info := type_info(VkPresentRegionsKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPresentRegionsKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentRegionsKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPresentRegionsKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentRegionsKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkPresentRegionsKHR.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentRegionsKHR.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 24, "VkPresentRegionsKHR.pRegions has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentRegionsKHR.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentRegionsKHR) == 32, "VkPresentRegionsKHR has size % instead of 32", size_of(VkPresentRegionsKHR)); } { info := type_info(VkSharedPresentSurfaceCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSharedPresentSurfaceCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSharedPresentSurfaceCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSharedPresentSurfaceCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSharedPresentSurfaceCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sharedPresentSupportedUsageFlags"; assert(it.offset_in_bytes == 16, "VkSharedPresentSurfaceCapabilitiesKHR.sharedPresentSupportedUsageFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSharedPresentSurfaceCapabilitiesKHR.sharedPresentSupportedUsageFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSharedPresentSurfaceCapabilitiesKHR) == 24, "VkSharedPresentSurfaceCapabilitiesKHR has size % instead of 24", size_of(VkSharedPresentSurfaceCapabilitiesKHR)); } { info := type_info(VkImportFenceFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImportFenceFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportFenceFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImportFenceFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportFenceFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fence"; assert(it.offset_in_bytes == 16, "VkImportFenceFdInfoKHR.fence has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportFenceFdInfoKHR.fence has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 24, "VkImportFenceFdInfoKHR.flags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportFenceFdInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 28, "VkImportFenceFdInfoKHR.handleType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportFenceFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); case "fd"; assert(it.offset_in_bytes == 32, "VkImportFenceFdInfoKHR.fd has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportFenceFdInfoKHR.fd has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImportFenceFdInfoKHR) == 40, "VkImportFenceFdInfoKHR has size % instead of 40", size_of(VkImportFenceFdInfoKHR)); } { info := type_info(VkFenceGetFdInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFenceGetFdInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFenceGetFdInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFenceGetFdInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFenceGetFdInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fence"; assert(it.offset_in_bytes == 16, "VkFenceGetFdInfoKHR.fence has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFenceGetFdInfoKHR.fence has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 24, "VkFenceGetFdInfoKHR.handleType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFenceGetFdInfoKHR.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFenceGetFdInfoKHR) == 32, "VkFenceGetFdInfoKHR has size % instead of 32", size_of(VkFenceGetFdInfoKHR)); } { info := type_info(VkPhysicalDevicePerformanceQueryFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePerformanceQueryFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerformanceQueryFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePerformanceQueryFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePerformanceQueryFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "performanceCounterQueryPools"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePerformanceQueryFeaturesKHR.performanceCounterQueryPools has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerformanceQueryFeaturesKHR.performanceCounterQueryPools has unexpected size % instead of 4", it.type.runtime_size); case "performanceCounterMultipleQueryPools"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePerformanceQueryFeaturesKHR.performanceCounterMultipleQueryPools has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerformanceQueryFeaturesKHR.performanceCounterMultipleQueryPools has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePerformanceQueryFeaturesKHR) == 24, "VkPhysicalDevicePerformanceQueryFeaturesKHR has size % instead of 24", size_of(VkPhysicalDevicePerformanceQueryFeaturesKHR)); } { info := type_info(VkPhysicalDevicePerformanceQueryPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePerformanceQueryPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerformanceQueryPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePerformanceQueryPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePerformanceQueryPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "allowCommandBufferQueryCopies"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePerformanceQueryPropertiesKHR.allowCommandBufferQueryCopies has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerformanceQueryPropertiesKHR.allowCommandBufferQueryCopies has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePerformanceQueryPropertiesKHR) == 24, "VkPhysicalDevicePerformanceQueryPropertiesKHR has size % instead of 24", size_of(VkPhysicalDevicePerformanceQueryPropertiesKHR)); } { info := type_info(VkPerformanceCounterKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceCounterKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceCounterKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "unit"; assert(it.offset_in_bytes == 16, "VkPerformanceCounterKHR.unit has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterKHR.unit has unexpected size % instead of 4", it.type.runtime_size); case "scope"; assert(it.offset_in_bytes == 20, "VkPerformanceCounterKHR.scope has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterKHR.scope has unexpected size % instead of 4", it.type.runtime_size); case "storage"; assert(it.offset_in_bytes == 24, "VkPerformanceCounterKHR.storage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterKHR.storage has unexpected size % instead of 4", it.type.runtime_size); case "uuid"; assert(it.offset_in_bytes == 28, "VkPerformanceCounterKHR.uuid has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPerformanceCounterKHR.uuid has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkPerformanceCounterKHR) == 48, "VkPerformanceCounterKHR has size % instead of 48", size_of(VkPerformanceCounterKHR)); } { info := type_info(VkPerformanceCounterDescriptionKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterDescriptionKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterDescriptionKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceCounterDescriptionKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceCounterDescriptionKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPerformanceCounterDescriptionKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterDescriptionKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "name"; assert(it.offset_in_bytes == 20, "VkPerformanceCounterDescriptionKHR.name has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPerformanceCounterDescriptionKHR.name has unexpected size % instead of 256", it.type.runtime_size); case "category"; assert(it.offset_in_bytes == 276, "VkPerformanceCounterDescriptionKHR.category has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPerformanceCounterDescriptionKHR.category has unexpected size % instead of 256", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 532, "VkPerformanceCounterDescriptionKHR.description has unexpected offset % instead of 532", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPerformanceCounterDescriptionKHR.description has unexpected size % instead of 256", it.type.runtime_size); } } assert(size_of(VkPerformanceCounterDescriptionKHR) == 792, "VkPerformanceCounterDescriptionKHR has size % instead of 792", size_of(VkPerformanceCounterDescriptionKHR)); } { info := type_info(VkQueryPoolPerformanceCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueryPoolPerformanceCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolPerformanceCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueryPoolPerformanceCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryPoolPerformanceCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queueFamilyIndex"; assert(it.offset_in_bytes == 16, "VkQueryPoolPerformanceCreateInfoKHR.queueFamilyIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolPerformanceCreateInfoKHR.queueFamilyIndex has unexpected size % instead of 4", it.type.runtime_size); case "counterIndexCount"; assert(it.offset_in_bytes == 20, "VkQueryPoolPerformanceCreateInfoKHR.counterIndexCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolPerformanceCreateInfoKHR.counterIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pCounterIndices"; assert(it.offset_in_bytes == 24, "VkQueryPoolPerformanceCreateInfoKHR.pCounterIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryPoolPerformanceCreateInfoKHR.pCounterIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkQueryPoolPerformanceCreateInfoKHR) == 32, "VkQueryPoolPerformanceCreateInfoKHR has size % instead of 32", size_of(VkQueryPoolPerformanceCreateInfoKHR)); } { info := type_info(VkPerformanceCounterResultKHR); for info.members { if it.name == { case "int32"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR.int32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterResultKHR.int32 has unexpected size % instead of 4", it.type.runtime_size); case "int64"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR.int64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceCounterResultKHR.int64 has unexpected size % instead of 8", it.type.runtime_size); case "uint32"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR.uint32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterResultKHR.uint32 has unexpected size % instead of 4", it.type.runtime_size); case "uint64"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR.uint64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceCounterResultKHR.uint64 has unexpected size % instead of 8", it.type.runtime_size); case "_float32"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR._float32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceCounterResultKHR._float32 has unexpected size % instead of 4", it.type.runtime_size); case "_float64"; assert(it.offset_in_bytes == 0, "VkPerformanceCounterResultKHR._float64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceCounterResultKHR._float64 has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerformanceCounterResultKHR) == 8, "VkPerformanceCounterResultKHR has size % instead of 8", size_of(VkPerformanceCounterResultKHR)); } { info := type_info(VkAcquireProfilingLockInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAcquireProfilingLockInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAcquireProfilingLockInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAcquireProfilingLockInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireProfilingLockInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkAcquireProfilingLockInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAcquireProfilingLockInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "timeout"; assert(it.offset_in_bytes == 24, "VkAcquireProfilingLockInfoKHR.timeout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAcquireProfilingLockInfoKHR.timeout has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAcquireProfilingLockInfoKHR) == 32, "VkAcquireProfilingLockInfoKHR has size % instead of 32", size_of(VkAcquireProfilingLockInfoKHR)); } { info := type_info(VkPerformanceQuerySubmitInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceQuerySubmitInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceQuerySubmitInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceQuerySubmitInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceQuerySubmitInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "counterPassIndex"; assert(it.offset_in_bytes == 16, "VkPerformanceQuerySubmitInfoKHR.counterPassIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceQuerySubmitInfoKHR.counterPassIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPerformanceQuerySubmitInfoKHR) == 24, "VkPerformanceQuerySubmitInfoKHR has size % instead of 24", size_of(VkPerformanceQuerySubmitInfoKHR)); } { info := type_info(VkPhysicalDeviceSurfaceInfo2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSurfaceInfo2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSurfaceInfo2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSurfaceInfo2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSurfaceInfo2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "surface"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSurfaceInfo2KHR.surface has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSurfaceInfo2KHR.surface has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSurfaceInfo2KHR) == 24, "VkPhysicalDeviceSurfaceInfo2KHR has size % instead of 24", size_of(VkPhysicalDeviceSurfaceInfo2KHR)); } { info := type_info(VkSurfaceCapabilities2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfaceCapabilities2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfaceCapabilities2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilities2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "surfaceCapabilities"; assert(it.offset_in_bytes == 16, "VkSurfaceCapabilities2KHR.surfaceCapabilities has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 52, "VkSurfaceCapabilities2KHR.surfaceCapabilities has unexpected size % instead of 52", it.type.runtime_size); } } assert(size_of(VkSurfaceCapabilities2KHR) == 72, "VkSurfaceCapabilities2KHR has size % instead of 72", size_of(VkSurfaceCapabilities2KHR)); } { info := type_info(VkSurfaceFormat2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfaceFormat2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceFormat2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfaceFormat2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceFormat2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "surfaceFormat"; assert(it.offset_in_bytes == 16, "VkSurfaceFormat2KHR.surfaceFormat has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceFormat2KHR.surfaceFormat has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSurfaceFormat2KHR) == 24, "VkSurfaceFormat2KHR has size % instead of 24", size_of(VkSurfaceFormat2KHR)); } { info := type_info(VkDisplayProperties2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayProperties2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayProperties2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayProperties2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayProperties2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "displayProperties"; assert(it.offset_in_bytes == 16, "VkDisplayProperties2KHR.displayProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkDisplayProperties2KHR.displayProperties has unexpected size % instead of 48", it.type.runtime_size); } } assert(size_of(VkDisplayProperties2KHR) == 64, "VkDisplayProperties2KHR has size % instead of 64", size_of(VkDisplayProperties2KHR)); } { info := type_info(VkDisplayPlaneProperties2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayPlaneProperties2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlaneProperties2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayPlaneProperties2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneProperties2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "displayPlaneProperties"; assert(it.offset_in_bytes == 16, "VkDisplayPlaneProperties2KHR.displayPlaneProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDisplayPlaneProperties2KHR.displayPlaneProperties has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkDisplayPlaneProperties2KHR) == 32, "VkDisplayPlaneProperties2KHR has size % instead of 32", size_of(VkDisplayPlaneProperties2KHR)); } { info := type_info(VkDisplayModeProperties2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayModeProperties2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeProperties2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayModeProperties2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayModeProperties2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "displayModeProperties"; assert(it.offset_in_bytes == 16, "VkDisplayModeProperties2KHR.displayModeProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkDisplayModeProperties2KHR.displayModeProperties has unexpected size % instead of 24", it.type.runtime_size); } } assert(size_of(VkDisplayModeProperties2KHR) == 40, "VkDisplayModeProperties2KHR has size % instead of 40", size_of(VkDisplayModeProperties2KHR)); } { info := type_info(VkDisplayPlaneInfo2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayPlaneInfo2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlaneInfo2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayPlaneInfo2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneInfo2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 16, "VkDisplayPlaneInfo2KHR.mode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneInfo2KHR.mode has unexpected size % instead of 8", it.type.runtime_size); case "planeIndex"; assert(it.offset_in_bytes == 24, "VkDisplayPlaneInfo2KHR.planeIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlaneInfo2KHR.planeIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayPlaneInfo2KHR) == 32, "VkDisplayPlaneInfo2KHR has size % instead of 32", size_of(VkDisplayPlaneInfo2KHR)); } { info := type_info(VkDisplayPlaneCapabilities2KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayPlaneCapabilities2KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPlaneCapabilities2KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayPlaneCapabilities2KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPlaneCapabilities2KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "capabilities"; assert(it.offset_in_bytes == 16, "VkDisplayPlaneCapabilities2KHR.capabilities has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 68, "VkDisplayPlaneCapabilities2KHR.capabilities has unexpected size % instead of 68", it.type.runtime_size); } } assert(size_of(VkDisplayPlaneCapabilities2KHR) == 88, "VkDisplayPlaneCapabilities2KHR has size % instead of 88", size_of(VkDisplayPlaneCapabilities2KHR)); } { info := type_info(VkPhysicalDeviceShaderBfloat16FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderBFloat16Type"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16Type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16Type has unexpected size % instead of 4", it.type.runtime_size); case "shaderBFloat16DotProduct"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16DotProduct has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16DotProduct has unexpected size % instead of 4", it.type.runtime_size); case "shaderBFloat16CooperativeMatrix"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16CooperativeMatrix has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderBfloat16FeaturesKHR.shaderBFloat16CooperativeMatrix has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderBfloat16FeaturesKHR) == 32, "VkPhysicalDeviceShaderBfloat16FeaturesKHR has size % instead of 32", size_of(VkPhysicalDeviceShaderBfloat16FeaturesKHR)); } { info := type_info(VkPhysicalDeviceShaderClockFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderClockFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderClockFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderClockFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderClockFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSubgroupClock"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderClockFeaturesKHR.shaderSubgroupClock has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderClockFeaturesKHR.shaderSubgroupClock has unexpected size % instead of 4", it.type.runtime_size); case "shaderDeviceClock"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderClockFeaturesKHR.shaderDeviceClock has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderClockFeaturesKHR.shaderDeviceClock has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderClockFeaturesKHR) == 24, "VkPhysicalDeviceShaderClockFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceShaderClockFeaturesKHR)); } { info := type_info(StdVideoDecodeH265PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH265PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265PictureInfoFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH265PictureInfoFlags) == 4, "StdVideoDecodeH265PictureInfoFlags has size % instead of 4", size_of(StdVideoDecodeH265PictureInfoFlags)); } { info := type_info(StdVideoDecodeH265PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH265PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH265PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "sps_video_parameter_set_id"; assert(it.offset_in_bytes == 4, "StdVideoDecodeH265PictureInfo.sps_video_parameter_set_id has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265PictureInfo.sps_video_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pps_seq_parameter_set_id"; assert(it.offset_in_bytes == 5, "StdVideoDecodeH265PictureInfo.pps_seq_parameter_set_id has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265PictureInfo.pps_seq_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "pps_pic_parameter_set_id"; assert(it.offset_in_bytes == 6, "StdVideoDecodeH265PictureInfo.pps_pic_parameter_set_id has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265PictureInfo.pps_pic_parameter_set_id has unexpected size % instead of 1", it.type.runtime_size); case "NumDeltaPocsOfRefRpsIdx"; assert(it.offset_in_bytes == 7, "StdVideoDecodeH265PictureInfo.NumDeltaPocsOfRefRpsIdx has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265PictureInfo.NumDeltaPocsOfRefRpsIdx has unexpected size % instead of 1", it.type.runtime_size); case "PicOrderCntVal"; assert(it.offset_in_bytes == 8, "StdVideoDecodeH265PictureInfo.PicOrderCntVal has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH265PictureInfo.PicOrderCntVal has unexpected size % instead of 4", it.type.runtime_size); case "NumBitsForSTRefPicSetInSlice"; assert(it.offset_in_bytes == 12, "StdVideoDecodeH265PictureInfo.NumBitsForSTRefPicSetInSlice has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH265PictureInfo.NumBitsForSTRefPicSetInSlice has unexpected size % instead of 2", it.type.runtime_size); case "reserved"; assert(it.offset_in_bytes == 14, "StdVideoDecodeH265PictureInfo.reserved has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeH265PictureInfo.reserved has unexpected size % instead of 2", it.type.runtime_size); case "RefPicSetStCurrBefore"; assert(it.offset_in_bytes == 16, "StdVideoDecodeH265PictureInfo.RefPicSetStCurrBefore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeH265PictureInfo.RefPicSetStCurrBefore has unexpected size % instead of 8", it.type.runtime_size); case "RefPicSetStCurrAfter"; assert(it.offset_in_bytes == 24, "StdVideoDecodeH265PictureInfo.RefPicSetStCurrAfter has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeH265PictureInfo.RefPicSetStCurrAfter has unexpected size % instead of 8", it.type.runtime_size); case "RefPicSetLtCurr"; assert(it.offset_in_bytes == 32, "StdVideoDecodeH265PictureInfo.RefPicSetLtCurr has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeH265PictureInfo.RefPicSetLtCurr has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH265PictureInfo) == 40, "StdVideoDecodeH265PictureInfo has size % instead of 40", size_of(StdVideoDecodeH265PictureInfo)); } { info := type_info(StdVideoDecodeH265ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH265ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeH265ReferenceInfoFlags.__bitfield has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH265ReferenceInfoFlags) == 4, "StdVideoDecodeH265ReferenceInfoFlags has size % instead of 4", size_of(StdVideoDecodeH265ReferenceInfoFlags)); } { info := type_info(StdVideoDecodeH265ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeH265ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH265ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "PicOrderCntVal"; assert(it.offset_in_bytes == 4, "StdVideoDecodeH265ReferenceInfo.PicOrderCntVal has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeH265ReferenceInfo.PicOrderCntVal has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoDecodeH265ReferenceInfo) == 8, "StdVideoDecodeH265ReferenceInfo has size % instead of 8", size_of(StdVideoDecodeH265ReferenceInfo)); } { info := type_info(VkVideoDecodeH265ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfileIdc"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265ProfileInfoKHR.stdProfileIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265ProfileInfoKHR.stdProfileIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265ProfileInfoKHR) == 24, "VkVideoDecodeH265ProfileInfoKHR has size % instead of 24", size_of(VkVideoDecodeH265ProfileInfoKHR)); } { info := type_info(VkVideoDecodeH265CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxLevelIdc"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265CapabilitiesKHR.maxLevelIdc has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265CapabilitiesKHR.maxLevelIdc has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265CapabilitiesKHR) == 24, "VkVideoDecodeH265CapabilitiesKHR has size % instead of 24", size_of(VkVideoDecodeH265CapabilitiesKHR)); } { info := type_info(VkVideoDecodeH265SessionParametersAddInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265SessionParametersAddInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersAddInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265SessionParametersAddInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersAddInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdVPSCount"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdVPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdVPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdVPSs"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdVPSs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdVPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdSPSCount"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdSPSCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdSPSs"; assert(it.offset_in_bytes == 40, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdSPSs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdSPSs has unexpected size % instead of 8", it.type.runtime_size); case "stdPPSCount"; assert(it.offset_in_bytes == 48, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdPPSCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersAddInfoKHR.stdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdPPSs"; assert(it.offset_in_bytes == 56, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdPPSs has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersAddInfoKHR.pStdPPSs has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265SessionParametersAddInfoKHR) == 64, "VkVideoDecodeH265SessionParametersAddInfoKHR has size % instead of 64", size_of(VkVideoDecodeH265SessionParametersAddInfoKHR)); } { info := type_info(VkVideoDecodeH265SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxStdVPSCount"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdVPSCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdVPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdSPSCount"; assert(it.offset_in_bytes == 20, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdSPSCount has unexpected size % instead of 4", it.type.runtime_size); case "maxStdPPSCount"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265SessionParametersCreateInfoKHR.maxStdPPSCount has unexpected size % instead of 4", it.type.runtime_size); case "pParametersAddInfo"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH265SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265SessionParametersCreateInfoKHR.pParametersAddInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265SessionParametersCreateInfoKHR) == 40, "VkVideoDecodeH265SessionParametersCreateInfoKHR has size % instead of 40", size_of(VkVideoDecodeH265SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoDecodeH265PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); case "sliceSegmentCount"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH265PictureInfoKHR.sliceSegmentCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265PictureInfoKHR.sliceSegmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pSliceSegmentOffsets"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH265PictureInfoKHR.pSliceSegmentOffsets has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265PictureInfoKHR.pSliceSegmentOffsets has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265PictureInfoKHR) == 40, "VkVideoDecodeH265PictureInfoKHR has size % instead of 40", size_of(VkVideoDecodeH265PictureInfoKHR)); } { info := type_info(VkVideoDecodeH265DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265DpbSlotInfoKHR) == 24, "VkVideoDecodeH265DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoDecodeH265DpbSlotInfoKHR)); } { info := type_info(VkFragmentShadingRateAttachmentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFragmentShadingRateAttachmentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFragmentShadingRateAttachmentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFragmentShadingRateAttachmentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFragmentShadingRateAttachmentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pFragmentShadingRateAttachment"; assert(it.offset_in_bytes == 16, "VkFragmentShadingRateAttachmentInfoKHR.pFragmentShadingRateAttachment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFragmentShadingRateAttachmentInfoKHR.pFragmentShadingRateAttachment has unexpected size % instead of 8", it.type.runtime_size); case "shadingRateAttachmentTexelSize"; assert(it.offset_in_bytes == 24, "VkFragmentShadingRateAttachmentInfoKHR.shadingRateAttachmentTexelSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFragmentShadingRateAttachmentInfoKHR.shadingRateAttachmentTexelSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkFragmentShadingRateAttachmentInfoKHR) == 32, "VkFragmentShadingRateAttachmentInfoKHR has size % instead of 32", size_of(VkFragmentShadingRateAttachmentInfoKHR)); } { info := type_info(VkPipelineFragmentShadingRateStateCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineFragmentShadingRateStateCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineFragmentShadingRateStateCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineFragmentShadingRateStateCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineFragmentShadingRateStateCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentSize"; assert(it.offset_in_bytes == 16, "VkPipelineFragmentShadingRateStateCreateInfoKHR.fragmentSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineFragmentShadingRateStateCreateInfoKHR.fragmentSize has unexpected size % instead of 8", it.type.runtime_size); case "combinerOps"; assert(it.offset_in_bytes == 24, "VkPipelineFragmentShadingRateStateCreateInfoKHR.combinerOps has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineFragmentShadingRateStateCreateInfoKHR.combinerOps has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineFragmentShadingRateStateCreateInfoKHR) == 32, "VkPipelineFragmentShadingRateStateCreateInfoKHR has size % instead of 32", size_of(VkPipelineFragmentShadingRateStateCreateInfoKHR)); } { info := type_info(VkPhysicalDeviceFragmentShadingRateFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineFragmentShadingRate"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.pipelineFragmentShadingRate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.pipelineFragmentShadingRate has unexpected size % instead of 4", it.type.runtime_size); case "primitiveFragmentShadingRate"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.primitiveFragmentShadingRate has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.primitiveFragmentShadingRate has unexpected size % instead of 4", it.type.runtime_size); case "attachmentFragmentShadingRate"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.attachmentFragmentShadingRate has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR.attachmentFragmentShadingRate has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShadingRateFeaturesKHR) == 32, "VkPhysicalDeviceFragmentShadingRateFeaturesKHR has size % instead of 32", size_of(VkPhysicalDeviceFragmentShadingRateFeaturesKHR)); } { info := type_info(VkPhysicalDeviceFragmentShadingRatePropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minFragmentShadingRateAttachmentTexelSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.minFragmentShadingRateAttachmentTexelSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.minFragmentShadingRateAttachmentTexelSize has unexpected size % instead of 8", it.type.runtime_size); case "maxFragmentShadingRateAttachmentTexelSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateAttachmentTexelSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateAttachmentTexelSize has unexpected size % instead of 8", it.type.runtime_size); case "maxFragmentShadingRateAttachmentTexelSizeAspectRatio"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateAttachmentTexelSizeAspectRatio has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateAttachmentTexelSizeAspectRatio has unexpected size % instead of 4", it.type.runtime_size); case "primitiveFragmentShadingRateWithMultipleViewports"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.primitiveFragmentShadingRateWithMultipleViewports has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.primitiveFragmentShadingRateWithMultipleViewports has unexpected size % instead of 4", it.type.runtime_size); case "layeredShadingRateAttachments"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.layeredShadingRateAttachments has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.layeredShadingRateAttachments has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateNonTrivialCombinerOps"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateNonTrivialCombinerOps has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateNonTrivialCombinerOps has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentSize"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentSize has unexpected size % instead of 8", it.type.runtime_size); case "maxFragmentSizeAspectRatio"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentSizeAspectRatio has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentSizeAspectRatio has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentShadingRateCoverageSamples"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateCoverageSamples has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateCoverageSamples has unexpected size % instead of 4", it.type.runtime_size); case "maxFragmentShadingRateRasterizationSamples"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateRasterizationSamples has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.maxFragmentShadingRateRasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithShaderDepthStencilWrites"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithShaderDepthStencilWrites has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithShaderDepthStencilWrites has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithSampleMask"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithSampleMask has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithSampleMask has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithShaderSampleMask"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithShaderSampleMask has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithShaderSampleMask has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithConservativeRasterization"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithConservativeRasterization has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithConservativeRasterization has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithFragmentShaderInterlock"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithFragmentShaderInterlock has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithFragmentShaderInterlock has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateWithCustomSampleLocations"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithCustomSampleLocations has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateWithCustomSampleLocations has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShadingRateStrictMultiplyCombiner"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateStrictMultiplyCombiner has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR.fragmentShadingRateStrictMultiplyCombiner has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShadingRatePropertiesKHR) == 96, "VkPhysicalDeviceFragmentShadingRatePropertiesKHR has size % instead of 96", size_of(VkPhysicalDeviceFragmentShadingRatePropertiesKHR)); } { info := type_info(VkPhysicalDeviceFragmentShadingRateKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShadingRateKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShadingRateKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRateKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampleCounts"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShadingRateKHR.sampleCounts has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateKHR.sampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "fragmentSize"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentShadingRateKHR.fragmentSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRateKHR.fragmentSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShadingRateKHR) == 32, "VkPhysicalDeviceFragmentShadingRateKHR has size % instead of 32", size_of(VkPhysicalDeviceFragmentShadingRateKHR)); } { info := type_info(VkRenderingFragmentShadingRateAttachmentInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingFragmentShadingRateAttachmentInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingFragmentShadingRateAttachmentInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingFragmentShadingRateAttachmentInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingFragmentShadingRateAttachmentInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 16, "VkRenderingFragmentShadingRateAttachmentInfoKHR.imageView has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingFragmentShadingRateAttachmentInfoKHR.imageView has unexpected size % instead of 8", it.type.runtime_size); case "imageLayout"; assert(it.offset_in_bytes == 24, "VkRenderingFragmentShadingRateAttachmentInfoKHR.imageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingFragmentShadingRateAttachmentInfoKHR.imageLayout has unexpected size % instead of 4", it.type.runtime_size); case "shadingRateAttachmentTexelSize"; assert(it.offset_in_bytes == 28, "VkRenderingFragmentShadingRateAttachmentInfoKHR.shadingRateAttachmentTexelSize has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingFragmentShadingRateAttachmentInfoKHR.shadingRateAttachmentTexelSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderingFragmentShadingRateAttachmentInfoKHR) == 40, "VkRenderingFragmentShadingRateAttachmentInfoKHR has size % instead of 40", size_of(VkRenderingFragmentShadingRateAttachmentInfoKHR)); } { info := type_info(VkPhysicalDeviceShaderQuadControlFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderQuadControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.shaderQuadControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderQuadControlFeaturesKHR.shaderQuadControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderQuadControlFeaturesKHR) == 24, "VkPhysicalDeviceShaderQuadControlFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceShaderQuadControlFeaturesKHR)); } { info := type_info(VkSurfaceProtectedCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfaceProtectedCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceProtectedCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfaceProtectedCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceProtectedCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportsProtected"; assert(it.offset_in_bytes == 16, "VkSurfaceProtectedCapabilitiesKHR.supportsProtected has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceProtectedCapabilitiesKHR.supportsProtected has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfaceProtectedCapabilitiesKHR) == 24, "VkSurfaceProtectedCapabilitiesKHR has size % instead of 24", size_of(VkSurfaceProtectedCapabilitiesKHR)); } { info := type_info(VkPhysicalDevicePresentWaitFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePresentWaitFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentWaitFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePresentWaitFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePresentWaitFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentWait"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePresentWaitFeaturesKHR.presentWait has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentWaitFeaturesKHR.presentWait has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePresentWaitFeaturesKHR) == 24, "VkPhysicalDevicePresentWaitFeaturesKHR has size % instead of 24", size_of(VkPhysicalDevicePresentWaitFeaturesKHR)); } { info := type_info(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineExecutableInfo"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.pipelineExecutableInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR.pipelineExecutableInfo has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR) == 24, "VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR has size % instead of 24", size_of(VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR)); } { info := type_info(VkPipelineInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 16, "VkPipelineInfoKHR.pipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineInfoKHR.pipeline has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineInfoKHR) == 24, "VkPipelineInfoKHR has size % instead of 24", size_of(VkPipelineInfoKHR)); } { info := type_info(VkPipelineExecutablePropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineExecutablePropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutablePropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineExecutablePropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutablePropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stages"; assert(it.offset_in_bytes == 16, "VkPipelineExecutablePropertiesKHR.stages has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutablePropertiesKHR.stages has unexpected size % instead of 4", it.type.runtime_size); case "name"; assert(it.offset_in_bytes == 20, "VkPipelineExecutablePropertiesKHR.name has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutablePropertiesKHR.name has unexpected size % instead of 256", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 276, "VkPipelineExecutablePropertiesKHR.description has unexpected offset % instead of 276", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutablePropertiesKHR.description has unexpected size % instead of 256", it.type.runtime_size); case "subgroupSize"; assert(it.offset_in_bytes == 532, "VkPipelineExecutablePropertiesKHR.subgroupSize has unexpected offset % instead of 532", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutablePropertiesKHR.subgroupSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineExecutablePropertiesKHR) == 536, "VkPipelineExecutablePropertiesKHR has size % instead of 536", size_of(VkPipelineExecutablePropertiesKHR)); } { info := type_info(VkPipelineExecutableInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineExecutableInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 16, "VkPipelineExecutableInfoKHR.pipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableInfoKHR.pipeline has unexpected size % instead of 8", it.type.runtime_size); case "executableIndex"; assert(it.offset_in_bytes == 24, "VkPipelineExecutableInfoKHR.executableIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableInfoKHR.executableIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineExecutableInfoKHR) == 32, "VkPipelineExecutableInfoKHR has size % instead of 32", size_of(VkPipelineExecutableInfoKHR)); } { info := type_info(VkPipelineExecutableStatisticValueKHR); for info.members { if it.name == { case "b32"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableStatisticValueKHR.b32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableStatisticValueKHR.b32 has unexpected size % instead of 4", it.type.runtime_size); case "i64"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableStatisticValueKHR.i64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableStatisticValueKHR.i64 has unexpected size % instead of 8", it.type.runtime_size); case "_u64"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableStatisticValueKHR._u64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableStatisticValueKHR._u64 has unexpected size % instead of 8", it.type.runtime_size); case "f64"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableStatisticValueKHR.f64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableStatisticValueKHR.f64 has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineExecutableStatisticValueKHR) == 8, "VkPipelineExecutableStatisticValueKHR has size % instead of 8", size_of(VkPipelineExecutableStatisticValueKHR)); } { info := type_info(VkPipelineExecutableStatisticKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableStatisticKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableStatisticKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineExecutableStatisticKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableStatisticKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "name"; assert(it.offset_in_bytes == 16, "VkPipelineExecutableStatisticKHR.name has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutableStatisticKHR.name has unexpected size % instead of 256", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 272, "VkPipelineExecutableStatisticKHR.description has unexpected offset % instead of 272", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutableStatisticKHR.description has unexpected size % instead of 256", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 528, "VkPipelineExecutableStatisticKHR.format has unexpected offset % instead of 528", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableStatisticKHR.format has unexpected size % instead of 4", it.type.runtime_size); case "value"; assert(it.offset_in_bytes == 536, "VkPipelineExecutableStatisticKHR.value has unexpected offset % instead of 536", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableStatisticKHR.value has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineExecutableStatisticKHR) == 544, "VkPipelineExecutableStatisticKHR has size % instead of 544", size_of(VkPipelineExecutableStatisticKHR)); } { info := type_info(VkPipelineExecutableInternalRepresentationKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineExecutableInternalRepresentationKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableInternalRepresentationKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineExecutableInternalRepresentationKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableInternalRepresentationKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "name"; assert(it.offset_in_bytes == 16, "VkPipelineExecutableInternalRepresentationKHR.name has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutableInternalRepresentationKHR.name has unexpected size % instead of 256", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 272, "VkPipelineExecutableInternalRepresentationKHR.description has unexpected offset % instead of 272", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPipelineExecutableInternalRepresentationKHR.description has unexpected size % instead of 256", it.type.runtime_size); case "isText"; assert(it.offset_in_bytes == 528, "VkPipelineExecutableInternalRepresentationKHR.isText has unexpected offset % instead of 528", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineExecutableInternalRepresentationKHR.isText has unexpected size % instead of 4", it.type.runtime_size); case "dataSize"; assert(it.offset_in_bytes == 536, "VkPipelineExecutableInternalRepresentationKHR.dataSize has unexpected offset % instead of 536", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableInternalRepresentationKHR.dataSize has unexpected size % instead of 8", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 544, "VkPipelineExecutableInternalRepresentationKHR.pData has unexpected offset % instead of 544", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineExecutableInternalRepresentationKHR.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineExecutableInternalRepresentationKHR) == 552, "VkPipelineExecutableInternalRepresentationKHR has size % instead of 552", size_of(VkPipelineExecutableInternalRepresentationKHR)); } { info := type_info(VkPipelineLibraryCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineLibraryCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLibraryCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineLibraryCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineLibraryCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "libraryCount"; assert(it.offset_in_bytes == 16, "VkPipelineLibraryCreateInfoKHR.libraryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineLibraryCreateInfoKHR.libraryCount has unexpected size % instead of 4", it.type.runtime_size); case "pLibraries"; assert(it.offset_in_bytes == 24, "VkPipelineLibraryCreateInfoKHR.pLibraries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineLibraryCreateInfoKHR.pLibraries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineLibraryCreateInfoKHR) == 32, "VkPipelineLibraryCreateInfoKHR has size % instead of 32", size_of(VkPipelineLibraryCreateInfoKHR)); } { info := type_info(VkPresentIdKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPresentIdKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentIdKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPresentIdKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentIdKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkPresentIdKHR.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentIdKHR.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pPresentIds"; assert(it.offset_in_bytes == 24, "VkPresentIdKHR.pPresentIds has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentIdKHR.pPresentIds has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentIdKHR) == 32, "VkPresentIdKHR has size % instead of 32", size_of(VkPresentIdKHR)); } { info := type_info(VkPhysicalDevicePresentIdFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePresentIdFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentIdFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePresentIdFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePresentIdFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentId"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePresentIdFeaturesKHR.presentId has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentIdFeaturesKHR.presentId has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePresentIdFeaturesKHR) == 24, "VkPhysicalDevicePresentIdFeaturesKHR has size % instead of 24", size_of(VkPhysicalDevicePresentIdFeaturesKHR)); } { info := type_info(VkVideoEncodeInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "dstBuffer"; assert(it.offset_in_bytes == 24, "VkVideoEncodeInfoKHR.dstBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.dstBuffer has unexpected size % instead of 8", it.type.runtime_size); case "dstBufferOffset"; assert(it.offset_in_bytes == 32, "VkVideoEncodeInfoKHR.dstBufferOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.dstBufferOffset has unexpected size % instead of 8", it.type.runtime_size); case "dstBufferRange"; assert(it.offset_in_bytes == 40, "VkVideoEncodeInfoKHR.dstBufferRange has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.dstBufferRange has unexpected size % instead of 8", it.type.runtime_size); case "srcPictureResource"; assert(it.offset_in_bytes == 48, "VkVideoEncodeInfoKHR.srcPictureResource has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkVideoEncodeInfoKHR.srcPictureResource has unexpected size % instead of 48", it.type.runtime_size); case "pSetupReferenceSlot"; assert(it.offset_in_bytes == 96, "VkVideoEncodeInfoKHR.pSetupReferenceSlot has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.pSetupReferenceSlot has unexpected size % instead of 8", it.type.runtime_size); case "referenceSlotCount"; assert(it.offset_in_bytes == 104, "VkVideoEncodeInfoKHR.referenceSlotCount has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeInfoKHR.referenceSlotCount has unexpected size % instead of 4", it.type.runtime_size); case "pReferenceSlots"; assert(it.offset_in_bytes == 112, "VkVideoEncodeInfoKHR.pReferenceSlots has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeInfoKHR.pReferenceSlots has unexpected size % instead of 8", it.type.runtime_size); case "precedingExternallyEncodedBytes"; assert(it.offset_in_bytes == 120, "VkVideoEncodeInfoKHR.precedingExternallyEncodedBytes has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeInfoKHR.precedingExternallyEncodedBytes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeInfoKHR) == 128, "VkVideoEncodeInfoKHR has size % instead of 128", size_of(VkVideoEncodeInfoKHR)); } { info := type_info(VkVideoEncodeCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeCapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "rateControlModes"; assert(it.offset_in_bytes == 20, "VkVideoEncodeCapabilitiesKHR.rateControlModes has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.rateControlModes has unexpected size % instead of 4", it.type.runtime_size); case "maxRateControlLayers"; assert(it.offset_in_bytes == 24, "VkVideoEncodeCapabilitiesKHR.maxRateControlLayers has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.maxRateControlLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxBitrate"; assert(it.offset_in_bytes == 32, "VkVideoEncodeCapabilitiesKHR.maxBitrate has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeCapabilitiesKHR.maxBitrate has unexpected size % instead of 8", it.type.runtime_size); case "maxQualityLevels"; assert(it.offset_in_bytes == 40, "VkVideoEncodeCapabilitiesKHR.maxQualityLevels has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.maxQualityLevels has unexpected size % instead of 4", it.type.runtime_size); case "encodeInputPictureGranularity"; assert(it.offset_in_bytes == 44, "VkVideoEncodeCapabilitiesKHR.encodeInputPictureGranularity has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeCapabilitiesKHR.encodeInputPictureGranularity has unexpected size % instead of 8", it.type.runtime_size); case "supportedEncodeFeedbackFlags"; assert(it.offset_in_bytes == 52, "VkVideoEncodeCapabilitiesKHR.supportedEncodeFeedbackFlags has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeCapabilitiesKHR.supportedEncodeFeedbackFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeCapabilitiesKHR) == 56, "VkVideoEncodeCapabilitiesKHR has size % instead of 56", size_of(VkVideoEncodeCapabilitiesKHR)); } { info := type_info(VkQueryPoolVideoEncodeFeedbackCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "encodeFeedbackFlags"; assert(it.offset_in_bytes == 16, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.encodeFeedbackFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR.encodeFeedbackFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueryPoolVideoEncodeFeedbackCreateInfoKHR) == 24, "VkQueryPoolVideoEncodeFeedbackCreateInfoKHR has size % instead of 24", size_of(VkQueryPoolVideoEncodeFeedbackCreateInfoKHR)); } { info := type_info(VkVideoEncodeUsageInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeUsageInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeUsageInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeUsageInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeUsageInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoUsageHints"; assert(it.offset_in_bytes == 16, "VkVideoEncodeUsageInfoKHR.videoUsageHints has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeUsageInfoKHR.videoUsageHints has unexpected size % instead of 4", it.type.runtime_size); case "videoContentHints"; assert(it.offset_in_bytes == 20, "VkVideoEncodeUsageInfoKHR.videoContentHints has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeUsageInfoKHR.videoContentHints has unexpected size % instead of 4", it.type.runtime_size); case "tuningMode"; assert(it.offset_in_bytes == 24, "VkVideoEncodeUsageInfoKHR.tuningMode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeUsageInfoKHR.tuningMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeUsageInfoKHR) == 32, "VkVideoEncodeUsageInfoKHR has size % instead of 32", size_of(VkVideoEncodeUsageInfoKHR)); } { info := type_info(VkVideoEncodeRateControlLayerInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeRateControlLayerInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlLayerInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeRateControlLayerInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeRateControlLayerInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "averageBitrate"; assert(it.offset_in_bytes == 16, "VkVideoEncodeRateControlLayerInfoKHR.averageBitrate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeRateControlLayerInfoKHR.averageBitrate has unexpected size % instead of 8", it.type.runtime_size); case "maxBitrate"; assert(it.offset_in_bytes == 24, "VkVideoEncodeRateControlLayerInfoKHR.maxBitrate has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeRateControlLayerInfoKHR.maxBitrate has unexpected size % instead of 8", it.type.runtime_size); case "frameRateNumerator"; assert(it.offset_in_bytes == 32, "VkVideoEncodeRateControlLayerInfoKHR.frameRateNumerator has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlLayerInfoKHR.frameRateNumerator has unexpected size % instead of 4", it.type.runtime_size); case "frameRateDenominator"; assert(it.offset_in_bytes == 36, "VkVideoEncodeRateControlLayerInfoKHR.frameRateDenominator has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlLayerInfoKHR.frameRateDenominator has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeRateControlLayerInfoKHR) == 40, "VkVideoEncodeRateControlLayerInfoKHR has size % instead of 40", size_of(VkVideoEncodeRateControlLayerInfoKHR)); } { info := type_info(VkVideoEncodeRateControlInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeRateControlInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeRateControlInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeRateControlInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeRateControlInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "rateControlMode"; assert(it.offset_in_bytes == 20, "VkVideoEncodeRateControlInfoKHR.rateControlMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.rateControlMode has unexpected size % instead of 4", it.type.runtime_size); case "layerCount"; assert(it.offset_in_bytes == 24, "VkVideoEncodeRateControlInfoKHR.layerCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.layerCount has unexpected size % instead of 4", it.type.runtime_size); case "pLayers"; assert(it.offset_in_bytes == 32, "VkVideoEncodeRateControlInfoKHR.pLayers has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeRateControlInfoKHR.pLayers has unexpected size % instead of 8", it.type.runtime_size); case "virtualBufferSizeInMs"; assert(it.offset_in_bytes == 40, "VkVideoEncodeRateControlInfoKHR.virtualBufferSizeInMs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.virtualBufferSizeInMs has unexpected size % instead of 4", it.type.runtime_size); case "initialVirtualBufferSizeInMs"; assert(it.offset_in_bytes == 44, "VkVideoEncodeRateControlInfoKHR.initialVirtualBufferSizeInMs has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeRateControlInfoKHR.initialVirtualBufferSizeInMs has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeRateControlInfoKHR) == 48, "VkVideoEncodeRateControlInfoKHR has size % instead of 48", size_of(VkVideoEncodeRateControlInfoKHR)); } { info := type_info(VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pVideoProfile"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.pVideoProfile has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.pVideoProfile has unexpected size % instead of 8", it.type.runtime_size); case "qualityLevel"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.qualityLevel has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR.qualityLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR) == 32, "VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR has size % instead of 32", size_of(VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR)); } { info := type_info(VkVideoEncodeQualityLevelPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeQualityLevelPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQualityLevelPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeQualityLevelPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQualityLevelPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "preferredRateControlMode"; assert(it.offset_in_bytes == 16, "VkVideoEncodeQualityLevelPropertiesKHR.preferredRateControlMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQualityLevelPropertiesKHR.preferredRateControlMode has unexpected size % instead of 4", it.type.runtime_size); case "preferredRateControlLayerCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeQualityLevelPropertiesKHR.preferredRateControlLayerCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQualityLevelPropertiesKHR.preferredRateControlLayerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeQualityLevelPropertiesKHR) == 24, "VkVideoEncodeQualityLevelPropertiesKHR has size % instead of 24", size_of(VkVideoEncodeQualityLevelPropertiesKHR)); } { info := type_info(VkVideoEncodeQualityLevelInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeQualityLevelInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQualityLevelInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeQualityLevelInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQualityLevelInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "qualityLevel"; assert(it.offset_in_bytes == 16, "VkVideoEncodeQualityLevelInfoKHR.qualityLevel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQualityLevelInfoKHR.qualityLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeQualityLevelInfoKHR) == 24, "VkVideoEncodeQualityLevelInfoKHR has size % instead of 24", size_of(VkVideoEncodeQualityLevelInfoKHR)); } { info := type_info(VkVideoEncodeSessionParametersGetInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeSessionParametersGetInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeSessionParametersGetInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeSessionParametersGetInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeSessionParametersGetInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoSessionParameters"; assert(it.offset_in_bytes == 16, "VkVideoEncodeSessionParametersGetInfoKHR.videoSessionParameters has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeSessionParametersGetInfoKHR.videoSessionParameters has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeSessionParametersGetInfoKHR) == 24, "VkVideoEncodeSessionParametersGetInfoKHR has size % instead of 24", size_of(VkVideoEncodeSessionParametersGetInfoKHR)); } { info := type_info(VkVideoEncodeSessionParametersFeedbackInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeSessionParametersFeedbackInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeSessionParametersFeedbackInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeSessionParametersFeedbackInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeSessionParametersFeedbackInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hasOverrides"; assert(it.offset_in_bytes == 16, "VkVideoEncodeSessionParametersFeedbackInfoKHR.hasOverrides has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeSessionParametersFeedbackInfoKHR.hasOverrides has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeSessionParametersFeedbackInfoKHR) == 24, "VkVideoEncodeSessionParametersFeedbackInfoKHR has size % instead of 24", size_of(VkVideoEncodeSessionParametersFeedbackInfoKHR)); } { info := type_info(VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentShaderBarycentric"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.fragmentShaderBarycentric has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR.fragmentShaderBarycentric has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR) == 24, "VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR)); } { info := type_info(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "triStripVertexOrderIndependentOfProvokingVertex"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.triStripVertexOrderIndependentOfProvokingVertex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR.triStripVertexOrderIndependentOfProvokingVertex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR) == 24, "VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR has size % instead of 24", size_of(VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR)); } { info := type_info(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSubgroupUniformControlFlow"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.shaderSubgroupUniformControlFlow has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR.shaderSubgroupUniformControlFlow has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR) == 24, "VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR)); } { info := type_info(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "workgroupMemoryExplicitLayout"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout has unexpected size % instead of 4", it.type.runtime_size); case "workgroupMemoryExplicitLayoutScalarBlockLayout"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayoutScalarBlockLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayoutScalarBlockLayout has unexpected size % instead of 4", it.type.runtime_size); case "workgroupMemoryExplicitLayout8BitAccess"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout8BitAccess has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout8BitAccess has unexpected size % instead of 4", it.type.runtime_size); case "workgroupMemoryExplicitLayout16BitAccess"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout16BitAccess has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR.workgroupMemoryExplicitLayout16BitAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR) == 32, "VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR has size % instead of 32", size_of(VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR)); } { info := type_info(VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingMaintenance1"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.rayTracingMaintenance1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.rayTracingMaintenance1 has unexpected size % instead of 4", it.type.runtime_size); case "rayTracingPipelineTraceRaysIndirect2"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.rayTracingPipelineTraceRaysIndirect2 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR.rayTracingPipelineTraceRaysIndirect2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR) == 24, "VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR)); } { info := type_info(VkTraceRaysIndirectCommand2KHR); for info.members { if it.name == { case "raygenShaderRecordAddress"; assert(it.offset_in_bytes == 0, "VkTraceRaysIndirectCommand2KHR.raygenShaderRecordAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.raygenShaderRecordAddress has unexpected size % instead of 8", it.type.runtime_size); case "raygenShaderRecordSize"; assert(it.offset_in_bytes == 8, "VkTraceRaysIndirectCommand2KHR.raygenShaderRecordSize has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.raygenShaderRecordSize has unexpected size % instead of 8", it.type.runtime_size); case "missShaderBindingTableAddress"; assert(it.offset_in_bytes == 16, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableAddress has unexpected size % instead of 8", it.type.runtime_size); case "missShaderBindingTableSize"; assert(it.offset_in_bytes == 24, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableSize has unexpected size % instead of 8", it.type.runtime_size); case "missShaderBindingTableStride"; assert(it.offset_in_bytes == 32, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.missShaderBindingTableStride has unexpected size % instead of 8", it.type.runtime_size); case "hitShaderBindingTableAddress"; assert(it.offset_in_bytes == 40, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableAddress has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableAddress has unexpected size % instead of 8", it.type.runtime_size); case "hitShaderBindingTableSize"; assert(it.offset_in_bytes == 48, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableSize has unexpected size % instead of 8", it.type.runtime_size); case "hitShaderBindingTableStride"; assert(it.offset_in_bytes == 56, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableStride has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.hitShaderBindingTableStride has unexpected size % instead of 8", it.type.runtime_size); case "callableShaderBindingTableAddress"; assert(it.offset_in_bytes == 64, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableAddress has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableAddress has unexpected size % instead of 8", it.type.runtime_size); case "callableShaderBindingTableSize"; assert(it.offset_in_bytes == 72, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableSize has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableSize has unexpected size % instead of 8", it.type.runtime_size); case "callableShaderBindingTableStride"; assert(it.offset_in_bytes == 80, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableStride has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTraceRaysIndirectCommand2KHR.callableShaderBindingTableStride has unexpected size % instead of 8", it.type.runtime_size); case "width"; assert(it.offset_in_bytes == 88, "VkTraceRaysIndirectCommand2KHR.width has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommand2KHR.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 92, "VkTraceRaysIndirectCommand2KHR.height has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommand2KHR.height has unexpected size % instead of 4", it.type.runtime_size); case "depth"; assert(it.offset_in_bytes == 96, "VkTraceRaysIndirectCommand2KHR.depth has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommand2KHR.depth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkTraceRaysIndirectCommand2KHR) == 104, "VkTraceRaysIndirectCommand2KHR has size % instead of 104", size_of(VkTraceRaysIndirectCommand2KHR)); } { info := type_info(VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderMaximalReconvergence"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.shaderMaximalReconvergence has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR.shaderMaximalReconvergence has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR) == 24, "VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR)); } { info := type_info(VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingPositionFetch"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.rayTracingPositionFetch has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR.rayTracingPositionFetch has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR) == 24, "VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR)); } { info := type_info(VkPhysicalDevicePipelineBinaryFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineBinaryFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineBinaryFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineBinaryFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBinaries"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineBinaryFeaturesKHR.pipelineBinaries has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryFeaturesKHR.pipelineBinaries has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineBinaryFeaturesKHR) == 24, "VkPhysicalDevicePipelineBinaryFeaturesKHR has size % instead of 24", size_of(VkPhysicalDevicePipelineBinaryFeaturesKHR)); } { info := type_info(VkPhysicalDevicePipelineBinaryPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineBinaryPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBinaryInternalCache"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryInternalCache has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryInternalCache has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBinaryInternalCacheControl"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryInternalCacheControl has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryInternalCacheControl has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBinaryPrefersInternalCache"; assert(it.offset_in_bytes == 24, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryPrefersInternalCache has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryPrefersInternalCache has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBinaryPrecompiledInternalCache"; assert(it.offset_in_bytes == 28, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryPrecompiledInternalCache has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryPrecompiledInternalCache has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBinaryCompressedData"; assert(it.offset_in_bytes == 32, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryCompressedData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineBinaryPropertiesKHR.pipelineBinaryCompressedData has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineBinaryPropertiesKHR) == 40, "VkPhysicalDevicePipelineBinaryPropertiesKHR has size % instead of 40", size_of(VkPhysicalDevicePipelineBinaryPropertiesKHR)); } { info := type_info(VkDevicePipelineBinaryInternalCacheControlKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDevicePipelineBinaryInternalCacheControlKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDevicePipelineBinaryInternalCacheControlKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDevicePipelineBinaryInternalCacheControlKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDevicePipelineBinaryInternalCacheControlKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "disableInternalCache"; assert(it.offset_in_bytes == 16, "VkDevicePipelineBinaryInternalCacheControlKHR.disableInternalCache has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDevicePipelineBinaryInternalCacheControlKHR.disableInternalCache has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDevicePipelineBinaryInternalCacheControlKHR) == 24, "VkDevicePipelineBinaryInternalCacheControlKHR has size % instead of 24", size_of(VkDevicePipelineBinaryInternalCacheControlKHR)); } { info := type_info(VkPipelineBinaryKeyKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryKeyKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryKeyKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryKeyKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryKeyKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "keySize"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryKeyKHR.keySize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryKeyKHR.keySize has unexpected size % instead of 4", it.type.runtime_size); case "key"; assert(it.offset_in_bytes == 20, "VkPipelineBinaryKeyKHR.key has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkPipelineBinaryKeyKHR.key has unexpected size % instead of 32", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryKeyKHR) == 56, "VkPipelineBinaryKeyKHR has size % instead of 56", size_of(VkPipelineBinaryKeyKHR)); } { info := type_info(VkPipelineBinaryDataKHR); for info.members { if it.name == { case "dataSize"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryDataKHR.dataSize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryDataKHR.dataSize has unexpected size % instead of 8", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryDataKHR.pData has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryDataKHR.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryDataKHR) == 16, "VkPipelineBinaryDataKHR has size % instead of 16", size_of(VkPipelineBinaryDataKHR)); } { info := type_info(VkPipelineBinaryKeysAndDataKHR); for info.members { if it.name == { case "binaryCount"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryKeysAndDataKHR.binaryCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryKeysAndDataKHR.binaryCount has unexpected size % instead of 4", it.type.runtime_size); case "pPipelineBinaryKeys"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryKeysAndDataKHR.pPipelineBinaryKeys has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryKeysAndDataKHR.pPipelineBinaryKeys has unexpected size % instead of 8", it.type.runtime_size); case "pPipelineBinaryData"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryKeysAndDataKHR.pPipelineBinaryData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryKeysAndDataKHR.pPipelineBinaryData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryKeysAndDataKHR) == 24, "VkPipelineBinaryKeysAndDataKHR has size % instead of 24", size_of(VkPipelineBinaryKeysAndDataKHR)); } { info := type_info(VkPipelineCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCreateInfoKHR) == 16, "VkPipelineCreateInfoKHR has size % instead of 16", size_of(VkPipelineCreateInfoKHR)); } { info := type_info(VkPipelineBinaryCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pKeysAndDataInfo"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryCreateInfoKHR.pKeysAndDataInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryCreateInfoKHR.pKeysAndDataInfo has unexpected size % instead of 8", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 24, "VkPipelineBinaryCreateInfoKHR.pipeline has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryCreateInfoKHR.pipeline has unexpected size % instead of 8", it.type.runtime_size); case "pPipelineCreateInfo"; assert(it.offset_in_bytes == 32, "VkPipelineBinaryCreateInfoKHR.pPipelineCreateInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryCreateInfoKHR.pPipelineCreateInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryCreateInfoKHR) == 40, "VkPipelineBinaryCreateInfoKHR has size % instead of 40", size_of(VkPipelineBinaryCreateInfoKHR)); } { info := type_info(VkPipelineBinaryInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "binaryCount"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryInfoKHR.binaryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryInfoKHR.binaryCount has unexpected size % instead of 4", it.type.runtime_size); case "pPipelineBinaries"; assert(it.offset_in_bytes == 24, "VkPipelineBinaryInfoKHR.pPipelineBinaries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryInfoKHR.pPipelineBinaries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryInfoKHR) == 32, "VkPipelineBinaryInfoKHR has size % instead of 32", size_of(VkPipelineBinaryInfoKHR)); } { info := type_info(VkReleaseCapturedPipelineDataInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkReleaseCapturedPipelineDataInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkReleaseCapturedPipelineDataInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkReleaseCapturedPipelineDataInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkReleaseCapturedPipelineDataInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 16, "VkReleaseCapturedPipelineDataInfoKHR.pipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkReleaseCapturedPipelineDataInfoKHR.pipeline has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkReleaseCapturedPipelineDataInfoKHR) == 24, "VkReleaseCapturedPipelineDataInfoKHR has size % instead of 24", size_of(VkReleaseCapturedPipelineDataInfoKHR)); } { info := type_info(VkPipelineBinaryDataInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryDataInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryDataInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryDataInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryDataInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBinary"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryDataInfoKHR.pipelineBinary has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryDataInfoKHR.pipelineBinary has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryDataInfoKHR) == 24, "VkPipelineBinaryDataInfoKHR has size % instead of 24", size_of(VkPipelineBinaryDataInfoKHR)); } { info := type_info(VkPipelineBinaryHandlesInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineBinaryHandlesInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryHandlesInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineBinaryHandlesInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryHandlesInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBinaryCount"; assert(it.offset_in_bytes == 16, "VkPipelineBinaryHandlesInfoKHR.pipelineBinaryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineBinaryHandlesInfoKHR.pipelineBinaryCount has unexpected size % instead of 4", it.type.runtime_size); case "pPipelineBinaries"; assert(it.offset_in_bytes == 24, "VkPipelineBinaryHandlesInfoKHR.pPipelineBinaries has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineBinaryHandlesInfoKHR.pPipelineBinaries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineBinaryHandlesInfoKHR) == 32, "VkPipelineBinaryHandlesInfoKHR has size % instead of 32", size_of(VkPipelineBinaryHandlesInfoKHR)); } { info := type_info(VkCooperativeMatrixPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCooperativeMatrixPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCooperativeMatrixPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCooperativeMatrixPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "MSize"; assert(it.offset_in_bytes == 16, "VkCooperativeMatrixPropertiesKHR.MSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.MSize has unexpected size % instead of 4", it.type.runtime_size); case "NSize"; assert(it.offset_in_bytes == 20, "VkCooperativeMatrixPropertiesKHR.NSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.NSize has unexpected size % instead of 4", it.type.runtime_size); case "KSize"; assert(it.offset_in_bytes == 24, "VkCooperativeMatrixPropertiesKHR.KSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.KSize has unexpected size % instead of 4", it.type.runtime_size); case "AType"; assert(it.offset_in_bytes == 28, "VkCooperativeMatrixPropertiesKHR.AType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.AType has unexpected size % instead of 4", it.type.runtime_size); case "BType"; assert(it.offset_in_bytes == 32, "VkCooperativeMatrixPropertiesKHR.BType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.BType has unexpected size % instead of 4", it.type.runtime_size); case "CType"; assert(it.offset_in_bytes == 36, "VkCooperativeMatrixPropertiesKHR.CType has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.CType has unexpected size % instead of 4", it.type.runtime_size); case "ResultType"; assert(it.offset_in_bytes == 40, "VkCooperativeMatrixPropertiesKHR.ResultType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.ResultType has unexpected size % instead of 4", it.type.runtime_size); case "saturatingAccumulation"; assert(it.offset_in_bytes == 44, "VkCooperativeMatrixPropertiesKHR.saturatingAccumulation has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.saturatingAccumulation has unexpected size % instead of 4", it.type.runtime_size); case "scope"; assert(it.offset_in_bytes == 48, "VkCooperativeMatrixPropertiesKHR.scope has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesKHR.scope has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCooperativeMatrixPropertiesKHR) == 56, "VkCooperativeMatrixPropertiesKHR has size % instead of 56", size_of(VkCooperativeMatrixPropertiesKHR)); } { info := type_info(VkPhysicalDeviceCooperativeMatrixFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrix"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.cooperativeMatrix has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.cooperativeMatrix has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixRobustBufferAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.cooperativeMatrixRobustBufferAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR.cooperativeMatrixRobustBufferAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrixFeaturesKHR) == 24, "VkPhysicalDeviceCooperativeMatrixFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceCooperativeMatrixFeaturesKHR)); } { info := type_info(VkPhysicalDeviceCooperativeMatrixPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrixSupportedStages"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.cooperativeMatrixSupportedStages has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR.cooperativeMatrixSupportedStages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrixPropertiesKHR) == 24, "VkPhysicalDeviceCooperativeMatrixPropertiesKHR has size % instead of 24", size_of(VkPhysicalDeviceCooperativeMatrixPropertiesKHR)); } { info := type_info(VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "computeDerivativeGroupQuads"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.computeDerivativeGroupQuads has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.computeDerivativeGroupQuads has unexpected size % instead of 4", it.type.runtime_size); case "computeDerivativeGroupLinear"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.computeDerivativeGroupLinear has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR.computeDerivativeGroupLinear has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR) == 24, "VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR)); } { info := type_info(VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "meshAndTaskShaderDerivatives"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.meshAndTaskShaderDerivatives has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR.meshAndTaskShaderDerivatives has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR) == 24, "VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR has size % instead of 24", size_of(VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR)); } { info := type_info(StdVideoAV1ColorConfigFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1ColorConfigFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfigFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1ColorConfigFlags) == 4, "StdVideoAV1ColorConfigFlags has size % instead of 4", size_of(StdVideoAV1ColorConfigFlags)); } { info := type_info(StdVideoAV1ColorConfig); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1ColorConfig.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfig.flags has unexpected size % instead of 4", it.type.runtime_size); case "BitDepth"; assert(it.offset_in_bytes == 4, "StdVideoAV1ColorConfig.BitDepth has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1ColorConfig.BitDepth has unexpected size % instead of 1", it.type.runtime_size); case "subsampling_x"; assert(it.offset_in_bytes == 5, "StdVideoAV1ColorConfig.subsampling_x has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1ColorConfig.subsampling_x has unexpected size % instead of 1", it.type.runtime_size); case "subsampling_y"; assert(it.offset_in_bytes == 6, "StdVideoAV1ColorConfig.subsampling_y has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1ColorConfig.subsampling_y has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 7, "StdVideoAV1ColorConfig.reserved1 has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1ColorConfig.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "color_primaries"; assert(it.offset_in_bytes == 8, "StdVideoAV1ColorConfig.color_primaries has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfig.color_primaries has unexpected size % instead of 4", it.type.runtime_size); case "transfer_characteristics"; assert(it.offset_in_bytes == 12, "StdVideoAV1ColorConfig.transfer_characteristics has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfig.transfer_characteristics has unexpected size % instead of 4", it.type.runtime_size); case "matrix_coefficients"; assert(it.offset_in_bytes == 16, "StdVideoAV1ColorConfig.matrix_coefficients has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfig.matrix_coefficients has unexpected size % instead of 4", it.type.runtime_size); case "chroma_sample_position"; assert(it.offset_in_bytes == 20, "StdVideoAV1ColorConfig.chroma_sample_position has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1ColorConfig.chroma_sample_position has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1ColorConfig) == 24, "StdVideoAV1ColorConfig has size % instead of 24", size_of(StdVideoAV1ColorConfig)); } { info := type_info(StdVideoAV1TimingInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1TimingInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TimingInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1TimingInfoFlags) == 4, "StdVideoAV1TimingInfoFlags has size % instead of 4", size_of(StdVideoAV1TimingInfoFlags)); } { info := type_info(StdVideoAV1TimingInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1TimingInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TimingInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "num_units_in_display_tick"; assert(it.offset_in_bytes == 4, "StdVideoAV1TimingInfo.num_units_in_display_tick has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TimingInfo.num_units_in_display_tick has unexpected size % instead of 4", it.type.runtime_size); case "time_scale"; assert(it.offset_in_bytes == 8, "StdVideoAV1TimingInfo.time_scale has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TimingInfo.time_scale has unexpected size % instead of 4", it.type.runtime_size); case "num_ticks_per_picture_minus_1"; assert(it.offset_in_bytes == 12, "StdVideoAV1TimingInfo.num_ticks_per_picture_minus_1 has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TimingInfo.num_ticks_per_picture_minus_1 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1TimingInfo) == 16, "StdVideoAV1TimingInfo has size % instead of 16", size_of(StdVideoAV1TimingInfo)); } { info := type_info(StdVideoAV1LoopFilterFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1LoopFilterFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1LoopFilterFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1LoopFilterFlags) == 4, "StdVideoAV1LoopFilterFlags has size % instead of 4", size_of(StdVideoAV1LoopFilterFlags)); } { info := type_info(StdVideoAV1LoopFilter); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1LoopFilter.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1LoopFilter.flags has unexpected size % instead of 4", it.type.runtime_size); case "loop_filter_level"; assert(it.offset_in_bytes == 4, "StdVideoAV1LoopFilter.loop_filter_level has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1LoopFilter.loop_filter_level has unexpected size % instead of 4", it.type.runtime_size); case "loop_filter_sharpness"; assert(it.offset_in_bytes == 8, "StdVideoAV1LoopFilter.loop_filter_sharpness has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1LoopFilter.loop_filter_sharpness has unexpected size % instead of 1", it.type.runtime_size); case "update_ref_delta"; assert(it.offset_in_bytes == 9, "StdVideoAV1LoopFilter.update_ref_delta has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1LoopFilter.update_ref_delta has unexpected size % instead of 1", it.type.runtime_size); case "loop_filter_ref_deltas"; assert(it.offset_in_bytes == 10, "StdVideoAV1LoopFilter.loop_filter_ref_deltas has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1LoopFilter.loop_filter_ref_deltas has unexpected size % instead of 8", it.type.runtime_size); case "update_mode_delta"; assert(it.offset_in_bytes == 18, "StdVideoAV1LoopFilter.update_mode_delta has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1LoopFilter.update_mode_delta has unexpected size % instead of 1", it.type.runtime_size); case "loop_filter_mode_deltas"; assert(it.offset_in_bytes == 19, "StdVideoAV1LoopFilter.loop_filter_mode_deltas has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1LoopFilter.loop_filter_mode_deltas has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoAV1LoopFilter) == 24, "StdVideoAV1LoopFilter has size % instead of 24", size_of(StdVideoAV1LoopFilter)); } { info := type_info(StdVideoAV1QuantizationFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1QuantizationFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1QuantizationFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1QuantizationFlags) == 4, "StdVideoAV1QuantizationFlags has size % instead of 4", size_of(StdVideoAV1QuantizationFlags)); } { info := type_info(StdVideoAV1Quantization); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1Quantization.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1Quantization.flags has unexpected size % instead of 4", it.type.runtime_size); case "base_q_idx"; assert(it.offset_in_bytes == 4, "StdVideoAV1Quantization.base_q_idx has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.base_q_idx has unexpected size % instead of 1", it.type.runtime_size); case "DeltaQYDc"; assert(it.offset_in_bytes == 5, "StdVideoAV1Quantization.DeltaQYDc has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.DeltaQYDc has unexpected size % instead of 1", it.type.runtime_size); case "DeltaQUDc"; assert(it.offset_in_bytes == 6, "StdVideoAV1Quantization.DeltaQUDc has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.DeltaQUDc has unexpected size % instead of 1", it.type.runtime_size); case "DeltaQUAc"; assert(it.offset_in_bytes == 7, "StdVideoAV1Quantization.DeltaQUAc has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.DeltaQUAc has unexpected size % instead of 1", it.type.runtime_size); case "DeltaQVDc"; assert(it.offset_in_bytes == 8, "StdVideoAV1Quantization.DeltaQVDc has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.DeltaQVDc has unexpected size % instead of 1", it.type.runtime_size); case "DeltaQVAc"; assert(it.offset_in_bytes == 9, "StdVideoAV1Quantization.DeltaQVAc has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.DeltaQVAc has unexpected size % instead of 1", it.type.runtime_size); case "qm_y"; assert(it.offset_in_bytes == 10, "StdVideoAV1Quantization.qm_y has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.qm_y has unexpected size % instead of 1", it.type.runtime_size); case "qm_u"; assert(it.offset_in_bytes == 11, "StdVideoAV1Quantization.qm_u has unexpected offset % instead of 11", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.qm_u has unexpected size % instead of 1", it.type.runtime_size); case "qm_v"; assert(it.offset_in_bytes == 12, "StdVideoAV1Quantization.qm_v has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1Quantization.qm_v has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoAV1Quantization) == 16, "StdVideoAV1Quantization has size % instead of 16", size_of(StdVideoAV1Quantization)); } { info := type_info(StdVideoAV1Segmentation); for info.members { if it.name == { case "FeatureEnabled"; assert(it.offset_in_bytes == 0, "StdVideoAV1Segmentation.FeatureEnabled has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1Segmentation.FeatureEnabled has unexpected size % instead of 8", it.type.runtime_size); case "FeatureData"; assert(it.offset_in_bytes == 8, "StdVideoAV1Segmentation.FeatureData has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 128, "StdVideoAV1Segmentation.FeatureData has unexpected size % instead of 128", it.type.runtime_size); } } assert(size_of(StdVideoAV1Segmentation) == 136, "StdVideoAV1Segmentation has size % instead of 136", size_of(StdVideoAV1Segmentation)); } { info := type_info(StdVideoAV1TileInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1TileInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TileInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1TileInfoFlags) == 4, "StdVideoAV1TileInfoFlags has size % instead of 4", size_of(StdVideoAV1TileInfoFlags)); } { info := type_info(StdVideoAV1TileInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1TileInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1TileInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "TileCols"; assert(it.offset_in_bytes == 4, "StdVideoAV1TileInfo.TileCols has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1TileInfo.TileCols has unexpected size % instead of 1", it.type.runtime_size); case "TileRows"; assert(it.offset_in_bytes == 5, "StdVideoAV1TileInfo.TileRows has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1TileInfo.TileRows has unexpected size % instead of 1", it.type.runtime_size); case "context_update_tile_id"; assert(it.offset_in_bytes == 6, "StdVideoAV1TileInfo.context_update_tile_id has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1TileInfo.context_update_tile_id has unexpected size % instead of 2", it.type.runtime_size); case "tile_size_bytes_minus_1"; assert(it.offset_in_bytes == 8, "StdVideoAV1TileInfo.tile_size_bytes_minus_1 has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1TileInfo.tile_size_bytes_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 9, "StdVideoAV1TileInfo.reserved1 has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoAV1TileInfo.reserved1 has unexpected size % instead of 7", it.type.runtime_size); case "pMiColStarts"; assert(it.offset_in_bytes == 16, "StdVideoAV1TileInfo.pMiColStarts has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1TileInfo.pMiColStarts has unexpected size % instead of 8", it.type.runtime_size); case "pMiRowStarts"; assert(it.offset_in_bytes == 24, "StdVideoAV1TileInfo.pMiRowStarts has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1TileInfo.pMiRowStarts has unexpected size % instead of 8", it.type.runtime_size); case "pWidthInSbsMinus1"; assert(it.offset_in_bytes == 32, "StdVideoAV1TileInfo.pWidthInSbsMinus1 has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1TileInfo.pWidthInSbsMinus1 has unexpected size % instead of 8", it.type.runtime_size); case "pHeightInSbsMinus1"; assert(it.offset_in_bytes == 40, "StdVideoAV1TileInfo.pHeightInSbsMinus1 has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1TileInfo.pHeightInSbsMinus1 has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoAV1TileInfo) == 48, "StdVideoAV1TileInfo has size % instead of 48", size_of(StdVideoAV1TileInfo)); } { info := type_info(StdVideoAV1CDEF); for info.members { if it.name == { case "cdef_damping_minus_3"; assert(it.offset_in_bytes == 0, "StdVideoAV1CDEF.cdef_damping_minus_3 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1CDEF.cdef_damping_minus_3 has unexpected size % instead of 1", it.type.runtime_size); case "cdef_bits"; assert(it.offset_in_bytes == 1, "StdVideoAV1CDEF.cdef_bits has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1CDEF.cdef_bits has unexpected size % instead of 1", it.type.runtime_size); case "cdef_y_pri_strength"; assert(it.offset_in_bytes == 2, "StdVideoAV1CDEF.cdef_y_pri_strength has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1CDEF.cdef_y_pri_strength has unexpected size % instead of 8", it.type.runtime_size); case "cdef_y_sec_strength"; assert(it.offset_in_bytes == 10, "StdVideoAV1CDEF.cdef_y_sec_strength has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1CDEF.cdef_y_sec_strength has unexpected size % instead of 8", it.type.runtime_size); case "cdef_uv_pri_strength"; assert(it.offset_in_bytes == 18, "StdVideoAV1CDEF.cdef_uv_pri_strength has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1CDEF.cdef_uv_pri_strength has unexpected size % instead of 8", it.type.runtime_size); case "cdef_uv_sec_strength"; assert(it.offset_in_bytes == 26, "StdVideoAV1CDEF.cdef_uv_sec_strength has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1CDEF.cdef_uv_sec_strength has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoAV1CDEF) == 34, "StdVideoAV1CDEF has size % instead of 34", size_of(StdVideoAV1CDEF)); } { info := type_info(StdVideoAV1LoopRestoration); for info.members { if it.name == { case "FrameRestorationType"; assert(it.offset_in_bytes == 0, "StdVideoAV1LoopRestoration.FrameRestorationType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 12, "StdVideoAV1LoopRestoration.FrameRestorationType has unexpected size % instead of 12", it.type.runtime_size); case "LoopRestorationSize"; assert(it.offset_in_bytes == 12, "StdVideoAV1LoopRestoration.LoopRestorationSize has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 6, "StdVideoAV1LoopRestoration.LoopRestorationSize has unexpected size % instead of 6", it.type.runtime_size); } } assert(size_of(StdVideoAV1LoopRestoration) == 20, "StdVideoAV1LoopRestoration has size % instead of 20", size_of(StdVideoAV1LoopRestoration)); } { info := type_info(StdVideoAV1GlobalMotion); for info.members { if it.name == { case "GmType"; assert(it.offset_in_bytes == 0, "StdVideoAV1GlobalMotion.GmType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1GlobalMotion.GmType has unexpected size % instead of 8", it.type.runtime_size); case "gm_params"; assert(it.offset_in_bytes == 8, "StdVideoAV1GlobalMotion.gm_params has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 192, "StdVideoAV1GlobalMotion.gm_params has unexpected size % instead of 192", it.type.runtime_size); } } assert(size_of(StdVideoAV1GlobalMotion) == 200, "StdVideoAV1GlobalMotion has size % instead of 200", size_of(StdVideoAV1GlobalMotion)); } { info := type_info(StdVideoAV1FilmGrainFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1FilmGrainFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1FilmGrainFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1FilmGrainFlags) == 4, "StdVideoAV1FilmGrainFlags has size % instead of 4", size_of(StdVideoAV1FilmGrainFlags)); } { info := type_info(StdVideoAV1FilmGrain); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1FilmGrain.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1FilmGrain.flags has unexpected size % instead of 4", it.type.runtime_size); case "grain_scaling_minus_8"; assert(it.offset_in_bytes == 4, "StdVideoAV1FilmGrain.grain_scaling_minus_8 has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.grain_scaling_minus_8 has unexpected size % instead of 1", it.type.runtime_size); case "ar_coeff_lag"; assert(it.offset_in_bytes == 5, "StdVideoAV1FilmGrain.ar_coeff_lag has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.ar_coeff_lag has unexpected size % instead of 1", it.type.runtime_size); case "ar_coeff_shift_minus_6"; assert(it.offset_in_bytes == 6, "StdVideoAV1FilmGrain.ar_coeff_shift_minus_6 has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.ar_coeff_shift_minus_6 has unexpected size % instead of 1", it.type.runtime_size); case "grain_scale_shift"; assert(it.offset_in_bytes == 7, "StdVideoAV1FilmGrain.grain_scale_shift has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.grain_scale_shift has unexpected size % instead of 1", it.type.runtime_size); case "grain_seed"; assert(it.offset_in_bytes == 8, "StdVideoAV1FilmGrain.grain_seed has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1FilmGrain.grain_seed has unexpected size % instead of 2", it.type.runtime_size); case "film_grain_params_ref_idx"; assert(it.offset_in_bytes == 10, "StdVideoAV1FilmGrain.film_grain_params_ref_idx has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.film_grain_params_ref_idx has unexpected size % instead of 1", it.type.runtime_size); case "num_y_points"; assert(it.offset_in_bytes == 11, "StdVideoAV1FilmGrain.num_y_points has unexpected offset % instead of 11", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.num_y_points has unexpected size % instead of 1", it.type.runtime_size); case "point_y_value"; assert(it.offset_in_bytes == 12, "StdVideoAV1FilmGrain.point_y_value has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 14, "StdVideoAV1FilmGrain.point_y_value has unexpected size % instead of 14", it.type.runtime_size); case "point_y_scaling"; assert(it.offset_in_bytes == 26, "StdVideoAV1FilmGrain.point_y_scaling has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 14, "StdVideoAV1FilmGrain.point_y_scaling has unexpected size % instead of 14", it.type.runtime_size); case "num_cb_points"; assert(it.offset_in_bytes == 40, "StdVideoAV1FilmGrain.num_cb_points has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.num_cb_points has unexpected size % instead of 1", it.type.runtime_size); case "point_cb_value"; assert(it.offset_in_bytes == 41, "StdVideoAV1FilmGrain.point_cb_value has unexpected offset % instead of 41", it.offset_in_bytes); assert(it.type.runtime_size == 10, "StdVideoAV1FilmGrain.point_cb_value has unexpected size % instead of 10", it.type.runtime_size); case "point_cb_scaling"; assert(it.offset_in_bytes == 51, "StdVideoAV1FilmGrain.point_cb_scaling has unexpected offset % instead of 51", it.offset_in_bytes); assert(it.type.runtime_size == 10, "StdVideoAV1FilmGrain.point_cb_scaling has unexpected size % instead of 10", it.type.runtime_size); case "num_cr_points"; assert(it.offset_in_bytes == 61, "StdVideoAV1FilmGrain.num_cr_points has unexpected offset % instead of 61", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.num_cr_points has unexpected size % instead of 1", it.type.runtime_size); case "point_cr_value"; assert(it.offset_in_bytes == 62, "StdVideoAV1FilmGrain.point_cr_value has unexpected offset % instead of 62", it.offset_in_bytes); assert(it.type.runtime_size == 10, "StdVideoAV1FilmGrain.point_cr_value has unexpected size % instead of 10", it.type.runtime_size); case "point_cr_scaling"; assert(it.offset_in_bytes == 72, "StdVideoAV1FilmGrain.point_cr_scaling has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 10, "StdVideoAV1FilmGrain.point_cr_scaling has unexpected size % instead of 10", it.type.runtime_size); case "ar_coeffs_y_plus_128"; assert(it.offset_in_bytes == 82, "StdVideoAV1FilmGrain.ar_coeffs_y_plus_128 has unexpected offset % instead of 82", it.offset_in_bytes); assert(it.type.runtime_size == 24, "StdVideoAV1FilmGrain.ar_coeffs_y_plus_128 has unexpected size % instead of 24", it.type.runtime_size); case "ar_coeffs_cb_plus_128"; assert(it.offset_in_bytes == 106, "StdVideoAV1FilmGrain.ar_coeffs_cb_plus_128 has unexpected offset % instead of 106", it.offset_in_bytes); assert(it.type.runtime_size == 25, "StdVideoAV1FilmGrain.ar_coeffs_cb_plus_128 has unexpected size % instead of 25", it.type.runtime_size); case "ar_coeffs_cr_plus_128"; assert(it.offset_in_bytes == 131, "StdVideoAV1FilmGrain.ar_coeffs_cr_plus_128 has unexpected offset % instead of 131", it.offset_in_bytes); assert(it.type.runtime_size == 25, "StdVideoAV1FilmGrain.ar_coeffs_cr_plus_128 has unexpected size % instead of 25", it.type.runtime_size); case "cb_mult"; assert(it.offset_in_bytes == 156, "StdVideoAV1FilmGrain.cb_mult has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.cb_mult has unexpected size % instead of 1", it.type.runtime_size); case "cb_luma_mult"; assert(it.offset_in_bytes == 157, "StdVideoAV1FilmGrain.cb_luma_mult has unexpected offset % instead of 157", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.cb_luma_mult has unexpected size % instead of 1", it.type.runtime_size); case "cb_offset"; assert(it.offset_in_bytes == 158, "StdVideoAV1FilmGrain.cb_offset has unexpected offset % instead of 158", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1FilmGrain.cb_offset has unexpected size % instead of 2", it.type.runtime_size); case "cr_mult"; assert(it.offset_in_bytes == 160, "StdVideoAV1FilmGrain.cr_mult has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.cr_mult has unexpected size % instead of 1", it.type.runtime_size); case "cr_luma_mult"; assert(it.offset_in_bytes == 161, "StdVideoAV1FilmGrain.cr_luma_mult has unexpected offset % instead of 161", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1FilmGrain.cr_luma_mult has unexpected size % instead of 1", it.type.runtime_size); case "cr_offset"; assert(it.offset_in_bytes == 162, "StdVideoAV1FilmGrain.cr_offset has unexpected offset % instead of 162", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1FilmGrain.cr_offset has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(StdVideoAV1FilmGrain) == 164, "StdVideoAV1FilmGrain has size % instead of 164", size_of(StdVideoAV1FilmGrain)); } { info := type_info(StdVideoAV1SequenceHeaderFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoAV1SequenceHeaderFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1SequenceHeaderFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoAV1SequenceHeaderFlags) == 4, "StdVideoAV1SequenceHeaderFlags has size % instead of 4", size_of(StdVideoAV1SequenceHeaderFlags)); } { info := type_info(StdVideoAV1SequenceHeader); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoAV1SequenceHeader.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1SequenceHeader.flags has unexpected size % instead of 4", it.type.runtime_size); case "seq_profile"; assert(it.offset_in_bytes == 4, "StdVideoAV1SequenceHeader.seq_profile has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoAV1SequenceHeader.seq_profile has unexpected size % instead of 4", it.type.runtime_size); case "frame_width_bits_minus_1"; assert(it.offset_in_bytes == 8, "StdVideoAV1SequenceHeader.frame_width_bits_minus_1 has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.frame_width_bits_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "frame_height_bits_minus_1"; assert(it.offset_in_bytes == 9, "StdVideoAV1SequenceHeader.frame_height_bits_minus_1 has unexpected offset % instead of 9", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.frame_height_bits_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "max_frame_width_minus_1"; assert(it.offset_in_bytes == 10, "StdVideoAV1SequenceHeader.max_frame_width_minus_1 has unexpected offset % instead of 10", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1SequenceHeader.max_frame_width_minus_1 has unexpected size % instead of 2", it.type.runtime_size); case "max_frame_height_minus_1"; assert(it.offset_in_bytes == 12, "StdVideoAV1SequenceHeader.max_frame_height_minus_1 has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoAV1SequenceHeader.max_frame_height_minus_1 has unexpected size % instead of 2", it.type.runtime_size); case "delta_frame_id_length_minus_2"; assert(it.offset_in_bytes == 14, "StdVideoAV1SequenceHeader.delta_frame_id_length_minus_2 has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.delta_frame_id_length_minus_2 has unexpected size % instead of 1", it.type.runtime_size); case "additional_frame_id_length_minus_1"; assert(it.offset_in_bytes == 15, "StdVideoAV1SequenceHeader.additional_frame_id_length_minus_1 has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.additional_frame_id_length_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "order_hint_bits_minus_1"; assert(it.offset_in_bytes == 16, "StdVideoAV1SequenceHeader.order_hint_bits_minus_1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.order_hint_bits_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "seq_force_integer_mv"; assert(it.offset_in_bytes == 17, "StdVideoAV1SequenceHeader.seq_force_integer_mv has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.seq_force_integer_mv has unexpected size % instead of 1", it.type.runtime_size); case "seq_force_screen_content_tools"; assert(it.offset_in_bytes == 18, "StdVideoAV1SequenceHeader.seq_force_screen_content_tools has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoAV1SequenceHeader.seq_force_screen_content_tools has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 19, "StdVideoAV1SequenceHeader.reserved1 has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 5, "StdVideoAV1SequenceHeader.reserved1 has unexpected size % instead of 5", it.type.runtime_size); case "pColorConfig"; assert(it.offset_in_bytes == 24, "StdVideoAV1SequenceHeader.pColorConfig has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1SequenceHeader.pColorConfig has unexpected size % instead of 8", it.type.runtime_size); case "pTimingInfo"; assert(it.offset_in_bytes == 32, "StdVideoAV1SequenceHeader.pTimingInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoAV1SequenceHeader.pTimingInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoAV1SequenceHeader) == 40, "StdVideoAV1SequenceHeader has size % instead of 40", size_of(StdVideoAV1SequenceHeader)); } { info := type_info(StdVideoDecodeAV1PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeAV1PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoDecodeAV1PictureInfoFlags) == 4, "StdVideoDecodeAV1PictureInfoFlags has size % instead of 4", size_of(StdVideoDecodeAV1PictureInfoFlags)); } { info := type_info(StdVideoDecodeAV1PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeAV1PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "frame_type"; assert(it.offset_in_bytes == 4, "StdVideoDecodeAV1PictureInfo.frame_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfo.frame_type has unexpected size % instead of 4", it.type.runtime_size); case "current_frame_id"; assert(it.offset_in_bytes == 8, "StdVideoDecodeAV1PictureInfo.current_frame_id has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfo.current_frame_id has unexpected size % instead of 4", it.type.runtime_size); case "OrderHint"; assert(it.offset_in_bytes == 12, "StdVideoDecodeAV1PictureInfo.OrderHint has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.OrderHint has unexpected size % instead of 1", it.type.runtime_size); case "primary_ref_frame"; assert(it.offset_in_bytes == 13, "StdVideoDecodeAV1PictureInfo.primary_ref_frame has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.primary_ref_frame has unexpected size % instead of 1", it.type.runtime_size); case "refresh_frame_flags"; assert(it.offset_in_bytes == 14, "StdVideoDecodeAV1PictureInfo.refresh_frame_flags has unexpected offset % instead of 14", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.refresh_frame_flags has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 15, "StdVideoDecodeAV1PictureInfo.reserved1 has unexpected offset % instead of 15", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "interpolation_filter"; assert(it.offset_in_bytes == 16, "StdVideoDecodeAV1PictureInfo.interpolation_filter has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfo.interpolation_filter has unexpected size % instead of 4", it.type.runtime_size); case "TxMode"; assert(it.offset_in_bytes == 20, "StdVideoDecodeAV1PictureInfo.TxMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1PictureInfo.TxMode has unexpected size % instead of 4", it.type.runtime_size); case "delta_q_res"; assert(it.offset_in_bytes == 24, "StdVideoDecodeAV1PictureInfo.delta_q_res has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.delta_q_res has unexpected size % instead of 1", it.type.runtime_size); case "delta_lf_res"; assert(it.offset_in_bytes == 25, "StdVideoDecodeAV1PictureInfo.delta_lf_res has unexpected offset % instead of 25", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.delta_lf_res has unexpected size % instead of 1", it.type.runtime_size); case "SkipModeFrame"; assert(it.offset_in_bytes == 26, "StdVideoDecodeAV1PictureInfo.SkipModeFrame has unexpected offset % instead of 26", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoDecodeAV1PictureInfo.SkipModeFrame has unexpected size % instead of 2", it.type.runtime_size); case "coded_denom"; assert(it.offset_in_bytes == 28, "StdVideoDecodeAV1PictureInfo.coded_denom has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1PictureInfo.coded_denom has unexpected size % instead of 1", it.type.runtime_size); case "reserved2"; assert(it.offset_in_bytes == 29, "StdVideoDecodeAV1PictureInfo.reserved2 has unexpected offset % instead of 29", it.offset_in_bytes); assert(it.type.runtime_size == 3, "StdVideoDecodeAV1PictureInfo.reserved2 has unexpected size % instead of 3", it.type.runtime_size); case "OrderHints"; assert(it.offset_in_bytes == 32, "StdVideoDecodeAV1PictureInfo.OrderHints has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.OrderHints has unexpected size % instead of 8", it.type.runtime_size); case "expectedFrameId"; assert(it.offset_in_bytes == 40, "StdVideoDecodeAV1PictureInfo.expectedFrameId has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 32, "StdVideoDecodeAV1PictureInfo.expectedFrameId has unexpected size % instead of 32", it.type.runtime_size); case "pTileInfo"; assert(it.offset_in_bytes == 72, "StdVideoDecodeAV1PictureInfo.pTileInfo has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pTileInfo has unexpected size % instead of 8", it.type.runtime_size); case "pQuantization"; assert(it.offset_in_bytes == 80, "StdVideoDecodeAV1PictureInfo.pQuantization has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pQuantization has unexpected size % instead of 8", it.type.runtime_size); case "pSegmentation"; assert(it.offset_in_bytes == 88, "StdVideoDecodeAV1PictureInfo.pSegmentation has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pSegmentation has unexpected size % instead of 8", it.type.runtime_size); case "pLoopFilter"; assert(it.offset_in_bytes == 96, "StdVideoDecodeAV1PictureInfo.pLoopFilter has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pLoopFilter has unexpected size % instead of 8", it.type.runtime_size); case "pCDEF"; assert(it.offset_in_bytes == 104, "StdVideoDecodeAV1PictureInfo.pCDEF has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pCDEF has unexpected size % instead of 8", it.type.runtime_size); case "pLoopRestoration"; assert(it.offset_in_bytes == 112, "StdVideoDecodeAV1PictureInfo.pLoopRestoration has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pLoopRestoration has unexpected size % instead of 8", it.type.runtime_size); case "pGlobalMotion"; assert(it.offset_in_bytes == 120, "StdVideoDecodeAV1PictureInfo.pGlobalMotion has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pGlobalMotion has unexpected size % instead of 8", it.type.runtime_size); case "pFilmGrain"; assert(it.offset_in_bytes == 128, "StdVideoDecodeAV1PictureInfo.pFilmGrain has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1PictureInfo.pFilmGrain has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoDecodeAV1PictureInfo) == 136, "StdVideoDecodeAV1PictureInfo has size % instead of 136", size_of(StdVideoDecodeAV1PictureInfo)); } { info := type_info(StdVideoDecodeAV1ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoDecodeAV1ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1ReferenceInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoDecodeAV1ReferenceInfoFlags) == 4, "StdVideoDecodeAV1ReferenceInfoFlags has size % instead of 4", size_of(StdVideoDecodeAV1ReferenceInfoFlags)); } { info := type_info(StdVideoDecodeAV1ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoDecodeAV1ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoDecodeAV1ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "frame_type"; assert(it.offset_in_bytes == 4, "StdVideoDecodeAV1ReferenceInfo.frame_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1ReferenceInfo.frame_type has unexpected size % instead of 1", it.type.runtime_size); case "RefFrameSignBias"; assert(it.offset_in_bytes == 5, "StdVideoDecodeAV1ReferenceInfo.RefFrameSignBias has unexpected offset % instead of 5", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1ReferenceInfo.RefFrameSignBias has unexpected size % instead of 1", it.type.runtime_size); case "OrderHint"; assert(it.offset_in_bytes == 6, "StdVideoDecodeAV1ReferenceInfo.OrderHint has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoDecodeAV1ReferenceInfo.OrderHint has unexpected size % instead of 1", it.type.runtime_size); case "SavedOrderHints"; assert(it.offset_in_bytes == 7, "StdVideoDecodeAV1ReferenceInfo.SavedOrderHints has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoDecodeAV1ReferenceInfo.SavedOrderHints has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoDecodeAV1ReferenceInfo) == 16, "StdVideoDecodeAV1ReferenceInfo has size % instead of 16", size_of(StdVideoDecodeAV1ReferenceInfo)); } { info := type_info(VkVideoDecodeAV1ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfile"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1ProfileInfoKHR.stdProfile has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1ProfileInfoKHR.stdProfile has unexpected size % instead of 4", it.type.runtime_size); case "filmGrainSupport"; assert(it.offset_in_bytes == 20, "VkVideoDecodeAV1ProfileInfoKHR.filmGrainSupport has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1ProfileInfoKHR.filmGrainSupport has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1ProfileInfoKHR) == 24, "VkVideoDecodeAV1ProfileInfoKHR has size % instead of 24", size_of(VkVideoDecodeAV1ProfileInfoKHR)); } { info := type_info(VkVideoDecodeAV1CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxLevel"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1CapabilitiesKHR.maxLevel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1CapabilitiesKHR.maxLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1CapabilitiesKHR) == 24, "VkVideoDecodeAV1CapabilitiesKHR has size % instead of 24", size_of(VkVideoDecodeAV1CapabilitiesKHR)); } { info := type_info(VkVideoDecodeAV1SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdSequenceHeader"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.pStdSequenceHeader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1SessionParametersCreateInfoKHR.pStdSequenceHeader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1SessionParametersCreateInfoKHR) == 24, "VkVideoDecodeAV1SessionParametersCreateInfoKHR has size % instead of 24", size_of(VkVideoDecodeAV1SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoDecodeAV1PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); case "referenceNameSlotIndices"; assert(it.offset_in_bytes == 24, "VkVideoDecodeAV1PictureInfoKHR.referenceNameSlotIndices has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 28, "VkVideoDecodeAV1PictureInfoKHR.referenceNameSlotIndices has unexpected size % instead of 28", it.type.runtime_size); case "frameHeaderOffset"; assert(it.offset_in_bytes == 52, "VkVideoDecodeAV1PictureInfoKHR.frameHeaderOffset has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1PictureInfoKHR.frameHeaderOffset has unexpected size % instead of 4", it.type.runtime_size); case "tileCount"; assert(it.offset_in_bytes == 56, "VkVideoDecodeAV1PictureInfoKHR.tileCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1PictureInfoKHR.tileCount has unexpected size % instead of 4", it.type.runtime_size); case "pTileOffsets"; assert(it.offset_in_bytes == 64, "VkVideoDecodeAV1PictureInfoKHR.pTileOffsets has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1PictureInfoKHR.pTileOffsets has unexpected size % instead of 8", it.type.runtime_size); case "pTileSizes"; assert(it.offset_in_bytes == 72, "VkVideoDecodeAV1PictureInfoKHR.pTileSizes has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1PictureInfoKHR.pTileSizes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1PictureInfoKHR) == 80, "VkVideoDecodeAV1PictureInfoKHR has size % instead of 80", size_of(VkVideoDecodeAV1PictureInfoKHR)); } { info := type_info(VkVideoDecodeAV1DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1DpbSlotInfoKHR) == 24, "VkVideoDecodeAV1DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoDecodeAV1DpbSlotInfoKHR)); } { info := type_info(StdVideoEncodeAV1DecoderModelInfo); for info.members { if it.name == { case "buffer_delay_length_minus_1"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1DecoderModelInfo.buffer_delay_length_minus_1 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1DecoderModelInfo.buffer_delay_length_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "buffer_removal_time_length_minus_1"; assert(it.offset_in_bytes == 1, "StdVideoEncodeAV1DecoderModelInfo.buffer_removal_time_length_minus_1 has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1DecoderModelInfo.buffer_removal_time_length_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "frame_presentation_time_length_minus_1"; assert(it.offset_in_bytes == 2, "StdVideoEncodeAV1DecoderModelInfo.frame_presentation_time_length_minus_1 has unexpected offset % instead of 2", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1DecoderModelInfo.frame_presentation_time_length_minus_1 has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 3, "StdVideoEncodeAV1DecoderModelInfo.reserved1 has unexpected offset % instead of 3", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1DecoderModelInfo.reserved1 has unexpected size % instead of 1", it.type.runtime_size); case "num_units_in_decoding_tick"; assert(it.offset_in_bytes == 4, "StdVideoEncodeAV1DecoderModelInfo.num_units_in_decoding_tick has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1DecoderModelInfo.num_units_in_decoding_tick has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1DecoderModelInfo) == 8, "StdVideoEncodeAV1DecoderModelInfo has size % instead of 8", size_of(StdVideoEncodeAV1DecoderModelInfo)); } { info := type_info(StdVideoEncodeAV1ExtensionHeader); for info.members { if it.name == { case "temporal_id"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1ExtensionHeader.temporal_id has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1ExtensionHeader.temporal_id has unexpected size % instead of 1", it.type.runtime_size); case "spatial_id"; assert(it.offset_in_bytes == 1, "StdVideoEncodeAV1ExtensionHeader.spatial_id has unexpected offset % instead of 1", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1ExtensionHeader.spatial_id has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1ExtensionHeader) == 2, "StdVideoEncodeAV1ExtensionHeader has size % instead of 2", size_of(StdVideoEncodeAV1ExtensionHeader)); } { info := type_info(StdVideoEncodeAV1OperatingPointInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1OperatingPointInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1OperatingPointInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1OperatingPointInfoFlags) == 4, "StdVideoEncodeAV1OperatingPointInfoFlags has size % instead of 4", size_of(StdVideoEncodeAV1OperatingPointInfoFlags)); } { info := type_info(StdVideoEncodeAV1OperatingPointInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1OperatingPointInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1OperatingPointInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "operating_point_idc"; assert(it.offset_in_bytes == 4, "StdVideoEncodeAV1OperatingPointInfo.operating_point_idc has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeAV1OperatingPointInfo.operating_point_idc has unexpected size % instead of 2", it.type.runtime_size); case "seq_level_idx"; assert(it.offset_in_bytes == 6, "StdVideoEncodeAV1OperatingPointInfo.seq_level_idx has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1OperatingPointInfo.seq_level_idx has unexpected size % instead of 1", it.type.runtime_size); case "seq_tier"; assert(it.offset_in_bytes == 7, "StdVideoEncodeAV1OperatingPointInfo.seq_tier has unexpected offset % instead of 7", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1OperatingPointInfo.seq_tier has unexpected size % instead of 1", it.type.runtime_size); case "decoder_buffer_delay"; assert(it.offset_in_bytes == 8, "StdVideoEncodeAV1OperatingPointInfo.decoder_buffer_delay has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1OperatingPointInfo.decoder_buffer_delay has unexpected size % instead of 4", it.type.runtime_size); case "encoder_buffer_delay"; assert(it.offset_in_bytes == 12, "StdVideoEncodeAV1OperatingPointInfo.encoder_buffer_delay has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1OperatingPointInfo.encoder_buffer_delay has unexpected size % instead of 4", it.type.runtime_size); case "initial_display_delay_minus_1"; assert(it.offset_in_bytes == 16, "StdVideoEncodeAV1OperatingPointInfo.initial_display_delay_minus_1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1OperatingPointInfo.initial_display_delay_minus_1 has unexpected size % instead of 1", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1OperatingPointInfo) == 20, "StdVideoEncodeAV1OperatingPointInfo has size % instead of 20", size_of(StdVideoEncodeAV1OperatingPointInfo)); } { info := type_info(StdVideoEncodeAV1PictureInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1PictureInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1PictureInfoFlags) == 4, "StdVideoEncodeAV1PictureInfoFlags has size % instead of 4", size_of(StdVideoEncodeAV1PictureInfoFlags)); } { info := type_info(StdVideoEncodeAV1PictureInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1PictureInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "frame_type"; assert(it.offset_in_bytes == 4, "StdVideoEncodeAV1PictureInfo.frame_type has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.frame_type has unexpected size % instead of 4", it.type.runtime_size); case "frame_presentation_time"; assert(it.offset_in_bytes == 8, "StdVideoEncodeAV1PictureInfo.frame_presentation_time has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.frame_presentation_time has unexpected size % instead of 4", it.type.runtime_size); case "current_frame_id"; assert(it.offset_in_bytes == 12, "StdVideoEncodeAV1PictureInfo.current_frame_id has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.current_frame_id has unexpected size % instead of 4", it.type.runtime_size); case "order_hint"; assert(it.offset_in_bytes == 16, "StdVideoEncodeAV1PictureInfo.order_hint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.order_hint has unexpected size % instead of 1", it.type.runtime_size); case "primary_ref_frame"; assert(it.offset_in_bytes == 17, "StdVideoEncodeAV1PictureInfo.primary_ref_frame has unexpected offset % instead of 17", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.primary_ref_frame has unexpected size % instead of 1", it.type.runtime_size); case "refresh_frame_flags"; assert(it.offset_in_bytes == 18, "StdVideoEncodeAV1PictureInfo.refresh_frame_flags has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.refresh_frame_flags has unexpected size % instead of 1", it.type.runtime_size); case "coded_denom"; assert(it.offset_in_bytes == 19, "StdVideoEncodeAV1PictureInfo.coded_denom has unexpected offset % instead of 19", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.coded_denom has unexpected size % instead of 1", it.type.runtime_size); case "render_width_minus_1"; assert(it.offset_in_bytes == 20, "StdVideoEncodeAV1PictureInfo.render_width_minus_1 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeAV1PictureInfo.render_width_minus_1 has unexpected size % instead of 2", it.type.runtime_size); case "render_height_minus_1"; assert(it.offset_in_bytes == 22, "StdVideoEncodeAV1PictureInfo.render_height_minus_1 has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 2, "StdVideoEncodeAV1PictureInfo.render_height_minus_1 has unexpected size % instead of 2", it.type.runtime_size); case "interpolation_filter"; assert(it.offset_in_bytes == 24, "StdVideoEncodeAV1PictureInfo.interpolation_filter has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.interpolation_filter has unexpected size % instead of 4", it.type.runtime_size); case "TxMode"; assert(it.offset_in_bytes == 28, "StdVideoEncodeAV1PictureInfo.TxMode has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1PictureInfo.TxMode has unexpected size % instead of 4", it.type.runtime_size); case "delta_q_res"; assert(it.offset_in_bytes == 32, "StdVideoEncodeAV1PictureInfo.delta_q_res has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.delta_q_res has unexpected size % instead of 1", it.type.runtime_size); case "delta_lf_res"; assert(it.offset_in_bytes == 33, "StdVideoEncodeAV1PictureInfo.delta_lf_res has unexpected offset % instead of 33", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1PictureInfo.delta_lf_res has unexpected size % instead of 1", it.type.runtime_size); case "ref_order_hint"; assert(it.offset_in_bytes == 34, "StdVideoEncodeAV1PictureInfo.ref_order_hint has unexpected offset % instead of 34", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.ref_order_hint has unexpected size % instead of 8", it.type.runtime_size); case "ref_frame_idx"; assert(it.offset_in_bytes == 42, "StdVideoEncodeAV1PictureInfo.ref_frame_idx has unexpected offset % instead of 42", it.offset_in_bytes); assert(it.type.runtime_size == 7, "StdVideoEncodeAV1PictureInfo.ref_frame_idx has unexpected size % instead of 7", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 49, "StdVideoEncodeAV1PictureInfo.reserved1 has unexpected offset % instead of 49", it.offset_in_bytes); assert(it.type.runtime_size == 3, "StdVideoEncodeAV1PictureInfo.reserved1 has unexpected size % instead of 3", it.type.runtime_size); case "delta_frame_id_minus_1"; assert(it.offset_in_bytes == 52, "StdVideoEncodeAV1PictureInfo.delta_frame_id_minus_1 has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 28, "StdVideoEncodeAV1PictureInfo.delta_frame_id_minus_1 has unexpected size % instead of 28", it.type.runtime_size); case "pTileInfo"; assert(it.offset_in_bytes == 80, "StdVideoEncodeAV1PictureInfo.pTileInfo has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pTileInfo has unexpected size % instead of 8", it.type.runtime_size); case "pQuantization"; assert(it.offset_in_bytes == 88, "StdVideoEncodeAV1PictureInfo.pQuantization has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pQuantization has unexpected size % instead of 8", it.type.runtime_size); case "pSegmentation"; assert(it.offset_in_bytes == 96, "StdVideoEncodeAV1PictureInfo.pSegmentation has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pSegmentation has unexpected size % instead of 8", it.type.runtime_size); case "pLoopFilter"; assert(it.offset_in_bytes == 104, "StdVideoEncodeAV1PictureInfo.pLoopFilter has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pLoopFilter has unexpected size % instead of 8", it.type.runtime_size); case "pCDEF"; assert(it.offset_in_bytes == 112, "StdVideoEncodeAV1PictureInfo.pCDEF has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pCDEF has unexpected size % instead of 8", it.type.runtime_size); case "pLoopRestoration"; assert(it.offset_in_bytes == 120, "StdVideoEncodeAV1PictureInfo.pLoopRestoration has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pLoopRestoration has unexpected size % instead of 8", it.type.runtime_size); case "pGlobalMotion"; assert(it.offset_in_bytes == 128, "StdVideoEncodeAV1PictureInfo.pGlobalMotion has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pGlobalMotion has unexpected size % instead of 8", it.type.runtime_size); case "pExtensionHeader"; assert(it.offset_in_bytes == 136, "StdVideoEncodeAV1PictureInfo.pExtensionHeader has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pExtensionHeader has unexpected size % instead of 8", it.type.runtime_size); case "pBufferRemovalTimes"; assert(it.offset_in_bytes == 144, "StdVideoEncodeAV1PictureInfo.pBufferRemovalTimes has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1PictureInfo.pBufferRemovalTimes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1PictureInfo) == 152, "StdVideoEncodeAV1PictureInfo has size % instead of 152", size_of(StdVideoEncodeAV1PictureInfo)); } { info := type_info(StdVideoEncodeAV1ReferenceInfoFlags); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1ReferenceInfoFlags.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1ReferenceInfoFlags.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1ReferenceInfoFlags) == 4, "StdVideoEncodeAV1ReferenceInfoFlags has size % instead of 4", size_of(StdVideoEncodeAV1ReferenceInfoFlags)); } { info := type_info(StdVideoEncodeAV1ReferenceInfo); for info.members { if it.name == { case "flags"; assert(it.offset_in_bytes == 0, "StdVideoEncodeAV1ReferenceInfo.flags has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1ReferenceInfo.flags has unexpected size % instead of 4", it.type.runtime_size); case "RefFrameId"; assert(it.offset_in_bytes == 4, "StdVideoEncodeAV1ReferenceInfo.RefFrameId has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1ReferenceInfo.RefFrameId has unexpected size % instead of 4", it.type.runtime_size); case "frame_type"; assert(it.offset_in_bytes == 8, "StdVideoEncodeAV1ReferenceInfo.frame_type has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "StdVideoEncodeAV1ReferenceInfo.frame_type has unexpected size % instead of 4", it.type.runtime_size); case "OrderHint"; assert(it.offset_in_bytes == 12, "StdVideoEncodeAV1ReferenceInfo.OrderHint has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 1, "StdVideoEncodeAV1ReferenceInfo.OrderHint has unexpected size % instead of 1", it.type.runtime_size); case "reserved1"; assert(it.offset_in_bytes == 13, "StdVideoEncodeAV1ReferenceInfo.reserved1 has unexpected offset % instead of 13", it.offset_in_bytes); assert(it.type.runtime_size == 3, "StdVideoEncodeAV1ReferenceInfo.reserved1 has unexpected size % instead of 3", it.type.runtime_size); case "pExtensionHeader"; assert(it.offset_in_bytes == 16, "StdVideoEncodeAV1ReferenceInfo.pExtensionHeader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "StdVideoEncodeAV1ReferenceInfo.pExtensionHeader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(StdVideoEncodeAV1ReferenceInfo) == 24, "StdVideoEncodeAV1ReferenceInfo has size % instead of 24", size_of(StdVideoEncodeAV1ReferenceInfo)); } { info := type_info(VkPhysicalDeviceVideoEncodeAV1FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoEncodeAV1"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.videoEncodeAV1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR.videoEncodeAV1 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoEncodeAV1FeaturesKHR) == 24, "VkPhysicalDeviceVideoEncodeAV1FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceVideoEncodeAV1FeaturesKHR)); } { info := type_info(VkVideoEncodeAV1CapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1CapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1CapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1CapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1CapabilitiesKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "maxLevel"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1CapabilitiesKHR.maxLevel has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxLevel has unexpected size % instead of 4", it.type.runtime_size); case "codedPictureAlignment"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1CapabilitiesKHR.codedPictureAlignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1CapabilitiesKHR.codedPictureAlignment has unexpected size % instead of 8", it.type.runtime_size); case "maxTiles"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1CapabilitiesKHR.maxTiles has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1CapabilitiesKHR.maxTiles has unexpected size % instead of 8", it.type.runtime_size); case "minTileSize"; assert(it.offset_in_bytes == 40, "VkVideoEncodeAV1CapabilitiesKHR.minTileSize has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1CapabilitiesKHR.minTileSize has unexpected size % instead of 8", it.type.runtime_size); case "maxTileSize"; assert(it.offset_in_bytes == 48, "VkVideoEncodeAV1CapabilitiesKHR.maxTileSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1CapabilitiesKHR.maxTileSize has unexpected size % instead of 8", it.type.runtime_size); case "superblockSizes"; assert(it.offset_in_bytes == 56, "VkVideoEncodeAV1CapabilitiesKHR.superblockSizes has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.superblockSizes has unexpected size % instead of 4", it.type.runtime_size); case "maxSingleReferenceCount"; assert(it.offset_in_bytes == 60, "VkVideoEncodeAV1CapabilitiesKHR.maxSingleReferenceCount has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxSingleReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "singleReferenceNameMask"; assert(it.offset_in_bytes == 64, "VkVideoEncodeAV1CapabilitiesKHR.singleReferenceNameMask has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.singleReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); case "maxUnidirectionalCompoundReferenceCount"; assert(it.offset_in_bytes == 68, "VkVideoEncodeAV1CapabilitiesKHR.maxUnidirectionalCompoundReferenceCount has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxUnidirectionalCompoundReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxUnidirectionalCompoundGroup1ReferenceCount"; assert(it.offset_in_bytes == 72, "VkVideoEncodeAV1CapabilitiesKHR.maxUnidirectionalCompoundGroup1ReferenceCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxUnidirectionalCompoundGroup1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "unidirectionalCompoundReferenceNameMask"; assert(it.offset_in_bytes == 76, "VkVideoEncodeAV1CapabilitiesKHR.unidirectionalCompoundReferenceNameMask has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.unidirectionalCompoundReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); case "maxBidirectionalCompoundReferenceCount"; assert(it.offset_in_bytes == 80, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundReferenceCount has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxBidirectionalCompoundGroup1ReferenceCount"; assert(it.offset_in_bytes == 84, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundGroup1ReferenceCount has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundGroup1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxBidirectionalCompoundGroup2ReferenceCount"; assert(it.offset_in_bytes == 88, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundGroup2ReferenceCount has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxBidirectionalCompoundGroup2ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "bidirectionalCompoundReferenceNameMask"; assert(it.offset_in_bytes == 92, "VkVideoEncodeAV1CapabilitiesKHR.bidirectionalCompoundReferenceNameMask has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.bidirectionalCompoundReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); case "maxTemporalLayerCount"; assert(it.offset_in_bytes == 96, "VkVideoEncodeAV1CapabilitiesKHR.maxTemporalLayerCount has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxTemporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "maxSpatialLayerCount"; assert(it.offset_in_bytes == 100, "VkVideoEncodeAV1CapabilitiesKHR.maxSpatialLayerCount has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxSpatialLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "maxOperatingPoints"; assert(it.offset_in_bytes == 104, "VkVideoEncodeAV1CapabilitiesKHR.maxOperatingPoints has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxOperatingPoints has unexpected size % instead of 4", it.type.runtime_size); case "minQIndex"; assert(it.offset_in_bytes == 108, "VkVideoEncodeAV1CapabilitiesKHR.minQIndex has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.minQIndex has unexpected size % instead of 4", it.type.runtime_size); case "maxQIndex"; assert(it.offset_in_bytes == 112, "VkVideoEncodeAV1CapabilitiesKHR.maxQIndex has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.maxQIndex has unexpected size % instead of 4", it.type.runtime_size); case "prefersGopRemainingFrames"; assert(it.offset_in_bytes == 116, "VkVideoEncodeAV1CapabilitiesKHR.prefersGopRemainingFrames has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.prefersGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "requiresGopRemainingFrames"; assert(it.offset_in_bytes == 120, "VkVideoEncodeAV1CapabilitiesKHR.requiresGopRemainingFrames has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.requiresGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "stdSyntaxFlags"; assert(it.offset_in_bytes == 124, "VkVideoEncodeAV1CapabilitiesKHR.stdSyntaxFlags has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1CapabilitiesKHR.stdSyntaxFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1CapabilitiesKHR) == 128, "VkVideoEncodeAV1CapabilitiesKHR has size % instead of 128", size_of(VkVideoEncodeAV1CapabilitiesKHR)); } { info := type_info(VkVideoEncodeAV1QIndexKHR); for info.members { if it.name == { case "intraQIndex"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1QIndexKHR.intraQIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QIndexKHR.intraQIndex has unexpected size % instead of 4", it.type.runtime_size); case "predictiveQIndex"; assert(it.offset_in_bytes == 4, "VkVideoEncodeAV1QIndexKHR.predictiveQIndex has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QIndexKHR.predictiveQIndex has unexpected size % instead of 4", it.type.runtime_size); case "bipredictiveQIndex"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1QIndexKHR.bipredictiveQIndex has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QIndexKHR.bipredictiveQIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1QIndexKHR) == 12, "VkVideoEncodeAV1QIndexKHR has size % instead of 12", size_of(VkVideoEncodeAV1QIndexKHR)); } { info := type_info(VkVideoEncodeAV1QualityLevelPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1QualityLevelPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1QualityLevelPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1QualityLevelPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "preferredRateControlFlags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredRateControlFlags has unexpected size % instead of 4", it.type.runtime_size); case "preferredGopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredGopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredKeyFramePeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredKeyFramePeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredKeyFramePeriod has unexpected size % instead of 4", it.type.runtime_size); case "preferredConsecutiveBipredictiveFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredConsecutiveBipredictiveFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredConsecutiveBipredictiveFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredTemporalLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredTemporalLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredTemporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredConstantQIndex"; assert(it.offset_in_bytes == 36, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredConstantQIndex has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredConstantQIndex has unexpected size % instead of 12", it.type.runtime_size); case "preferredMaxSingleReferenceCount"; assert(it.offset_in_bytes == 48, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxSingleReferenceCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxSingleReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredSingleReferenceNameMask"; assert(it.offset_in_bytes == 52, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredSingleReferenceNameMask has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredSingleReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxUnidirectionalCompoundReferenceCount"; assert(it.offset_in_bytes == 56, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxUnidirectionalCompoundReferenceCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxUnidirectionalCompoundReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxUnidirectionalCompoundGroup1ReferenceCount"; assert(it.offset_in_bytes == 60, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxUnidirectionalCompoundGroup1ReferenceCount has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxUnidirectionalCompoundGroup1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredUnidirectionalCompoundReferenceNameMask"; assert(it.offset_in_bytes == 64, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredUnidirectionalCompoundReferenceNameMask has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredUnidirectionalCompoundReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxBidirectionalCompoundReferenceCount"; assert(it.offset_in_bytes == 68, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundReferenceCount has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxBidirectionalCompoundGroup1ReferenceCount"; assert(it.offset_in_bytes == 72, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundGroup1ReferenceCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundGroup1ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredMaxBidirectionalCompoundGroup2ReferenceCount"; assert(it.offset_in_bytes == 76, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundGroup2ReferenceCount has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredMaxBidirectionalCompoundGroup2ReferenceCount has unexpected size % instead of 4", it.type.runtime_size); case "preferredBidirectionalCompoundReferenceNameMask"; assert(it.offset_in_bytes == 80, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredBidirectionalCompoundReferenceNameMask has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QualityLevelPropertiesKHR.preferredBidirectionalCompoundReferenceNameMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1QualityLevelPropertiesKHR) == 88, "VkVideoEncodeAV1QualityLevelPropertiesKHR has size % instead of 88", size_of(VkVideoEncodeAV1QualityLevelPropertiesKHR)); } { info := type_info(VkVideoEncodeAV1SessionCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1SessionCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1SessionCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1SessionCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1SessionCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMaxLevel"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1SessionCreateInfoKHR.useMaxLevel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1SessionCreateInfoKHR.useMaxLevel has unexpected size % instead of 4", it.type.runtime_size); case "maxLevel"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1SessionCreateInfoKHR.maxLevel has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1SessionCreateInfoKHR.maxLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1SessionCreateInfoKHR) == 24, "VkVideoEncodeAV1SessionCreateInfoKHR has size % instead of 24", size_of(VkVideoEncodeAV1SessionCreateInfoKHR)); } { info := type_info(VkVideoEncodeAV1SessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdSequenceHeader"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdSequenceHeader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdSequenceHeader has unexpected size % instead of 8", it.type.runtime_size); case "pStdDecoderModelInfo"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdDecoderModelInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdDecoderModelInfo has unexpected size % instead of 8", it.type.runtime_size); case "stdOperatingPointCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.stdOperatingPointCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.stdOperatingPointCount has unexpected size % instead of 4", it.type.runtime_size); case "pStdOperatingPoints"; assert(it.offset_in_bytes == 40, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdOperatingPoints has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1SessionParametersCreateInfoKHR.pStdOperatingPoints has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1SessionParametersCreateInfoKHR) == 48, "VkVideoEncodeAV1SessionParametersCreateInfoKHR has size % instead of 48", size_of(VkVideoEncodeAV1SessionParametersCreateInfoKHR)); } { info := type_info(VkVideoEncodeAV1PictureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1PictureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1PictureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1PictureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "predictionMode"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1PictureInfoKHR.predictionMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.predictionMode has unexpected size % instead of 4", it.type.runtime_size); case "rateControlGroup"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1PictureInfoKHR.rateControlGroup has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.rateControlGroup has unexpected size % instead of 4", it.type.runtime_size); case "constantQIndex"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1PictureInfoKHR.constantQIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.constantQIndex has unexpected size % instead of 4", it.type.runtime_size); case "pStdPictureInfo"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1PictureInfoKHR.pStdPictureInfo has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1PictureInfoKHR.pStdPictureInfo has unexpected size % instead of 8", it.type.runtime_size); case "referenceNameSlotIndices"; assert(it.offset_in_bytes == 40, "VkVideoEncodeAV1PictureInfoKHR.referenceNameSlotIndices has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 28, "VkVideoEncodeAV1PictureInfoKHR.referenceNameSlotIndices has unexpected size % instead of 28", it.type.runtime_size); case "primaryReferenceCdfOnly"; assert(it.offset_in_bytes == 68, "VkVideoEncodeAV1PictureInfoKHR.primaryReferenceCdfOnly has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.primaryReferenceCdfOnly has unexpected size % instead of 4", it.type.runtime_size); case "generateObuExtensionHeader"; assert(it.offset_in_bytes == 72, "VkVideoEncodeAV1PictureInfoKHR.generateObuExtensionHeader has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1PictureInfoKHR.generateObuExtensionHeader has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1PictureInfoKHR) == 80, "VkVideoEncodeAV1PictureInfoKHR has size % instead of 80", size_of(VkVideoEncodeAV1PictureInfoKHR)); } { info := type_info(VkVideoEncodeAV1DpbSlotInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1DpbSlotInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1DpbSlotInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1DpbSlotInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1DpbSlotInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdReferenceInfo"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1DpbSlotInfoKHR.pStdReferenceInfo has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1DpbSlotInfoKHR.pStdReferenceInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1DpbSlotInfoKHR) == 24, "VkVideoEncodeAV1DpbSlotInfoKHR has size % instead of 24", size_of(VkVideoEncodeAV1DpbSlotInfoKHR)); } { info := type_info(VkVideoEncodeAV1ProfileInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1ProfileInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1ProfileInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1ProfileInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1ProfileInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stdProfile"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1ProfileInfoKHR.stdProfile has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1ProfileInfoKHR.stdProfile has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1ProfileInfoKHR) == 24, "VkVideoEncodeAV1ProfileInfoKHR has size % instead of 24", size_of(VkVideoEncodeAV1ProfileInfoKHR)); } { info := type_info(VkVideoEncodeAV1FrameSizeKHR); for info.members { if it.name == { case "intraFrameSize"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1FrameSizeKHR.intraFrameSize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1FrameSizeKHR.intraFrameSize has unexpected size % instead of 4", it.type.runtime_size); case "predictiveFrameSize"; assert(it.offset_in_bytes == 4, "VkVideoEncodeAV1FrameSizeKHR.predictiveFrameSize has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1FrameSizeKHR.predictiveFrameSize has unexpected size % instead of 4", it.type.runtime_size); case "bipredictiveFrameSize"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1FrameSizeKHR.bipredictiveFrameSize has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1FrameSizeKHR.bipredictiveFrameSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1FrameSizeKHR) == 12, "VkVideoEncodeAV1FrameSizeKHR has size % instead of 12", size_of(VkVideoEncodeAV1FrameSizeKHR)); } { info := type_info(VkVideoEncodeAV1GopRemainingFrameInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useGopRemainingFrames"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.useGopRemainingFrames has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingIntra"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingIntra has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingIntra has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingPredictive"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingPredictive has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingPredictive has unexpected size % instead of 4", it.type.runtime_size); case "gopRemainingBipredictive"; assert(it.offset_in_bytes == 28, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingBipredictive has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1GopRemainingFrameInfoKHR.gopRemainingBipredictive has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1GopRemainingFrameInfoKHR) == 32, "VkVideoEncodeAV1GopRemainingFrameInfoKHR has size % instead of 32", size_of(VkVideoEncodeAV1GopRemainingFrameInfoKHR)); } { info := type_info(VkVideoEncodeAV1RateControlInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1RateControlInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1RateControlInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1RateControlInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1RateControlInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "gopFrameCount"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1RateControlInfoKHR.gopFrameCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.gopFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "keyFramePeriod"; assert(it.offset_in_bytes == 24, "VkVideoEncodeAV1RateControlInfoKHR.keyFramePeriod has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.keyFramePeriod has unexpected size % instead of 4", it.type.runtime_size); case "consecutiveBipredictiveFrameCount"; assert(it.offset_in_bytes == 28, "VkVideoEncodeAV1RateControlInfoKHR.consecutiveBipredictiveFrameCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.consecutiveBipredictiveFrameCount has unexpected size % instead of 4", it.type.runtime_size); case "temporalLayerCount"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1RateControlInfoKHR.temporalLayerCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlInfoKHR.temporalLayerCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1RateControlInfoKHR) == 40, "VkVideoEncodeAV1RateControlInfoKHR has size % instead of 40", size_of(VkVideoEncodeAV1RateControlInfoKHR)); } { info := type_info(VkVideoEncodeAV1RateControlLayerInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1RateControlLayerInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlLayerInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1RateControlLayerInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1RateControlLayerInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "useMinQIndex"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMinQIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMinQIndex has unexpected size % instead of 4", it.type.runtime_size); case "minQIndex"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1RateControlLayerInfoKHR.minQIndex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeAV1RateControlLayerInfoKHR.minQIndex has unexpected size % instead of 12", it.type.runtime_size); case "useMaxQIndex"; assert(it.offset_in_bytes == 32, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMaxQIndex has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMaxQIndex has unexpected size % instead of 4", it.type.runtime_size); case "maxQIndex"; assert(it.offset_in_bytes == 36, "VkVideoEncodeAV1RateControlLayerInfoKHR.maxQIndex has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeAV1RateControlLayerInfoKHR.maxQIndex has unexpected size % instead of 12", it.type.runtime_size); case "useMaxFrameSize"; assert(it.offset_in_bytes == 48, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMaxFrameSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1RateControlLayerInfoKHR.useMaxFrameSize has unexpected size % instead of 4", it.type.runtime_size); case "maxFrameSize"; assert(it.offset_in_bytes == 52, "VkVideoEncodeAV1RateControlLayerInfoKHR.maxFrameSize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkVideoEncodeAV1RateControlLayerInfoKHR.maxFrameSize has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1RateControlLayerInfoKHR) == 64, "VkVideoEncodeAV1RateControlLayerInfoKHR has size % instead of 64", size_of(VkVideoEncodeAV1RateControlLayerInfoKHR)); } { info := type_info(VkPhysicalDeviceVideoMaintenance1FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoMaintenance1"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.videoMaintenance1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR.videoMaintenance1 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoMaintenance1FeaturesKHR) == 24, "VkPhysicalDeviceVideoMaintenance1FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceVideoMaintenance1FeaturesKHR)); } { info := type_info(VkVideoInlineQueryInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoInlineQueryInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoInlineQueryInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoInlineQueryInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoInlineQueryInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queryPool"; assert(it.offset_in_bytes == 16, "VkVideoInlineQueryInfoKHR.queryPool has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoInlineQueryInfoKHR.queryPool has unexpected size % instead of 8", it.type.runtime_size); case "firstQuery"; assert(it.offset_in_bytes == 24, "VkVideoInlineQueryInfoKHR.firstQuery has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoInlineQueryInfoKHR.firstQuery has unexpected size % instead of 4", it.type.runtime_size); case "queryCount"; assert(it.offset_in_bytes == 28, "VkVideoInlineQueryInfoKHR.queryCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoInlineQueryInfoKHR.queryCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoInlineQueryInfoKHR) == 32, "VkVideoInlineQueryInfoKHR has size % instead of 32", size_of(VkVideoInlineQueryInfoKHR)); } { info := type_info(VkCalibratedTimestampInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCalibratedTimestampInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCalibratedTimestampInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCalibratedTimestampInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCalibratedTimestampInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "timeDomain"; assert(it.offset_in_bytes == 16, "VkCalibratedTimestampInfoKHR.timeDomain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCalibratedTimestampInfoKHR.timeDomain has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCalibratedTimestampInfoKHR) == 24, "VkCalibratedTimestampInfoKHR has size % instead of 24", size_of(VkCalibratedTimestampInfoKHR)); } { info := type_info(VkSetDescriptorBufferOffsetsInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSetDescriptorBufferOffsetsInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetDescriptorBufferOffsetsInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSetDescriptorBufferOffsetsInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetDescriptorBufferOffsetsInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 16, "VkSetDescriptorBufferOffsetsInfoEXT.stageFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetDescriptorBufferOffsetsInfoEXT.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 24, "VkSetDescriptorBufferOffsetsInfoEXT.layout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetDescriptorBufferOffsetsInfoEXT.layout has unexpected size % instead of 8", it.type.runtime_size); case "firstSet"; assert(it.offset_in_bytes == 32, "VkSetDescriptorBufferOffsetsInfoEXT.firstSet has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetDescriptorBufferOffsetsInfoEXT.firstSet has unexpected size % instead of 4", it.type.runtime_size); case "setCount"; assert(it.offset_in_bytes == 36, "VkSetDescriptorBufferOffsetsInfoEXT.setCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetDescriptorBufferOffsetsInfoEXT.setCount has unexpected size % instead of 4", it.type.runtime_size); case "pBufferIndices"; assert(it.offset_in_bytes == 40, "VkSetDescriptorBufferOffsetsInfoEXT.pBufferIndices has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetDescriptorBufferOffsetsInfoEXT.pBufferIndices has unexpected size % instead of 8", it.type.runtime_size); case "pOffsets"; assert(it.offset_in_bytes == 48, "VkSetDescriptorBufferOffsetsInfoEXT.pOffsets has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetDescriptorBufferOffsetsInfoEXT.pOffsets has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSetDescriptorBufferOffsetsInfoEXT) == 56, "VkSetDescriptorBufferOffsetsInfoEXT has size % instead of 56", size_of(VkSetDescriptorBufferOffsetsInfoEXT)); } { info := type_info(VkBindDescriptorBufferEmbeddedSamplersInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stageFlags"; assert(it.offset_in_bytes == 16, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.stageFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.stageFlags has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 24, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.layout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.layout has unexpected size % instead of 8", it.type.runtime_size); case "set"; assert(it.offset_in_bytes == 32, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.set has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT.set has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindDescriptorBufferEmbeddedSamplersInfoEXT) == 40, "VkBindDescriptorBufferEmbeddedSamplersInfoEXT has size % instead of 40", size_of(VkBindDescriptorBufferEmbeddedSamplersInfoEXT)); } { info := type_info(VkVideoEncodeQuantizationMapCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeQuantizationMapCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQuantizationMapCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeQuantizationMapCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxQuantizationMapExtent"; assert(it.offset_in_bytes == 16, "VkVideoEncodeQuantizationMapCapabilitiesKHR.maxQuantizationMapExtent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapCapabilitiesKHR.maxQuantizationMapExtent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeQuantizationMapCapabilitiesKHR) == 24, "VkVideoEncodeQuantizationMapCapabilitiesKHR has size % instead of 24", size_of(VkVideoEncodeQuantizationMapCapabilitiesKHR)); } { info := type_info(VkVideoFormatQuantizationMapPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoFormatQuantizationMapPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatQuantizationMapPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoFormatQuantizationMapPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoFormatQuantizationMapPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "quantizationMapTexelSize"; assert(it.offset_in_bytes == 16, "VkVideoFormatQuantizationMapPropertiesKHR.quantizationMapTexelSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoFormatQuantizationMapPropertiesKHR.quantizationMapTexelSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoFormatQuantizationMapPropertiesKHR) == 24, "VkVideoFormatQuantizationMapPropertiesKHR has size % instead of 24", size_of(VkVideoFormatQuantizationMapPropertiesKHR)); } { info := type_info(VkVideoEncodeQuantizationMapInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeQuantizationMapInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQuantizationMapInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeQuantizationMapInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "quantizationMap"; assert(it.offset_in_bytes == 16, "VkVideoEncodeQuantizationMapInfoKHR.quantizationMap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapInfoKHR.quantizationMap has unexpected size % instead of 8", it.type.runtime_size); case "quantizationMapExtent"; assert(it.offset_in_bytes == 24, "VkVideoEncodeQuantizationMapInfoKHR.quantizationMapExtent has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapInfoKHR.quantizationMapExtent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeQuantizationMapInfoKHR) == 32, "VkVideoEncodeQuantizationMapInfoKHR has size % instead of 32", size_of(VkVideoEncodeQuantizationMapInfoKHR)); } { info := type_info(VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "quantizationMapTexelSize"; assert(it.offset_in_bytes == 16, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.quantizationMapTexelSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR.quantizationMapTexelSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR) == 24, "VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR has size % instead of 24", size_of(VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR)); } { info := type_info(VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoEncodeQuantizationMap"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.videoEncodeQuantizationMap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR.videoEncodeQuantizationMap has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR) == 24, "VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR)); } { info := type_info(VkVideoEncodeH264QuantizationMapCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minQpDelta"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.minQpDelta has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.minQpDelta has unexpected size % instead of 4", it.type.runtime_size); case "maxQpDelta"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.maxQpDelta has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR.maxQpDelta has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH264QuantizationMapCapabilitiesKHR) == 24, "VkVideoEncodeH264QuantizationMapCapabilitiesKHR has size % instead of 24", size_of(VkVideoEncodeH264QuantizationMapCapabilitiesKHR)); } { info := type_info(VkVideoEncodeH265QuantizationMapCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minQpDelta"; assert(it.offset_in_bytes == 16, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.minQpDelta has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.minQpDelta has unexpected size % instead of 4", it.type.runtime_size); case "maxQpDelta"; assert(it.offset_in_bytes == 20, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.maxQpDelta has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR.maxQpDelta has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeH265QuantizationMapCapabilitiesKHR) == 24, "VkVideoEncodeH265QuantizationMapCapabilitiesKHR has size % instead of 24", size_of(VkVideoEncodeH265QuantizationMapCapabilitiesKHR)); } { info := type_info(VkVideoFormatH265QuantizationMapPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoFormatH265QuantizationMapPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatH265QuantizationMapPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoFormatH265QuantizationMapPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoFormatH265QuantizationMapPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "compatibleCtbSizes"; assert(it.offset_in_bytes == 16, "VkVideoFormatH265QuantizationMapPropertiesKHR.compatibleCtbSizes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatH265QuantizationMapPropertiesKHR.compatibleCtbSizes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoFormatH265QuantizationMapPropertiesKHR) == 24, "VkVideoFormatH265QuantizationMapPropertiesKHR has size % instead of 24", size_of(VkVideoFormatH265QuantizationMapPropertiesKHR)); } { info := type_info(VkVideoEncodeAV1QuantizationMapCapabilitiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minQIndexDelta"; assert(it.offset_in_bytes == 16, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.minQIndexDelta has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.minQIndexDelta has unexpected size % instead of 4", it.type.runtime_size); case "maxQIndexDelta"; assert(it.offset_in_bytes == 20, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.maxQIndexDelta has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR.maxQIndexDelta has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoEncodeAV1QuantizationMapCapabilitiesKHR) == 24, "VkVideoEncodeAV1QuantizationMapCapabilitiesKHR has size % instead of 24", size_of(VkVideoEncodeAV1QuantizationMapCapabilitiesKHR)); } { info := type_info(VkVideoFormatAV1QuantizationMapPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoFormatAV1QuantizationMapPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatAV1QuantizationMapPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoFormatAV1QuantizationMapPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoFormatAV1QuantizationMapPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "compatibleSuperblockSizes"; assert(it.offset_in_bytes == 16, "VkVideoFormatAV1QuantizationMapPropertiesKHR.compatibleSuperblockSizes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoFormatAV1QuantizationMapPropertiesKHR.compatibleSuperblockSizes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVideoFormatAV1QuantizationMapPropertiesKHR) == 24, "VkVideoFormatAV1QuantizationMapPropertiesKHR has size % instead of 24", size_of(VkVideoFormatAV1QuantizationMapPropertiesKHR)); } { info := type_info(VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderRelaxedExtendedInstruction"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.shaderRelaxedExtendedInstruction has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR.shaderRelaxedExtendedInstruction has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR) == 24, "VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR)); } { info := type_info(VkPhysicalDeviceMaintenance7FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance7FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance7FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance7FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maintenance7"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance7FeaturesKHR.maintenance7 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7FeaturesKHR.maintenance7 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance7FeaturesKHR) == 24, "VkPhysicalDeviceMaintenance7FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceMaintenance7FeaturesKHR)); } { info := type_info(VkPhysicalDeviceMaintenance7PropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance7PropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance7PropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance7PropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "robustFragmentShadingRateAttachmentAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance7PropertiesKHR.robustFragmentShadingRateAttachmentAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.robustFragmentShadingRateAttachmentAccess has unexpected size % instead of 4", it.type.runtime_size); case "separateDepthStencilAttachmentAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMaintenance7PropertiesKHR.separateDepthStencilAttachmentAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.separateDepthStencilAttachmentAccess has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetTotalUniformBuffersDynamic"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalUniformBuffersDynamic has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalUniformBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetTotalStorageBuffersDynamic"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalStorageBuffersDynamic has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalStorageBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetTotalBuffersDynamic"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalBuffersDynamic has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetTotalBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindTotalBuffersDynamic"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalBuffersDynamic has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance7PropertiesKHR.maxDescriptorSetUpdateAfterBindTotalBuffersDynamic has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance7PropertiesKHR) == 48, "VkPhysicalDeviceMaintenance7PropertiesKHR has size % instead of 48", size_of(VkPhysicalDeviceMaintenance7PropertiesKHR)); } { info := type_info(VkPhysicalDeviceLayeredApiPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLayeredApiPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLayeredApiPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLayeredApiPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vendorID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLayeredApiPropertiesKHR.vendorID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesKHR.vendorID has unexpected size % instead of 4", it.type.runtime_size); case "deviceID"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceLayeredApiPropertiesKHR.deviceID has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesKHR.deviceID has unexpected size % instead of 4", it.type.runtime_size); case "layeredAPI"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceLayeredApiPropertiesKHR.layeredAPI has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesKHR.layeredAPI has unexpected size % instead of 4", it.type.runtime_size); case "deviceName"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceLayeredApiPropertiesKHR.deviceName has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkPhysicalDeviceLayeredApiPropertiesKHR.deviceName has unexpected size % instead of 256", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLayeredApiPropertiesKHR) == 288, "VkPhysicalDeviceLayeredApiPropertiesKHR has size % instead of 288", size_of(VkPhysicalDeviceLayeredApiPropertiesKHR)); } { info := type_info(VkPhysicalDeviceLayeredApiPropertiesListKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLayeredApiPropertiesListKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesListKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLayeredApiPropertiesListKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLayeredApiPropertiesListKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "layeredApiCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLayeredApiPropertiesListKHR.layeredApiCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiPropertiesListKHR.layeredApiCount has unexpected size % instead of 4", it.type.runtime_size); case "pLayeredApis"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceLayeredApiPropertiesListKHR.pLayeredApis has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLayeredApiPropertiesListKHR.pLayeredApis has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLayeredApiPropertiesListKHR) == 32, "VkPhysicalDeviceLayeredApiPropertiesListKHR has size % instead of 32", size_of(VkPhysicalDeviceLayeredApiPropertiesListKHR)); } { info := type_info(VkPhysicalDeviceLayeredApiVulkanPropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "properties"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.properties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 840, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR.properties has unexpected size % instead of 840", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLayeredApiVulkanPropertiesKHR) == 856, "VkPhysicalDeviceLayeredApiVulkanPropertiesKHR has size % instead of 856", size_of(VkPhysicalDeviceLayeredApiVulkanPropertiesKHR)); } { info := type_info(VkPhysicalDeviceMaintenance8FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMaintenance8FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance8FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMaintenance8FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMaintenance8FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maintenance8"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMaintenance8FeaturesKHR.maintenance8 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMaintenance8FeaturesKHR.maintenance8 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMaintenance8FeaturesKHR) == 24, "VkPhysicalDeviceMaintenance8FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceMaintenance8FeaturesKHR)); } { info := type_info(VkMemoryBarrierAccessFlags3KHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryBarrierAccessFlags3KHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryBarrierAccessFlags3KHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryBarrierAccessFlags3KHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrierAccessFlags3KHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcAccessMask3"; assert(it.offset_in_bytes == 16, "VkMemoryBarrierAccessFlags3KHR.srcAccessMask3 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrierAccessFlags3KHR.srcAccessMask3 has unexpected size % instead of 8", it.type.runtime_size); case "dstAccessMask3"; assert(it.offset_in_bytes == 24, "VkMemoryBarrierAccessFlags3KHR.dstAccessMask3 has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryBarrierAccessFlags3KHR.dstAccessMask3 has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryBarrierAccessFlags3KHR) == 32, "VkMemoryBarrierAccessFlags3KHR has size % instead of 32", size_of(VkMemoryBarrierAccessFlags3KHR)); } { info := type_info(VkPhysicalDeviceVideoMaintenance2FeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "videoMaintenance2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.videoMaintenance2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR.videoMaintenance2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVideoMaintenance2FeaturesKHR) == 24, "VkPhysicalDeviceVideoMaintenance2FeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceVideoMaintenance2FeaturesKHR)); } { info := type_info(VkVideoDecodeH264InlineSessionParametersInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH264InlineSessionParametersInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH264InlineSessionParametersInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdSPS"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pStdSPS has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pStdSPS has unexpected size % instead of 8", it.type.runtime_size); case "pStdPPS"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pStdPPS has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH264InlineSessionParametersInfoKHR.pStdPPS has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH264InlineSessionParametersInfoKHR) == 32, "VkVideoDecodeH264InlineSessionParametersInfoKHR has size % instead of 32", size_of(VkVideoDecodeH264InlineSessionParametersInfoKHR)); } { info := type_info(VkVideoDecodeH265InlineSessionParametersInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeH265InlineSessionParametersInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeH265InlineSessionParametersInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdVPS"; assert(it.offset_in_bytes == 16, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdVPS has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdVPS has unexpected size % instead of 8", it.type.runtime_size); case "pStdSPS"; assert(it.offset_in_bytes == 24, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdSPS has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdSPS has unexpected size % instead of 8", it.type.runtime_size); case "pStdPPS"; assert(it.offset_in_bytes == 32, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdPPS has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeH265InlineSessionParametersInfoKHR.pStdPPS has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeH265InlineSessionParametersInfoKHR) == 40, "VkVideoDecodeH265InlineSessionParametersInfoKHR has size % instead of 40", size_of(VkVideoDecodeH265InlineSessionParametersInfoKHR)); } { info := type_info(VkVideoDecodeAV1InlineSessionParametersInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pStdSequenceHeader"; assert(it.offset_in_bytes == 16, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.pStdSequenceHeader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVideoDecodeAV1InlineSessionParametersInfoKHR.pStdSequenceHeader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkVideoDecodeAV1InlineSessionParametersInfoKHR) == 24, "VkVideoDecodeAV1InlineSessionParametersInfoKHR has size % instead of 24", size_of(VkVideoDecodeAV1InlineSessionParametersInfoKHR)); } { info := type_info(VkPhysicalDeviceDepthClampZeroOneFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthClampZeroOne"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.depthClampZeroOne has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR.depthClampZeroOne has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthClampZeroOneFeaturesKHR) == 24, "VkPhysicalDeviceDepthClampZeroOneFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceDepthClampZeroOneFeaturesKHR)); } { info := type_info(VkDebugReportCallbackCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugReportCallbackCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugReportCallbackCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugReportCallbackCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugReportCallbackCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDebugReportCallbackCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugReportCallbackCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "pfnCallback"; assert(it.offset_in_bytes == 24, "VkDebugReportCallbackCreateInfoEXT.pfnCallback has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugReportCallbackCreateInfoEXT.pfnCallback has unexpected size % instead of 8", it.type.runtime_size); case "pUserData"; assert(it.offset_in_bytes == 32, "VkDebugReportCallbackCreateInfoEXT.pUserData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugReportCallbackCreateInfoEXT.pUserData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugReportCallbackCreateInfoEXT) == 40, "VkDebugReportCallbackCreateInfoEXT has size % instead of 40", size_of(VkDebugReportCallbackCreateInfoEXT)); } { info := type_info(VkPipelineRasterizationStateRasterizationOrderAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationStateRasterizationOrderAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateRasterizationOrderAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationStateRasterizationOrderAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationStateRasterizationOrderAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rasterizationOrder"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationStateRasterizationOrderAMD.rasterizationOrder has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateRasterizationOrderAMD.rasterizationOrder has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationStateRasterizationOrderAMD) == 24, "VkPipelineRasterizationStateRasterizationOrderAMD has size % instead of 24", size_of(VkPipelineRasterizationStateRasterizationOrderAMD)); } { info := type_info(VkDebugMarkerObjectNameInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugMarkerObjectNameInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugMarkerObjectNameInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugMarkerObjectNameInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectNameInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "objectType"; assert(it.offset_in_bytes == 16, "VkDebugMarkerObjectNameInfoEXT.objectType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugMarkerObjectNameInfoEXT.objectType has unexpected size % instead of 4", it.type.runtime_size); case "object"; assert(it.offset_in_bytes == 24, "VkDebugMarkerObjectNameInfoEXT.object has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectNameInfoEXT.object has unexpected size % instead of 8", it.type.runtime_size); case "pObjectName"; assert(it.offset_in_bytes == 32, "VkDebugMarkerObjectNameInfoEXT.pObjectName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectNameInfoEXT.pObjectName has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugMarkerObjectNameInfoEXT) == 40, "VkDebugMarkerObjectNameInfoEXT has size % instead of 40", size_of(VkDebugMarkerObjectNameInfoEXT)); } { info := type_info(VkDebugMarkerObjectTagInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugMarkerObjectTagInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugMarkerObjectTagInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugMarkerObjectTagInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectTagInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "objectType"; assert(it.offset_in_bytes == 16, "VkDebugMarkerObjectTagInfoEXT.objectType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugMarkerObjectTagInfoEXT.objectType has unexpected size % instead of 4", it.type.runtime_size); case "object"; assert(it.offset_in_bytes == 24, "VkDebugMarkerObjectTagInfoEXT.object has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectTagInfoEXT.object has unexpected size % instead of 8", it.type.runtime_size); case "tagName"; assert(it.offset_in_bytes == 32, "VkDebugMarkerObjectTagInfoEXT.tagName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectTagInfoEXT.tagName has unexpected size % instead of 8", it.type.runtime_size); case "tagSize"; assert(it.offset_in_bytes == 40, "VkDebugMarkerObjectTagInfoEXT.tagSize has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectTagInfoEXT.tagSize has unexpected size % instead of 8", it.type.runtime_size); case "pTag"; assert(it.offset_in_bytes == 48, "VkDebugMarkerObjectTagInfoEXT.pTag has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerObjectTagInfoEXT.pTag has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugMarkerObjectTagInfoEXT) == 56, "VkDebugMarkerObjectTagInfoEXT has size % instead of 56", size_of(VkDebugMarkerObjectTagInfoEXT)); } { info := type_info(VkDebugMarkerMarkerInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugMarkerMarkerInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugMarkerMarkerInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugMarkerMarkerInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerMarkerInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pMarkerName"; assert(it.offset_in_bytes == 16, "VkDebugMarkerMarkerInfoEXT.pMarkerName has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugMarkerMarkerInfoEXT.pMarkerName has unexpected size % instead of 8", it.type.runtime_size); case "color"; assert(it.offset_in_bytes == 24, "VkDebugMarkerMarkerInfoEXT.color has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDebugMarkerMarkerInfoEXT.color has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkDebugMarkerMarkerInfoEXT) == 40, "VkDebugMarkerMarkerInfoEXT has size % instead of 40", size_of(VkDebugMarkerMarkerInfoEXT)); } { info := type_info(VkDedicatedAllocationImageCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDedicatedAllocationImageCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDedicatedAllocationImageCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDedicatedAllocationImageCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDedicatedAllocationImageCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dedicatedAllocation"; assert(it.offset_in_bytes == 16, "VkDedicatedAllocationImageCreateInfoNV.dedicatedAllocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDedicatedAllocationImageCreateInfoNV.dedicatedAllocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDedicatedAllocationImageCreateInfoNV) == 24, "VkDedicatedAllocationImageCreateInfoNV has size % instead of 24", size_of(VkDedicatedAllocationImageCreateInfoNV)); } { info := type_info(VkDedicatedAllocationBufferCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDedicatedAllocationBufferCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDedicatedAllocationBufferCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDedicatedAllocationBufferCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDedicatedAllocationBufferCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dedicatedAllocation"; assert(it.offset_in_bytes == 16, "VkDedicatedAllocationBufferCreateInfoNV.dedicatedAllocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDedicatedAllocationBufferCreateInfoNV.dedicatedAllocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDedicatedAllocationBufferCreateInfoNV) == 24, "VkDedicatedAllocationBufferCreateInfoNV has size % instead of 24", size_of(VkDedicatedAllocationBufferCreateInfoNV)); } { info := type_info(VkDedicatedAllocationMemoryAllocateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDedicatedAllocationMemoryAllocateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDedicatedAllocationMemoryAllocateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDedicatedAllocationMemoryAllocateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDedicatedAllocationMemoryAllocateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkDedicatedAllocationMemoryAllocateInfoNV.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDedicatedAllocationMemoryAllocateInfoNV.image has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 24, "VkDedicatedAllocationMemoryAllocateInfoNV.buffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDedicatedAllocationMemoryAllocateInfoNV.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDedicatedAllocationMemoryAllocateInfoNV) == 32, "VkDedicatedAllocationMemoryAllocateInfoNV has size % instead of 32", size_of(VkDedicatedAllocationMemoryAllocateInfoNV)); } { info := type_info(VkPhysicalDeviceTransformFeedbackFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "transformFeedback"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.transformFeedback has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.transformFeedback has unexpected size % instead of 4", it.type.runtime_size); case "geometryStreams"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.geometryStreams has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackFeaturesEXT.geometryStreams has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTransformFeedbackFeaturesEXT) == 24, "VkPhysicalDeviceTransformFeedbackFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceTransformFeedbackFeaturesEXT)); } { info := type_info(VkPhysicalDeviceTransformFeedbackPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxTransformFeedbackStreams"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackStreams has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackStreams has unexpected size % instead of 4", it.type.runtime_size); case "maxTransformFeedbackBuffers"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBuffers has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBuffers has unexpected size % instead of 4", it.type.runtime_size); case "maxTransformFeedbackBufferSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferSize has unexpected size % instead of 8", it.type.runtime_size); case "maxTransformFeedbackStreamDataSize"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackStreamDataSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackStreamDataSize has unexpected size % instead of 4", it.type.runtime_size); case "maxTransformFeedbackBufferDataSize"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferDataSize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferDataSize has unexpected size % instead of 4", it.type.runtime_size); case "maxTransformFeedbackBufferDataStride"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferDataStride has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.maxTransformFeedbackBufferDataStride has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackQueries"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackQueries has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackQueries has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackStreamsLinesTriangles"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackStreamsLinesTriangles has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackStreamsLinesTriangles has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackRasterizationStreamSelect"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackRasterizationStreamSelect has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackRasterizationStreamSelect has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackDraw"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackDraw has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTransformFeedbackPropertiesEXT.transformFeedbackDraw has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTransformFeedbackPropertiesEXT) == 64, "VkPhysicalDeviceTransformFeedbackPropertiesEXT has size % instead of 64", size_of(VkPhysicalDeviceTransformFeedbackPropertiesEXT)); } { info := type_info(VkPipelineRasterizationStateStreamCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationStateStreamCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateStreamCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationStateStreamCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationStateStreamCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationStateStreamCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateStreamCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationStream"; assert(it.offset_in_bytes == 20, "VkPipelineRasterizationStateStreamCreateInfoEXT.rasterizationStream has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationStateStreamCreateInfoEXT.rasterizationStream has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationStateStreamCreateInfoEXT) == 24, "VkPipelineRasterizationStateStreamCreateInfoEXT has size % instead of 24", size_of(VkPipelineRasterizationStateStreamCreateInfoEXT)); } { info := type_info(VkCuModuleCreateInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCuModuleCreateInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuModuleCreateInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCuModuleCreateInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuModuleCreateInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dataSize"; assert(it.offset_in_bytes == 16, "VkCuModuleCreateInfoNVX.dataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuModuleCreateInfoNVX.dataSize has unexpected size % instead of 8", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 24, "VkCuModuleCreateInfoNVX.pData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuModuleCreateInfoNVX.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCuModuleCreateInfoNVX) == 32, "VkCuModuleCreateInfoNVX has size % instead of 32", size_of(VkCuModuleCreateInfoNVX)); } { info := type_info(VkCuModuleTexturingModeCreateInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCuModuleTexturingModeCreateInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuModuleTexturingModeCreateInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCuModuleTexturingModeCreateInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuModuleTexturingModeCreateInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "use64bitTexturing"; assert(it.offset_in_bytes == 16, "VkCuModuleTexturingModeCreateInfoNVX.use64bitTexturing has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuModuleTexturingModeCreateInfoNVX.use64bitTexturing has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCuModuleTexturingModeCreateInfoNVX) == 24, "VkCuModuleTexturingModeCreateInfoNVX has size % instead of 24", size_of(VkCuModuleTexturingModeCreateInfoNVX)); } { info := type_info(VkCuFunctionCreateInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCuFunctionCreateInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuFunctionCreateInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCuFunctionCreateInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuFunctionCreateInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "module"; assert(it.offset_in_bytes == 16, "VkCuFunctionCreateInfoNVX.module has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuFunctionCreateInfoNVX.module has unexpected size % instead of 8", it.type.runtime_size); case "pName"; assert(it.offset_in_bytes == 24, "VkCuFunctionCreateInfoNVX.pName has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuFunctionCreateInfoNVX.pName has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCuFunctionCreateInfoNVX) == 32, "VkCuFunctionCreateInfoNVX has size % instead of 32", size_of(VkCuFunctionCreateInfoNVX)); } { info := type_info(VkCuLaunchInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCuLaunchInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCuLaunchInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "function"; assert(it.offset_in_bytes == 16, "VkCuLaunchInfoNVX.function has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.function has unexpected size % instead of 8", it.type.runtime_size); case "gridDimX"; assert(it.offset_in_bytes == 24, "VkCuLaunchInfoNVX.gridDimX has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.gridDimX has unexpected size % instead of 4", it.type.runtime_size); case "gridDimY"; assert(it.offset_in_bytes == 28, "VkCuLaunchInfoNVX.gridDimY has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.gridDimY has unexpected size % instead of 4", it.type.runtime_size); case "gridDimZ"; assert(it.offset_in_bytes == 32, "VkCuLaunchInfoNVX.gridDimZ has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.gridDimZ has unexpected size % instead of 4", it.type.runtime_size); case "blockDimX"; assert(it.offset_in_bytes == 36, "VkCuLaunchInfoNVX.blockDimX has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.blockDimX has unexpected size % instead of 4", it.type.runtime_size); case "blockDimY"; assert(it.offset_in_bytes == 40, "VkCuLaunchInfoNVX.blockDimY has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.blockDimY has unexpected size % instead of 4", it.type.runtime_size); case "blockDimZ"; assert(it.offset_in_bytes == 44, "VkCuLaunchInfoNVX.blockDimZ has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.blockDimZ has unexpected size % instead of 4", it.type.runtime_size); case "sharedMemBytes"; assert(it.offset_in_bytes == 48, "VkCuLaunchInfoNVX.sharedMemBytes has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCuLaunchInfoNVX.sharedMemBytes has unexpected size % instead of 4", it.type.runtime_size); case "paramCount"; assert(it.offset_in_bytes == 56, "VkCuLaunchInfoNVX.paramCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.paramCount has unexpected size % instead of 8", it.type.runtime_size); case "pParams"; assert(it.offset_in_bytes == 64, "VkCuLaunchInfoNVX.pParams has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.pParams has unexpected size % instead of 8", it.type.runtime_size); case "extraCount"; assert(it.offset_in_bytes == 72, "VkCuLaunchInfoNVX.extraCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.extraCount has unexpected size % instead of 8", it.type.runtime_size); case "pExtras"; assert(it.offset_in_bytes == 80, "VkCuLaunchInfoNVX.pExtras has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCuLaunchInfoNVX.pExtras has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCuLaunchInfoNVX) == 88, "VkCuLaunchInfoNVX has size % instead of 88", size_of(VkCuLaunchInfoNVX)); } { info := type_info(VkImageViewHandleInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewHandleInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewHandleInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewHandleInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewHandleInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 16, "VkImageViewHandleInfoNVX.imageView has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewHandleInfoNVX.imageView has unexpected size % instead of 8", it.type.runtime_size); case "descriptorType"; assert(it.offset_in_bytes == 24, "VkImageViewHandleInfoNVX.descriptorType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewHandleInfoNVX.descriptorType has unexpected size % instead of 4", it.type.runtime_size); case "sampler"; assert(it.offset_in_bytes == 32, "VkImageViewHandleInfoNVX.sampler has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewHandleInfoNVX.sampler has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageViewHandleInfoNVX) == 40, "VkImageViewHandleInfoNVX has size % instead of 40", size_of(VkImageViewHandleInfoNVX)); } { info := type_info(VkImageViewAddressPropertiesNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewAddressPropertiesNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewAddressPropertiesNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewAddressPropertiesNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewAddressPropertiesNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceAddress"; assert(it.offset_in_bytes == 16, "VkImageViewAddressPropertiesNVX.deviceAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewAddressPropertiesNVX.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 24, "VkImageViewAddressPropertiesNVX.size has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewAddressPropertiesNVX.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageViewAddressPropertiesNVX) == 32, "VkImageViewAddressPropertiesNVX has size % instead of 32", size_of(VkImageViewAddressPropertiesNVX)); } { info := type_info(VkTextureLODGatherFormatPropertiesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTextureLODGatherFormatPropertiesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTextureLODGatherFormatPropertiesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTextureLODGatherFormatPropertiesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTextureLODGatherFormatPropertiesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportsTextureGatherLODBiasAMD"; assert(it.offset_in_bytes == 16, "VkTextureLODGatherFormatPropertiesAMD.supportsTextureGatherLODBiasAMD has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTextureLODGatherFormatPropertiesAMD.supportsTextureGatherLODBiasAMD has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkTextureLODGatherFormatPropertiesAMD) == 24, "VkTextureLODGatherFormatPropertiesAMD has size % instead of 24", size_of(VkTextureLODGatherFormatPropertiesAMD)); } { info := type_info(VkShaderResourceUsageAMD); for info.members { if it.name == { case "numUsedVgprs"; assert(it.offset_in_bytes == 0, "VkShaderResourceUsageAMD.numUsedVgprs has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderResourceUsageAMD.numUsedVgprs has unexpected size % instead of 4", it.type.runtime_size); case "numUsedSgprs"; assert(it.offset_in_bytes == 4, "VkShaderResourceUsageAMD.numUsedSgprs has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderResourceUsageAMD.numUsedSgprs has unexpected size % instead of 4", it.type.runtime_size); case "ldsSizePerLocalWorkGroup"; assert(it.offset_in_bytes == 8, "VkShaderResourceUsageAMD.ldsSizePerLocalWorkGroup has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderResourceUsageAMD.ldsSizePerLocalWorkGroup has unexpected size % instead of 4", it.type.runtime_size); case "ldsUsageSizeInBytes"; assert(it.offset_in_bytes == 16, "VkShaderResourceUsageAMD.ldsUsageSizeInBytes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderResourceUsageAMD.ldsUsageSizeInBytes has unexpected size % instead of 8", it.type.runtime_size); case "scratchMemUsageInBytes"; assert(it.offset_in_bytes == 24, "VkShaderResourceUsageAMD.scratchMemUsageInBytes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderResourceUsageAMD.scratchMemUsageInBytes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkShaderResourceUsageAMD) == 32, "VkShaderResourceUsageAMD has size % instead of 32", size_of(VkShaderResourceUsageAMD)); } { info := type_info(VkShaderStatisticsInfoAMD); for info.members { if it.name == { case "shaderStageMask"; assert(it.offset_in_bytes == 0, "VkShaderStatisticsInfoAMD.shaderStageMask has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderStatisticsInfoAMD.shaderStageMask has unexpected size % instead of 4", it.type.runtime_size); case "resourceUsage"; assert(it.offset_in_bytes == 8, "VkShaderStatisticsInfoAMD.resourceUsage has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkShaderStatisticsInfoAMD.resourceUsage has unexpected size % instead of 32", it.type.runtime_size); case "numPhysicalVgprs"; assert(it.offset_in_bytes == 40, "VkShaderStatisticsInfoAMD.numPhysicalVgprs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderStatisticsInfoAMD.numPhysicalVgprs has unexpected size % instead of 4", it.type.runtime_size); case "numPhysicalSgprs"; assert(it.offset_in_bytes == 44, "VkShaderStatisticsInfoAMD.numPhysicalSgprs has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderStatisticsInfoAMD.numPhysicalSgprs has unexpected size % instead of 4", it.type.runtime_size); case "numAvailableVgprs"; assert(it.offset_in_bytes == 48, "VkShaderStatisticsInfoAMD.numAvailableVgprs has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderStatisticsInfoAMD.numAvailableVgprs has unexpected size % instead of 4", it.type.runtime_size); case "numAvailableSgprs"; assert(it.offset_in_bytes == 52, "VkShaderStatisticsInfoAMD.numAvailableSgprs has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderStatisticsInfoAMD.numAvailableSgprs has unexpected size % instead of 4", it.type.runtime_size); case "computeWorkGroupSize"; assert(it.offset_in_bytes == 56, "VkShaderStatisticsInfoAMD.computeWorkGroupSize has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkShaderStatisticsInfoAMD.computeWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkShaderStatisticsInfoAMD) == 72, "VkShaderStatisticsInfoAMD has size % instead of 72", size_of(VkShaderStatisticsInfoAMD)); } { info := type_info(VkPhysicalDeviceCornerSampledImageFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCornerSampledImageFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCornerSampledImageFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCornerSampledImageFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCornerSampledImageFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cornerSampledImage"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCornerSampledImageFeaturesNV.cornerSampledImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCornerSampledImageFeaturesNV.cornerSampledImage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCornerSampledImageFeaturesNV) == 24, "VkPhysicalDeviceCornerSampledImageFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCornerSampledImageFeaturesNV)); } { info := type_info(VkExternalImageFormatPropertiesNV); for info.members { if it.name == { case "imageFormatProperties"; assert(it.offset_in_bytes == 0, "VkExternalImageFormatPropertiesNV.imageFormatProperties has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkExternalImageFormatPropertiesNV.imageFormatProperties has unexpected size % instead of 32", it.type.runtime_size); case "externalMemoryFeatures"; assert(it.offset_in_bytes == 32, "VkExternalImageFormatPropertiesNV.externalMemoryFeatures has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalImageFormatPropertiesNV.externalMemoryFeatures has unexpected size % instead of 4", it.type.runtime_size); case "exportFromImportedHandleTypes"; assert(it.offset_in_bytes == 36, "VkExternalImageFormatPropertiesNV.exportFromImportedHandleTypes has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalImageFormatPropertiesNV.exportFromImportedHandleTypes has unexpected size % instead of 4", it.type.runtime_size); case "compatibleHandleTypes"; assert(it.offset_in_bytes == 40, "VkExternalImageFormatPropertiesNV.compatibleHandleTypes has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalImageFormatPropertiesNV.compatibleHandleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalImageFormatPropertiesNV) == 48, "VkExternalImageFormatPropertiesNV has size % instead of 48", size_of(VkExternalImageFormatPropertiesNV)); } { info := type_info(VkExternalMemoryImageCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalMemoryImageCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryImageCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalMemoryImageCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalMemoryImageCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExternalMemoryImageCreateInfoNV.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryImageCreateInfoNV.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalMemoryImageCreateInfoNV) == 24, "VkExternalMemoryImageCreateInfoNV has size % instead of 24", size_of(VkExternalMemoryImageCreateInfoNV)); } { info := type_info(VkExportMemoryAllocateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExportMemoryAllocateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportMemoryAllocateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExportMemoryAllocateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExportMemoryAllocateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleTypes"; assert(it.offset_in_bytes == 16, "VkExportMemoryAllocateInfoNV.handleTypes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExportMemoryAllocateInfoNV.handleTypes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExportMemoryAllocateInfoNV) == 24, "VkExportMemoryAllocateInfoNV has size % instead of 24", size_of(VkExportMemoryAllocateInfoNV)); } { info := type_info(VkValidationFlagsEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkValidationFlagsEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationFlagsEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkValidationFlagsEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationFlagsEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "disabledValidationCheckCount"; assert(it.offset_in_bytes == 16, "VkValidationFlagsEXT.disabledValidationCheckCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationFlagsEXT.disabledValidationCheckCount has unexpected size % instead of 4", it.type.runtime_size); case "pDisabledValidationChecks"; assert(it.offset_in_bytes == 24, "VkValidationFlagsEXT.pDisabledValidationChecks has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationFlagsEXT.pDisabledValidationChecks has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkValidationFlagsEXT) == 32, "VkValidationFlagsEXT has size % instead of 32", size_of(VkValidationFlagsEXT)); } { info := type_info(VkImageViewASTCDecodeModeEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewASTCDecodeModeEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewASTCDecodeModeEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewASTCDecodeModeEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewASTCDecodeModeEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "decodeMode"; assert(it.offset_in_bytes == 16, "VkImageViewASTCDecodeModeEXT.decodeMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewASTCDecodeModeEXT.decodeMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageViewASTCDecodeModeEXT) == 24, "VkImageViewASTCDecodeModeEXT has size % instead of 24", size_of(VkImageViewASTCDecodeModeEXT)); } { info := type_info(VkPhysicalDeviceASTCDecodeFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceASTCDecodeFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceASTCDecodeFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceASTCDecodeFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceASTCDecodeFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "decodeModeSharedExponent"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceASTCDecodeFeaturesEXT.decodeModeSharedExponent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceASTCDecodeFeaturesEXT.decodeModeSharedExponent has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceASTCDecodeFeaturesEXT) == 24, "VkPhysicalDeviceASTCDecodeFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceASTCDecodeFeaturesEXT)); } { info := type_info(VkConditionalRenderingBeginInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkConditionalRenderingBeginInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConditionalRenderingBeginInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkConditionalRenderingBeginInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConditionalRenderingBeginInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkConditionalRenderingBeginInfoEXT.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConditionalRenderingBeginInfoEXT.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 24, "VkConditionalRenderingBeginInfoEXT.offset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConditionalRenderingBeginInfoEXT.offset has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 32, "VkConditionalRenderingBeginInfoEXT.flags has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConditionalRenderingBeginInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkConditionalRenderingBeginInfoEXT) == 40, "VkConditionalRenderingBeginInfoEXT has size % instead of 40", size_of(VkConditionalRenderingBeginInfoEXT)); } { info := type_info(VkPhysicalDeviceConditionalRenderingFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "conditionalRendering"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.conditionalRendering has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.conditionalRendering has unexpected size % instead of 4", it.type.runtime_size); case "inheritedConditionalRendering"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.inheritedConditionalRendering has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConditionalRenderingFeaturesEXT.inheritedConditionalRendering has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceConditionalRenderingFeaturesEXT) == 24, "VkPhysicalDeviceConditionalRenderingFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceConditionalRenderingFeaturesEXT)); } { info := type_info(VkCommandBufferInheritanceConditionalRenderingInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "conditionalRenderingEnable"; assert(it.offset_in_bytes == 16, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.conditionalRenderingEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceConditionalRenderingInfoEXT.conditionalRenderingEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCommandBufferInheritanceConditionalRenderingInfoEXT) == 24, "VkCommandBufferInheritanceConditionalRenderingInfoEXT has size % instead of 24", size_of(VkCommandBufferInheritanceConditionalRenderingInfoEXT)); } { info := type_info(VkViewportWScalingNV); for info.members { if it.name == { case "xcoeff"; assert(it.offset_in_bytes == 0, "VkViewportWScalingNV.xcoeff has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportWScalingNV.xcoeff has unexpected size % instead of 4", it.type.runtime_size); case "ycoeff"; assert(it.offset_in_bytes == 4, "VkViewportWScalingNV.ycoeff has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportWScalingNV.ycoeff has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkViewportWScalingNV) == 8, "VkViewportWScalingNV has size % instead of 8", size_of(VkViewportWScalingNV)); } { info := type_info(VkPipelineViewportWScalingStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportWScalingStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportWScalingStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportWScalingStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportWScalingStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "viewportWScalingEnable"; assert(it.offset_in_bytes == 16, "VkPipelineViewportWScalingStateCreateInfoNV.viewportWScalingEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportWScalingStateCreateInfoNV.viewportWScalingEnable has unexpected size % instead of 4", it.type.runtime_size); case "viewportCount"; assert(it.offset_in_bytes == 20, "VkPipelineViewportWScalingStateCreateInfoNV.viewportCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportWScalingStateCreateInfoNV.viewportCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewportWScalings"; assert(it.offset_in_bytes == 24, "VkPipelineViewportWScalingStateCreateInfoNV.pViewportWScalings has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportWScalingStateCreateInfoNV.pViewportWScalings has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportWScalingStateCreateInfoNV) == 32, "VkPipelineViewportWScalingStateCreateInfoNV has size % instead of 32", size_of(VkPipelineViewportWScalingStateCreateInfoNV)); } { info := type_info(VkSurfaceCapabilities2EXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfaceCapabilities2EXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfaceCapabilities2EXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilities2EXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minImageCount"; assert(it.offset_in_bytes == 16, "VkSurfaceCapabilities2EXT.minImageCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.minImageCount has unexpected size % instead of 4", it.type.runtime_size); case "maxImageCount"; assert(it.offset_in_bytes == 20, "VkSurfaceCapabilities2EXT.maxImageCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.maxImageCount has unexpected size % instead of 4", it.type.runtime_size); case "currentExtent"; assert(it.offset_in_bytes == 24, "VkSurfaceCapabilities2EXT.currentExtent has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilities2EXT.currentExtent has unexpected size % instead of 8", it.type.runtime_size); case "minImageExtent"; assert(it.offset_in_bytes == 32, "VkSurfaceCapabilities2EXT.minImageExtent has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilities2EXT.minImageExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxImageExtent"; assert(it.offset_in_bytes == 40, "VkSurfaceCapabilities2EXT.maxImageExtent has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilities2EXT.maxImageExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxImageArrayLayers"; assert(it.offset_in_bytes == 48, "VkSurfaceCapabilities2EXT.maxImageArrayLayers has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.maxImageArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "supportedTransforms"; assert(it.offset_in_bytes == 52, "VkSurfaceCapabilities2EXT.supportedTransforms has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.supportedTransforms has unexpected size % instead of 4", it.type.runtime_size); case "currentTransform"; assert(it.offset_in_bytes == 56, "VkSurfaceCapabilities2EXT.currentTransform has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.currentTransform has unexpected size % instead of 4", it.type.runtime_size); case "supportedCompositeAlpha"; assert(it.offset_in_bytes == 60, "VkSurfaceCapabilities2EXT.supportedCompositeAlpha has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.supportedCompositeAlpha has unexpected size % instead of 4", it.type.runtime_size); case "supportedUsageFlags"; assert(it.offset_in_bytes == 64, "VkSurfaceCapabilities2EXT.supportedUsageFlags has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.supportedUsageFlags has unexpected size % instead of 4", it.type.runtime_size); case "supportedSurfaceCounters"; assert(it.offset_in_bytes == 68, "VkSurfaceCapabilities2EXT.supportedSurfaceCounters has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilities2EXT.supportedSurfaceCounters has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfaceCapabilities2EXT) == 72, "VkSurfaceCapabilities2EXT has size % instead of 72", size_of(VkSurfaceCapabilities2EXT)); } { info := type_info(VkDisplayPowerInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayPowerInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPowerInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayPowerInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayPowerInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "powerState"; assert(it.offset_in_bytes == 16, "VkDisplayPowerInfoEXT.powerState has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayPowerInfoEXT.powerState has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayPowerInfoEXT) == 24, "VkDisplayPowerInfoEXT has size % instead of 24", size_of(VkDisplayPowerInfoEXT)); } { info := type_info(VkDeviceEventInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceEventInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceEventInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceEventInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceEventInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceEvent"; assert(it.offset_in_bytes == 16, "VkDeviceEventInfoEXT.deviceEvent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceEventInfoEXT.deviceEvent has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceEventInfoEXT) == 24, "VkDeviceEventInfoEXT has size % instead of 24", size_of(VkDeviceEventInfoEXT)); } { info := type_info(VkDisplayEventInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayEventInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayEventInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayEventInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayEventInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "displayEvent"; assert(it.offset_in_bytes == 16, "VkDisplayEventInfoEXT.displayEvent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayEventInfoEXT.displayEvent has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayEventInfoEXT) == 24, "VkDisplayEventInfoEXT has size % instead of 24", size_of(VkDisplayEventInfoEXT)); } { info := type_info(VkSwapchainCounterCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainCounterCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCounterCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainCounterCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainCounterCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "surfaceCounters"; assert(it.offset_in_bytes == 16, "VkSwapchainCounterCreateInfoEXT.surfaceCounters has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainCounterCreateInfoEXT.surfaceCounters has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSwapchainCounterCreateInfoEXT) == 24, "VkSwapchainCounterCreateInfoEXT has size % instead of 24", size_of(VkSwapchainCounterCreateInfoEXT)); } { info := type_info(VkRefreshCycleDurationGOOGLE); for info.members { if it.name == { case "refreshDuration"; assert(it.offset_in_bytes == 0, "VkRefreshCycleDurationGOOGLE.refreshDuration has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRefreshCycleDurationGOOGLE.refreshDuration has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRefreshCycleDurationGOOGLE) == 8, "VkRefreshCycleDurationGOOGLE has size % instead of 8", size_of(VkRefreshCycleDurationGOOGLE)); } { info := type_info(VkPastPresentationTimingGOOGLE); for info.members { if it.name == { case "presentID"; assert(it.offset_in_bytes == 0, "VkPastPresentationTimingGOOGLE.presentID has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPastPresentationTimingGOOGLE.presentID has unexpected size % instead of 4", it.type.runtime_size); case "desiredPresentTime"; assert(it.offset_in_bytes == 8, "VkPastPresentationTimingGOOGLE.desiredPresentTime has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPastPresentationTimingGOOGLE.desiredPresentTime has unexpected size % instead of 8", it.type.runtime_size); case "actualPresentTime"; assert(it.offset_in_bytes == 16, "VkPastPresentationTimingGOOGLE.actualPresentTime has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPastPresentationTimingGOOGLE.actualPresentTime has unexpected size % instead of 8", it.type.runtime_size); case "earliestPresentTime"; assert(it.offset_in_bytes == 24, "VkPastPresentationTimingGOOGLE.earliestPresentTime has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPastPresentationTimingGOOGLE.earliestPresentTime has unexpected size % instead of 8", it.type.runtime_size); case "presentMargin"; assert(it.offset_in_bytes == 32, "VkPastPresentationTimingGOOGLE.presentMargin has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPastPresentationTimingGOOGLE.presentMargin has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPastPresentationTimingGOOGLE) == 40, "VkPastPresentationTimingGOOGLE has size % instead of 40", size_of(VkPastPresentationTimingGOOGLE)); } { info := type_info(VkPresentTimeGOOGLE); for info.members { if it.name == { case "presentID"; assert(it.offset_in_bytes == 0, "VkPresentTimeGOOGLE.presentID has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentTimeGOOGLE.presentID has unexpected size % instead of 4", it.type.runtime_size); case "desiredPresentTime"; assert(it.offset_in_bytes == 8, "VkPresentTimeGOOGLE.desiredPresentTime has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentTimeGOOGLE.desiredPresentTime has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentTimeGOOGLE) == 16, "VkPresentTimeGOOGLE has size % instead of 16", size_of(VkPresentTimeGOOGLE)); } { info := type_info(VkPresentTimesInfoGOOGLE); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPresentTimesInfoGOOGLE.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentTimesInfoGOOGLE.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPresentTimesInfoGOOGLE.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentTimesInfoGOOGLE.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkPresentTimesInfoGOOGLE.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPresentTimesInfoGOOGLE.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pTimes"; assert(it.offset_in_bytes == 24, "VkPresentTimesInfoGOOGLE.pTimes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPresentTimesInfoGOOGLE.pTimes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPresentTimesInfoGOOGLE) == 32, "VkPresentTimesInfoGOOGLE has size % instead of 32", size_of(VkPresentTimesInfoGOOGLE)); } { info := type_info(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "perViewPositionAllComponents"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.perViewPositionAllComponents has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX.perViewPositionAllComponents has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX) == 24, "VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX has size % instead of 24", size_of(VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX)); } { info := type_info(VkMultiviewPerViewAttributesInfoNVX); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMultiviewPerViewAttributesInfoNVX.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiviewPerViewAttributesInfoNVX.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMultiviewPerViewAttributesInfoNVX.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultiviewPerViewAttributesInfoNVX.pNext has unexpected size % instead of 8", it.type.runtime_size); case "perViewAttributes"; assert(it.offset_in_bytes == 16, "VkMultiviewPerViewAttributesInfoNVX.perViewAttributes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiviewPerViewAttributesInfoNVX.perViewAttributes has unexpected size % instead of 4", it.type.runtime_size); case "perViewAttributesPositionXOnly"; assert(it.offset_in_bytes == 20, "VkMultiviewPerViewAttributesInfoNVX.perViewAttributesPositionXOnly has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiviewPerViewAttributesInfoNVX.perViewAttributesPositionXOnly has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMultiviewPerViewAttributesInfoNVX) == 24, "VkMultiviewPerViewAttributesInfoNVX has size % instead of 24", size_of(VkMultiviewPerViewAttributesInfoNVX)); } { info := type_info(VkViewportSwizzleNV); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkViewportSwizzleNV.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportSwizzleNV.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkViewportSwizzleNV.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportSwizzleNV.y has unexpected size % instead of 4", it.type.runtime_size); case "z"; assert(it.offset_in_bytes == 8, "VkViewportSwizzleNV.z has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportSwizzleNV.z has unexpected size % instead of 4", it.type.runtime_size); case "w"; assert(it.offset_in_bytes == 12, "VkViewportSwizzleNV.w has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkViewportSwizzleNV.w has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkViewportSwizzleNV) == 16, "VkViewportSwizzleNV has size % instead of 16", size_of(VkViewportSwizzleNV)); } { info := type_info(VkPipelineViewportSwizzleStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportSwizzleStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportSwizzleStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportSwizzleStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportSwizzleStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineViewportSwizzleStateCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportSwizzleStateCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "viewportCount"; assert(it.offset_in_bytes == 20, "VkPipelineViewportSwizzleStateCreateInfoNV.viewportCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportSwizzleStateCreateInfoNV.viewportCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewportSwizzles"; assert(it.offset_in_bytes == 24, "VkPipelineViewportSwizzleStateCreateInfoNV.pViewportSwizzles has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportSwizzleStateCreateInfoNV.pViewportSwizzles has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportSwizzleStateCreateInfoNV) == 32, "VkPipelineViewportSwizzleStateCreateInfoNV has size % instead of 32", size_of(VkPipelineViewportSwizzleStateCreateInfoNV)); } { info := type_info(VkPhysicalDeviceDiscardRectanglePropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxDiscardRectangles"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.maxDiscardRectangles has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDiscardRectanglePropertiesEXT.maxDiscardRectangles has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDiscardRectanglePropertiesEXT) == 24, "VkPhysicalDeviceDiscardRectanglePropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceDiscardRectanglePropertiesEXT)); } { info := type_info(VkPipelineDiscardRectangleStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineDiscardRectangleStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDiscardRectangleStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineDiscardRectangleStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineDiscardRectangleStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineDiscardRectangleStateCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDiscardRectangleStateCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "discardRectangleMode"; assert(it.offset_in_bytes == 20, "VkPipelineDiscardRectangleStateCreateInfoEXT.discardRectangleMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDiscardRectangleStateCreateInfoEXT.discardRectangleMode has unexpected size % instead of 4", it.type.runtime_size); case "discardRectangleCount"; assert(it.offset_in_bytes == 24, "VkPipelineDiscardRectangleStateCreateInfoEXT.discardRectangleCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineDiscardRectangleStateCreateInfoEXT.discardRectangleCount has unexpected size % instead of 4", it.type.runtime_size); case "pDiscardRectangles"; assert(it.offset_in_bytes == 32, "VkPipelineDiscardRectangleStateCreateInfoEXT.pDiscardRectangles has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineDiscardRectangleStateCreateInfoEXT.pDiscardRectangles has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineDiscardRectangleStateCreateInfoEXT) == 40, "VkPipelineDiscardRectangleStateCreateInfoEXT has size % instead of 40", size_of(VkPipelineDiscardRectangleStateCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceConservativeRasterizationPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "primitiveOverestimationSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.primitiveOverestimationSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.primitiveOverestimationSize has unexpected size % instead of 4", it.type.runtime_size); case "maxExtraPrimitiveOverestimationSize"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.maxExtraPrimitiveOverestimationSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.maxExtraPrimitiveOverestimationSize has unexpected size % instead of 4", it.type.runtime_size); case "extraPrimitiveOverestimationSizeGranularity"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.extraPrimitiveOverestimationSizeGranularity has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.extraPrimitiveOverestimationSizeGranularity has unexpected size % instead of 4", it.type.runtime_size); case "primitiveUnderestimation"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.primitiveUnderestimation has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.primitiveUnderestimation has unexpected size % instead of 4", it.type.runtime_size); case "conservativePointAndLineRasterization"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.conservativePointAndLineRasterization has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.conservativePointAndLineRasterization has unexpected size % instead of 4", it.type.runtime_size); case "degenerateTrianglesRasterized"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.degenerateTrianglesRasterized has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.degenerateTrianglesRasterized has unexpected size % instead of 4", it.type.runtime_size); case "degenerateLinesRasterized"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.degenerateLinesRasterized has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.degenerateLinesRasterized has unexpected size % instead of 4", it.type.runtime_size); case "fullyCoveredFragmentShaderInputVariable"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.fullyCoveredFragmentShaderInputVariable has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.fullyCoveredFragmentShaderInputVariable has unexpected size % instead of 4", it.type.runtime_size); case "conservativeRasterizationPostDepthCoverage"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.conservativeRasterizationPostDepthCoverage has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT.conservativeRasterizationPostDepthCoverage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceConservativeRasterizationPropertiesEXT) == 56, "VkPhysicalDeviceConservativeRasterizationPropertiesEXT has size % instead of 56", size_of(VkPhysicalDeviceConservativeRasterizationPropertiesEXT)); } { info := type_info(VkPipelineRasterizationConservativeStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationConservativeStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationConservativeStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationConservativeStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationConservativeStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationConservativeStateCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationConservativeStateCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "conservativeRasterizationMode"; assert(it.offset_in_bytes == 20, "VkPipelineRasterizationConservativeStateCreateInfoEXT.conservativeRasterizationMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationConservativeStateCreateInfoEXT.conservativeRasterizationMode has unexpected size % instead of 4", it.type.runtime_size); case "extraPrimitiveOverestimationSize"; assert(it.offset_in_bytes == 24, "VkPipelineRasterizationConservativeStateCreateInfoEXT.extraPrimitiveOverestimationSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationConservativeStateCreateInfoEXT.extraPrimitiveOverestimationSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationConservativeStateCreateInfoEXT) == 32, "VkPipelineRasterizationConservativeStateCreateInfoEXT has size % instead of 32", size_of(VkPipelineRasterizationConservativeStateCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceDepthClipEnableFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthClipEnable"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.depthClipEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClipEnableFeaturesEXT.depthClipEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthClipEnableFeaturesEXT) == 24, "VkPhysicalDeviceDepthClipEnableFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDepthClipEnableFeaturesEXT)); } { info := type_info(VkPipelineRasterizationDepthClipStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "depthClipEnable"; assert(it.offset_in_bytes == 20, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.depthClipEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationDepthClipStateCreateInfoEXT.depthClipEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationDepthClipStateCreateInfoEXT) == 24, "VkPipelineRasterizationDepthClipStateCreateInfoEXT has size % instead of 24", size_of(VkPipelineRasterizationDepthClipStateCreateInfoEXT)); } { info := type_info(VkXYColorEXT); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkXYColorEXT.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkXYColorEXT.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkXYColorEXT.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkXYColorEXT.y has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkXYColorEXT) == 8, "VkXYColorEXT has size % instead of 8", size_of(VkXYColorEXT)); } { info := type_info(VkHdrMetadataEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkHdrMetadataEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrMetadataEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkHdrMetadataEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrMetadataEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "displayPrimaryRed"; assert(it.offset_in_bytes == 16, "VkHdrMetadataEXT.displayPrimaryRed has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrMetadataEXT.displayPrimaryRed has unexpected size % instead of 8", it.type.runtime_size); case "displayPrimaryGreen"; assert(it.offset_in_bytes == 24, "VkHdrMetadataEXT.displayPrimaryGreen has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrMetadataEXT.displayPrimaryGreen has unexpected size % instead of 8", it.type.runtime_size); case "displayPrimaryBlue"; assert(it.offset_in_bytes == 32, "VkHdrMetadataEXT.displayPrimaryBlue has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrMetadataEXT.displayPrimaryBlue has unexpected size % instead of 8", it.type.runtime_size); case "whitePoint"; assert(it.offset_in_bytes == 40, "VkHdrMetadataEXT.whitePoint has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrMetadataEXT.whitePoint has unexpected size % instead of 8", it.type.runtime_size); case "maxLuminance"; assert(it.offset_in_bytes == 48, "VkHdrMetadataEXT.maxLuminance has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrMetadataEXT.maxLuminance has unexpected size % instead of 4", it.type.runtime_size); case "minLuminance"; assert(it.offset_in_bytes == 52, "VkHdrMetadataEXT.minLuminance has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrMetadataEXT.minLuminance has unexpected size % instead of 4", it.type.runtime_size); case "maxContentLightLevel"; assert(it.offset_in_bytes == 56, "VkHdrMetadataEXT.maxContentLightLevel has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrMetadataEXT.maxContentLightLevel has unexpected size % instead of 4", it.type.runtime_size); case "maxFrameAverageLightLevel"; assert(it.offset_in_bytes == 60, "VkHdrMetadataEXT.maxFrameAverageLightLevel has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrMetadataEXT.maxFrameAverageLightLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkHdrMetadataEXT) == 64, "VkHdrMetadataEXT has size % instead of 64", size_of(VkHdrMetadataEXT)); } { info := type_info(VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.pNext has unexpected size % instead of 8", it.type.runtime_size); case "relaxedLineRasterization"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.relaxedLineRasterization has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG.relaxedLineRasterization has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG) == 24, "VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG has size % instead of 24", size_of(VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG)); } { info := type_info(VkDebugUtilsLabelEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugUtilsLabelEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsLabelEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugUtilsLabelEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsLabelEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pLabelName"; assert(it.offset_in_bytes == 16, "VkDebugUtilsLabelEXT.pLabelName has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsLabelEXT.pLabelName has unexpected size % instead of 8", it.type.runtime_size); case "color"; assert(it.offset_in_bytes == 24, "VkDebugUtilsLabelEXT.color has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDebugUtilsLabelEXT.color has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkDebugUtilsLabelEXT) == 40, "VkDebugUtilsLabelEXT has size % instead of 40", size_of(VkDebugUtilsLabelEXT)); } { info := type_info(VkDebugUtilsObjectNameInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugUtilsObjectNameInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsObjectNameInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugUtilsObjectNameInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectNameInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "objectType"; assert(it.offset_in_bytes == 16, "VkDebugUtilsObjectNameInfoEXT.objectType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsObjectNameInfoEXT.objectType has unexpected size % instead of 4", it.type.runtime_size); case "objectHandle"; assert(it.offset_in_bytes == 24, "VkDebugUtilsObjectNameInfoEXT.objectHandle has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectNameInfoEXT.objectHandle has unexpected size % instead of 8", it.type.runtime_size); case "pObjectName"; assert(it.offset_in_bytes == 32, "VkDebugUtilsObjectNameInfoEXT.pObjectName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectNameInfoEXT.pObjectName has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugUtilsObjectNameInfoEXT) == 40, "VkDebugUtilsObjectNameInfoEXT has size % instead of 40", size_of(VkDebugUtilsObjectNameInfoEXT)); } { info := type_info(VkDebugUtilsMessengerCallbackDataEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugUtilsMessengerCallbackDataEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugUtilsMessengerCallbackDataEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDebugUtilsMessengerCallbackDataEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "pMessageIdName"; assert(it.offset_in_bytes == 24, "VkDebugUtilsMessengerCallbackDataEXT.pMessageIdName has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pMessageIdName has unexpected size % instead of 8", it.type.runtime_size); case "messageIdNumber"; assert(it.offset_in_bytes == 32, "VkDebugUtilsMessengerCallbackDataEXT.messageIdNumber has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.messageIdNumber has unexpected size % instead of 4", it.type.runtime_size); case "pMessage"; assert(it.offset_in_bytes == 40, "VkDebugUtilsMessengerCallbackDataEXT.pMessage has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pMessage has unexpected size % instead of 8", it.type.runtime_size); case "queueLabelCount"; assert(it.offset_in_bytes == 48, "VkDebugUtilsMessengerCallbackDataEXT.queueLabelCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.queueLabelCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueLabels"; assert(it.offset_in_bytes == 56, "VkDebugUtilsMessengerCallbackDataEXT.pQueueLabels has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pQueueLabels has unexpected size % instead of 8", it.type.runtime_size); case "cmdBufLabelCount"; assert(it.offset_in_bytes == 64, "VkDebugUtilsMessengerCallbackDataEXT.cmdBufLabelCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.cmdBufLabelCount has unexpected size % instead of 4", it.type.runtime_size); case "pCmdBufLabels"; assert(it.offset_in_bytes == 72, "VkDebugUtilsMessengerCallbackDataEXT.pCmdBufLabels has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pCmdBufLabels has unexpected size % instead of 8", it.type.runtime_size); case "objectCount"; assert(it.offset_in_bytes == 80, "VkDebugUtilsMessengerCallbackDataEXT.objectCount has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCallbackDataEXT.objectCount has unexpected size % instead of 4", it.type.runtime_size); case "pObjects"; assert(it.offset_in_bytes == 88, "VkDebugUtilsMessengerCallbackDataEXT.pObjects has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCallbackDataEXT.pObjects has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugUtilsMessengerCallbackDataEXT) == 96, "VkDebugUtilsMessengerCallbackDataEXT has size % instead of 96", size_of(VkDebugUtilsMessengerCallbackDataEXT)); } { info := type_info(VkDebugUtilsMessengerCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugUtilsMessengerCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugUtilsMessengerCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDebugUtilsMessengerCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "messageSeverity"; assert(it.offset_in_bytes == 20, "VkDebugUtilsMessengerCreateInfoEXT.messageSeverity has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCreateInfoEXT.messageSeverity has unexpected size % instead of 4", it.type.runtime_size); case "messageType"; assert(it.offset_in_bytes == 24, "VkDebugUtilsMessengerCreateInfoEXT.messageType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsMessengerCreateInfoEXT.messageType has unexpected size % instead of 4", it.type.runtime_size); case "pfnUserCallback"; assert(it.offset_in_bytes == 32, "VkDebugUtilsMessengerCreateInfoEXT.pfnUserCallback has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCreateInfoEXT.pfnUserCallback has unexpected size % instead of 8", it.type.runtime_size); case "pUserData"; assert(it.offset_in_bytes == 40, "VkDebugUtilsMessengerCreateInfoEXT.pUserData has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsMessengerCreateInfoEXT.pUserData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugUtilsMessengerCreateInfoEXT) == 48, "VkDebugUtilsMessengerCreateInfoEXT has size % instead of 48", size_of(VkDebugUtilsMessengerCreateInfoEXT)); } { info := type_info(VkDebugUtilsObjectTagInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDebugUtilsObjectTagInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsObjectTagInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDebugUtilsObjectTagInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectTagInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "objectType"; assert(it.offset_in_bytes == 16, "VkDebugUtilsObjectTagInfoEXT.objectType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDebugUtilsObjectTagInfoEXT.objectType has unexpected size % instead of 4", it.type.runtime_size); case "objectHandle"; assert(it.offset_in_bytes == 24, "VkDebugUtilsObjectTagInfoEXT.objectHandle has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectTagInfoEXT.objectHandle has unexpected size % instead of 8", it.type.runtime_size); case "tagName"; assert(it.offset_in_bytes == 32, "VkDebugUtilsObjectTagInfoEXT.tagName has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectTagInfoEXT.tagName has unexpected size % instead of 8", it.type.runtime_size); case "tagSize"; assert(it.offset_in_bytes == 40, "VkDebugUtilsObjectTagInfoEXT.tagSize has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectTagInfoEXT.tagSize has unexpected size % instead of 8", it.type.runtime_size); case "pTag"; assert(it.offset_in_bytes == 48, "VkDebugUtilsObjectTagInfoEXT.pTag has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDebugUtilsObjectTagInfoEXT.pTag has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDebugUtilsObjectTagInfoEXT) == 56, "VkDebugUtilsObjectTagInfoEXT has size % instead of 56", size_of(VkDebugUtilsObjectTagInfoEXT)); } { info := type_info(VkAttachmentSampleCountInfoAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAttachmentSampleCountInfoAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentSampleCountInfoAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAttachmentSampleCountInfoAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentSampleCountInfoAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "colorAttachmentCount"; assert(it.offset_in_bytes == 16, "VkAttachmentSampleCountInfoAMD.colorAttachmentCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentSampleCountInfoAMD.colorAttachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorAttachmentSamples"; assert(it.offset_in_bytes == 24, "VkAttachmentSampleCountInfoAMD.pColorAttachmentSamples has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAttachmentSampleCountInfoAMD.pColorAttachmentSamples has unexpected size % instead of 8", it.type.runtime_size); case "depthStencilAttachmentSamples"; assert(it.offset_in_bytes == 32, "VkAttachmentSampleCountInfoAMD.depthStencilAttachmentSamples has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentSampleCountInfoAMD.depthStencilAttachmentSamples has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAttachmentSampleCountInfoAMD) == 40, "VkAttachmentSampleCountInfoAMD has size % instead of 40", size_of(VkAttachmentSampleCountInfoAMD)); } { info := type_info(VkSampleLocationEXT); for info.members { if it.name == { case "x"; assert(it.offset_in_bytes == 0, "VkSampleLocationEXT.x has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSampleLocationEXT.x has unexpected size % instead of 4", it.type.runtime_size); case "y"; assert(it.offset_in_bytes == 4, "VkSampleLocationEXT.y has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSampleLocationEXT.y has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSampleLocationEXT) == 8, "VkSampleLocationEXT has size % instead of 8", size_of(VkSampleLocationEXT)); } { info := type_info(VkSampleLocationsInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSampleLocationsInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSampleLocationsInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSampleLocationsInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSampleLocationsInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationsPerPixel"; assert(it.offset_in_bytes == 16, "VkSampleLocationsInfoEXT.sampleLocationsPerPixel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSampleLocationsInfoEXT.sampleLocationsPerPixel has unexpected size % instead of 4", it.type.runtime_size); case "sampleLocationGridSize"; assert(it.offset_in_bytes == 20, "VkSampleLocationsInfoEXT.sampleLocationGridSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSampleLocationsInfoEXT.sampleLocationGridSize has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationsCount"; assert(it.offset_in_bytes == 28, "VkSampleLocationsInfoEXT.sampleLocationsCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSampleLocationsInfoEXT.sampleLocationsCount has unexpected size % instead of 4", it.type.runtime_size); case "pSampleLocations"; assert(it.offset_in_bytes == 32, "VkSampleLocationsInfoEXT.pSampleLocations has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSampleLocationsInfoEXT.pSampleLocations has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSampleLocationsInfoEXT) == 40, "VkSampleLocationsInfoEXT has size % instead of 40", size_of(VkSampleLocationsInfoEXT)); } { info := type_info(VkAttachmentSampleLocationsEXT); for info.members { if it.name == { case "attachmentIndex"; assert(it.offset_in_bytes == 0, "VkAttachmentSampleLocationsEXT.attachmentIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAttachmentSampleLocationsEXT.attachmentIndex has unexpected size % instead of 4", it.type.runtime_size); case "sampleLocationsInfo"; assert(it.offset_in_bytes == 8, "VkAttachmentSampleLocationsEXT.sampleLocationsInfo has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkAttachmentSampleLocationsEXT.sampleLocationsInfo has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkAttachmentSampleLocationsEXT) == 48, "VkAttachmentSampleLocationsEXT has size % instead of 48", size_of(VkAttachmentSampleLocationsEXT)); } { info := type_info(VkSubpassSampleLocationsEXT); for info.members { if it.name == { case "subpassIndex"; assert(it.offset_in_bytes == 0, "VkSubpassSampleLocationsEXT.subpassIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassSampleLocationsEXT.subpassIndex has unexpected size % instead of 4", it.type.runtime_size); case "sampleLocationsInfo"; assert(it.offset_in_bytes == 8, "VkSubpassSampleLocationsEXT.sampleLocationsInfo has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkSubpassSampleLocationsEXT.sampleLocationsInfo has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkSubpassSampleLocationsEXT) == 48, "VkSubpassSampleLocationsEXT has size % instead of 48", size_of(VkSubpassSampleLocationsEXT)); } { info := type_info(VkRenderPassSampleLocationsBeginInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassSampleLocationsBeginInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSampleLocationsBeginInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassSampleLocationsBeginInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassSampleLocationsBeginInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentInitialSampleLocationsCount"; assert(it.offset_in_bytes == 16, "VkRenderPassSampleLocationsBeginInfoEXT.attachmentInitialSampleLocationsCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSampleLocationsBeginInfoEXT.attachmentInitialSampleLocationsCount has unexpected size % instead of 4", it.type.runtime_size); case "pAttachmentInitialSampleLocations"; assert(it.offset_in_bytes == 24, "VkRenderPassSampleLocationsBeginInfoEXT.pAttachmentInitialSampleLocations has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassSampleLocationsBeginInfoEXT.pAttachmentInitialSampleLocations has unexpected size % instead of 8", it.type.runtime_size); case "postSubpassSampleLocationsCount"; assert(it.offset_in_bytes == 32, "VkRenderPassSampleLocationsBeginInfoEXT.postSubpassSampleLocationsCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSampleLocationsBeginInfoEXT.postSubpassSampleLocationsCount has unexpected size % instead of 4", it.type.runtime_size); case "pPostSubpassSampleLocations"; assert(it.offset_in_bytes == 40, "VkRenderPassSampleLocationsBeginInfoEXT.pPostSubpassSampleLocations has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassSampleLocationsBeginInfoEXT.pPostSubpassSampleLocations has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassSampleLocationsBeginInfoEXT) == 48, "VkRenderPassSampleLocationsBeginInfoEXT has size % instead of 48", size_of(VkRenderPassSampleLocationsBeginInfoEXT)); } { info := type_info(VkPipelineSampleLocationsStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineSampleLocationsStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineSampleLocationsStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineSampleLocationsStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineSampleLocationsStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationsEnable"; assert(it.offset_in_bytes == 16, "VkPipelineSampleLocationsStateCreateInfoEXT.sampleLocationsEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineSampleLocationsStateCreateInfoEXT.sampleLocationsEnable has unexpected size % instead of 4", it.type.runtime_size); case "sampleLocationsInfo"; assert(it.offset_in_bytes == 24, "VkPipelineSampleLocationsStateCreateInfoEXT.sampleLocationsInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkPipelineSampleLocationsStateCreateInfoEXT.sampleLocationsInfo has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkPipelineSampleLocationsStateCreateInfoEXT) == 64, "VkPipelineSampleLocationsStateCreateInfoEXT has size % instead of 64", size_of(VkPipelineSampleLocationsStateCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceSampleLocationsPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSampleLocationsPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSampleLocationsPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationSampleCounts"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationSampleCounts has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationSampleCounts has unexpected size % instead of 4", it.type.runtime_size); case "maxSampleLocationGridSize"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceSampleLocationsPropertiesEXT.maxSampleLocationGridSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSampleLocationsPropertiesEXT.maxSampleLocationGridSize has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationCoordinateRange"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationCoordinateRange has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationCoordinateRange has unexpected size % instead of 8", it.type.runtime_size); case "sampleLocationSubPixelBits"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationSubPixelBits has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSampleLocationsPropertiesEXT.sampleLocationSubPixelBits has unexpected size % instead of 4", it.type.runtime_size); case "variableSampleLocations"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceSampleLocationsPropertiesEXT.variableSampleLocations has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSampleLocationsPropertiesEXT.variableSampleLocations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSampleLocationsPropertiesEXT) == 48, "VkPhysicalDeviceSampleLocationsPropertiesEXT has size % instead of 48", size_of(VkPhysicalDeviceSampleLocationsPropertiesEXT)); } { info := type_info(VkMultisamplePropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMultisamplePropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultisamplePropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMultisamplePropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultisamplePropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxSampleLocationGridSize"; assert(it.offset_in_bytes == 16, "VkMultisamplePropertiesEXT.maxSampleLocationGridSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultisamplePropertiesEXT.maxSampleLocationGridSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMultisamplePropertiesEXT) == 24, "VkMultisamplePropertiesEXT has size % instead of 24", size_of(VkMultisamplePropertiesEXT)); } { info := type_info(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "advancedBlendCoherentOperations"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.advancedBlendCoherentOperations has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT.advancedBlendCoherentOperations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT) == 24, "VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT)); } { info := type_info(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "advancedBlendMaxColorAttachments"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendMaxColorAttachments has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendMaxColorAttachments has unexpected size % instead of 4", it.type.runtime_size); case "advancedBlendIndependentBlend"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendIndependentBlend has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendIndependentBlend has unexpected size % instead of 4", it.type.runtime_size); case "advancedBlendNonPremultipliedSrcColor"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendNonPremultipliedSrcColor has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendNonPremultipliedSrcColor has unexpected size % instead of 4", it.type.runtime_size); case "advancedBlendNonPremultipliedDstColor"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendNonPremultipliedDstColor has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendNonPremultipliedDstColor has unexpected size % instead of 4", it.type.runtime_size); case "advancedBlendCorrelatedOverlap"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendCorrelatedOverlap has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendCorrelatedOverlap has unexpected size % instead of 4", it.type.runtime_size); case "advancedBlendAllOperations"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendAllOperations has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT.advancedBlendAllOperations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT) == 40, "VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT has size % instead of 40", size_of(VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT)); } { info := type_info(VkPipelineColorBlendAdvancedStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcPremultiplied"; assert(it.offset_in_bytes == 16, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.srcPremultiplied has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.srcPremultiplied has unexpected size % instead of 4", it.type.runtime_size); case "dstPremultiplied"; assert(it.offset_in_bytes == 20, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.dstPremultiplied has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.dstPremultiplied has unexpected size % instead of 4", it.type.runtime_size); case "blendOverlap"; assert(it.offset_in_bytes == 24, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.blendOverlap has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorBlendAdvancedStateCreateInfoEXT.blendOverlap has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineColorBlendAdvancedStateCreateInfoEXT) == 32, "VkPipelineColorBlendAdvancedStateCreateInfoEXT has size % instead of 32", size_of(VkPipelineColorBlendAdvancedStateCreateInfoEXT)); } { info := type_info(VkPipelineCoverageToColorStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCoverageToColorStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageToColorStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCoverageToColorStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCoverageToColorStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineCoverageToColorStateCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageToColorStateCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "coverageToColorEnable"; assert(it.offset_in_bytes == 20, "VkPipelineCoverageToColorStateCreateInfoNV.coverageToColorEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageToColorStateCreateInfoNV.coverageToColorEnable has unexpected size % instead of 4", it.type.runtime_size); case "coverageToColorLocation"; assert(it.offset_in_bytes == 24, "VkPipelineCoverageToColorStateCreateInfoNV.coverageToColorLocation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageToColorStateCreateInfoNV.coverageToColorLocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineCoverageToColorStateCreateInfoNV) == 32, "VkPipelineCoverageToColorStateCreateInfoNV has size % instead of 32", size_of(VkPipelineCoverageToColorStateCreateInfoNV)); } { info := type_info(VkPipelineCoverageModulationStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCoverageModulationStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageModulationStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCoverageModulationStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCoverageModulationStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineCoverageModulationStateCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageModulationStateCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "coverageModulationMode"; assert(it.offset_in_bytes == 20, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationMode has unexpected size % instead of 4", it.type.runtime_size); case "coverageModulationTableEnable"; assert(it.offset_in_bytes == 24, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationTableEnable has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationTableEnable has unexpected size % instead of 4", it.type.runtime_size); case "coverageModulationTableCount"; assert(it.offset_in_bytes == 28, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationTableCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageModulationStateCreateInfoNV.coverageModulationTableCount has unexpected size % instead of 4", it.type.runtime_size); case "pCoverageModulationTable"; assert(it.offset_in_bytes == 32, "VkPipelineCoverageModulationStateCreateInfoNV.pCoverageModulationTable has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCoverageModulationStateCreateInfoNV.pCoverageModulationTable has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineCoverageModulationStateCreateInfoNV) == 40, "VkPipelineCoverageModulationStateCreateInfoNV has size % instead of 40", size_of(VkPipelineCoverageModulationStateCreateInfoNV)); } { info := type_info(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSMCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.shaderSMCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.shaderSMCount has unexpected size % instead of 4", it.type.runtime_size); case "shaderWarpsPerSM"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.shaderWarpsPerSM has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV.shaderWarpsPerSM has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV) == 24, "VkPhysicalDeviceShaderSMBuiltinsPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceShaderSMBuiltinsPropertiesNV)); } { info := type_info(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderSMBuiltins"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.shaderSMBuiltins has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV.shaderSMBuiltins has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV) == 24, "VkPhysicalDeviceShaderSMBuiltinsFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceShaderSMBuiltinsFeaturesNV)); } { info := type_info(VkDrmFormatModifierPropertiesEXT); for info.members { if it.name == { case "drmFormatModifier"; assert(it.offset_in_bytes == 0, "VkDrmFormatModifierPropertiesEXT.drmFormatModifier has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierPropertiesEXT.drmFormatModifier has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierPlaneCount"; assert(it.offset_in_bytes == 8, "VkDrmFormatModifierPropertiesEXT.drmFormatModifierPlaneCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesEXT.drmFormatModifierPlaneCount has unexpected size % instead of 4", it.type.runtime_size); case "drmFormatModifierTilingFeatures"; assert(it.offset_in_bytes == 12, "VkDrmFormatModifierPropertiesEXT.drmFormatModifierTilingFeatures has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesEXT.drmFormatModifierTilingFeatures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrmFormatModifierPropertiesEXT) == 16, "VkDrmFormatModifierPropertiesEXT has size % instead of 16", size_of(VkDrmFormatModifierPropertiesEXT)); } { info := type_info(VkDrmFormatModifierPropertiesListEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDrmFormatModifierPropertiesListEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesListEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDrmFormatModifierPropertiesListEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierPropertiesListEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierCount"; assert(it.offset_in_bytes == 16, "VkDrmFormatModifierPropertiesListEXT.drmFormatModifierCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesListEXT.drmFormatModifierCount has unexpected size % instead of 4", it.type.runtime_size); case "pDrmFormatModifierProperties"; assert(it.offset_in_bytes == 24, "VkDrmFormatModifierPropertiesListEXT.pDrmFormatModifierProperties has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierPropertiesListEXT.pDrmFormatModifierProperties has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDrmFormatModifierPropertiesListEXT) == 32, "VkDrmFormatModifierPropertiesListEXT has size % instead of 32", size_of(VkDrmFormatModifierPropertiesListEXT)); } { info := type_info(VkPhysicalDeviceImageDrmFormatModifierInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifier"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.drmFormatModifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.drmFormatModifier has unexpected size % instead of 8", it.type.runtime_size); case "sharingMode"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.sharingMode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.sharingMode has unexpected size % instead of 4", it.type.runtime_size); case "queueFamilyIndexCount"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.queueFamilyIndexCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.queueFamilyIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pQueueFamilyIndices"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.pQueueFamilyIndices has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT.pQueueFamilyIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageDrmFormatModifierInfoEXT) == 40, "VkPhysicalDeviceImageDrmFormatModifierInfoEXT has size % instead of 40", size_of(VkPhysicalDeviceImageDrmFormatModifierInfoEXT)); } { info := type_info(VkImageDrmFormatModifierListCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageDrmFormatModifierListCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageDrmFormatModifierListCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageDrmFormatModifierListCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierListCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierCount"; assert(it.offset_in_bytes == 16, "VkImageDrmFormatModifierListCreateInfoEXT.drmFormatModifierCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageDrmFormatModifierListCreateInfoEXT.drmFormatModifierCount has unexpected size % instead of 4", it.type.runtime_size); case "pDrmFormatModifiers"; assert(it.offset_in_bytes == 24, "VkImageDrmFormatModifierListCreateInfoEXT.pDrmFormatModifiers has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierListCreateInfoEXT.pDrmFormatModifiers has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageDrmFormatModifierListCreateInfoEXT) == 32, "VkImageDrmFormatModifierListCreateInfoEXT has size % instead of 32", size_of(VkImageDrmFormatModifierListCreateInfoEXT)); } { info := type_info(VkImageDrmFormatModifierExplicitCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageDrmFormatModifierExplicitCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageDrmFormatModifierExplicitCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageDrmFormatModifierExplicitCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierExplicitCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifier"; assert(it.offset_in_bytes == 16, "VkImageDrmFormatModifierExplicitCreateInfoEXT.drmFormatModifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierExplicitCreateInfoEXT.drmFormatModifier has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierPlaneCount"; assert(it.offset_in_bytes == 24, "VkImageDrmFormatModifierExplicitCreateInfoEXT.drmFormatModifierPlaneCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageDrmFormatModifierExplicitCreateInfoEXT.drmFormatModifierPlaneCount has unexpected size % instead of 4", it.type.runtime_size); case "pPlaneLayouts"; assert(it.offset_in_bytes == 32, "VkImageDrmFormatModifierExplicitCreateInfoEXT.pPlaneLayouts has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierExplicitCreateInfoEXT.pPlaneLayouts has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageDrmFormatModifierExplicitCreateInfoEXT) == 40, "VkImageDrmFormatModifierExplicitCreateInfoEXT has size % instead of 40", size_of(VkImageDrmFormatModifierExplicitCreateInfoEXT)); } { info := type_info(VkImageDrmFormatModifierPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageDrmFormatModifierPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageDrmFormatModifierPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageDrmFormatModifierPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifier"; assert(it.offset_in_bytes == 16, "VkImageDrmFormatModifierPropertiesEXT.drmFormatModifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageDrmFormatModifierPropertiesEXT.drmFormatModifier has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageDrmFormatModifierPropertiesEXT) == 24, "VkImageDrmFormatModifierPropertiesEXT has size % instead of 24", size_of(VkImageDrmFormatModifierPropertiesEXT)); } { info := type_info(VkDrmFormatModifierProperties2EXT); for info.members { if it.name == { case "drmFormatModifier"; assert(it.offset_in_bytes == 0, "VkDrmFormatModifierProperties2EXT.drmFormatModifier has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierProperties2EXT.drmFormatModifier has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierPlaneCount"; assert(it.offset_in_bytes == 8, "VkDrmFormatModifierProperties2EXT.drmFormatModifierPlaneCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierProperties2EXT.drmFormatModifierPlaneCount has unexpected size % instead of 4", it.type.runtime_size); case "drmFormatModifierTilingFeatures"; assert(it.offset_in_bytes == 16, "VkDrmFormatModifierProperties2EXT.drmFormatModifierTilingFeatures has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierProperties2EXT.drmFormatModifierTilingFeatures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDrmFormatModifierProperties2EXT) == 24, "VkDrmFormatModifierProperties2EXT has size % instead of 24", size_of(VkDrmFormatModifierProperties2EXT)); } { info := type_info(VkDrmFormatModifierPropertiesList2EXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDrmFormatModifierPropertiesList2EXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesList2EXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDrmFormatModifierPropertiesList2EXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierPropertiesList2EXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "drmFormatModifierCount"; assert(it.offset_in_bytes == 16, "VkDrmFormatModifierPropertiesList2EXT.drmFormatModifierCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrmFormatModifierPropertiesList2EXT.drmFormatModifierCount has unexpected size % instead of 4", it.type.runtime_size); case "pDrmFormatModifierProperties"; assert(it.offset_in_bytes == 24, "VkDrmFormatModifierPropertiesList2EXT.pDrmFormatModifierProperties has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrmFormatModifierPropertiesList2EXT.pDrmFormatModifierProperties has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDrmFormatModifierPropertiesList2EXT) == 32, "VkDrmFormatModifierPropertiesList2EXT has size % instead of 32", size_of(VkDrmFormatModifierPropertiesList2EXT)); } { info := type_info(VkValidationCacheCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkValidationCacheCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationCacheCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkValidationCacheCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationCacheCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkValidationCacheCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationCacheCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "initialDataSize"; assert(it.offset_in_bytes == 24, "VkValidationCacheCreateInfoEXT.initialDataSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationCacheCreateInfoEXT.initialDataSize has unexpected size % instead of 8", it.type.runtime_size); case "pInitialData"; assert(it.offset_in_bytes == 32, "VkValidationCacheCreateInfoEXT.pInitialData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationCacheCreateInfoEXT.pInitialData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkValidationCacheCreateInfoEXT) == 40, "VkValidationCacheCreateInfoEXT has size % instead of 40", size_of(VkValidationCacheCreateInfoEXT)); } { info := type_info(VkShaderModuleValidationCacheCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkShaderModuleValidationCacheCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderModuleValidationCacheCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkShaderModuleValidationCacheCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleValidationCacheCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "validationCache"; assert(it.offset_in_bytes == 16, "VkShaderModuleValidationCacheCreateInfoEXT.validationCache has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleValidationCacheCreateInfoEXT.validationCache has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkShaderModuleValidationCacheCreateInfoEXT) == 24, "VkShaderModuleValidationCacheCreateInfoEXT has size % instead of 24", size_of(VkShaderModuleValidationCacheCreateInfoEXT)); } { info := type_info(VkShadingRatePaletteNV); for info.members { if it.name == { case "shadingRatePaletteEntryCount"; assert(it.offset_in_bytes == 0, "VkShadingRatePaletteNV.shadingRatePaletteEntryCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShadingRatePaletteNV.shadingRatePaletteEntryCount has unexpected size % instead of 4", it.type.runtime_size); case "pShadingRatePaletteEntries"; assert(it.offset_in_bytes == 8, "VkShadingRatePaletteNV.pShadingRatePaletteEntries has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShadingRatePaletteNV.pShadingRatePaletteEntries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkShadingRatePaletteNV) == 16, "VkShadingRatePaletteNV has size % instead of 16", size_of(VkShadingRatePaletteNV)); } { info := type_info(VkPipelineViewportShadingRateImageStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportShadingRateImageStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportShadingRateImageStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportShadingRateImageStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportShadingRateImageStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shadingRateImageEnable"; assert(it.offset_in_bytes == 16, "VkPipelineViewportShadingRateImageStateCreateInfoNV.shadingRateImageEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportShadingRateImageStateCreateInfoNV.shadingRateImageEnable has unexpected size % instead of 4", it.type.runtime_size); case "viewportCount"; assert(it.offset_in_bytes == 20, "VkPipelineViewportShadingRateImageStateCreateInfoNV.viewportCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportShadingRateImageStateCreateInfoNV.viewportCount has unexpected size % instead of 4", it.type.runtime_size); case "pShadingRatePalettes"; assert(it.offset_in_bytes == 24, "VkPipelineViewportShadingRateImageStateCreateInfoNV.pShadingRatePalettes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportShadingRateImageStateCreateInfoNV.pShadingRatePalettes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportShadingRateImageStateCreateInfoNV) == 32, "VkPipelineViewportShadingRateImageStateCreateInfoNV has size % instead of 32", size_of(VkPipelineViewportShadingRateImageStateCreateInfoNV)); } { info := type_info(VkPhysicalDeviceShadingRateImageFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShadingRateImageFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImageFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShadingRateImageFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShadingRateImageFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shadingRateImage"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShadingRateImageFeaturesNV.shadingRateImage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImageFeaturesNV.shadingRateImage has unexpected size % instead of 4", it.type.runtime_size); case "shadingRateCoarseSampleOrder"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShadingRateImageFeaturesNV.shadingRateCoarseSampleOrder has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImageFeaturesNV.shadingRateCoarseSampleOrder has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShadingRateImageFeaturesNV) == 24, "VkPhysicalDeviceShadingRateImageFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceShadingRateImageFeaturesNV)); } { info := type_info(VkPhysicalDeviceShadingRateImagePropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShadingRateImagePropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImagePropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShadingRateImagePropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShadingRateImagePropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shadingRateTexelSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRateTexelSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRateTexelSize has unexpected size % instead of 8", it.type.runtime_size); case "shadingRatePaletteSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRatePaletteSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRatePaletteSize has unexpected size % instead of 4", it.type.runtime_size); case "shadingRateMaxCoarseSamples"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRateMaxCoarseSamples has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShadingRateImagePropertiesNV.shadingRateMaxCoarseSamples has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShadingRateImagePropertiesNV) == 32, "VkPhysicalDeviceShadingRateImagePropertiesNV has size % instead of 32", size_of(VkPhysicalDeviceShadingRateImagePropertiesNV)); } { info := type_info(VkCoarseSampleLocationNV); for info.members { if it.name == { case "pixelX"; assert(it.offset_in_bytes == 0, "VkCoarseSampleLocationNV.pixelX has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleLocationNV.pixelX has unexpected size % instead of 4", it.type.runtime_size); case "pixelY"; assert(it.offset_in_bytes == 4, "VkCoarseSampleLocationNV.pixelY has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleLocationNV.pixelY has unexpected size % instead of 4", it.type.runtime_size); case "sample"; assert(it.offset_in_bytes == 8, "VkCoarseSampleLocationNV.sample has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleLocationNV.sample has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCoarseSampleLocationNV) == 12, "VkCoarseSampleLocationNV has size % instead of 12", size_of(VkCoarseSampleLocationNV)); } { info := type_info(VkCoarseSampleOrderCustomNV); for info.members { if it.name == { case "shadingRate"; assert(it.offset_in_bytes == 0, "VkCoarseSampleOrderCustomNV.shadingRate has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleOrderCustomNV.shadingRate has unexpected size % instead of 4", it.type.runtime_size); case "sampleCount"; assert(it.offset_in_bytes == 4, "VkCoarseSampleOrderCustomNV.sampleCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleOrderCustomNV.sampleCount has unexpected size % instead of 4", it.type.runtime_size); case "sampleLocationCount"; assert(it.offset_in_bytes == 8, "VkCoarseSampleOrderCustomNV.sampleLocationCount has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCoarseSampleOrderCustomNV.sampleLocationCount has unexpected size % instead of 4", it.type.runtime_size); case "pSampleLocations"; assert(it.offset_in_bytes == 16, "VkCoarseSampleOrderCustomNV.pSampleLocations has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCoarseSampleOrderCustomNV.pSampleLocations has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCoarseSampleOrderCustomNV) == 24, "VkCoarseSampleOrderCustomNV has size % instead of 24", size_of(VkCoarseSampleOrderCustomNV)); } { info := type_info(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampleOrderType"; assert(it.offset_in_bytes == 16, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.sampleOrderType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.sampleOrderType has unexpected size % instead of 4", it.type.runtime_size); case "customSampleOrderCount"; assert(it.offset_in_bytes == 20, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.customSampleOrderCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.customSampleOrderCount has unexpected size % instead of 4", it.type.runtime_size); case "pCustomSampleOrders"; assert(it.offset_in_bytes == 24, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.pCustomSampleOrders has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV.pCustomSampleOrders has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV) == 32, "VkPipelineViewportCoarseSampleOrderStateCreateInfoNV has size % instead of 32", size_of(VkPipelineViewportCoarseSampleOrderStateCreateInfoNV)); } { info := type_info(VkRayTracingShaderGroupCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingShaderGroupCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingShaderGroupCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingShaderGroupCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkRayTracingShaderGroupCreateInfoNV.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.type has unexpected size % instead of 4", it.type.runtime_size); case "generalShader"; assert(it.offset_in_bytes == 20, "VkRayTracingShaderGroupCreateInfoNV.generalShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.generalShader has unexpected size % instead of 4", it.type.runtime_size); case "closestHitShader"; assert(it.offset_in_bytes == 24, "VkRayTracingShaderGroupCreateInfoNV.closestHitShader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.closestHitShader has unexpected size % instead of 4", it.type.runtime_size); case "anyHitShader"; assert(it.offset_in_bytes == 28, "VkRayTracingShaderGroupCreateInfoNV.anyHitShader has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.anyHitShader has unexpected size % instead of 4", it.type.runtime_size); case "intersectionShader"; assert(it.offset_in_bytes == 32, "VkRayTracingShaderGroupCreateInfoNV.intersectionShader has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoNV.intersectionShader has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRayTracingShaderGroupCreateInfoNV) == 40, "VkRayTracingShaderGroupCreateInfoNV has size % instead of 40", size_of(VkRayTracingShaderGroupCreateInfoNV)); } { info := type_info(VkRayTracingPipelineCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingPipelineCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingPipelineCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRayTracingPipelineCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "stageCount"; assert(it.offset_in_bytes == 20, "VkRayTracingPipelineCreateInfoNV.stageCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.stageCount has unexpected size % instead of 4", it.type.runtime_size); case "pStages"; assert(it.offset_in_bytes == 24, "VkRayTracingPipelineCreateInfoNV.pStages has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoNV.pStages has unexpected size % instead of 8", it.type.runtime_size); case "groupCount"; assert(it.offset_in_bytes == 32, "VkRayTracingPipelineCreateInfoNV.groupCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.groupCount has unexpected size % instead of 4", it.type.runtime_size); case "pGroups"; assert(it.offset_in_bytes == 40, "VkRayTracingPipelineCreateInfoNV.pGroups has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoNV.pGroups has unexpected size % instead of 8", it.type.runtime_size); case "maxRecursionDepth"; assert(it.offset_in_bytes == 48, "VkRayTracingPipelineCreateInfoNV.maxRecursionDepth has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.maxRecursionDepth has unexpected size % instead of 4", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 56, "VkRayTracingPipelineCreateInfoNV.layout has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoNV.layout has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineHandle"; assert(it.offset_in_bytes == 64, "VkRayTracingPipelineCreateInfoNV.basePipelineHandle has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoNV.basePipelineHandle has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineIndex"; assert(it.offset_in_bytes == 72, "VkRayTracingPipelineCreateInfoNV.basePipelineIndex has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoNV.basePipelineIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRayTracingPipelineCreateInfoNV) == 80, "VkRayTracingPipelineCreateInfoNV has size % instead of 80", size_of(VkRayTracingPipelineCreateInfoNV)); } { info := type_info(VkGeometryTrianglesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeometryTrianglesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryTrianglesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeometryTrianglesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexData"; assert(it.offset_in_bytes == 16, "VkGeometryTrianglesNV.vertexData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.vertexData has unexpected size % instead of 8", it.type.runtime_size); case "vertexOffset"; assert(it.offset_in_bytes == 24, "VkGeometryTrianglesNV.vertexOffset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.vertexOffset has unexpected size % instead of 8", it.type.runtime_size); case "vertexCount"; assert(it.offset_in_bytes == 32, "VkGeometryTrianglesNV.vertexCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryTrianglesNV.vertexCount has unexpected size % instead of 4", it.type.runtime_size); case "vertexStride"; assert(it.offset_in_bytes == 40, "VkGeometryTrianglesNV.vertexStride has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.vertexStride has unexpected size % instead of 8", it.type.runtime_size); case "vertexFormat"; assert(it.offset_in_bytes == 48, "VkGeometryTrianglesNV.vertexFormat has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryTrianglesNV.vertexFormat has unexpected size % instead of 4", it.type.runtime_size); case "indexData"; assert(it.offset_in_bytes == 56, "VkGeometryTrianglesNV.indexData has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.indexData has unexpected size % instead of 8", it.type.runtime_size); case "indexOffset"; assert(it.offset_in_bytes == 64, "VkGeometryTrianglesNV.indexOffset has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.indexOffset has unexpected size % instead of 8", it.type.runtime_size); case "indexCount"; assert(it.offset_in_bytes == 72, "VkGeometryTrianglesNV.indexCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryTrianglesNV.indexCount has unexpected size % instead of 4", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 76, "VkGeometryTrianglesNV.indexType has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryTrianglesNV.indexType has unexpected size % instead of 4", it.type.runtime_size); case "transformData"; assert(it.offset_in_bytes == 80, "VkGeometryTrianglesNV.transformData has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.transformData has unexpected size % instead of 8", it.type.runtime_size); case "transformOffset"; assert(it.offset_in_bytes == 88, "VkGeometryTrianglesNV.transformOffset has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryTrianglesNV.transformOffset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGeometryTrianglesNV) == 96, "VkGeometryTrianglesNV has size % instead of 96", size_of(VkGeometryTrianglesNV)); } { info := type_info(VkGeometryAABBNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeometryAABBNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryAABBNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeometryAABBNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryAABBNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "aabbData"; assert(it.offset_in_bytes == 16, "VkGeometryAABBNV.aabbData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryAABBNV.aabbData has unexpected size % instead of 8", it.type.runtime_size); case "numAABBs"; assert(it.offset_in_bytes == 24, "VkGeometryAABBNV.numAABBs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryAABBNV.numAABBs has unexpected size % instead of 4", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 28, "VkGeometryAABBNV.stride has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryAABBNV.stride has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 32, "VkGeometryAABBNV.offset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryAABBNV.offset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGeometryAABBNV) == 40, "VkGeometryAABBNV has size % instead of 40", size_of(VkGeometryAABBNV)); } { info := type_info(VkGeometryDataNV); for info.members { if it.name == { case "triangles"; assert(it.offset_in_bytes == 0, "VkGeometryDataNV.triangles has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 96, "VkGeometryDataNV.triangles has unexpected size % instead of 96", it.type.runtime_size); case "aabbs"; assert(it.offset_in_bytes == 96, "VkGeometryDataNV.aabbs has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkGeometryDataNV.aabbs has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkGeometryDataNV) == 136, "VkGeometryDataNV has size % instead of 136", size_of(VkGeometryDataNV)); } { info := type_info(VkGeometryNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeometryNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeometryNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeometryNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "geometryType"; assert(it.offset_in_bytes == 16, "VkGeometryNV.geometryType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryNV.geometryType has unexpected size % instead of 4", it.type.runtime_size); case "geometry"; assert(it.offset_in_bytes == 24, "VkGeometryNV.geometry has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 136, "VkGeometryNV.geometry has unexpected size % instead of 136", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 160, "VkGeometryNV.flags has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeometryNV.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGeometryNV) == 168, "VkGeometryNV has size % instead of 168", size_of(VkGeometryNV)); } { info := type_info(VkAccelerationStructureInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureInfoNV.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureInfoNV.type has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkAccelerationStructureInfoNV.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "instanceCount"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureInfoNV.instanceCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureInfoNV.instanceCount has unexpected size % instead of 4", it.type.runtime_size); case "geometryCount"; assert(it.offset_in_bytes == 28, "VkAccelerationStructureInfoNV.geometryCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureInfoNV.geometryCount has unexpected size % instead of 4", it.type.runtime_size); case "pGeometries"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureInfoNV.pGeometries has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureInfoNV.pGeometries has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureInfoNV) == 40, "VkAccelerationStructureInfoNV has size % instead of 40", size_of(VkAccelerationStructureInfoNV)); } { info := type_info(VkAccelerationStructureCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "compactedSize"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureCreateInfoNV.compactedSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoNV.compactedSize has unexpected size % instead of 8", it.type.runtime_size); case "info"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureCreateInfoNV.info has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkAccelerationStructureCreateInfoNV.info has unexpected size % instead of 40", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureCreateInfoNV) == 64, "VkAccelerationStructureCreateInfoNV has size % instead of 64", size_of(VkAccelerationStructureCreateInfoNV)); } { info := type_info(VkBindAccelerationStructureMemoryInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBindAccelerationStructureMemoryInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindAccelerationStructureMemoryInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBindAccelerationStructureMemoryInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindAccelerationStructureMemoryInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 16, "VkBindAccelerationStructureMemoryInfoNV.accelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindAccelerationStructureMemoryInfoNV.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 24, "VkBindAccelerationStructureMemoryInfoNV.memory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindAccelerationStructureMemoryInfoNV.memory has unexpected size % instead of 8", it.type.runtime_size); case "memoryOffset"; assert(it.offset_in_bytes == 32, "VkBindAccelerationStructureMemoryInfoNV.memoryOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindAccelerationStructureMemoryInfoNV.memoryOffset has unexpected size % instead of 8", it.type.runtime_size); case "deviceIndexCount"; assert(it.offset_in_bytes == 40, "VkBindAccelerationStructureMemoryInfoNV.deviceIndexCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindAccelerationStructureMemoryInfoNV.deviceIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pDeviceIndices"; assert(it.offset_in_bytes == 48, "VkBindAccelerationStructureMemoryInfoNV.pDeviceIndices has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindAccelerationStructureMemoryInfoNV.pDeviceIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindAccelerationStructureMemoryInfoNV) == 56, "VkBindAccelerationStructureMemoryInfoNV has size % instead of 56", size_of(VkBindAccelerationStructureMemoryInfoNV)); } { info := type_info(VkWriteDescriptorSetAccelerationStructureNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteDescriptorSetAccelerationStructureNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetAccelerationStructureNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteDescriptorSetAccelerationStructureNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetAccelerationStructureNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureCount"; assert(it.offset_in_bytes == 16, "VkWriteDescriptorSetAccelerationStructureNV.accelerationStructureCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetAccelerationStructureNV.accelerationStructureCount has unexpected size % instead of 4", it.type.runtime_size); case "pAccelerationStructures"; assert(it.offset_in_bytes == 24, "VkWriteDescriptorSetAccelerationStructureNV.pAccelerationStructures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetAccelerationStructureNV.pAccelerationStructures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteDescriptorSetAccelerationStructureNV) == 32, "VkWriteDescriptorSetAccelerationStructureNV has size % instead of 32", size_of(VkWriteDescriptorSetAccelerationStructureNV)); } { info := type_info(VkAccelerationStructureMemoryRequirementsInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMemoryRequirementsInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMemoryRequirementsInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureMemoryRequirementsInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureMemoryRequirementsInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureMemoryRequirementsInfoNV.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMemoryRequirementsInfoNV.type has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureMemoryRequirementsInfoNV.accelerationStructure has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureMemoryRequirementsInfoNV.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureMemoryRequirementsInfoNV) == 32, "VkAccelerationStructureMemoryRequirementsInfoNV has size % instead of 32", size_of(VkAccelerationStructureMemoryRequirementsInfoNV)); } { info := type_info(VkPhysicalDeviceRayTracingPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderGroupHandleSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingPropertiesNV.shaderGroupHandleSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.shaderGroupHandleSize has unexpected size % instead of 4", it.type.runtime_size); case "maxRecursionDepth"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingPropertiesNV.maxRecursionDepth has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.maxRecursionDepth has unexpected size % instead of 4", it.type.runtime_size); case "maxShaderGroupStride"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRayTracingPropertiesNV.maxShaderGroupStride has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.maxShaderGroupStride has unexpected size % instead of 4", it.type.runtime_size); case "shaderGroupBaseAlignment"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceRayTracingPropertiesNV.shaderGroupBaseAlignment has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.shaderGroupBaseAlignment has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryCount"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceRayTracingPropertiesNV.maxGeometryCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPropertiesNV.maxGeometryCount has unexpected size % instead of 8", it.type.runtime_size); case "maxInstanceCount"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceRayTracingPropertiesNV.maxInstanceCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPropertiesNV.maxInstanceCount has unexpected size % instead of 8", it.type.runtime_size); case "maxTriangleCount"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceRayTracingPropertiesNV.maxTriangleCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPropertiesNV.maxTriangleCount has unexpected size % instead of 8", it.type.runtime_size); case "maxDescriptorSetAccelerationStructures"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceRayTracingPropertiesNV.maxDescriptorSetAccelerationStructures has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPropertiesNV.maxDescriptorSetAccelerationStructures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingPropertiesNV) == 64, "VkPhysicalDeviceRayTracingPropertiesNV has size % instead of 64", size_of(VkPhysicalDeviceRayTracingPropertiesNV)); } { info := type_info(VkTransformMatrixKHR); for info.members { if it.name == { case "matrix"; assert(it.offset_in_bytes == 0, "VkTransformMatrixKHR.matrix has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkTransformMatrixKHR.matrix has unexpected size % instead of 48", it.type.runtime_size); } } assert(size_of(VkTransformMatrixKHR) == 48, "VkTransformMatrixKHR has size % instead of 48", size_of(VkTransformMatrixKHR)); } { info := type_info(VkAabbPositionsKHR); for info.members { if it.name == { case "minX"; assert(it.offset_in_bytes == 0, "VkAabbPositionsKHR.minX has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.minX has unexpected size % instead of 4", it.type.runtime_size); case "minY"; assert(it.offset_in_bytes == 4, "VkAabbPositionsKHR.minY has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.minY has unexpected size % instead of 4", it.type.runtime_size); case "minZ"; assert(it.offset_in_bytes == 8, "VkAabbPositionsKHR.minZ has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.minZ has unexpected size % instead of 4", it.type.runtime_size); case "maxX"; assert(it.offset_in_bytes == 12, "VkAabbPositionsKHR.maxX has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.maxX has unexpected size % instead of 4", it.type.runtime_size); case "maxY"; assert(it.offset_in_bytes == 16, "VkAabbPositionsKHR.maxY has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.maxY has unexpected size % instead of 4", it.type.runtime_size); case "maxZ"; assert(it.offset_in_bytes == 20, "VkAabbPositionsKHR.maxZ has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAabbPositionsKHR.maxZ has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAabbPositionsKHR) == 24, "VkAabbPositionsKHR has size % instead of 24", size_of(VkAabbPositionsKHR)); } { info := type_info(VkAccelerationStructureInstanceKHR); for info.members { if it.name == { case "transform"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureInstanceKHR.transform has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkAccelerationStructureInstanceKHR.transform has unexpected size % instead of 48", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureInstanceKHR.__bitfield has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureInstanceKHR.__bitfield has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureReference"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureInstanceKHR.accelerationStructureReference has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureInstanceKHR.accelerationStructureReference has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureInstanceKHR) == 64, "VkAccelerationStructureInstanceKHR has size % instead of 64", size_of(VkAccelerationStructureInstanceKHR)); } { info := type_info(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "representativeFragmentTest"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.representativeFragmentTest has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV.representativeFragmentTest has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV) == 24, "VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV)); } { info := type_info(VkPipelineRepresentativeFragmentTestStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "representativeFragmentTestEnable"; assert(it.offset_in_bytes == 16, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.representativeFragmentTestEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV.representativeFragmentTestEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRepresentativeFragmentTestStateCreateInfoNV) == 24, "VkPipelineRepresentativeFragmentTestStateCreateInfoNV has size % instead of 24", size_of(VkPipelineRepresentativeFragmentTestStateCreateInfoNV)); } { info := type_info(VkPhysicalDeviceImageViewImageFormatInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageViewImageFormatInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageViewImageFormatInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageViewImageFormatInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageViewImageFormatInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageViewType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageViewImageFormatInfoEXT.imageViewType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageViewImageFormatInfoEXT.imageViewType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageViewImageFormatInfoEXT) == 24, "VkPhysicalDeviceImageViewImageFormatInfoEXT has size % instead of 24", size_of(VkPhysicalDeviceImageViewImageFormatInfoEXT)); } { info := type_info(VkFilterCubicImageViewImageFormatPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFilterCubicImageViewImageFormatPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFilterCubicImageViewImageFormatPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFilterCubicImageViewImageFormatPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFilterCubicImageViewImageFormatPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "filterCubic"; assert(it.offset_in_bytes == 16, "VkFilterCubicImageViewImageFormatPropertiesEXT.filterCubic has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFilterCubicImageViewImageFormatPropertiesEXT.filterCubic has unexpected size % instead of 4", it.type.runtime_size); case "filterCubicMinmax"; assert(it.offset_in_bytes == 20, "VkFilterCubicImageViewImageFormatPropertiesEXT.filterCubicMinmax has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFilterCubicImageViewImageFormatPropertiesEXT.filterCubicMinmax has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFilterCubicImageViewImageFormatPropertiesEXT) == 24, "VkFilterCubicImageViewImageFormatPropertiesEXT has size % instead of 24", size_of(VkFilterCubicImageViewImageFormatPropertiesEXT)); } { info := type_info(VkImportMemoryHostPointerInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImportMemoryHostPointerInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportMemoryHostPointerInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImportMemoryHostPointerInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportMemoryHostPointerInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 16, "VkImportMemoryHostPointerInfoEXT.handleType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImportMemoryHostPointerInfoEXT.handleType has unexpected size % instead of 4", it.type.runtime_size); case "pHostPointer"; assert(it.offset_in_bytes == 24, "VkImportMemoryHostPointerInfoEXT.pHostPointer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImportMemoryHostPointerInfoEXT.pHostPointer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImportMemoryHostPointerInfoEXT) == 32, "VkImportMemoryHostPointerInfoEXT has size % instead of 32", size_of(VkImportMemoryHostPointerInfoEXT)); } { info := type_info(VkMemoryHostPointerPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryHostPointerPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryHostPointerPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryHostPointerPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryHostPointerPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryTypeBits"; assert(it.offset_in_bytes == 16, "VkMemoryHostPointerPropertiesEXT.memoryTypeBits has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryHostPointerPropertiesEXT.memoryTypeBits has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryHostPointerPropertiesEXT) == 24, "VkMemoryHostPointerPropertiesEXT has size % instead of 24", size_of(VkMemoryHostPointerPropertiesEXT)); } { info := type_info(VkPhysicalDeviceExternalMemoryHostPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minImportedHostPointerAlignment"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.minImportedHostPointerAlignment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT.minImportedHostPointerAlignment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalMemoryHostPropertiesEXT) == 24, "VkPhysicalDeviceExternalMemoryHostPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceExternalMemoryHostPropertiesEXT)); } { info := type_info(VkPipelineCompilerControlCreateInfoAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCompilerControlCreateInfoAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCompilerControlCreateInfoAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCompilerControlCreateInfoAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCompilerControlCreateInfoAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "compilerControlFlags"; assert(it.offset_in_bytes == 16, "VkPipelineCompilerControlCreateInfoAMD.compilerControlFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCompilerControlCreateInfoAMD.compilerControlFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineCompilerControlCreateInfoAMD) == 24, "VkPipelineCompilerControlCreateInfoAMD has size % instead of 24", size_of(VkPipelineCompilerControlCreateInfoAMD)); } { info := type_info(VkPhysicalDeviceShaderCorePropertiesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderCorePropertiesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderCorePropertiesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCorePropertiesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderEngineCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderCorePropertiesAMD.shaderEngineCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.shaderEngineCount has unexpected size % instead of 4", it.type.runtime_size); case "shaderArraysPerEngineCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderCorePropertiesAMD.shaderArraysPerEngineCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.shaderArraysPerEngineCount has unexpected size % instead of 4", it.type.runtime_size); case "computeUnitsPerShaderArray"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderCorePropertiesAMD.computeUnitsPerShaderArray has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.computeUnitsPerShaderArray has unexpected size % instead of 4", it.type.runtime_size); case "simdPerComputeUnit"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShaderCorePropertiesAMD.simdPerComputeUnit has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.simdPerComputeUnit has unexpected size % instead of 4", it.type.runtime_size); case "wavefrontsPerSimd"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceShaderCorePropertiesAMD.wavefrontsPerSimd has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.wavefrontsPerSimd has unexpected size % instead of 4", it.type.runtime_size); case "wavefrontSize"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceShaderCorePropertiesAMD.wavefrontSize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.wavefrontSize has unexpected size % instead of 4", it.type.runtime_size); case "sgprsPerSimd"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceShaderCorePropertiesAMD.sgprsPerSimd has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.sgprsPerSimd has unexpected size % instead of 4", it.type.runtime_size); case "minSgprAllocation"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceShaderCorePropertiesAMD.minSgprAllocation has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.minSgprAllocation has unexpected size % instead of 4", it.type.runtime_size); case "maxSgprAllocation"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceShaderCorePropertiesAMD.maxSgprAllocation has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.maxSgprAllocation has unexpected size % instead of 4", it.type.runtime_size); case "sgprAllocationGranularity"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceShaderCorePropertiesAMD.sgprAllocationGranularity has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.sgprAllocationGranularity has unexpected size % instead of 4", it.type.runtime_size); case "vgprsPerSimd"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceShaderCorePropertiesAMD.vgprsPerSimd has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.vgprsPerSimd has unexpected size % instead of 4", it.type.runtime_size); case "minVgprAllocation"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceShaderCorePropertiesAMD.minVgprAllocation has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.minVgprAllocation has unexpected size % instead of 4", it.type.runtime_size); case "maxVgprAllocation"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceShaderCorePropertiesAMD.maxVgprAllocation has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.maxVgprAllocation has unexpected size % instead of 4", it.type.runtime_size); case "vgprAllocationGranularity"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceShaderCorePropertiesAMD.vgprAllocationGranularity has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesAMD.vgprAllocationGranularity has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderCorePropertiesAMD) == 72, "VkPhysicalDeviceShaderCorePropertiesAMD has size % instead of 72", size_of(VkPhysicalDeviceShaderCorePropertiesAMD)); } { info := type_info(VkDeviceMemoryOverallocationCreateInfoAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceMemoryOverallocationCreateInfoAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryOverallocationCreateInfoAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceMemoryOverallocationCreateInfoAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryOverallocationCreateInfoAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "overallocationBehavior"; assert(it.offset_in_bytes == 16, "VkDeviceMemoryOverallocationCreateInfoAMD.overallocationBehavior has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryOverallocationCreateInfoAMD.overallocationBehavior has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceMemoryOverallocationCreateInfoAMD) == 24, "VkDeviceMemoryOverallocationCreateInfoAMD has size % instead of 24", size_of(VkDeviceMemoryOverallocationCreateInfoAMD)); } { info := type_info(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxVertexAttribDivisor"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.maxVertexAttribDivisor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT.maxVertexAttribDivisor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT) == 24, "VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT)); } { info := type_info(VkPhysicalDeviceMeshShaderFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMeshShaderFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMeshShaderFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMeshShaderFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "taskShader"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMeshShaderFeaturesNV.taskShader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesNV.taskShader has unexpected size % instead of 4", it.type.runtime_size); case "meshShader"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMeshShaderFeaturesNV.meshShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesNV.meshShader has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMeshShaderFeaturesNV) == 24, "VkPhysicalDeviceMeshShaderFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceMeshShaderFeaturesNV)); } { info := type_info(VkPhysicalDeviceMeshShaderPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMeshShaderPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMeshShaderPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMeshShaderPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxDrawMeshTasksCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMeshShaderPropertiesNV.maxDrawMeshTasksCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxDrawMeshTasksCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskWorkGroupInvocations"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskWorkGroupInvocations has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskWorkGroupSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskWorkGroupSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "maxTaskTotalMemorySize"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskTotalMemorySize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskTotalMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskOutputCount"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskOutputCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxTaskOutputCount has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshWorkGroupInvocations"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshWorkGroupInvocations has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshWorkGroupSize"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshWorkGroupSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "maxMeshTotalMemorySize"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshTotalMemorySize has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshTotalMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputVertices"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshOutputVertices has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshOutputVertices has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputPrimitives"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshOutputPrimitives has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshOutputPrimitives has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshMultiviewViewCount"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshMultiviewViewCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.maxMeshMultiviewViewCount has unexpected size % instead of 4", it.type.runtime_size); case "meshOutputPerVertexGranularity"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceMeshShaderPropertiesNV.meshOutputPerVertexGranularity has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.meshOutputPerVertexGranularity has unexpected size % instead of 4", it.type.runtime_size); case "meshOutputPerPrimitiveGranularity"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceMeshShaderPropertiesNV.meshOutputPerPrimitiveGranularity has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesNV.meshOutputPerPrimitiveGranularity has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMeshShaderPropertiesNV) == 88, "VkPhysicalDeviceMeshShaderPropertiesNV has size % instead of 88", size_of(VkPhysicalDeviceMeshShaderPropertiesNV)); } { info := type_info(VkDrawMeshTasksIndirectCommandNV); for info.members { if it.name == { case "taskCount"; assert(it.offset_in_bytes == 0, "VkDrawMeshTasksIndirectCommandNV.taskCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawMeshTasksIndirectCommandNV.taskCount has unexpected size % instead of 4", it.type.runtime_size); case "firstTask"; assert(it.offset_in_bytes == 4, "VkDrawMeshTasksIndirectCommandNV.firstTask has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawMeshTasksIndirectCommandNV.firstTask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrawMeshTasksIndirectCommandNV) == 8, "VkDrawMeshTasksIndirectCommandNV has size % instead of 8", size_of(VkDrawMeshTasksIndirectCommandNV)); } { info := type_info(VkPhysicalDeviceShaderImageFootprintFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageFootprint"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.imageFootprint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderImageFootprintFeaturesNV.imageFootprint has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderImageFootprintFeaturesNV) == 24, "VkPhysicalDeviceShaderImageFootprintFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceShaderImageFootprintFeaturesNV)); } { info := type_info(VkPipelineViewportExclusiveScissorStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "exclusiveScissorCount"; assert(it.offset_in_bytes == 16, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.exclusiveScissorCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.exclusiveScissorCount has unexpected size % instead of 4", it.type.runtime_size); case "pExclusiveScissors"; assert(it.offset_in_bytes == 24, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.pExclusiveScissors has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportExclusiveScissorStateCreateInfoNV.pExclusiveScissors has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportExclusiveScissorStateCreateInfoNV) == 32, "VkPipelineViewportExclusiveScissorStateCreateInfoNV has size % instead of 32", size_of(VkPipelineViewportExclusiveScissorStateCreateInfoNV)); } { info := type_info(VkPhysicalDeviceExclusiveScissorFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExclusiveScissorFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExclusiveScissorFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExclusiveScissorFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExclusiveScissorFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "exclusiveScissor"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExclusiveScissorFeaturesNV.exclusiveScissor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExclusiveScissorFeaturesNV.exclusiveScissor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExclusiveScissorFeaturesNV) == 24, "VkPhysicalDeviceExclusiveScissorFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceExclusiveScissorFeaturesNV)); } { info := type_info(VkQueueFamilyCheckpointPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyCheckpointPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyCheckpointPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyCheckpointPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyCheckpointPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "checkpointExecutionStageMask"; assert(it.offset_in_bytes == 16, "VkQueueFamilyCheckpointPropertiesNV.checkpointExecutionStageMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyCheckpointPropertiesNV.checkpointExecutionStageMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueueFamilyCheckpointPropertiesNV) == 24, "VkQueueFamilyCheckpointPropertiesNV has size % instead of 24", size_of(VkQueueFamilyCheckpointPropertiesNV)); } { info := type_info(VkCheckpointDataNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCheckpointDataNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCheckpointDataNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCheckpointDataNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCheckpointDataNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 16, "VkCheckpointDataNV.stage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCheckpointDataNV.stage has unexpected size % instead of 4", it.type.runtime_size); case "pCheckpointMarker"; assert(it.offset_in_bytes == 24, "VkCheckpointDataNV.pCheckpointMarker has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCheckpointDataNV.pCheckpointMarker has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCheckpointDataNV) == 32, "VkCheckpointDataNV has size % instead of 32", size_of(VkCheckpointDataNV)); } { info := type_info(VkQueueFamilyCheckpointProperties2NV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueueFamilyCheckpointProperties2NV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueueFamilyCheckpointProperties2NV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueueFamilyCheckpointProperties2NV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyCheckpointProperties2NV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "checkpointExecutionStageMask"; assert(it.offset_in_bytes == 16, "VkQueueFamilyCheckpointProperties2NV.checkpointExecutionStageMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueueFamilyCheckpointProperties2NV.checkpointExecutionStageMask has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkQueueFamilyCheckpointProperties2NV) == 24, "VkQueueFamilyCheckpointProperties2NV has size % instead of 24", size_of(VkQueueFamilyCheckpointProperties2NV)); } { info := type_info(VkCheckpointData2NV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCheckpointData2NV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCheckpointData2NV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCheckpointData2NV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCheckpointData2NV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 16, "VkCheckpointData2NV.stage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCheckpointData2NV.stage has unexpected size % instead of 8", it.type.runtime_size); case "pCheckpointMarker"; assert(it.offset_in_bytes == 24, "VkCheckpointData2NV.pCheckpointMarker has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCheckpointData2NV.pCheckpointMarker has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCheckpointData2NV) == 32, "VkCheckpointData2NV has size % instead of 32", size_of(VkCheckpointData2NV)); } { info := type_info(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderIntegerFunctions2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.shaderIntegerFunctions2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL.shaderIntegerFunctions2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL) == 24, "VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL has size % instead of 24", size_of(VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL)); } { info := type_info(VkPerformanceValueDataINTEL); for info.members { if it.name == { case "value32"; assert(it.offset_in_bytes == 0, "VkPerformanceValueDataINTEL.value32 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceValueDataINTEL.value32 has unexpected size % instead of 4", it.type.runtime_size); case "value64"; assert(it.offset_in_bytes == 0, "VkPerformanceValueDataINTEL.value64 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceValueDataINTEL.value64 has unexpected size % instead of 8", it.type.runtime_size); case "valueFloat"; assert(it.offset_in_bytes == 0, "VkPerformanceValueDataINTEL.valueFloat has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceValueDataINTEL.valueFloat has unexpected size % instead of 4", it.type.runtime_size); case "valueBool"; assert(it.offset_in_bytes == 0, "VkPerformanceValueDataINTEL.valueBool has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceValueDataINTEL.valueBool has unexpected size % instead of 4", it.type.runtime_size); case "valueString"; assert(it.offset_in_bytes == 0, "VkPerformanceValueDataINTEL.valueString has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceValueDataINTEL.valueString has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerformanceValueDataINTEL) == 8, "VkPerformanceValueDataINTEL has size % instead of 8", size_of(VkPerformanceValueDataINTEL)); } { info := type_info(VkPerformanceValueINTEL); for info.members { if it.name == { case "type"; assert(it.offset_in_bytes == 0, "VkPerformanceValueINTEL.type has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceValueINTEL.type has unexpected size % instead of 4", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 8, "VkPerformanceValueINTEL.data has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceValueINTEL.data has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerformanceValueINTEL) == 16, "VkPerformanceValueINTEL has size % instead of 16", size_of(VkPerformanceValueINTEL)); } { info := type_info(VkInitializePerformanceApiInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkInitializePerformanceApiInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkInitializePerformanceApiInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkInitializePerformanceApiInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInitializePerformanceApiInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pUserData"; assert(it.offset_in_bytes == 16, "VkInitializePerformanceApiInfoINTEL.pUserData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkInitializePerformanceApiInfoINTEL.pUserData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkInitializePerformanceApiInfoINTEL) == 24, "VkInitializePerformanceApiInfoINTEL has size % instead of 24", size_of(VkInitializePerformanceApiInfoINTEL)); } { info := type_info(VkQueryPoolPerformanceQueryCreateInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueryPoolPerformanceQueryCreateInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolPerformanceQueryCreateInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueryPoolPerformanceQueryCreateInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryPoolPerformanceQueryCreateInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "performanceCountersSampling"; assert(it.offset_in_bytes == 16, "VkQueryPoolPerformanceQueryCreateInfoINTEL.performanceCountersSampling has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryPoolPerformanceQueryCreateInfoINTEL.performanceCountersSampling has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkQueryPoolPerformanceQueryCreateInfoINTEL) == 24, "VkQueryPoolPerformanceQueryCreateInfoINTEL has size % instead of 24", size_of(VkQueryPoolPerformanceQueryCreateInfoINTEL)); } { info := type_info(VkPerformanceMarkerInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceMarkerInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceMarkerInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceMarkerInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceMarkerInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "marker"; assert(it.offset_in_bytes == 16, "VkPerformanceMarkerInfoINTEL.marker has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceMarkerInfoINTEL.marker has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerformanceMarkerInfoINTEL) == 24, "VkPerformanceMarkerInfoINTEL has size % instead of 24", size_of(VkPerformanceMarkerInfoINTEL)); } { info := type_info(VkPerformanceStreamMarkerInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceStreamMarkerInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceStreamMarkerInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceStreamMarkerInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceStreamMarkerInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "marker"; assert(it.offset_in_bytes == 16, "VkPerformanceStreamMarkerInfoINTEL.marker has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceStreamMarkerInfoINTEL.marker has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPerformanceStreamMarkerInfoINTEL) == 24, "VkPerformanceStreamMarkerInfoINTEL has size % instead of 24", size_of(VkPerformanceStreamMarkerInfoINTEL)); } { info := type_info(VkPerformanceOverrideInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceOverrideInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceOverrideInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceOverrideInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceOverrideInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkPerformanceOverrideInfoINTEL.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceOverrideInfoINTEL.type has unexpected size % instead of 4", it.type.runtime_size); case "enable"; assert(it.offset_in_bytes == 20, "VkPerformanceOverrideInfoINTEL.enable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceOverrideInfoINTEL.enable has unexpected size % instead of 4", it.type.runtime_size); case "parameter"; assert(it.offset_in_bytes == 24, "VkPerformanceOverrideInfoINTEL.parameter has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceOverrideInfoINTEL.parameter has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerformanceOverrideInfoINTEL) == 32, "VkPerformanceOverrideInfoINTEL has size % instead of 32", size_of(VkPerformanceOverrideInfoINTEL)); } { info := type_info(VkPerformanceConfigurationAcquireInfoINTEL); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerformanceConfigurationAcquireInfoINTEL.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceConfigurationAcquireInfoINTEL.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerformanceConfigurationAcquireInfoINTEL.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerformanceConfigurationAcquireInfoINTEL.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkPerformanceConfigurationAcquireInfoINTEL.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerformanceConfigurationAcquireInfoINTEL.type has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPerformanceConfigurationAcquireInfoINTEL) == 24, "VkPerformanceConfigurationAcquireInfoINTEL has size % instead of 24", size_of(VkPerformanceConfigurationAcquireInfoINTEL)); } { info := type_info(VkPhysicalDevicePCIBusInfoPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePCIBusInfoPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePCIBusInfoPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pciDomain"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciDomain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciDomain has unexpected size % instead of 4", it.type.runtime_size); case "pciBus"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciBus has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciBus has unexpected size % instead of 4", it.type.runtime_size); case "pciDevice"; assert(it.offset_in_bytes == 24, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciDevice has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciDevice has unexpected size % instead of 4", it.type.runtime_size); case "pciFunction"; assert(it.offset_in_bytes == 28, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciFunction has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePCIBusInfoPropertiesEXT.pciFunction has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePCIBusInfoPropertiesEXT) == 32, "VkPhysicalDevicePCIBusInfoPropertiesEXT has size % instead of 32", size_of(VkPhysicalDevicePCIBusInfoPropertiesEXT)); } { info := type_info(VkDisplayNativeHdrSurfaceCapabilitiesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "localDimmingSupport"; assert(it.offset_in_bytes == 16, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.localDimmingSupport has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayNativeHdrSurfaceCapabilitiesAMD.localDimmingSupport has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayNativeHdrSurfaceCapabilitiesAMD) == 24, "VkDisplayNativeHdrSurfaceCapabilitiesAMD has size % instead of 24", size_of(VkDisplayNativeHdrSurfaceCapabilitiesAMD)); } { info := type_info(VkSwapchainDisplayNativeHdrCreateInfoAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainDisplayNativeHdrCreateInfoAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainDisplayNativeHdrCreateInfoAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainDisplayNativeHdrCreateInfoAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainDisplayNativeHdrCreateInfoAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "localDimmingEnable"; assert(it.offset_in_bytes == 16, "VkSwapchainDisplayNativeHdrCreateInfoAMD.localDimmingEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainDisplayNativeHdrCreateInfoAMD.localDimmingEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSwapchainDisplayNativeHdrCreateInfoAMD) == 24, "VkSwapchainDisplayNativeHdrCreateInfoAMD has size % instead of 24", size_of(VkSwapchainDisplayNativeHdrCreateInfoAMD)); } { info := type_info(VkPhysicalDeviceFragmentDensityMapFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityMap"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMap has unexpected size % instead of 4", it.type.runtime_size); case "fragmentDensityMapDynamic"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMapDynamic has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMapDynamic has unexpected size % instead of 4", it.type.runtime_size); case "fragmentDensityMapNonSubsampledImages"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMapNonSubsampledImages has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT.fragmentDensityMapNonSubsampledImages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMapFeaturesEXT) == 32, "VkPhysicalDeviceFragmentDensityMapFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceFragmentDensityMapFeaturesEXT)); } { info := type_info(VkPhysicalDeviceFragmentDensityMapPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minFragmentDensityTexelSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.minFragmentDensityTexelSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.minFragmentDensityTexelSize has unexpected size % instead of 8", it.type.runtime_size); case "maxFragmentDensityTexelSize"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.maxFragmentDensityTexelSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.maxFragmentDensityTexelSize has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityInvocations"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.fragmentDensityInvocations has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT.fragmentDensityInvocations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMapPropertiesEXT) == 40, "VkPhysicalDeviceFragmentDensityMapPropertiesEXT has size % instead of 40", size_of(VkPhysicalDeviceFragmentDensityMapPropertiesEXT)); } { info := type_info(VkRenderPassFragmentDensityMapCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassFragmentDensityMapCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassFragmentDensityMapCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassFragmentDensityMapCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassFragmentDensityMapCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityMapAttachment"; assert(it.offset_in_bytes == 16, "VkRenderPassFragmentDensityMapCreateInfoEXT.fragmentDensityMapAttachment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassFragmentDensityMapCreateInfoEXT.fragmentDensityMapAttachment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassFragmentDensityMapCreateInfoEXT) == 24, "VkRenderPassFragmentDensityMapCreateInfoEXT has size % instead of 24", size_of(VkRenderPassFragmentDensityMapCreateInfoEXT)); } { info := type_info(VkRenderingFragmentDensityMapAttachmentInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingFragmentDensityMapAttachmentInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingFragmentDensityMapAttachmentInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingFragmentDensityMapAttachmentInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingFragmentDensityMapAttachmentInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 16, "VkRenderingFragmentDensityMapAttachmentInfoEXT.imageView has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingFragmentDensityMapAttachmentInfoEXT.imageView has unexpected size % instead of 8", it.type.runtime_size); case "imageLayout"; assert(it.offset_in_bytes == 24, "VkRenderingFragmentDensityMapAttachmentInfoEXT.imageLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingFragmentDensityMapAttachmentInfoEXT.imageLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderingFragmentDensityMapAttachmentInfoEXT) == 32, "VkRenderingFragmentDensityMapAttachmentInfoEXT has size % instead of 32", size_of(VkRenderingFragmentDensityMapAttachmentInfoEXT)); } { info := type_info(VkPhysicalDeviceShaderCoreProperties2AMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderCoreProperties2AMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreProperties2AMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderCoreProperties2AMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCoreProperties2AMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCoreFeatures"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderCoreProperties2AMD.shaderCoreFeatures has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreProperties2AMD.shaderCoreFeatures has unexpected size % instead of 4", it.type.runtime_size); case "activeComputeUnitCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderCoreProperties2AMD.activeComputeUnitCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreProperties2AMD.activeComputeUnitCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderCoreProperties2AMD) == 24, "VkPhysicalDeviceShaderCoreProperties2AMD has size % instead of 24", size_of(VkPhysicalDeviceShaderCoreProperties2AMD)); } { info := type_info(VkPhysicalDeviceCoherentMemoryFeaturesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceCoherentMemory"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.deviceCoherentMemory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCoherentMemoryFeaturesAMD.deviceCoherentMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCoherentMemoryFeaturesAMD) == 24, "VkPhysicalDeviceCoherentMemoryFeaturesAMD has size % instead of 24", size_of(VkPhysicalDeviceCoherentMemoryFeaturesAMD)); } { info := type_info(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderImageInt64Atomics"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.shaderImageInt64Atomics has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.shaderImageInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "sparseImageInt64Atomics"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.sparseImageInt64Atomics has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT.sparseImageInt64Atomics has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT) == 24, "VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT)); } { info := type_info(VkPhysicalDeviceMemoryBudgetPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "heapBudget"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.heapBudget has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 128, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.heapBudget has unexpected size % instead of 128", it.type.runtime_size); case "heapUsage"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.heapUsage has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 128, "VkPhysicalDeviceMemoryBudgetPropertiesEXT.heapUsage has unexpected size % instead of 128", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryBudgetPropertiesEXT) == 272, "VkPhysicalDeviceMemoryBudgetPropertiesEXT has size % instead of 272", size_of(VkPhysicalDeviceMemoryBudgetPropertiesEXT)); } { info := type_info(VkPhysicalDeviceMemoryPriorityFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryPriority"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.memoryPriority has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryPriorityFeaturesEXT.memoryPriority has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryPriorityFeaturesEXT) == 24, "VkPhysicalDeviceMemoryPriorityFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceMemoryPriorityFeaturesEXT)); } { info := type_info(VkMemoryPriorityAllocateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryPriorityAllocateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryPriorityAllocateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryPriorityAllocateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryPriorityAllocateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "priority"; assert(it.offset_in_bytes == 16, "VkMemoryPriorityAllocateInfoEXT.priority has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryPriorityAllocateInfoEXT.priority has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryPriorityAllocateInfoEXT) == 24, "VkMemoryPriorityAllocateInfoEXT has size % instead of 24", size_of(VkMemoryPriorityAllocateInfoEXT)); } { info := type_info(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dedicatedAllocationImageAliasing"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.dedicatedAllocationImageAliasing has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV.dedicatedAllocationImageAliasing has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV) == 24, "VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV)); } { info := type_info(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "bufferDeviceAddress"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddress has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddressCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddressCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "bufferDeviceAddressMultiDevice"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddressMultiDevice has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT.bufferDeviceAddressMultiDevice has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT) == 32, "VkPhysicalDeviceBufferDeviceAddressFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceBufferDeviceAddressFeaturesEXT)); } { info := type_info(VkBufferDeviceAddressCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferDeviceAddressCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferDeviceAddressCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferDeviceAddressCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferDeviceAddressCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceAddress"; assert(it.offset_in_bytes == 16, "VkBufferDeviceAddressCreateInfoEXT.deviceAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferDeviceAddressCreateInfoEXT.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferDeviceAddressCreateInfoEXT) == 24, "VkBufferDeviceAddressCreateInfoEXT has size % instead of 24", size_of(VkBufferDeviceAddressCreateInfoEXT)); } { info := type_info(VkValidationFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkValidationFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkValidationFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "enabledValidationFeatureCount"; assert(it.offset_in_bytes == 16, "VkValidationFeaturesEXT.enabledValidationFeatureCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationFeaturesEXT.enabledValidationFeatureCount has unexpected size % instead of 4", it.type.runtime_size); case "pEnabledValidationFeatures"; assert(it.offset_in_bytes == 24, "VkValidationFeaturesEXT.pEnabledValidationFeatures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationFeaturesEXT.pEnabledValidationFeatures has unexpected size % instead of 8", it.type.runtime_size); case "disabledValidationFeatureCount"; assert(it.offset_in_bytes == 32, "VkValidationFeaturesEXT.disabledValidationFeatureCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkValidationFeaturesEXT.disabledValidationFeatureCount has unexpected size % instead of 4", it.type.runtime_size); case "pDisabledValidationFeatures"; assert(it.offset_in_bytes == 40, "VkValidationFeaturesEXT.pDisabledValidationFeatures has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkValidationFeaturesEXT.pDisabledValidationFeatures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkValidationFeaturesEXT) == 48, "VkValidationFeaturesEXT has size % instead of 48", size_of(VkValidationFeaturesEXT)); } { info := type_info(VkCooperativeMatrixPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCooperativeMatrixPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCooperativeMatrixPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCooperativeMatrixPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "MSize"; assert(it.offset_in_bytes == 16, "VkCooperativeMatrixPropertiesNV.MSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.MSize has unexpected size % instead of 4", it.type.runtime_size); case "NSize"; assert(it.offset_in_bytes == 20, "VkCooperativeMatrixPropertiesNV.NSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.NSize has unexpected size % instead of 4", it.type.runtime_size); case "KSize"; assert(it.offset_in_bytes == 24, "VkCooperativeMatrixPropertiesNV.KSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.KSize has unexpected size % instead of 4", it.type.runtime_size); case "AType"; assert(it.offset_in_bytes == 28, "VkCooperativeMatrixPropertiesNV.AType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.AType has unexpected size % instead of 4", it.type.runtime_size); case "BType"; assert(it.offset_in_bytes == 32, "VkCooperativeMatrixPropertiesNV.BType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.BType has unexpected size % instead of 4", it.type.runtime_size); case "CType"; assert(it.offset_in_bytes == 36, "VkCooperativeMatrixPropertiesNV.CType has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.CType has unexpected size % instead of 4", it.type.runtime_size); case "DType"; assert(it.offset_in_bytes == 40, "VkCooperativeMatrixPropertiesNV.DType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.DType has unexpected size % instead of 4", it.type.runtime_size); case "scope"; assert(it.offset_in_bytes == 44, "VkCooperativeMatrixPropertiesNV.scope has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixPropertiesNV.scope has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCooperativeMatrixPropertiesNV) == 48, "VkCooperativeMatrixPropertiesNV has size % instead of 48", size_of(VkCooperativeMatrixPropertiesNV)); } { info := type_info(VkPhysicalDeviceCooperativeMatrixFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrix"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.cooperativeMatrix has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.cooperativeMatrix has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixRobustBufferAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.cooperativeMatrixRobustBufferAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixFeaturesNV.cooperativeMatrixRobustBufferAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrixFeaturesNV) == 24, "VkPhysicalDeviceCooperativeMatrixFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCooperativeMatrixFeaturesNV)); } { info := type_info(VkPhysicalDeviceCooperativeMatrixPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrixSupportedStages"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.cooperativeMatrixSupportedStages has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrixPropertiesNV.cooperativeMatrixSupportedStages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrixPropertiesNV) == 24, "VkPhysicalDeviceCooperativeMatrixPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceCooperativeMatrixPropertiesNV)); } { info := type_info(VkPhysicalDeviceCoverageReductionModeFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "coverageReductionMode"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.coverageReductionMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCoverageReductionModeFeaturesNV.coverageReductionMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCoverageReductionModeFeaturesNV) == 24, "VkPhysicalDeviceCoverageReductionModeFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCoverageReductionModeFeaturesNV)); } { info := type_info(VkPipelineCoverageReductionStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineCoverageReductionStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageReductionStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineCoverageReductionStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineCoverageReductionStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPipelineCoverageReductionStateCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageReductionStateCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "coverageReductionMode"; assert(it.offset_in_bytes == 20, "VkPipelineCoverageReductionStateCreateInfoNV.coverageReductionMode has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineCoverageReductionStateCreateInfoNV.coverageReductionMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineCoverageReductionStateCreateInfoNV) == 24, "VkPipelineCoverageReductionStateCreateInfoNV has size % instead of 24", size_of(VkPipelineCoverageReductionStateCreateInfoNV)); } { info := type_info(VkFramebufferMixedSamplesCombinationNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFramebufferMixedSamplesCombinationNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferMixedSamplesCombinationNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFramebufferMixedSamplesCombinationNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFramebufferMixedSamplesCombinationNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "coverageReductionMode"; assert(it.offset_in_bytes == 16, "VkFramebufferMixedSamplesCombinationNV.coverageReductionMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferMixedSamplesCombinationNV.coverageReductionMode has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationSamples"; assert(it.offset_in_bytes == 20, "VkFramebufferMixedSamplesCombinationNV.rasterizationSamples has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferMixedSamplesCombinationNV.rasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); case "depthStencilSamples"; assert(it.offset_in_bytes == 24, "VkFramebufferMixedSamplesCombinationNV.depthStencilSamples has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferMixedSamplesCombinationNV.depthStencilSamples has unexpected size % instead of 4", it.type.runtime_size); case "colorSamples"; assert(it.offset_in_bytes == 28, "VkFramebufferMixedSamplesCombinationNV.colorSamples has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFramebufferMixedSamplesCombinationNV.colorSamples has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkFramebufferMixedSamplesCombinationNV) == 32, "VkFramebufferMixedSamplesCombinationNV has size % instead of 32", size_of(VkFramebufferMixedSamplesCombinationNV)); } { info := type_info(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentShaderSampleInterlock"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderSampleInterlock has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderSampleInterlock has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShaderPixelInterlock"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderPixelInterlock has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderPixelInterlock has unexpected size % instead of 4", it.type.runtime_size); case "fragmentShaderShadingRateInterlock"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderShadingRateInterlock has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT.fragmentShaderShadingRateInterlock has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT) == 32, "VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT)); } { info := type_info(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "ycbcrImageArrays"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.ycbcrImageArrays has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT.ycbcrImageArrays has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT) == 24, "VkPhysicalDeviceYcbcrImageArraysFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceYcbcrImageArraysFeaturesEXT)); } { info := type_info(VkPhysicalDeviceProvokingVertexFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProvokingVertexFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProvokingVertexFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceProvokingVertexFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "provokingVertexLast"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProvokingVertexFeaturesEXT.provokingVertexLast has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexFeaturesEXT.provokingVertexLast has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackPreservesProvokingVertex"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceProvokingVertexFeaturesEXT.transformFeedbackPreservesProvokingVertex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexFeaturesEXT.transformFeedbackPreservesProvokingVertex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProvokingVertexFeaturesEXT) == 24, "VkPhysicalDeviceProvokingVertexFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceProvokingVertexFeaturesEXT)); } { info := type_info(VkPhysicalDeviceProvokingVertexPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceProvokingVertexPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceProvokingVertexPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceProvokingVertexPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "provokingVertexModePerPipeline"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceProvokingVertexPropertiesEXT.provokingVertexModePerPipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexPropertiesEXT.provokingVertexModePerPipeline has unexpected size % instead of 4", it.type.runtime_size); case "transformFeedbackPreservesTriangleFanProvokingVertex"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceProvokingVertexPropertiesEXT.transformFeedbackPreservesTriangleFanProvokingVertex has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceProvokingVertexPropertiesEXT.transformFeedbackPreservesTriangleFanProvokingVertex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceProvokingVertexPropertiesEXT) == 24, "VkPhysicalDeviceProvokingVertexPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceProvokingVertexPropertiesEXT)); } { info := type_info(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "provokingVertexMode"; assert(it.offset_in_bytes == 16, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.provokingVertexMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT.provokingVertexMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT) == 24, "VkPipelineRasterizationProvokingVertexStateCreateInfoEXT has size % instead of 24", size_of(VkPipelineRasterizationProvokingVertexStateCreateInfoEXT)); } { info := type_info(VkHeadlessSurfaceCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkHeadlessSurfaceCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHeadlessSurfaceCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkHeadlessSurfaceCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHeadlessSurfaceCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkHeadlessSurfaceCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHeadlessSurfaceCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkHeadlessSurfaceCreateInfoEXT) == 24, "VkHeadlessSurfaceCreateInfoEXT has size % instead of 24", size_of(VkHeadlessSurfaceCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderBufferFloat32Atomics"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat32Atomics has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat32Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat32AtomicAdd"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat32AtomicAdd has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat32AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat64Atomics"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat64Atomics has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat64AtomicAdd"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat64AtomicAdd has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderBufferFloat64AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat32Atomics"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat32Atomics has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat32Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat32AtomicAdd"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat32AtomicAdd has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat32AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat64Atomics"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat64Atomics has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat64Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat64AtomicAdd"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat64AtomicAdd has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderSharedFloat64AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderImageFloat32Atomics"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderImageFloat32Atomics has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderImageFloat32Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderImageFloat32AtomicAdd"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderImageFloat32AtomicAdd has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.shaderImageFloat32AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "sparseImageFloat32Atomics"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sparseImageFloat32Atomics has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sparseImageFloat32Atomics has unexpected size % instead of 4", it.type.runtime_size); case "sparseImageFloat32AtomicAdd"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sparseImageFloat32AtomicAdd has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT.sparseImageFloat32AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT) == 64, "VkPhysicalDeviceShaderAtomicFloatFeaturesEXT has size % instead of 64", size_of(VkPhysicalDeviceShaderAtomicFloatFeaturesEXT)); } { info := type_info(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "extendedDynamicState"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.extendedDynamicState has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT.extendedDynamicState has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT) == 24, "VkPhysicalDeviceExtendedDynamicStateFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceExtendedDynamicStateFeaturesEXT)); } { info := type_info(VkPhysicalDeviceMapMemoryPlacedFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryMapPlaced"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryMapPlaced has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryMapPlaced has unexpected size % instead of 4", it.type.runtime_size); case "memoryMapRangePlaced"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryMapRangePlaced has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryMapRangePlaced has unexpected size % instead of 4", it.type.runtime_size); case "memoryUnmapReserve"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryUnmapReserve has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT.memoryUnmapReserve has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMapMemoryPlacedFeaturesEXT) == 32, "VkPhysicalDeviceMapMemoryPlacedFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceMapMemoryPlacedFeaturesEXT)); } { info := type_info(VkPhysicalDeviceMapMemoryPlacedPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minPlacedMemoryMapAlignment"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.minPlacedMemoryMapAlignment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT.minPlacedMemoryMapAlignment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMapMemoryPlacedPropertiesEXT) == 24, "VkPhysicalDeviceMapMemoryPlacedPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceMapMemoryPlacedPropertiesEXT)); } { info := type_info(VkMemoryMapPlacedInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryMapPlacedInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryMapPlacedInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryMapPlacedInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapPlacedInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pPlacedAddress"; assert(it.offset_in_bytes == 16, "VkMemoryMapPlacedInfoEXT.pPlacedAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryMapPlacedInfoEXT.pPlacedAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMemoryMapPlacedInfoEXT) == 24, "VkMemoryMapPlacedInfoEXT has size % instead of 24", size_of(VkMemoryMapPlacedInfoEXT)); } { info := type_info(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderBufferFloat16Atomics"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16Atomics has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat16AtomicAdd"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16AtomicAdd has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat16AtomicMinMax"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16AtomicMinMax has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat16AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat32AtomicMinMax"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat32AtomicMinMax has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat32AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderBufferFloat64AtomicMinMax"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat64AtomicMinMax has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderBufferFloat64AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat16Atomics"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16Atomics has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16Atomics has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat16AtomicAdd"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16AtomicAdd has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16AtomicAdd has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat16AtomicMinMax"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16AtomicMinMax has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat16AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat32AtomicMinMax"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat32AtomicMinMax has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat32AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderSharedFloat64AtomicMinMax"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat64AtomicMinMax has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderSharedFloat64AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "shaderImageFloat32AtomicMinMax"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderImageFloat32AtomicMinMax has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.shaderImageFloat32AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); case "sparseImageFloat32AtomicMinMax"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.sparseImageFloat32AtomicMinMax has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT.sparseImageFloat32AtomicMinMax has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT) == 64, "VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT has size % instead of 64", size_of(VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT)); } { info := type_info(VkSurfacePresentModeEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfacePresentModeEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentModeEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfacePresentModeEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentModeEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentMode"; assert(it.offset_in_bytes == 16, "VkSurfacePresentModeEXT.presentMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentModeEXT.presentMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfacePresentModeEXT) == 24, "VkSurfacePresentModeEXT has size % instead of 24", size_of(VkSurfacePresentModeEXT)); } { info := type_info(VkSurfacePresentScalingCapabilitiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfacePresentScalingCapabilitiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentScalingCapabilitiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfacePresentScalingCapabilitiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentScalingCapabilitiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportedPresentScaling"; assert(it.offset_in_bytes == 16, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentScaling has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentScaling has unexpected size % instead of 4", it.type.runtime_size); case "supportedPresentGravityX"; assert(it.offset_in_bytes == 20, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentGravityX has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentGravityX has unexpected size % instead of 4", it.type.runtime_size); case "supportedPresentGravityY"; assert(it.offset_in_bytes == 24, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentGravityY has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentScalingCapabilitiesEXT.supportedPresentGravityY has unexpected size % instead of 4", it.type.runtime_size); case "minScaledImageExtent"; assert(it.offset_in_bytes == 28, "VkSurfacePresentScalingCapabilitiesEXT.minScaledImageExtent has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentScalingCapabilitiesEXT.minScaledImageExtent has unexpected size % instead of 8", it.type.runtime_size); case "maxScaledImageExtent"; assert(it.offset_in_bytes == 36, "VkSurfacePresentScalingCapabilitiesEXT.maxScaledImageExtent has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentScalingCapabilitiesEXT.maxScaledImageExtent has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSurfacePresentScalingCapabilitiesEXT) == 48, "VkSurfacePresentScalingCapabilitiesEXT has size % instead of 48", size_of(VkSurfacePresentScalingCapabilitiesEXT)); } { info := type_info(VkSurfacePresentModeCompatibilityEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfacePresentModeCompatibilityEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentModeCompatibilityEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfacePresentModeCompatibilityEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentModeCompatibilityEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentModeCount"; assert(it.offset_in_bytes == 16, "VkSurfacePresentModeCompatibilityEXT.presentModeCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfacePresentModeCompatibilityEXT.presentModeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPresentModes"; assert(it.offset_in_bytes == 24, "VkSurfacePresentModeCompatibilityEXT.pPresentModes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfacePresentModeCompatibilityEXT.pPresentModes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSurfacePresentModeCompatibilityEXT) == 32, "VkSurfacePresentModeCompatibilityEXT has size % instead of 32", size_of(VkSurfacePresentModeCompatibilityEXT)); } { info := type_info(VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainMaintenance1"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.swapchainMaintenance1 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT.swapchainMaintenance1 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT) == 24, "VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT)); } { info := type_info(VkSwapchainPresentFenceInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainPresentFenceInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentFenceInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainPresentFenceInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentFenceInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkSwapchainPresentFenceInfoEXT.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentFenceInfoEXT.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pFences"; assert(it.offset_in_bytes == 24, "VkSwapchainPresentFenceInfoEXT.pFences has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentFenceInfoEXT.pFences has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSwapchainPresentFenceInfoEXT) == 32, "VkSwapchainPresentFenceInfoEXT has size % instead of 32", size_of(VkSwapchainPresentFenceInfoEXT)); } { info := type_info(VkSwapchainPresentModesCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainPresentModesCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentModesCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainPresentModesCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentModesCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentModeCount"; assert(it.offset_in_bytes == 16, "VkSwapchainPresentModesCreateInfoEXT.presentModeCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentModesCreateInfoEXT.presentModeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPresentModes"; assert(it.offset_in_bytes == 24, "VkSwapchainPresentModesCreateInfoEXT.pPresentModes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentModesCreateInfoEXT.pPresentModes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSwapchainPresentModesCreateInfoEXT) == 32, "VkSwapchainPresentModesCreateInfoEXT has size % instead of 32", size_of(VkSwapchainPresentModesCreateInfoEXT)); } { info := type_info(VkSwapchainPresentModeInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainPresentModeInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentModeInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainPresentModeInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentModeInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchainCount"; assert(it.offset_in_bytes == 16, "VkSwapchainPresentModeInfoEXT.swapchainCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentModeInfoEXT.swapchainCount has unexpected size % instead of 4", it.type.runtime_size); case "pPresentModes"; assert(it.offset_in_bytes == 24, "VkSwapchainPresentModeInfoEXT.pPresentModes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentModeInfoEXT.pPresentModes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSwapchainPresentModeInfoEXT) == 32, "VkSwapchainPresentModeInfoEXT has size % instead of 32", size_of(VkSwapchainPresentModeInfoEXT)); } { info := type_info(VkSwapchainPresentScalingCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainPresentScalingCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentScalingCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainPresentScalingCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentScalingCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "scalingBehavior"; assert(it.offset_in_bytes == 16, "VkSwapchainPresentScalingCreateInfoEXT.scalingBehavior has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentScalingCreateInfoEXT.scalingBehavior has unexpected size % instead of 4", it.type.runtime_size); case "presentGravityX"; assert(it.offset_in_bytes == 20, "VkSwapchainPresentScalingCreateInfoEXT.presentGravityX has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentScalingCreateInfoEXT.presentGravityX has unexpected size % instead of 4", it.type.runtime_size); case "presentGravityY"; assert(it.offset_in_bytes == 24, "VkSwapchainPresentScalingCreateInfoEXT.presentGravityY has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentScalingCreateInfoEXT.presentGravityY has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSwapchainPresentScalingCreateInfoEXT) == 32, "VkSwapchainPresentScalingCreateInfoEXT has size % instead of 32", size_of(VkSwapchainPresentScalingCreateInfoEXT)); } { info := type_info(VkReleaseSwapchainImagesInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkReleaseSwapchainImagesInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkReleaseSwapchainImagesInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkReleaseSwapchainImagesInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkReleaseSwapchainImagesInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "swapchain"; assert(it.offset_in_bytes == 16, "VkReleaseSwapchainImagesInfoEXT.swapchain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkReleaseSwapchainImagesInfoEXT.swapchain has unexpected size % instead of 8", it.type.runtime_size); case "imageIndexCount"; assert(it.offset_in_bytes == 24, "VkReleaseSwapchainImagesInfoEXT.imageIndexCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkReleaseSwapchainImagesInfoEXT.imageIndexCount has unexpected size % instead of 4", it.type.runtime_size); case "pImageIndices"; assert(it.offset_in_bytes == 32, "VkReleaseSwapchainImagesInfoEXT.pImageIndices has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkReleaseSwapchainImagesInfoEXT.pImageIndices has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkReleaseSwapchainImagesInfoEXT) == 40, "VkReleaseSwapchainImagesInfoEXT has size % instead of 40", size_of(VkReleaseSwapchainImagesInfoEXT)); } { info := type_info(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxGraphicsShaderGroupCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxGraphicsShaderGroupCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxGraphicsShaderGroupCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectSequenceCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectSequenceCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectSequenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsTokenCount"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsTokenCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsTokenCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsStreamCount"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsStreamCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsStreamCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsTokenOffset"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsTokenOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsTokenOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsStreamStride"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsStreamStride has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.maxIndirectCommandsStreamStride has unexpected size % instead of 4", it.type.runtime_size); case "minSequencesCountBufferOffsetAlignment"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minSequencesCountBufferOffsetAlignment has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minSequencesCountBufferOffsetAlignment has unexpected size % instead of 4", it.type.runtime_size); case "minSequencesIndexBufferOffsetAlignment"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minSequencesIndexBufferOffsetAlignment has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minSequencesIndexBufferOffsetAlignment has unexpected size % instead of 4", it.type.runtime_size); case "minIndirectCommandsBufferOffsetAlignment"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minIndirectCommandsBufferOffsetAlignment has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV.minIndirectCommandsBufferOffsetAlignment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV) == 56, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV has size % instead of 56", size_of(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV)); } { info := type_info(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceGeneratedCommands"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.deviceGeneratedCommands has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV.deviceGeneratedCommands has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV) == 24, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV)); } { info := type_info(VkGraphicsShaderGroupCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGraphicsShaderGroupCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsShaderGroupCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGraphicsShaderGroupCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsShaderGroupCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stageCount"; assert(it.offset_in_bytes == 16, "VkGraphicsShaderGroupCreateInfoNV.stageCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsShaderGroupCreateInfoNV.stageCount has unexpected size % instead of 4", it.type.runtime_size); case "pStages"; assert(it.offset_in_bytes == 24, "VkGraphicsShaderGroupCreateInfoNV.pStages has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsShaderGroupCreateInfoNV.pStages has unexpected size % instead of 8", it.type.runtime_size); case "pVertexInputState"; assert(it.offset_in_bytes == 32, "VkGraphicsShaderGroupCreateInfoNV.pVertexInputState has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsShaderGroupCreateInfoNV.pVertexInputState has unexpected size % instead of 8", it.type.runtime_size); case "pTessellationState"; assert(it.offset_in_bytes == 40, "VkGraphicsShaderGroupCreateInfoNV.pTessellationState has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsShaderGroupCreateInfoNV.pTessellationState has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGraphicsShaderGroupCreateInfoNV) == 48, "VkGraphicsShaderGroupCreateInfoNV has size % instead of 48", size_of(VkGraphicsShaderGroupCreateInfoNV)); } { info := type_info(VkGraphicsPipelineShaderGroupsCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGraphicsPipelineShaderGroupsCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineShaderGroupsCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "groupCount"; assert(it.offset_in_bytes == 16, "VkGraphicsPipelineShaderGroupsCreateInfoNV.groupCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineShaderGroupsCreateInfoNV.groupCount has unexpected size % instead of 4", it.type.runtime_size); case "pGroups"; assert(it.offset_in_bytes == 24, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pGroups has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pGroups has unexpected size % instead of 8", it.type.runtime_size); case "pipelineCount"; assert(it.offset_in_bytes == 32, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pipelineCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pipelineCount has unexpected size % instead of 4", it.type.runtime_size); case "pPipelines"; assert(it.offset_in_bytes == 40, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pPipelines has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineShaderGroupsCreateInfoNV.pPipelines has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGraphicsPipelineShaderGroupsCreateInfoNV) == 48, "VkGraphicsPipelineShaderGroupsCreateInfoNV has size % instead of 48", size_of(VkGraphicsPipelineShaderGroupsCreateInfoNV)); } { info := type_info(VkBindShaderGroupIndirectCommandNV); for info.members { if it.name == { case "groupIndex"; assert(it.offset_in_bytes == 0, "VkBindShaderGroupIndirectCommandNV.groupIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindShaderGroupIndirectCommandNV.groupIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindShaderGroupIndirectCommandNV) == 4, "VkBindShaderGroupIndirectCommandNV has size % instead of 4", size_of(VkBindShaderGroupIndirectCommandNV)); } { info := type_info(VkBindIndexBufferIndirectCommandNV); for info.members { if it.name == { case "bufferAddress"; assert(it.offset_in_bytes == 0, "VkBindIndexBufferIndirectCommandNV.bufferAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindIndexBufferIndirectCommandNV.bufferAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkBindIndexBufferIndirectCommandNV.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindIndexBufferIndirectCommandNV.size has unexpected size % instead of 4", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 12, "VkBindIndexBufferIndirectCommandNV.indexType has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindIndexBufferIndirectCommandNV.indexType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindIndexBufferIndirectCommandNV) == 16, "VkBindIndexBufferIndirectCommandNV has size % instead of 16", size_of(VkBindIndexBufferIndirectCommandNV)); } { info := type_info(VkBindVertexBufferIndirectCommandNV); for info.members { if it.name == { case "bufferAddress"; assert(it.offset_in_bytes == 0, "VkBindVertexBufferIndirectCommandNV.bufferAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVertexBufferIndirectCommandNV.bufferAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkBindVertexBufferIndirectCommandNV.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVertexBufferIndirectCommandNV.size has unexpected size % instead of 4", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 12, "VkBindVertexBufferIndirectCommandNV.stride has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVertexBufferIndirectCommandNV.stride has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindVertexBufferIndirectCommandNV) == 16, "VkBindVertexBufferIndirectCommandNV has size % instead of 16", size_of(VkBindVertexBufferIndirectCommandNV)); } { info := type_info(VkSetStateFlagsIndirectCommandNV); for info.members { if it.name == { case "data"; assert(it.offset_in_bytes == 0, "VkSetStateFlagsIndirectCommandNV.data has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetStateFlagsIndirectCommandNV.data has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSetStateFlagsIndirectCommandNV) == 4, "VkSetStateFlagsIndirectCommandNV has size % instead of 4", size_of(VkSetStateFlagsIndirectCommandNV)); } { info := type_info(VkIndirectCommandsStreamNV); for info.members { if it.name == { case "buffer"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsStreamNV.buffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsStreamNV.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 8, "VkIndirectCommandsStreamNV.offset has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsStreamNV.offset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsStreamNV) == 16, "VkIndirectCommandsStreamNV has size % instead of 16", size_of(VkIndirectCommandsStreamNV)); } { info := type_info(VkIndirectCommandsLayoutTokenNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsLayoutTokenNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectCommandsLayoutTokenNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "tokenType"; assert(it.offset_in_bytes == 16, "VkIndirectCommandsLayoutTokenNV.tokenType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.tokenType has unexpected size % instead of 4", it.type.runtime_size); case "stream"; assert(it.offset_in_bytes == 20, "VkIndirectCommandsLayoutTokenNV.stream has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.stream has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 24, "VkIndirectCommandsLayoutTokenNV.offset has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.offset has unexpected size % instead of 4", it.type.runtime_size); case "vertexBindingUnit"; assert(it.offset_in_bytes == 28, "VkIndirectCommandsLayoutTokenNV.vertexBindingUnit has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.vertexBindingUnit has unexpected size % instead of 4", it.type.runtime_size); case "vertexDynamicStride"; assert(it.offset_in_bytes == 32, "VkIndirectCommandsLayoutTokenNV.vertexDynamicStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.vertexDynamicStride has unexpected size % instead of 4", it.type.runtime_size); case "pushconstantPipelineLayout"; assert(it.offset_in_bytes == 40, "VkIndirectCommandsLayoutTokenNV.pushconstantPipelineLayout has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenNV.pushconstantPipelineLayout has unexpected size % instead of 8", it.type.runtime_size); case "pushconstantShaderStageFlags"; assert(it.offset_in_bytes == 48, "VkIndirectCommandsLayoutTokenNV.pushconstantShaderStageFlags has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.pushconstantShaderStageFlags has unexpected size % instead of 4", it.type.runtime_size); case "pushconstantOffset"; assert(it.offset_in_bytes == 52, "VkIndirectCommandsLayoutTokenNV.pushconstantOffset has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.pushconstantOffset has unexpected size % instead of 4", it.type.runtime_size); case "pushconstantSize"; assert(it.offset_in_bytes == 56, "VkIndirectCommandsLayoutTokenNV.pushconstantSize has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.pushconstantSize has unexpected size % instead of 4", it.type.runtime_size); case "indirectStateFlags"; assert(it.offset_in_bytes == 60, "VkIndirectCommandsLayoutTokenNV.indirectStateFlags has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.indirectStateFlags has unexpected size % instead of 4", it.type.runtime_size); case "indexTypeCount"; assert(it.offset_in_bytes == 64, "VkIndirectCommandsLayoutTokenNV.indexTypeCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenNV.indexTypeCount has unexpected size % instead of 4", it.type.runtime_size); case "pIndexTypes"; assert(it.offset_in_bytes == 72, "VkIndirectCommandsLayoutTokenNV.pIndexTypes has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenNV.pIndexTypes has unexpected size % instead of 8", it.type.runtime_size); case "pIndexTypeValues"; assert(it.offset_in_bytes == 80, "VkIndirectCommandsLayoutTokenNV.pIndexTypeValues has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenNV.pIndexTypeValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsLayoutTokenNV) == 88, "VkIndirectCommandsLayoutTokenNV has size % instead of 88", size_of(VkIndirectCommandsLayoutTokenNV)); } { info := type_info(VkIndirectCommandsLayoutCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsLayoutCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectCommandsLayoutCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkIndirectCommandsLayoutCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 20, "VkIndirectCommandsLayoutCreateInfoNV.pipelineBindPoint has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoNV.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "tokenCount"; assert(it.offset_in_bytes == 24, "VkIndirectCommandsLayoutCreateInfoNV.tokenCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoNV.tokenCount has unexpected size % instead of 4", it.type.runtime_size); case "pTokens"; assert(it.offset_in_bytes == 32, "VkIndirectCommandsLayoutCreateInfoNV.pTokens has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoNV.pTokens has unexpected size % instead of 8", it.type.runtime_size); case "streamCount"; assert(it.offset_in_bytes == 40, "VkIndirectCommandsLayoutCreateInfoNV.streamCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoNV.streamCount has unexpected size % instead of 4", it.type.runtime_size); case "pStreamStrides"; assert(it.offset_in_bytes == 48, "VkIndirectCommandsLayoutCreateInfoNV.pStreamStrides has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoNV.pStreamStrides has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsLayoutCreateInfoNV) == 56, "VkIndirectCommandsLayoutCreateInfoNV has size % instead of 56", size_of(VkIndirectCommandsLayoutCreateInfoNV)); } { info := type_info(VkGeneratedCommandsInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsInfoNV.pipelineBindPoint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoNV.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 24, "VkGeneratedCommandsInfoNV.pipeline has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.pipeline has unexpected size % instead of 8", it.type.runtime_size); case "indirectCommandsLayout"; assert(it.offset_in_bytes == 32, "VkGeneratedCommandsInfoNV.indirectCommandsLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.indirectCommandsLayout has unexpected size % instead of 8", it.type.runtime_size); case "streamCount"; assert(it.offset_in_bytes == 40, "VkGeneratedCommandsInfoNV.streamCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoNV.streamCount has unexpected size % instead of 4", it.type.runtime_size); case "pStreams"; assert(it.offset_in_bytes == 48, "VkGeneratedCommandsInfoNV.pStreams has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.pStreams has unexpected size % instead of 8", it.type.runtime_size); case "sequencesCount"; assert(it.offset_in_bytes == 56, "VkGeneratedCommandsInfoNV.sequencesCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoNV.sequencesCount has unexpected size % instead of 4", it.type.runtime_size); case "preprocessBuffer"; assert(it.offset_in_bytes == 64, "VkGeneratedCommandsInfoNV.preprocessBuffer has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.preprocessBuffer has unexpected size % instead of 8", it.type.runtime_size); case "preprocessOffset"; assert(it.offset_in_bytes == 72, "VkGeneratedCommandsInfoNV.preprocessOffset has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.preprocessOffset has unexpected size % instead of 8", it.type.runtime_size); case "preprocessSize"; assert(it.offset_in_bytes == 80, "VkGeneratedCommandsInfoNV.preprocessSize has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.preprocessSize has unexpected size % instead of 8", it.type.runtime_size); case "sequencesCountBuffer"; assert(it.offset_in_bytes == 88, "VkGeneratedCommandsInfoNV.sequencesCountBuffer has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.sequencesCountBuffer has unexpected size % instead of 8", it.type.runtime_size); case "sequencesCountOffset"; assert(it.offset_in_bytes == 96, "VkGeneratedCommandsInfoNV.sequencesCountOffset has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.sequencesCountOffset has unexpected size % instead of 8", it.type.runtime_size); case "sequencesIndexBuffer"; assert(it.offset_in_bytes == 104, "VkGeneratedCommandsInfoNV.sequencesIndexBuffer has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.sequencesIndexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "sequencesIndexOffset"; assert(it.offset_in_bytes == 112, "VkGeneratedCommandsInfoNV.sequencesIndexOffset has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoNV.sequencesIndexOffset has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsInfoNV) == 120, "VkGeneratedCommandsInfoNV has size % instead of 120", size_of(VkGeneratedCommandsInfoNV)); } { info := type_info(VkGeneratedCommandsMemoryRequirementsInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsMemoryRequirementsInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsMemoryRequirementsInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsMemoryRequirementsInfoNV.pipelineBindPoint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoNV.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 24, "VkGeneratedCommandsMemoryRequirementsInfoNV.pipeline has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoNV.pipeline has unexpected size % instead of 8", it.type.runtime_size); case "indirectCommandsLayout"; assert(it.offset_in_bytes == 32, "VkGeneratedCommandsMemoryRequirementsInfoNV.indirectCommandsLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoNV.indirectCommandsLayout has unexpected size % instead of 8", it.type.runtime_size); case "maxSequencesCount"; assert(it.offset_in_bytes == 40, "VkGeneratedCommandsMemoryRequirementsInfoNV.maxSequencesCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoNV.maxSequencesCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsMemoryRequirementsInfoNV) == 48, "VkGeneratedCommandsMemoryRequirementsInfoNV has size % instead of 48", size_of(VkGeneratedCommandsMemoryRequirementsInfoNV)); } { info := type_info(VkPhysicalDeviceInheritedViewportScissorFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "inheritedViewportScissor2D"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.inheritedViewportScissor2D has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV.inheritedViewportScissor2D has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceInheritedViewportScissorFeaturesNV) == 24, "VkPhysicalDeviceInheritedViewportScissorFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceInheritedViewportScissorFeaturesNV)); } { info := type_info(VkCommandBufferInheritanceViewportScissorInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferInheritanceViewportScissorInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceViewportScissorInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferInheritanceViewportScissorInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceViewportScissorInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "viewportScissor2D"; assert(it.offset_in_bytes == 16, "VkCommandBufferInheritanceViewportScissorInfoNV.viewportScissor2D has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceViewportScissorInfoNV.viewportScissor2D has unexpected size % instead of 4", it.type.runtime_size); case "viewportDepthCount"; assert(it.offset_in_bytes == 20, "VkCommandBufferInheritanceViewportScissorInfoNV.viewportDepthCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceViewportScissorInfoNV.viewportDepthCount has unexpected size % instead of 4", it.type.runtime_size); case "pViewportDepths"; assert(it.offset_in_bytes == 24, "VkCommandBufferInheritanceViewportScissorInfoNV.pViewportDepths has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceViewportScissorInfoNV.pViewportDepths has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCommandBufferInheritanceViewportScissorInfoNV) == 32, "VkCommandBufferInheritanceViewportScissorInfoNV has size % instead of 32", size_of(VkCommandBufferInheritanceViewportScissorInfoNV)); } { info := type_info(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "texelBufferAlignment"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.texelBufferAlignment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT.texelBufferAlignment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT) == 24, "VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT)); } { info := type_info(VkRenderPassTransformBeginInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassTransformBeginInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassTransformBeginInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassTransformBeginInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassTransformBeginInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "transform"; assert(it.offset_in_bytes == 16, "VkRenderPassTransformBeginInfoQCOM.transform has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassTransformBeginInfoQCOM.transform has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderPassTransformBeginInfoQCOM) == 24, "VkRenderPassTransformBeginInfoQCOM has size % instead of 24", size_of(VkRenderPassTransformBeginInfoQCOM)); } { info := type_info(VkCommandBufferInheritanceRenderPassTransformInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "transform"; assert(it.offset_in_bytes == 16, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.transform has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.transform has unexpected size % instead of 4", it.type.runtime_size); case "renderArea"; assert(it.offset_in_bytes == 20, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.renderArea has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM.renderArea has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkCommandBufferInheritanceRenderPassTransformInfoQCOM) == 40, "VkCommandBufferInheritanceRenderPassTransformInfoQCOM has size % instead of 40", size_of(VkCommandBufferInheritanceRenderPassTransformInfoQCOM)); } { info := type_info(VkPhysicalDeviceDepthBiasControlFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthBiasControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.depthBiasControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.depthBiasControl has unexpected size % instead of 4", it.type.runtime_size); case "leastRepresentableValueForceUnormRepresentation"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.leastRepresentableValueForceUnormRepresentation has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.leastRepresentableValueForceUnormRepresentation has unexpected size % instead of 4", it.type.runtime_size); case "floatRepresentation"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.floatRepresentation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.floatRepresentation has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasExact"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.depthBiasExact has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthBiasControlFeaturesEXT.depthBiasExact has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthBiasControlFeaturesEXT) == 32, "VkPhysicalDeviceDepthBiasControlFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceDepthBiasControlFeaturesEXT)); } { info := type_info(VkDepthBiasInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDepthBiasInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDepthBiasInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDepthBiasInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthBiasConstantFactor"; assert(it.offset_in_bytes == 16, "VkDepthBiasInfoEXT.depthBiasConstantFactor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasInfoEXT.depthBiasConstantFactor has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasClamp"; assert(it.offset_in_bytes == 20, "VkDepthBiasInfoEXT.depthBiasClamp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasInfoEXT.depthBiasClamp has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasSlopeFactor"; assert(it.offset_in_bytes == 24, "VkDepthBiasInfoEXT.depthBiasSlopeFactor has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasInfoEXT.depthBiasSlopeFactor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDepthBiasInfoEXT) == 32, "VkDepthBiasInfoEXT has size % instead of 32", size_of(VkDepthBiasInfoEXT)); } { info := type_info(VkDepthBiasRepresentationInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDepthBiasRepresentationInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasRepresentationInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDepthBiasRepresentationInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDepthBiasRepresentationInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthBiasRepresentation"; assert(it.offset_in_bytes == 16, "VkDepthBiasRepresentationInfoEXT.depthBiasRepresentation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasRepresentationInfoEXT.depthBiasRepresentation has unexpected size % instead of 4", it.type.runtime_size); case "depthBiasExact"; assert(it.offset_in_bytes == 20, "VkDepthBiasRepresentationInfoEXT.depthBiasExact has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthBiasRepresentationInfoEXT.depthBiasExact has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDepthBiasRepresentationInfoEXT) == 24, "VkDepthBiasRepresentationInfoEXT has size % instead of 24", size_of(VkDepthBiasRepresentationInfoEXT)); } { info := type_info(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceMemoryReport"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.deviceMemoryReport has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT.deviceMemoryReport has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT) == 24, "VkPhysicalDeviceDeviceMemoryReportFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDeviceMemoryReportFeaturesEXT)); } { info := type_info(VkDeviceMemoryReportCallbackDataEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceMemoryReportCallbackDataEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryReportCallbackDataEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceMemoryReportCallbackDataEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryReportCallbackDataEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceMemoryReportCallbackDataEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryReportCallbackDataEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 20, "VkDeviceMemoryReportCallbackDataEXT.type has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryReportCallbackDataEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "memoryObjectId"; assert(it.offset_in_bytes == 24, "VkDeviceMemoryReportCallbackDataEXT.memoryObjectId has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryReportCallbackDataEXT.memoryObjectId has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 32, "VkDeviceMemoryReportCallbackDataEXT.size has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryReportCallbackDataEXT.size has unexpected size % instead of 8", it.type.runtime_size); case "objectType"; assert(it.offset_in_bytes == 40, "VkDeviceMemoryReportCallbackDataEXT.objectType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryReportCallbackDataEXT.objectType has unexpected size % instead of 4", it.type.runtime_size); case "objectHandle"; assert(it.offset_in_bytes == 48, "VkDeviceMemoryReportCallbackDataEXT.objectHandle has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceMemoryReportCallbackDataEXT.objectHandle has unexpected size % instead of 8", it.type.runtime_size); case "heapIndex"; assert(it.offset_in_bytes == 56, "VkDeviceMemoryReportCallbackDataEXT.heapIndex has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceMemoryReportCallbackDataEXT.heapIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceMemoryReportCallbackDataEXT) == 64, "VkDeviceMemoryReportCallbackDataEXT has size % instead of 64", size_of(VkDeviceMemoryReportCallbackDataEXT)); } { info := type_info(VkDeviceDeviceMemoryReportCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceDeviceMemoryReportCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceDeviceMemoryReportCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceDeviceMemoryReportCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceDeviceMemoryReportCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceDeviceMemoryReportCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceDeviceMemoryReportCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "pfnUserCallback"; assert(it.offset_in_bytes == 24, "VkDeviceDeviceMemoryReportCreateInfoEXT.pfnUserCallback has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceDeviceMemoryReportCreateInfoEXT.pfnUserCallback has unexpected size % instead of 8", it.type.runtime_size); case "pUserData"; assert(it.offset_in_bytes == 32, "VkDeviceDeviceMemoryReportCreateInfoEXT.pUserData has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceDeviceMemoryReportCreateInfoEXT.pUserData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceDeviceMemoryReportCreateInfoEXT) == 40, "VkDeviceDeviceMemoryReportCreateInfoEXT has size % instead of 40", size_of(VkDeviceDeviceMemoryReportCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceRobustness2FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRobustness2FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRobustness2FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRobustness2FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRobustness2FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "robustBufferAccess2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRobustness2FeaturesEXT.robustBufferAccess2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRobustness2FeaturesEXT.robustBufferAccess2 has unexpected size % instead of 4", it.type.runtime_size); case "robustImageAccess2"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRobustness2FeaturesEXT.robustImageAccess2 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRobustness2FeaturesEXT.robustImageAccess2 has unexpected size % instead of 4", it.type.runtime_size); case "nullDescriptor"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRobustness2FeaturesEXT.nullDescriptor has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRobustness2FeaturesEXT.nullDescriptor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRobustness2FeaturesEXT) == 32, "VkPhysicalDeviceRobustness2FeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceRobustness2FeaturesEXT)); } { info := type_info(VkPhysicalDeviceRobustness2PropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRobustness2PropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRobustness2PropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRobustness2PropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRobustness2PropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "robustStorageBufferAccessSizeAlignment"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRobustness2PropertiesEXT.robustStorageBufferAccessSizeAlignment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRobustness2PropertiesEXT.robustStorageBufferAccessSizeAlignment has unexpected size % instead of 8", it.type.runtime_size); case "robustUniformBufferAccessSizeAlignment"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRobustness2PropertiesEXT.robustUniformBufferAccessSizeAlignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRobustness2PropertiesEXT.robustUniformBufferAccessSizeAlignment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRobustness2PropertiesEXT) == 32, "VkPhysicalDeviceRobustness2PropertiesEXT has size % instead of 32", size_of(VkPhysicalDeviceRobustness2PropertiesEXT)); } { info := type_info(VkSamplerCustomBorderColorCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerCustomBorderColorCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCustomBorderColorCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerCustomBorderColorCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerCustomBorderColorCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "customBorderColor"; assert(it.offset_in_bytes == 16, "VkSamplerCustomBorderColorCreateInfoEXT.customBorderColor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkSamplerCustomBorderColorCreateInfoEXT.customBorderColor has unexpected size % instead of 16", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 32, "VkSamplerCustomBorderColorCreateInfoEXT.format has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCustomBorderColorCreateInfoEXT.format has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerCustomBorderColorCreateInfoEXT) == 40, "VkSamplerCustomBorderColorCreateInfoEXT has size % instead of 40", size_of(VkSamplerCustomBorderColorCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceCustomBorderColorPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxCustomBorderColorSamplers"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.maxCustomBorderColorSamplers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCustomBorderColorPropertiesEXT.maxCustomBorderColorSamplers has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCustomBorderColorPropertiesEXT) == 24, "VkPhysicalDeviceCustomBorderColorPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceCustomBorderColorPropertiesEXT)); } { info := type_info(VkPhysicalDeviceCustomBorderColorFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "customBorderColors"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.customBorderColors has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.customBorderColors has unexpected size % instead of 4", it.type.runtime_size); case "customBorderColorWithoutFormat"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.customBorderColorWithoutFormat has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCustomBorderColorFeaturesEXT.customBorderColorWithoutFormat has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCustomBorderColorFeaturesEXT) == 24, "VkPhysicalDeviceCustomBorderColorFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceCustomBorderColorFeaturesEXT)); } { info := type_info(VkPhysicalDevicePresentBarrierFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePresentBarrierFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentBarrierFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePresentBarrierFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePresentBarrierFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentBarrier"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePresentBarrierFeaturesNV.presentBarrier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentBarrierFeaturesNV.presentBarrier has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePresentBarrierFeaturesNV) == 24, "VkPhysicalDevicePresentBarrierFeaturesNV has size % instead of 24", size_of(VkPhysicalDevicePresentBarrierFeaturesNV)); } { info := type_info(VkSurfaceCapabilitiesPresentBarrierNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSurfaceCapabilitiesPresentBarrierNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesPresentBarrierNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSurfaceCapabilitiesPresentBarrierNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSurfaceCapabilitiesPresentBarrierNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentBarrierSupported"; assert(it.offset_in_bytes == 16, "VkSurfaceCapabilitiesPresentBarrierNV.presentBarrierSupported has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSurfaceCapabilitiesPresentBarrierNV.presentBarrierSupported has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSurfaceCapabilitiesPresentBarrierNV) == 24, "VkSurfaceCapabilitiesPresentBarrierNV has size % instead of 24", size_of(VkSurfaceCapabilitiesPresentBarrierNV)); } { info := type_info(VkSwapchainPresentBarrierCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainPresentBarrierCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentBarrierCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainPresentBarrierCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainPresentBarrierCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentBarrierEnable"; assert(it.offset_in_bytes == 16, "VkSwapchainPresentBarrierCreateInfoNV.presentBarrierEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainPresentBarrierCreateInfoNV.presentBarrierEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSwapchainPresentBarrierCreateInfoNV) == 24, "VkSwapchainPresentBarrierCreateInfoNV has size % instead of 24", size_of(VkSwapchainPresentBarrierCreateInfoNV)); } { info := type_info(VkPhysicalDeviceDiagnosticsConfigFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "diagnosticsConfig"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.diagnosticsConfig has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV.diagnosticsConfig has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDiagnosticsConfigFeaturesNV) == 24, "VkPhysicalDeviceDiagnosticsConfigFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceDiagnosticsConfigFeaturesNV)); } { info := type_info(VkDeviceDiagnosticsConfigCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceDiagnosticsConfigCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceDiagnosticsConfigCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceDiagnosticsConfigCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceDiagnosticsConfigCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceDiagnosticsConfigCreateInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceDiagnosticsConfigCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceDiagnosticsConfigCreateInfoNV) == 24, "VkDeviceDiagnosticsConfigCreateInfoNV has size % instead of 24", size_of(VkDeviceDiagnosticsConfigCreateInfoNV)); } { info := type_info(VkCudaModuleCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCudaModuleCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaModuleCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCudaModuleCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaModuleCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dataSize"; assert(it.offset_in_bytes == 16, "VkCudaModuleCreateInfoNV.dataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaModuleCreateInfoNV.dataSize has unexpected size % instead of 8", it.type.runtime_size); case "pData"; assert(it.offset_in_bytes == 24, "VkCudaModuleCreateInfoNV.pData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaModuleCreateInfoNV.pData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCudaModuleCreateInfoNV) == 32, "VkCudaModuleCreateInfoNV has size % instead of 32", size_of(VkCudaModuleCreateInfoNV)); } { info := type_info(VkCudaFunctionCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCudaFunctionCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaFunctionCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCudaFunctionCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaFunctionCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "module"; assert(it.offset_in_bytes == 16, "VkCudaFunctionCreateInfoNV.module has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaFunctionCreateInfoNV.module has unexpected size % instead of 8", it.type.runtime_size); case "pName"; assert(it.offset_in_bytes == 24, "VkCudaFunctionCreateInfoNV.pName has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaFunctionCreateInfoNV.pName has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCudaFunctionCreateInfoNV) == 32, "VkCudaFunctionCreateInfoNV has size % instead of 32", size_of(VkCudaFunctionCreateInfoNV)); } { info := type_info(VkCudaLaunchInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCudaLaunchInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCudaLaunchInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "function"; assert(it.offset_in_bytes == 16, "VkCudaLaunchInfoNV.function has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.function has unexpected size % instead of 8", it.type.runtime_size); case "gridDimX"; assert(it.offset_in_bytes == 24, "VkCudaLaunchInfoNV.gridDimX has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.gridDimX has unexpected size % instead of 4", it.type.runtime_size); case "gridDimY"; assert(it.offset_in_bytes == 28, "VkCudaLaunchInfoNV.gridDimY has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.gridDimY has unexpected size % instead of 4", it.type.runtime_size); case "gridDimZ"; assert(it.offset_in_bytes == 32, "VkCudaLaunchInfoNV.gridDimZ has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.gridDimZ has unexpected size % instead of 4", it.type.runtime_size); case "blockDimX"; assert(it.offset_in_bytes == 36, "VkCudaLaunchInfoNV.blockDimX has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.blockDimX has unexpected size % instead of 4", it.type.runtime_size); case "blockDimY"; assert(it.offset_in_bytes == 40, "VkCudaLaunchInfoNV.blockDimY has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.blockDimY has unexpected size % instead of 4", it.type.runtime_size); case "blockDimZ"; assert(it.offset_in_bytes == 44, "VkCudaLaunchInfoNV.blockDimZ has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.blockDimZ has unexpected size % instead of 4", it.type.runtime_size); case "sharedMemBytes"; assert(it.offset_in_bytes == 48, "VkCudaLaunchInfoNV.sharedMemBytes has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCudaLaunchInfoNV.sharedMemBytes has unexpected size % instead of 4", it.type.runtime_size); case "paramCount"; assert(it.offset_in_bytes == 56, "VkCudaLaunchInfoNV.paramCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.paramCount has unexpected size % instead of 8", it.type.runtime_size); case "pParams"; assert(it.offset_in_bytes == 64, "VkCudaLaunchInfoNV.pParams has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.pParams has unexpected size % instead of 8", it.type.runtime_size); case "extraCount"; assert(it.offset_in_bytes == 72, "VkCudaLaunchInfoNV.extraCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.extraCount has unexpected size % instead of 8", it.type.runtime_size); case "pExtras"; assert(it.offset_in_bytes == 80, "VkCudaLaunchInfoNV.pExtras has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCudaLaunchInfoNV.pExtras has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCudaLaunchInfoNV) == 88, "VkCudaLaunchInfoNV has size % instead of 88", size_of(VkCudaLaunchInfoNV)); } { info := type_info(VkPhysicalDeviceCudaKernelLaunchFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cudaKernelLaunchFeatures"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.cudaKernelLaunchFeatures has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV.cudaKernelLaunchFeatures has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCudaKernelLaunchFeaturesNV) == 24, "VkPhysicalDeviceCudaKernelLaunchFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCudaKernelLaunchFeaturesNV)); } { info := type_info(VkPhysicalDeviceCudaKernelLaunchPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "computeCapabilityMinor"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.computeCapabilityMinor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.computeCapabilityMinor has unexpected size % instead of 4", it.type.runtime_size); case "computeCapabilityMajor"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.computeCapabilityMajor has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV.computeCapabilityMajor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCudaKernelLaunchPropertiesNV) == 24, "VkPhysicalDeviceCudaKernelLaunchPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceCudaKernelLaunchPropertiesNV)); } { info := type_info(VkPhysicalDeviceTileShadingFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTileShadingFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTileShadingFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileShadingFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "tileShading"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShading has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShading has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingFragmentStage"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingFragmentStage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingFragmentStage has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingColorAttachments"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingColorAttachments has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingColorAttachments has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingDepthAttachments"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingDepthAttachments has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingDepthAttachments has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingStencilAttachments"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingStencilAttachments has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingStencilAttachments has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingInputAttachments"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingInputAttachments has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingInputAttachments has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingSampledAttachments"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingSampledAttachments has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingSampledAttachments has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingPerTileDraw"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingPerTileDraw has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingPerTileDraw has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingPerTileDispatch"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingPerTileDispatch has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingPerTileDispatch has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingDispatchTile"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingDispatchTile has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingDispatchTile has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingApron"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingApron has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingApron has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingAnisotropicApron"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingAnisotropicApron has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingAnisotropicApron has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingAtomicOps"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingAtomicOps has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingAtomicOps has unexpected size % instead of 4", it.type.runtime_size); case "tileShadingImageProcessing"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingImageProcessing has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingFeaturesQCOM.tileShadingImageProcessing has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTileShadingFeaturesQCOM) == 72, "VkPhysicalDeviceTileShadingFeaturesQCOM has size % instead of 72", size_of(VkPhysicalDeviceTileShadingFeaturesQCOM)); } { info := type_info(VkPhysicalDeviceTileShadingPropertiesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTileShadingPropertiesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingPropertiesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTileShadingPropertiesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileShadingPropertiesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxApronSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTileShadingPropertiesQCOM.maxApronSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingPropertiesQCOM.maxApronSize has unexpected size % instead of 4", it.type.runtime_size); case "preferNonCoherent"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceTileShadingPropertiesQCOM.preferNonCoherent has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileShadingPropertiesQCOM.preferNonCoherent has unexpected size % instead of 4", it.type.runtime_size); case "tileGranularity"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceTileShadingPropertiesQCOM.tileGranularity has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileShadingPropertiesQCOM.tileGranularity has unexpected size % instead of 8", it.type.runtime_size); case "maxTileShadingRate"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceTileShadingPropertiesQCOM.maxTileShadingRate has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileShadingPropertiesQCOM.maxTileShadingRate has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTileShadingPropertiesQCOM) == 40, "VkPhysicalDeviceTileShadingPropertiesQCOM has size % instead of 40", size_of(VkPhysicalDeviceTileShadingPropertiesQCOM)); } { info := type_info(VkRenderPassTileShadingCreateInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassTileShadingCreateInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassTileShadingCreateInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassTileShadingCreateInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassTileShadingCreateInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRenderPassTileShadingCreateInfoQCOM.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassTileShadingCreateInfoQCOM.flags has unexpected size % instead of 4", it.type.runtime_size); case "tileApronSize"; assert(it.offset_in_bytes == 20, "VkRenderPassTileShadingCreateInfoQCOM.tileApronSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassTileShadingCreateInfoQCOM.tileApronSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassTileShadingCreateInfoQCOM) == 32, "VkRenderPassTileShadingCreateInfoQCOM has size % instead of 32", size_of(VkRenderPassTileShadingCreateInfoQCOM)); } { info := type_info(VkPerTileBeginInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerTileBeginInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerTileBeginInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerTileBeginInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerTileBeginInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerTileBeginInfoQCOM) == 16, "VkPerTileBeginInfoQCOM has size % instead of 16", size_of(VkPerTileBeginInfoQCOM)); } { info := type_info(VkPerTileEndInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPerTileEndInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPerTileEndInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPerTileEndInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPerTileEndInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPerTileEndInfoQCOM) == 16, "VkPerTileEndInfoQCOM has size % instead of 16", size_of(VkPerTileEndInfoQCOM)); } { info := type_info(VkDispatchTileInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDispatchTileInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDispatchTileInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDispatchTileInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDispatchTileInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDispatchTileInfoQCOM) == 16, "VkDispatchTileInfoQCOM has size % instead of 16", size_of(VkDispatchTileInfoQCOM)); } { info := type_info(VkQueryLowLatencySupportNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkQueryLowLatencySupportNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkQueryLowLatencySupportNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkQueryLowLatencySupportNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryLowLatencySupportNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pQueriedLowLatencyData"; assert(it.offset_in_bytes == 16, "VkQueryLowLatencySupportNV.pQueriedLowLatencyData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkQueryLowLatencySupportNV.pQueriedLowLatencyData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkQueryLowLatencySupportNV) == 24, "VkQueryLowLatencySupportNV has size % instead of 24", size_of(VkQueryLowLatencySupportNV)); } { info := type_info(VkPhysicalDeviceDescriptorBufferPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "combinedImageSamplerDescriptorSingleArray"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.combinedImageSamplerDescriptorSingleArray has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.combinedImageSamplerDescriptorSingleArray has unexpected size % instead of 4", it.type.runtime_size); case "bufferlessPushDescriptors"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.bufferlessPushDescriptors has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.bufferlessPushDescriptors has unexpected size % instead of 4", it.type.runtime_size); case "allowSamplerImageViewPostSubmitCreation"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.allowSamplerImageViewPostSubmitCreation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.allowSamplerImageViewPostSubmitCreation has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBufferOffsetAlignment"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.descriptorBufferOffsetAlignment has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.descriptorBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); case "maxDescriptorBufferBindings"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxDescriptorBufferBindings has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxDescriptorBufferBindings has unexpected size % instead of 4", it.type.runtime_size); case "maxResourceDescriptorBufferBindings"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxResourceDescriptorBufferBindings has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxResourceDescriptorBufferBindings has unexpected size % instead of 4", it.type.runtime_size); case "maxSamplerDescriptorBufferBindings"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxSamplerDescriptorBufferBindings has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxSamplerDescriptorBufferBindings has unexpected size % instead of 4", it.type.runtime_size); case "maxEmbeddedImmutableSamplerBindings"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxEmbeddedImmutableSamplerBindings has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxEmbeddedImmutableSamplerBindings has unexpected size % instead of 4", it.type.runtime_size); case "maxEmbeddedImmutableSamplers"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxEmbeddedImmutableSamplers has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxEmbeddedImmutableSamplers has unexpected size % instead of 4", it.type.runtime_size); case "bufferCaptureReplayDescriptorDataSize"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.bufferCaptureReplayDescriptorDataSize has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.bufferCaptureReplayDescriptorDataSize has unexpected size % instead of 8", it.type.runtime_size); case "imageCaptureReplayDescriptorDataSize"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.imageCaptureReplayDescriptorDataSize has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.imageCaptureReplayDescriptorDataSize has unexpected size % instead of 8", it.type.runtime_size); case "imageViewCaptureReplayDescriptorDataSize"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.imageViewCaptureReplayDescriptorDataSize has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.imageViewCaptureReplayDescriptorDataSize has unexpected size % instead of 8", it.type.runtime_size); case "samplerCaptureReplayDescriptorDataSize"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerCaptureReplayDescriptorDataSize has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerCaptureReplayDescriptorDataSize has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureCaptureReplayDescriptorDataSize"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.accelerationStructureCaptureReplayDescriptorDataSize has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.accelerationStructureCaptureReplayDescriptorDataSize has unexpected size % instead of 8", it.type.runtime_size); case "samplerDescriptorSize"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerDescriptorSize has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "combinedImageSamplerDescriptorSize"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.combinedImageSamplerDescriptorSize has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.combinedImageSamplerDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "sampledImageDescriptorSize"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.sampledImageDescriptorSize has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.sampledImageDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "storageImageDescriptorSize"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageImageDescriptorSize has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageImageDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "uniformTexelBufferDescriptorSize"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.uniformTexelBufferDescriptorSize has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.uniformTexelBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "robustUniformTexelBufferDescriptorSize"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustUniformTexelBufferDescriptorSize has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustUniformTexelBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "storageTexelBufferDescriptorSize"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageTexelBufferDescriptorSize has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageTexelBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "robustStorageTexelBufferDescriptorSize"; assert(it.offset_in_bytes == 160, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustStorageTexelBufferDescriptorSize has unexpected offset % instead of 160", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustStorageTexelBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "uniformBufferDescriptorSize"; assert(it.offset_in_bytes == 168, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.uniformBufferDescriptorSize has unexpected offset % instead of 168", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.uniformBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "robustUniformBufferDescriptorSize"; assert(it.offset_in_bytes == 176, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustUniformBufferDescriptorSize has unexpected offset % instead of 176", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustUniformBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "storageBufferDescriptorSize"; assert(it.offset_in_bytes == 184, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageBufferDescriptorSize has unexpected offset % instead of 184", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.storageBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "robustStorageBufferDescriptorSize"; assert(it.offset_in_bytes == 192, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustStorageBufferDescriptorSize has unexpected offset % instead of 192", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.robustStorageBufferDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "inputAttachmentDescriptorSize"; assert(it.offset_in_bytes == 200, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.inputAttachmentDescriptorSize has unexpected offset % instead of 200", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.inputAttachmentDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureDescriptorSize"; assert(it.offset_in_bytes == 208, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.accelerationStructureDescriptorSize has unexpected offset % instead of 208", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.accelerationStructureDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); case "maxSamplerDescriptorBufferRange"; assert(it.offset_in_bytes == 216, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxSamplerDescriptorBufferRange has unexpected offset % instead of 216", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxSamplerDescriptorBufferRange has unexpected size % instead of 8", it.type.runtime_size); case "maxResourceDescriptorBufferRange"; assert(it.offset_in_bytes == 224, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxResourceDescriptorBufferRange has unexpected offset % instead of 224", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.maxResourceDescriptorBufferRange has unexpected size % instead of 8", it.type.runtime_size); case "samplerDescriptorBufferAddressSpaceSize"; assert(it.offset_in_bytes == 232, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerDescriptorBufferAddressSpaceSize has unexpected offset % instead of 232", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.samplerDescriptorBufferAddressSpaceSize has unexpected size % instead of 8", it.type.runtime_size); case "resourceDescriptorBufferAddressSpaceSize"; assert(it.offset_in_bytes == 240, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.resourceDescriptorBufferAddressSpaceSize has unexpected offset % instead of 240", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.resourceDescriptorBufferAddressSpaceSize has unexpected size % instead of 8", it.type.runtime_size); case "descriptorBufferAddressSpaceSize"; assert(it.offset_in_bytes == 248, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.descriptorBufferAddressSpaceSize has unexpected offset % instead of 248", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferPropertiesEXT.descriptorBufferAddressSpaceSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorBufferPropertiesEXT) == 256, "VkPhysicalDeviceDescriptorBufferPropertiesEXT has size % instead of 256", size_of(VkPhysicalDeviceDescriptorBufferPropertiesEXT)); } { info := type_info(VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "combinedImageSamplerDensityMapDescriptorSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.combinedImageSamplerDensityMapDescriptorSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT.combinedImageSamplerDensityMapDescriptorSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT) == 24, "VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT)); } { info := type_info(VkPhysicalDeviceDescriptorBufferFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorBuffer"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBuffer has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBufferCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBufferImageLayoutIgnored"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferImageLayoutIgnored has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferImageLayoutIgnored has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBufferPushDescriptors"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferPushDescriptors has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorBufferFeaturesEXT.descriptorBufferPushDescriptors has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorBufferFeaturesEXT) == 32, "VkPhysicalDeviceDescriptorBufferFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceDescriptorBufferFeaturesEXT)); } { info := type_info(VkDescriptorAddressInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorAddressInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorAddressInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorAddressInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorAddressInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "address"; assert(it.offset_in_bytes == 16, "VkDescriptorAddressInfoEXT.address has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorAddressInfoEXT.address has unexpected size % instead of 8", it.type.runtime_size); case "range"; assert(it.offset_in_bytes == 24, "VkDescriptorAddressInfoEXT.range has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorAddressInfoEXT.range has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 32, "VkDescriptorAddressInfoEXT.format has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorAddressInfoEXT.format has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorAddressInfoEXT) == 40, "VkDescriptorAddressInfoEXT has size % instead of 40", size_of(VkDescriptorAddressInfoEXT)); } { info := type_info(VkDescriptorBufferBindingInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorBufferBindingInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorBufferBindingInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorBufferBindingInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferBindingInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "address"; assert(it.offset_in_bytes == 16, "VkDescriptorBufferBindingInfoEXT.address has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferBindingInfoEXT.address has unexpected size % instead of 8", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 24, "VkDescriptorBufferBindingInfoEXT.usage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorBufferBindingInfoEXT.usage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorBufferBindingInfoEXT) == 32, "VkDescriptorBufferBindingInfoEXT has size % instead of 32", size_of(VkDescriptorBufferBindingInfoEXT)); } { info := type_info(VkDescriptorBufferBindingPushDescriptorBufferHandleEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorBufferBindingPushDescriptorBufferHandleEXT) == 24, "VkDescriptorBufferBindingPushDescriptorBufferHandleEXT has size % instead of 24", size_of(VkDescriptorBufferBindingPushDescriptorBufferHandleEXT)); } { info := type_info(VkDescriptorDataEXT); for info.members { if it.name == { case "pSampler"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pSampler has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pSampler has unexpected size % instead of 8", it.type.runtime_size); case "pCombinedImageSampler"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pCombinedImageSampler has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pCombinedImageSampler has unexpected size % instead of 8", it.type.runtime_size); case "pInputAttachmentImage"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pInputAttachmentImage has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pInputAttachmentImage has unexpected size % instead of 8", it.type.runtime_size); case "pSampledImage"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pSampledImage has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pSampledImage has unexpected size % instead of 8", it.type.runtime_size); case "pStorageImage"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pStorageImage has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pStorageImage has unexpected size % instead of 8", it.type.runtime_size); case "pUniformTexelBuffer"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pUniformTexelBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pUniformTexelBuffer has unexpected size % instead of 8", it.type.runtime_size); case "pStorageTexelBuffer"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pStorageTexelBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pStorageTexelBuffer has unexpected size % instead of 8", it.type.runtime_size); case "pUniformBuffer"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pUniformBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pUniformBuffer has unexpected size % instead of 8", it.type.runtime_size); case "pStorageBuffer"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.pStorageBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.pStorageBuffer has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 0, "VkDescriptorDataEXT.accelerationStructure has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorDataEXT.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorDataEXT) == 8, "VkDescriptorDataEXT has size % instead of 8", size_of(VkDescriptorDataEXT)); } { info := type_info(VkDescriptorGetInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorGetInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorGetInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorGetInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorGetInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkDescriptorGetInfoEXT.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorGetInfoEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 24, "VkDescriptorGetInfoEXT.data has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorGetInfoEXT.data has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDescriptorGetInfoEXT) == 32, "VkDescriptorGetInfoEXT has size % instead of 32", size_of(VkDescriptorGetInfoEXT)); } { info := type_info(VkBufferCaptureDescriptorDataInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBufferCaptureDescriptorDataInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBufferCaptureDescriptorDataInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBufferCaptureDescriptorDataInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCaptureDescriptorDataInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 16, "VkBufferCaptureDescriptorDataInfoEXT.buffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBufferCaptureDescriptorDataInfoEXT.buffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBufferCaptureDescriptorDataInfoEXT) == 24, "VkBufferCaptureDescriptorDataInfoEXT has size % instead of 24", size_of(VkBufferCaptureDescriptorDataInfoEXT)); } { info := type_info(VkImageCaptureDescriptorDataInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageCaptureDescriptorDataInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCaptureDescriptorDataInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageCaptureDescriptorDataInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCaptureDescriptorDataInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image"; assert(it.offset_in_bytes == 16, "VkImageCaptureDescriptorDataInfoEXT.image has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCaptureDescriptorDataInfoEXT.image has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageCaptureDescriptorDataInfoEXT) == 24, "VkImageCaptureDescriptorDataInfoEXT has size % instead of 24", size_of(VkImageCaptureDescriptorDataInfoEXT)); } { info := type_info(VkImageViewCaptureDescriptorDataInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewCaptureDescriptorDataInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewCaptureDescriptorDataInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewCaptureDescriptorDataInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewCaptureDescriptorDataInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageView"; assert(it.offset_in_bytes == 16, "VkImageViewCaptureDescriptorDataInfoEXT.imageView has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewCaptureDescriptorDataInfoEXT.imageView has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageViewCaptureDescriptorDataInfoEXT) == 24, "VkImageViewCaptureDescriptorDataInfoEXT has size % instead of 24", size_of(VkImageViewCaptureDescriptorDataInfoEXT)); } { info := type_info(VkSamplerCaptureDescriptorDataInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerCaptureDescriptorDataInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCaptureDescriptorDataInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerCaptureDescriptorDataInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerCaptureDescriptorDataInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sampler"; assert(it.offset_in_bytes == 16, "VkSamplerCaptureDescriptorDataInfoEXT.sampler has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerCaptureDescriptorDataInfoEXT.sampler has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkSamplerCaptureDescriptorDataInfoEXT) == 24, "VkSamplerCaptureDescriptorDataInfoEXT has size % instead of 24", size_of(VkSamplerCaptureDescriptorDataInfoEXT)); } { info := type_info(VkOpaqueCaptureDescriptorDataCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "opaqueCaptureDescriptorData"; assert(it.offset_in_bytes == 16, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.opaqueCaptureDescriptorData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpaqueCaptureDescriptorDataCreateInfoEXT.opaqueCaptureDescriptorData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkOpaqueCaptureDescriptorDataCreateInfoEXT) == 24, "VkOpaqueCaptureDescriptorDataCreateInfoEXT has size % instead of 24", size_of(VkOpaqueCaptureDescriptorDataCreateInfoEXT)); } { info := type_info(VkAccelerationStructureCaptureDescriptorDataInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.accelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureNV"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.accelerationStructureNV has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCaptureDescriptorDataInfoEXT.accelerationStructureNV has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureCaptureDescriptorDataInfoEXT) == 32, "VkAccelerationStructureCaptureDescriptorDataInfoEXT has size % instead of 32", size_of(VkAccelerationStructureCaptureDescriptorDataInfoEXT)); } { info := type_info(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "graphicsPipelineLibrary"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.graphicsPipelineLibrary has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT.graphicsPipelineLibrary has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT) == 24, "VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT)); } { info := type_info(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "graphicsPipelineLibraryFastLinking"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.graphicsPipelineLibraryFastLinking has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.graphicsPipelineLibraryFastLinking has unexpected size % instead of 4", it.type.runtime_size); case "graphicsPipelineLibraryIndependentInterpolationDecoration"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.graphicsPipelineLibraryIndependentInterpolationDecoration has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT.graphicsPipelineLibraryIndependentInterpolationDecoration has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT) == 24, "VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT)); } { info := type_info(VkGraphicsPipelineLibraryCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGraphicsPipelineLibraryCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineLibraryCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGraphicsPipelineLibraryCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGraphicsPipelineLibraryCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkGraphicsPipelineLibraryCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGraphicsPipelineLibraryCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGraphicsPipelineLibraryCreateInfoEXT) == 24, "VkGraphicsPipelineLibraryCreateInfoEXT has size % instead of 24", size_of(VkGraphicsPipelineLibraryCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderEarlyAndLateFragmentTests"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.shaderEarlyAndLateFragmentTests has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD.shaderEarlyAndLateFragmentTests has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD) == 24, "VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD has size % instead of 24", size_of(VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD)); } { info := type_info(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentShadingRateEnums"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.fragmentShadingRateEnums has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.fragmentShadingRateEnums has unexpected size % instead of 4", it.type.runtime_size); case "supersampleFragmentShadingRates"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.supersampleFragmentShadingRates has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.supersampleFragmentShadingRates has unexpected size % instead of 4", it.type.runtime_size); case "noInvocationFragmentShadingRates"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.noInvocationFragmentShadingRates has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV.noInvocationFragmentShadingRates has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV) == 32, "VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV has size % instead of 32", size_of(VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV)); } { info := type_info(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxFragmentShadingRateInvocationCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.maxFragmentShadingRateInvocationCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV.maxFragmentShadingRateInvocationCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV) == 24, "VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV)); } { info := type_info(VkPipelineFragmentShadingRateEnumStateCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shadingRateType"; assert(it.offset_in_bytes == 16, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.shadingRateType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.shadingRateType has unexpected size % instead of 4", it.type.runtime_size); case "shadingRate"; assert(it.offset_in_bytes == 20, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.shadingRate has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.shadingRate has unexpected size % instead of 4", it.type.runtime_size); case "combinerOps"; assert(it.offset_in_bytes == 24, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.combinerOps has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV.combinerOps has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineFragmentShadingRateEnumStateCreateInfoNV) == 32, "VkPipelineFragmentShadingRateEnumStateCreateInfoNV has size % instead of 32", size_of(VkPipelineFragmentShadingRateEnumStateCreateInfoNV)); } { info := type_info(VkDeviceOrHostAddressConstKHR); for info.members { if it.name == { case "deviceAddress"; assert(it.offset_in_bytes == 0, "VkDeviceOrHostAddressConstKHR.deviceAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceOrHostAddressConstKHR.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); case "hostAddress"; assert(it.offset_in_bytes == 0, "VkDeviceOrHostAddressConstKHR.hostAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceOrHostAddressConstKHR.hostAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceOrHostAddressConstKHR) == 8, "VkDeviceOrHostAddressConstKHR has size % instead of 8", size_of(VkDeviceOrHostAddressConstKHR)); } { info := type_info(VkAccelerationStructureGeometryMotionTrianglesDataNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryMotionTrianglesDataNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryMotionTrianglesDataNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryMotionTrianglesDataNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryMotionTrianglesDataNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexData"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryMotionTrianglesDataNV.vertexData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryMotionTrianglesDataNV.vertexData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryMotionTrianglesDataNV) == 24, "VkAccelerationStructureGeometryMotionTrianglesDataNV has size % instead of 24", size_of(VkAccelerationStructureGeometryMotionTrianglesDataNV)); } { info := type_info(VkAccelerationStructureMotionInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMotionInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMotionInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureMotionInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureMotionInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxInstances"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureMotionInfoNV.maxInstances has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMotionInfoNV.maxInstances has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkAccelerationStructureMotionInfoNV.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMotionInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureMotionInfoNV) == 24, "VkAccelerationStructureMotionInfoNV has size % instead of 24", size_of(VkAccelerationStructureMotionInfoNV)); } { info := type_info(VkAccelerationStructureMatrixMotionInstanceNV); for info.members { if it.name == { case "transformT0"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMatrixMotionInstanceNV.transformT0 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkAccelerationStructureMatrixMotionInstanceNV.transformT0 has unexpected size % instead of 48", it.type.runtime_size); case "transformT1"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureMatrixMotionInstanceNV.transformT1 has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkAccelerationStructureMatrixMotionInstanceNV.transformT1 has unexpected size % instead of 48", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 96, "VkAccelerationStructureMatrixMotionInstanceNV.__bitfield has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureMatrixMotionInstanceNV.__bitfield has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureReference"; assert(it.offset_in_bytes == 104, "VkAccelerationStructureMatrixMotionInstanceNV.accelerationStructureReference has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureMatrixMotionInstanceNV.accelerationStructureReference has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureMatrixMotionInstanceNV) == 112, "VkAccelerationStructureMatrixMotionInstanceNV has size % instead of 112", size_of(VkAccelerationStructureMatrixMotionInstanceNV)); } { info := type_info(VkSRTDataNV); for info.members { if it.name == { case "sx"; assert(it.offset_in_bytes == 0, "VkSRTDataNV.sx has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.sx has unexpected size % instead of 4", it.type.runtime_size); case "a"; assert(it.offset_in_bytes == 4, "VkSRTDataNV.a has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.a has unexpected size % instead of 4", it.type.runtime_size); case "b"; assert(it.offset_in_bytes == 8, "VkSRTDataNV.b has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.b has unexpected size % instead of 4", it.type.runtime_size); case "pvx"; assert(it.offset_in_bytes == 12, "VkSRTDataNV.pvx has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.pvx has unexpected size % instead of 4", it.type.runtime_size); case "sy"; assert(it.offset_in_bytes == 16, "VkSRTDataNV.sy has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.sy has unexpected size % instead of 4", it.type.runtime_size); case "c"; assert(it.offset_in_bytes == 20, "VkSRTDataNV.c has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.c has unexpected size % instead of 4", it.type.runtime_size); case "pvy"; assert(it.offset_in_bytes == 24, "VkSRTDataNV.pvy has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.pvy has unexpected size % instead of 4", it.type.runtime_size); case "sz"; assert(it.offset_in_bytes == 28, "VkSRTDataNV.sz has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.sz has unexpected size % instead of 4", it.type.runtime_size); case "pvz"; assert(it.offset_in_bytes == 32, "VkSRTDataNV.pvz has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.pvz has unexpected size % instead of 4", it.type.runtime_size); case "qx"; assert(it.offset_in_bytes == 36, "VkSRTDataNV.qx has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.qx has unexpected size % instead of 4", it.type.runtime_size); case "qy"; assert(it.offset_in_bytes == 40, "VkSRTDataNV.qy has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.qy has unexpected size % instead of 4", it.type.runtime_size); case "qz"; assert(it.offset_in_bytes == 44, "VkSRTDataNV.qz has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.qz has unexpected size % instead of 4", it.type.runtime_size); case "qw"; assert(it.offset_in_bytes == 48, "VkSRTDataNV.qw has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.qw has unexpected size % instead of 4", it.type.runtime_size); case "tx"; assert(it.offset_in_bytes == 52, "VkSRTDataNV.tx has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.tx has unexpected size % instead of 4", it.type.runtime_size); case "ty"; assert(it.offset_in_bytes == 56, "VkSRTDataNV.ty has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.ty has unexpected size % instead of 4", it.type.runtime_size); case "tz"; assert(it.offset_in_bytes == 60, "VkSRTDataNV.tz has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSRTDataNV.tz has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSRTDataNV) == 64, "VkSRTDataNV has size % instead of 64", size_of(VkSRTDataNV)); } { info := type_info(VkAccelerationStructureSRTMotionInstanceNV); for info.members { if it.name == { case "transformT0"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureSRTMotionInstanceNV.transformT0 has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkAccelerationStructureSRTMotionInstanceNV.transformT0 has unexpected size % instead of 64", it.type.runtime_size); case "transformT1"; assert(it.offset_in_bytes == 64, "VkAccelerationStructureSRTMotionInstanceNV.transformT1 has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkAccelerationStructureSRTMotionInstanceNV.transformT1 has unexpected size % instead of 64", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 128, "VkAccelerationStructureSRTMotionInstanceNV.__bitfield has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureSRTMotionInstanceNV.__bitfield has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureReference"; assert(it.offset_in_bytes == 136, "VkAccelerationStructureSRTMotionInstanceNV.accelerationStructureReference has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureSRTMotionInstanceNV.accelerationStructureReference has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureSRTMotionInstanceNV) == 144, "VkAccelerationStructureSRTMotionInstanceNV has size % instead of 144", size_of(VkAccelerationStructureSRTMotionInstanceNV)); } { info := type_info(VkAccelerationStructureMotionInstanceDataNV); for info.members { if it.name == { case "staticInstance"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMotionInstanceDataNV.staticInstance has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkAccelerationStructureMotionInstanceDataNV.staticInstance has unexpected size % instead of 64", it.type.runtime_size); case "matrixMotionInstance"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMotionInstanceDataNV.matrixMotionInstance has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 112, "VkAccelerationStructureMotionInstanceDataNV.matrixMotionInstance has unexpected size % instead of 112", it.type.runtime_size); case "srtMotionInstance"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMotionInstanceDataNV.srtMotionInstance has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 144, "VkAccelerationStructureMotionInstanceDataNV.srtMotionInstance has unexpected size % instead of 144", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureMotionInstanceDataNV) == 144, "VkAccelerationStructureMotionInstanceDataNV has size % instead of 144", size_of(VkAccelerationStructureMotionInstanceDataNV)); } { info := type_info(VkAccelerationStructureMotionInstanceNV); for info.members { if it.name == { case "type"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureMotionInstanceNV.type has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMotionInstanceNV.type has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 4, "VkAccelerationStructureMotionInstanceNV.flags has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureMotionInstanceNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureMotionInstanceNV.data has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 144, "VkAccelerationStructureMotionInstanceNV.data has unexpected size % instead of 144", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureMotionInstanceNV) == 152, "VkAccelerationStructureMotionInstanceNV has size % instead of 152", size_of(VkAccelerationStructureMotionInstanceNV)); } { info := type_info(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingMotionBlur"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.rayTracingMotionBlur has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.rayTracingMotionBlur has unexpected size % instead of 4", it.type.runtime_size); case "rayTracingMotionBlurPipelineTraceRaysIndirect"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.rayTracingMotionBlurPipelineTraceRaysIndirect has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV.rayTracingMotionBlurPipelineTraceRaysIndirect has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV) == 24, "VkPhysicalDeviceRayTracingMotionBlurFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRayTracingMotionBlurFeaturesNV)); } { info := type_info(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "ycbcr2plane444Formats"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.ycbcr2plane444Formats has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT.ycbcr2plane444Formats has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT) == 24, "VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT)); } { info := type_info(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityMapDeferred"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.fragmentDensityMapDeferred has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT.fragmentDensityMapDeferred has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT) == 24, "VkPhysicalDeviceFragmentDensityMap2FeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceFragmentDensityMap2FeaturesEXT)); } { info := type_info(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subsampledLoads"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.subsampledLoads has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.subsampledLoads has unexpected size % instead of 4", it.type.runtime_size); case "subsampledCoarseReconstructionEarlyAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.subsampledCoarseReconstructionEarlyAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.subsampledCoarseReconstructionEarlyAccess has unexpected size % instead of 4", it.type.runtime_size); case "maxSubsampledArrayLayers"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.maxSubsampledArrayLayers has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.maxSubsampledArrayLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetSubsampledSamplers"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.maxDescriptorSetSubsampledSamplers has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT.maxDescriptorSetSubsampledSamplers has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT) == 32, "VkPhysicalDeviceFragmentDensityMap2PropertiesEXT has size % instead of 32", size_of(VkPhysicalDeviceFragmentDensityMap2PropertiesEXT)); } { info := type_info(VkCopyCommandTransformInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyCommandTransformInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyCommandTransformInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyCommandTransformInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyCommandTransformInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "transform"; assert(it.offset_in_bytes == 16, "VkCopyCommandTransformInfoQCOM.transform has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyCommandTransformInfoQCOM.transform has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyCommandTransformInfoQCOM) == 24, "VkCopyCommandTransformInfoQCOM has size % instead of 24", size_of(VkCopyCommandTransformInfoQCOM)); } { info := type_info(VkPhysicalDeviceImageCompressionControlFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageCompressionControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.imageCompressionControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageCompressionControlFeaturesEXT.imageCompressionControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageCompressionControlFeaturesEXT) == 24, "VkPhysicalDeviceImageCompressionControlFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceImageCompressionControlFeaturesEXT)); } { info := type_info(VkImageCompressionControlEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageCompressionControlEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionControlEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageCompressionControlEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCompressionControlEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkImageCompressionControlEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionControlEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "compressionControlPlaneCount"; assert(it.offset_in_bytes == 20, "VkImageCompressionControlEXT.compressionControlPlaneCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionControlEXT.compressionControlPlaneCount has unexpected size % instead of 4", it.type.runtime_size); case "pFixedRateFlags"; assert(it.offset_in_bytes == 24, "VkImageCompressionControlEXT.pFixedRateFlags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCompressionControlEXT.pFixedRateFlags has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkImageCompressionControlEXT) == 32, "VkImageCompressionControlEXT has size % instead of 32", size_of(VkImageCompressionControlEXT)); } { info := type_info(VkImageCompressionPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageCompressionPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageCompressionPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageCompressionPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageCompressionFlags"; assert(it.offset_in_bytes == 16, "VkImageCompressionPropertiesEXT.imageCompressionFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionPropertiesEXT.imageCompressionFlags has unexpected size % instead of 4", it.type.runtime_size); case "imageCompressionFixedRateFlags"; assert(it.offset_in_bytes == 20, "VkImageCompressionPropertiesEXT.imageCompressionFixedRateFlags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageCompressionPropertiesEXT.imageCompressionFixedRateFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageCompressionPropertiesEXT) == 24, "VkImageCompressionPropertiesEXT has size % instead of 24", size_of(VkImageCompressionPropertiesEXT)); } { info := type_info(VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentFeedbackLoopLayout"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.attachmentFeedbackLoopLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT.attachmentFeedbackLoopLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT) == 24, "VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT)); } { info := type_info(VkPhysicalDevice4444FormatsFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevice4444FormatsFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice4444FormatsFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevice4444FormatsFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevice4444FormatsFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "formatA4R4G4B4"; assert(it.offset_in_bytes == 16, "VkPhysicalDevice4444FormatsFeaturesEXT.formatA4R4G4B4 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice4444FormatsFeaturesEXT.formatA4R4G4B4 has unexpected size % instead of 4", it.type.runtime_size); case "formatA4B4G4R4"; assert(it.offset_in_bytes == 20, "VkPhysicalDevice4444FormatsFeaturesEXT.formatA4B4G4R4 has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevice4444FormatsFeaturesEXT.formatA4B4G4R4 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevice4444FormatsFeaturesEXT) == 24, "VkPhysicalDevice4444FormatsFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevice4444FormatsFeaturesEXT)); } { info := type_info(VkPhysicalDeviceFaultFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFaultFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFaultFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFaultFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFaultFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceFault"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFaultFeaturesEXT.deviceFault has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFaultFeaturesEXT.deviceFault has unexpected size % instead of 4", it.type.runtime_size); case "deviceFaultVendorBinary"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceFaultFeaturesEXT.deviceFaultVendorBinary has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFaultFeaturesEXT.deviceFaultVendorBinary has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFaultFeaturesEXT) == 24, "VkPhysicalDeviceFaultFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceFaultFeaturesEXT)); } { info := type_info(VkDeviceFaultCountsEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceFaultCountsEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultCountsEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceFaultCountsEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultCountsEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "addressInfoCount"; assert(it.offset_in_bytes == 16, "VkDeviceFaultCountsEXT.addressInfoCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultCountsEXT.addressInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "vendorInfoCount"; assert(it.offset_in_bytes == 20, "VkDeviceFaultCountsEXT.vendorInfoCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultCountsEXT.vendorInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "vendorBinarySize"; assert(it.offset_in_bytes == 24, "VkDeviceFaultCountsEXT.vendorBinarySize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultCountsEXT.vendorBinarySize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceFaultCountsEXT) == 32, "VkDeviceFaultCountsEXT has size % instead of 32", size_of(VkDeviceFaultCountsEXT)); } { info := type_info(VkDeviceFaultAddressInfoEXT); for info.members { if it.name == { case "addressType"; assert(it.offset_in_bytes == 0, "VkDeviceFaultAddressInfoEXT.addressType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultAddressInfoEXT.addressType has unexpected size % instead of 4", it.type.runtime_size); case "reportedAddress"; assert(it.offset_in_bytes == 8, "VkDeviceFaultAddressInfoEXT.reportedAddress has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultAddressInfoEXT.reportedAddress has unexpected size % instead of 8", it.type.runtime_size); case "addressPrecision"; assert(it.offset_in_bytes == 16, "VkDeviceFaultAddressInfoEXT.addressPrecision has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultAddressInfoEXT.addressPrecision has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceFaultAddressInfoEXT) == 24, "VkDeviceFaultAddressInfoEXT has size % instead of 24", size_of(VkDeviceFaultAddressInfoEXT)); } { info := type_info(VkDeviceFaultVendorInfoEXT); for info.members { if it.name == { case "description"; assert(it.offset_in_bytes == 0, "VkDeviceFaultVendorInfoEXT.description has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkDeviceFaultVendorInfoEXT.description has unexpected size % instead of 256", it.type.runtime_size); case "vendorFaultCode"; assert(it.offset_in_bytes == 256, "VkDeviceFaultVendorInfoEXT.vendorFaultCode has unexpected offset % instead of 256", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultVendorInfoEXT.vendorFaultCode has unexpected size % instead of 8", it.type.runtime_size); case "vendorFaultData"; assert(it.offset_in_bytes == 264, "VkDeviceFaultVendorInfoEXT.vendorFaultData has unexpected offset % instead of 264", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultVendorInfoEXT.vendorFaultData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceFaultVendorInfoEXT) == 272, "VkDeviceFaultVendorInfoEXT has size % instead of 272", size_of(VkDeviceFaultVendorInfoEXT)); } { info := type_info(VkDeviceFaultInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceFaultInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceFaultInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 16, "VkDeviceFaultInfoEXT.description has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkDeviceFaultInfoEXT.description has unexpected size % instead of 256", it.type.runtime_size); case "pAddressInfos"; assert(it.offset_in_bytes == 272, "VkDeviceFaultInfoEXT.pAddressInfos has unexpected offset % instead of 272", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultInfoEXT.pAddressInfos has unexpected size % instead of 8", it.type.runtime_size); case "pVendorInfos"; assert(it.offset_in_bytes == 280, "VkDeviceFaultInfoEXT.pVendorInfos has unexpected offset % instead of 280", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultInfoEXT.pVendorInfos has unexpected size % instead of 8", it.type.runtime_size); case "pVendorBinaryData"; assert(it.offset_in_bytes == 288, "VkDeviceFaultInfoEXT.pVendorBinaryData has unexpected offset % instead of 288", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceFaultInfoEXT.pVendorBinaryData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceFaultInfoEXT) == 296, "VkDeviceFaultInfoEXT has size % instead of 296", size_of(VkDeviceFaultInfoEXT)); } { info := type_info(VkDeviceFaultVendorBinaryHeaderVersionOneEXT); for info.members { if it.name == { case "headerSize"; assert(it.offset_in_bytes == 0, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.headerSize has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.headerSize has unexpected size % instead of 4", it.type.runtime_size); case "headerVersion"; assert(it.offset_in_bytes == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.headerVersion has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.headerVersion has unexpected size % instead of 4", it.type.runtime_size); case "vendorID"; assert(it.offset_in_bytes == 8, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.vendorID has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.vendorID has unexpected size % instead of 4", it.type.runtime_size); case "deviceID"; assert(it.offset_in_bytes == 12, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.deviceID has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.deviceID has unexpected size % instead of 4", it.type.runtime_size); case "driverVersion"; assert(it.offset_in_bytes == 16, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.driverVersion has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.driverVersion has unexpected size % instead of 4", it.type.runtime_size); case "pipelineCacheUUID"; assert(it.offset_in_bytes == 20, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.pipelineCacheUUID has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.pipelineCacheUUID has unexpected size % instead of 16", it.type.runtime_size); case "applicationNameOffset"; assert(it.offset_in_bytes == 36, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.applicationNameOffset has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.applicationNameOffset has unexpected size % instead of 4", it.type.runtime_size); case "applicationVersion"; assert(it.offset_in_bytes == 40, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.applicationVersion has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.applicationVersion has unexpected size % instead of 4", it.type.runtime_size); case "engineNameOffset"; assert(it.offset_in_bytes == 44, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.engineNameOffset has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.engineNameOffset has unexpected size % instead of 4", it.type.runtime_size); case "engineVersion"; assert(it.offset_in_bytes == 48, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.engineVersion has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.engineVersion has unexpected size % instead of 4", it.type.runtime_size); case "apiVersion"; assert(it.offset_in_bytes == 52, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.apiVersion has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT.apiVersion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceFaultVendorBinaryHeaderVersionOneEXT) == 56, "VkDeviceFaultVendorBinaryHeaderVersionOneEXT has size % instead of 56", size_of(VkDeviceFaultVendorBinaryHeaderVersionOneEXT)); } { info := type_info(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rasterizationOrderColorAttachmentAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderColorAttachmentAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderColorAttachmentAccess has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationOrderDepthAttachmentAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderDepthAttachmentAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderDepthAttachmentAccess has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationOrderStencilAttachmentAccess"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderStencilAttachmentAccess has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT.rasterizationOrderStencilAttachmentAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT) == 32, "VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT)); } { info := type_info(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "formatRgba10x6WithoutYCbCrSampler"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.formatRgba10x6WithoutYCbCrSampler has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT.formatRgba10x6WithoutYCbCrSampler has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT) == 24, "VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT)); } { info := type_info(VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "mutableDescriptorType"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.mutableDescriptorType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT.mutableDescriptorType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT) == 24, "VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT)); } { info := type_info(VkMutableDescriptorTypeListEXT); for info.members { if it.name == { case "descriptorTypeCount"; assert(it.offset_in_bytes == 0, "VkMutableDescriptorTypeListEXT.descriptorTypeCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMutableDescriptorTypeListEXT.descriptorTypeCount has unexpected size % instead of 4", it.type.runtime_size); case "pDescriptorTypes"; assert(it.offset_in_bytes == 8, "VkMutableDescriptorTypeListEXT.pDescriptorTypes has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMutableDescriptorTypeListEXT.pDescriptorTypes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMutableDescriptorTypeListEXT) == 16, "VkMutableDescriptorTypeListEXT has size % instead of 16", size_of(VkMutableDescriptorTypeListEXT)); } { info := type_info(VkMutableDescriptorTypeCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMutableDescriptorTypeCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMutableDescriptorTypeCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMutableDescriptorTypeCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMutableDescriptorTypeCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "mutableDescriptorTypeListCount"; assert(it.offset_in_bytes == 16, "VkMutableDescriptorTypeCreateInfoEXT.mutableDescriptorTypeListCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMutableDescriptorTypeCreateInfoEXT.mutableDescriptorTypeListCount has unexpected size % instead of 4", it.type.runtime_size); case "pMutableDescriptorTypeLists"; assert(it.offset_in_bytes == 24, "VkMutableDescriptorTypeCreateInfoEXT.pMutableDescriptorTypeLists has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMutableDescriptorTypeCreateInfoEXT.pMutableDescriptorTypeLists has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMutableDescriptorTypeCreateInfoEXT) == 32, "VkMutableDescriptorTypeCreateInfoEXT has size % instead of 32", size_of(VkMutableDescriptorTypeCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexInputDynamicState"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.vertexInputDynamicState has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT.vertexInputDynamicState has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT) == 24, "VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT)); } { info := type_info(VkVertexInputBindingDescription2EXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVertexInputBindingDescription2EXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription2EXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVertexInputBindingDescription2EXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVertexInputBindingDescription2EXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "binding"; assert(it.offset_in_bytes == 16, "VkVertexInputBindingDescription2EXT.binding has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription2EXT.binding has unexpected size % instead of 4", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 20, "VkVertexInputBindingDescription2EXT.stride has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription2EXT.stride has unexpected size % instead of 4", it.type.runtime_size); case "inputRate"; assert(it.offset_in_bytes == 24, "VkVertexInputBindingDescription2EXT.inputRate has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription2EXT.inputRate has unexpected size % instead of 4", it.type.runtime_size); case "divisor"; assert(it.offset_in_bytes == 28, "VkVertexInputBindingDescription2EXT.divisor has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputBindingDescription2EXT.divisor has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVertexInputBindingDescription2EXT) == 32, "VkVertexInputBindingDescription2EXT has size % instead of 32", size_of(VkVertexInputBindingDescription2EXT)); } { info := type_info(VkVertexInputAttributeDescription2EXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkVertexInputAttributeDescription2EXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription2EXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkVertexInputAttributeDescription2EXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkVertexInputAttributeDescription2EXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "location"; assert(it.offset_in_bytes == 16, "VkVertexInputAttributeDescription2EXT.location has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription2EXT.location has unexpected size % instead of 4", it.type.runtime_size); case "binding"; assert(it.offset_in_bytes == 20, "VkVertexInputAttributeDescription2EXT.binding has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription2EXT.binding has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 24, "VkVertexInputAttributeDescription2EXT.format has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription2EXT.format has unexpected size % instead of 4", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 28, "VkVertexInputAttributeDescription2EXT.offset has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkVertexInputAttributeDescription2EXT.offset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkVertexInputAttributeDescription2EXT) == 32, "VkVertexInputAttributeDescription2EXT has size % instead of 32", size_of(VkVertexInputAttributeDescription2EXT)); } { info := type_info(VkPhysicalDeviceDrmPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDrmPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDrmPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDrmPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDrmPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hasPrimary"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDrmPropertiesEXT.hasPrimary has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDrmPropertiesEXT.hasPrimary has unexpected size % instead of 4", it.type.runtime_size); case "hasRender"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDrmPropertiesEXT.hasRender has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDrmPropertiesEXT.hasRender has unexpected size % instead of 4", it.type.runtime_size); case "primaryMajor"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDrmPropertiesEXT.primaryMajor has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDrmPropertiesEXT.primaryMajor has unexpected size % instead of 8", it.type.runtime_size); case "primaryMinor"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDrmPropertiesEXT.primaryMinor has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDrmPropertiesEXT.primaryMinor has unexpected size % instead of 8", it.type.runtime_size); case "renderMajor"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDrmPropertiesEXT.renderMajor has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDrmPropertiesEXT.renderMajor has unexpected size % instead of 8", it.type.runtime_size); case "renderMinor"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDrmPropertiesEXT.renderMinor has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDrmPropertiesEXT.renderMinor has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDrmPropertiesEXT) == 56, "VkPhysicalDeviceDrmPropertiesEXT has size % instead of 56", size_of(VkPhysicalDeviceDrmPropertiesEXT)); } { info := type_info(VkPhysicalDeviceAddressBindingReportFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "reportAddressBinding"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.reportAddressBinding has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAddressBindingReportFeaturesEXT.reportAddressBinding has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAddressBindingReportFeaturesEXT) == 24, "VkPhysicalDeviceAddressBindingReportFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceAddressBindingReportFeaturesEXT)); } { info := type_info(VkDeviceAddressBindingCallbackDataEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceAddressBindingCallbackDataEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceAddressBindingCallbackDataEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceAddressBindingCallbackDataEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceAddressBindingCallbackDataEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDeviceAddressBindingCallbackDataEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceAddressBindingCallbackDataEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "baseAddress"; assert(it.offset_in_bytes == 24, "VkDeviceAddressBindingCallbackDataEXT.baseAddress has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceAddressBindingCallbackDataEXT.baseAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 32, "VkDeviceAddressBindingCallbackDataEXT.size has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceAddressBindingCallbackDataEXT.size has unexpected size % instead of 8", it.type.runtime_size); case "bindingType"; assert(it.offset_in_bytes == 40, "VkDeviceAddressBindingCallbackDataEXT.bindingType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceAddressBindingCallbackDataEXT.bindingType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceAddressBindingCallbackDataEXT) == 48, "VkDeviceAddressBindingCallbackDataEXT has size % instead of 48", size_of(VkDeviceAddressBindingCallbackDataEXT)); } { info := type_info(VkPhysicalDeviceDepthClipControlFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthClipControlFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClipControlFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthClipControlFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthClipControlFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthClipControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthClipControlFeaturesEXT.depthClipControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClipControlFeaturesEXT.depthClipControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthClipControlFeaturesEXT) == 24, "VkPhysicalDeviceDepthClipControlFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDepthClipControlFeaturesEXT)); } { info := type_info(VkPipelineViewportDepthClipControlCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportDepthClipControlCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportDepthClipControlCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportDepthClipControlCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportDepthClipControlCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "negativeOneToOne"; assert(it.offset_in_bytes == 16, "VkPipelineViewportDepthClipControlCreateInfoEXT.negativeOneToOne has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportDepthClipControlCreateInfoEXT.negativeOneToOne has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPipelineViewportDepthClipControlCreateInfoEXT) == 24, "VkPipelineViewportDepthClipControlCreateInfoEXT has size % instead of 24", size_of(VkPipelineViewportDepthClipControlCreateInfoEXT)); } { info := type_info(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "primitiveTopologyListRestart"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.primitiveTopologyListRestart has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.primitiveTopologyListRestart has unexpected size % instead of 4", it.type.runtime_size); case "primitiveTopologyPatchListRestart"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.primitiveTopologyPatchListRestart has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT.primitiveTopologyPatchListRestart has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT) == 24, "VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT)); } { info := type_info(VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentModeFifoLatestReady"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.presentModeFifoLatestReady has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT.presentModeFifoLatestReady has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT) == 24, "VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT)); } { info := type_info(VkSubpassShadingPipelineCreateInfoHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassShadingPipelineCreateInfoHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassShadingPipelineCreateInfoHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassShadingPipelineCreateInfoHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassShadingPipelineCreateInfoHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "renderPass"; assert(it.offset_in_bytes == 16, "VkSubpassShadingPipelineCreateInfoHUAWEI.renderPass has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassShadingPipelineCreateInfoHUAWEI.renderPass has unexpected size % instead of 8", it.type.runtime_size); case "subpass"; assert(it.offset_in_bytes == 24, "VkSubpassShadingPipelineCreateInfoHUAWEI.subpass has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassShadingPipelineCreateInfoHUAWEI.subpass has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSubpassShadingPipelineCreateInfoHUAWEI) == 32, "VkSubpassShadingPipelineCreateInfoHUAWEI has size % instead of 32", size_of(VkSubpassShadingPipelineCreateInfoHUAWEI)); } { info := type_info(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subpassShading"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.subpassShading has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI.subpassShading has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI) == 24, "VkPhysicalDeviceSubpassShadingFeaturesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceSubpassShadingFeaturesHUAWEI)); } { info := type_info(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxSubpassShadingWorkgroupSizeAspectRatio"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.maxSubpassShadingWorkgroupSizeAspectRatio has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI.maxSubpassShadingWorkgroupSizeAspectRatio has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI) == 24, "VkPhysicalDeviceSubpassShadingPropertiesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceSubpassShadingPropertiesHUAWEI)); } { info := type_info(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "invocationMask"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.invocationMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI.invocationMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI) == 24, "VkPhysicalDeviceInvocationMaskFeaturesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceInvocationMaskFeaturesHUAWEI)); } { info := type_info(VkMemoryGetRemoteAddressInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMemoryGetRemoteAddressInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryGetRemoteAddressInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMemoryGetRemoteAddressInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryGetRemoteAddressInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkMemoryGetRemoteAddressInfoNV.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMemoryGetRemoteAddressInfoNV.memory has unexpected size % instead of 8", it.type.runtime_size); case "handleType"; assert(it.offset_in_bytes == 24, "VkMemoryGetRemoteAddressInfoNV.handleType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMemoryGetRemoteAddressInfoNV.handleType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMemoryGetRemoteAddressInfoNV) == 32, "VkMemoryGetRemoteAddressInfoNV has size % instead of 32", size_of(VkMemoryGetRemoteAddressInfoNV)); } { info := type_info(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "externalMemoryRDMA"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.externalMemoryRDMA has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV.externalMemoryRDMA has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV) == 24, "VkPhysicalDeviceExternalMemoryRDMAFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceExternalMemoryRDMAFeaturesNV)); } { info := type_info(VkPipelinePropertiesIdentifierEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelinePropertiesIdentifierEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelinePropertiesIdentifierEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelinePropertiesIdentifierEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelinePropertiesIdentifierEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineIdentifier"; assert(it.offset_in_bytes == 16, "VkPipelinePropertiesIdentifierEXT.pipelineIdentifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPipelinePropertiesIdentifierEXT.pipelineIdentifier has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkPipelinePropertiesIdentifierEXT) == 32, "VkPipelinePropertiesIdentifierEXT has size % instead of 32", size_of(VkPipelinePropertiesIdentifierEXT)); } { info := type_info(VkPhysicalDevicePipelinePropertiesFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelinePropertiesIdentifier"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.pipelinePropertiesIdentifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelinePropertiesFeaturesEXT.pipelinePropertiesIdentifier has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelinePropertiesFeaturesEXT) == 24, "VkPhysicalDevicePipelinePropertiesFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevicePipelinePropertiesFeaturesEXT)); } { info := type_info(VkPhysicalDeviceFrameBoundaryFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "frameBoundary"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.frameBoundary has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFrameBoundaryFeaturesEXT.frameBoundary has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFrameBoundaryFeaturesEXT) == 24, "VkPhysicalDeviceFrameBoundaryFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceFrameBoundaryFeaturesEXT)); } { info := type_info(VkFrameBoundaryEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkFrameBoundaryEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFrameBoundaryEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkFrameBoundaryEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkFrameBoundaryEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFrameBoundaryEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "frameID"; assert(it.offset_in_bytes == 24, "VkFrameBoundaryEXT.frameID has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.frameID has unexpected size % instead of 8", it.type.runtime_size); case "imageCount"; assert(it.offset_in_bytes == 32, "VkFrameBoundaryEXT.imageCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFrameBoundaryEXT.imageCount has unexpected size % instead of 4", it.type.runtime_size); case "pImages"; assert(it.offset_in_bytes == 40, "VkFrameBoundaryEXT.pImages has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.pImages has unexpected size % instead of 8", it.type.runtime_size); case "bufferCount"; assert(it.offset_in_bytes == 48, "VkFrameBoundaryEXT.bufferCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkFrameBoundaryEXT.bufferCount has unexpected size % instead of 4", it.type.runtime_size); case "pBuffers"; assert(it.offset_in_bytes == 56, "VkFrameBoundaryEXT.pBuffers has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.pBuffers has unexpected size % instead of 8", it.type.runtime_size); case "tagName"; assert(it.offset_in_bytes == 64, "VkFrameBoundaryEXT.tagName has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.tagName has unexpected size % instead of 8", it.type.runtime_size); case "tagSize"; assert(it.offset_in_bytes == 72, "VkFrameBoundaryEXT.tagSize has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.tagSize has unexpected size % instead of 8", it.type.runtime_size); case "pTag"; assert(it.offset_in_bytes == 80, "VkFrameBoundaryEXT.pTag has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkFrameBoundaryEXT.pTag has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkFrameBoundaryEXT) == 88, "VkFrameBoundaryEXT has size % instead of 88", size_of(VkFrameBoundaryEXT)); } { info := type_info(VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multisampledRenderToSingleSampled"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.multisampledRenderToSingleSampled has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT.multisampledRenderToSingleSampled has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT) == 24, "VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT)); } { info := type_info(VkSubpassResolvePerformanceQueryEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSubpassResolvePerformanceQueryEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassResolvePerformanceQueryEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSubpassResolvePerformanceQueryEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSubpassResolvePerformanceQueryEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "optimal"; assert(it.offset_in_bytes == 16, "VkSubpassResolvePerformanceQueryEXT.optimal has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSubpassResolvePerformanceQueryEXT.optimal has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSubpassResolvePerformanceQueryEXT) == 24, "VkSubpassResolvePerformanceQueryEXT has size % instead of 24", size_of(VkSubpassResolvePerformanceQueryEXT)); } { info := type_info(VkMultisampledRenderToSingleSampledInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMultisampledRenderToSingleSampledInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultisampledRenderToSingleSampledInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMultisampledRenderToSingleSampledInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultisampledRenderToSingleSampledInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multisampledRenderToSingleSampledEnable"; assert(it.offset_in_bytes == 16, "VkMultisampledRenderToSingleSampledInfoEXT.multisampledRenderToSingleSampledEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultisampledRenderToSingleSampledInfoEXT.multisampledRenderToSingleSampledEnable has unexpected size % instead of 4", it.type.runtime_size); case "rasterizationSamples"; assert(it.offset_in_bytes == 20, "VkMultisampledRenderToSingleSampledInfoEXT.rasterizationSamples has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultisampledRenderToSingleSampledInfoEXT.rasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMultisampledRenderToSingleSampledInfoEXT) == 24, "VkMultisampledRenderToSingleSampledInfoEXT has size % instead of 24", size_of(VkMultisampledRenderToSingleSampledInfoEXT)); } { info := type_info(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "extendedDynamicState2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2 has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState2LogicOp"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2LogicOp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2LogicOp has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState2PatchControlPoints"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2PatchControlPoints has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT.extendedDynamicState2PatchControlPoints has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT) == 32, "VkPhysicalDeviceExtendedDynamicState2FeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceExtendedDynamicState2FeaturesEXT)); } { info := type_info(VkPhysicalDeviceColorWriteEnableFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "colorWriteEnable"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.colorWriteEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceColorWriteEnableFeaturesEXT.colorWriteEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceColorWriteEnableFeaturesEXT) == 24, "VkPhysicalDeviceColorWriteEnableFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceColorWriteEnableFeaturesEXT)); } { info := type_info(VkPipelineColorWriteCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineColorWriteCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorWriteCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineColorWriteCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineColorWriteCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentCount"; assert(it.offset_in_bytes == 16, "VkPipelineColorWriteCreateInfoEXT.attachmentCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineColorWriteCreateInfoEXT.attachmentCount has unexpected size % instead of 4", it.type.runtime_size); case "pColorWriteEnables"; assert(it.offset_in_bytes == 24, "VkPipelineColorWriteCreateInfoEXT.pColorWriteEnables has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineColorWriteCreateInfoEXT.pColorWriteEnables has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineColorWriteCreateInfoEXT) == 32, "VkPipelineColorWriteCreateInfoEXT has size % instead of 32", size_of(VkPipelineColorWriteCreateInfoEXT)); } { info := type_info(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "primitivesGeneratedQuery"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQuery has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQuery has unexpected size % instead of 4", it.type.runtime_size); case "primitivesGeneratedQueryWithRasterizerDiscard"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQueryWithRasterizerDiscard has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQueryWithRasterizerDiscard has unexpected size % instead of 4", it.type.runtime_size); case "primitivesGeneratedQueryWithNonZeroStreams"; assert(it.offset_in_bytes == 24, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQueryWithNonZeroStreams has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT.primitivesGeneratedQueryWithNonZeroStreams has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT) == 32, "VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT has size % instead of 32", size_of(VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT)); } { info := type_info(VkPhysicalDeviceImageViewMinLodFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minLod"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.minLod has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageViewMinLodFeaturesEXT.minLod has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageViewMinLodFeaturesEXT) == 24, "VkPhysicalDeviceImageViewMinLodFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceImageViewMinLodFeaturesEXT)); } { info := type_info(VkImageViewMinLodCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewMinLodCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewMinLodCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewMinLodCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewMinLodCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "minLod"; assert(it.offset_in_bytes == 16, "VkImageViewMinLodCreateInfoEXT.minLod has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewMinLodCreateInfoEXT.minLod has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageViewMinLodCreateInfoEXT) == 24, "VkImageViewMinLodCreateInfoEXT has size % instead of 24", size_of(VkImageViewMinLodCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceMultiDrawFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiDrawFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiDrawFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiDrawFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiDrawFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multiDraw"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiDrawFeaturesEXT.multiDraw has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiDrawFeaturesEXT.multiDraw has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiDrawFeaturesEXT) == 24, "VkPhysicalDeviceMultiDrawFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceMultiDrawFeaturesEXT)); } { info := type_info(VkPhysicalDeviceMultiDrawPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiDrawPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiDrawPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiDrawPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiDrawPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxMultiDrawCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiDrawPropertiesEXT.maxMultiDrawCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiDrawPropertiesEXT.maxMultiDrawCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiDrawPropertiesEXT) == 24, "VkPhysicalDeviceMultiDrawPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceMultiDrawPropertiesEXT)); } { info := type_info(VkMultiDrawInfoEXT); for info.members { if it.name == { case "firstVertex"; assert(it.offset_in_bytes == 0, "VkMultiDrawInfoEXT.firstVertex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiDrawInfoEXT.firstVertex has unexpected size % instead of 4", it.type.runtime_size); case "vertexCount"; assert(it.offset_in_bytes == 4, "VkMultiDrawInfoEXT.vertexCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiDrawInfoEXT.vertexCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMultiDrawInfoEXT) == 8, "VkMultiDrawInfoEXT has size % instead of 8", size_of(VkMultiDrawInfoEXT)); } { info := type_info(VkMultiDrawIndexedInfoEXT); for info.members { if it.name == { case "firstIndex"; assert(it.offset_in_bytes == 0, "VkMultiDrawIndexedInfoEXT.firstIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiDrawIndexedInfoEXT.firstIndex has unexpected size % instead of 4", it.type.runtime_size); case "indexCount"; assert(it.offset_in_bytes == 4, "VkMultiDrawIndexedInfoEXT.indexCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiDrawIndexedInfoEXT.indexCount has unexpected size % instead of 4", it.type.runtime_size); case "vertexOffset"; assert(it.offset_in_bytes == 8, "VkMultiDrawIndexedInfoEXT.vertexOffset has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiDrawIndexedInfoEXT.vertexOffset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMultiDrawIndexedInfoEXT) == 12, "VkMultiDrawIndexedInfoEXT has size % instead of 12", size_of(VkMultiDrawIndexedInfoEXT)); } { info := type_info(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "image2DViewOf3D"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.image2DViewOf3D has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.image2DViewOf3D has unexpected size % instead of 4", it.type.runtime_size); case "sampler2DViewOf3D"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.sampler2DViewOf3D has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT.sampler2DViewOf3D has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT) == 24, "VkPhysicalDeviceImage2DViewOf3DFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceImage2DViewOf3DFeaturesEXT)); } { info := type_info(VkPhysicalDeviceShaderTileImageFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderTileImageFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImageFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderTileImageFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderTileImageFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderTileImageColorReadAccess"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageColorReadAccess has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageColorReadAccess has unexpected size % instead of 4", it.type.runtime_size); case "shaderTileImageDepthReadAccess"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageDepthReadAccess has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageDepthReadAccess has unexpected size % instead of 4", it.type.runtime_size); case "shaderTileImageStencilReadAccess"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageStencilReadAccess has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImageFeaturesEXT.shaderTileImageStencilReadAccess has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderTileImageFeaturesEXT) == 32, "VkPhysicalDeviceShaderTileImageFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceShaderTileImageFeaturesEXT)); } { info := type_info(VkPhysicalDeviceShaderTileImagePropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderTileImagePropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImagePropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderTileImagePropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderTileImagePropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderTileImageCoherentReadAccelerated"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageCoherentReadAccelerated has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageCoherentReadAccelerated has unexpected size % instead of 4", it.type.runtime_size); case "shaderTileImageReadSampleFromPixelRateInvocation"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageReadSampleFromPixelRateInvocation has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageReadSampleFromPixelRateInvocation has unexpected size % instead of 4", it.type.runtime_size); case "shaderTileImageReadFromHelperInvocation"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageReadFromHelperInvocation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderTileImagePropertiesEXT.shaderTileImageReadFromHelperInvocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderTileImagePropertiesEXT) == 32, "VkPhysicalDeviceShaderTileImagePropertiesEXT has size % instead of 32", size_of(VkPhysicalDeviceShaderTileImagePropertiesEXT)); } { info := type_info(VkMicromapUsageEXT); for info.members { if it.name == { case "count"; assert(it.offset_in_bytes == 0, "VkMicromapUsageEXT.count has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapUsageEXT.count has unexpected size % instead of 4", it.type.runtime_size); case "subdivisionLevel"; assert(it.offset_in_bytes == 4, "VkMicromapUsageEXT.subdivisionLevel has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapUsageEXT.subdivisionLevel has unexpected size % instead of 4", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 8, "VkMicromapUsageEXT.format has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapUsageEXT.format has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMicromapUsageEXT) == 12, "VkMicromapUsageEXT has size % instead of 12", size_of(VkMicromapUsageEXT)); } { info := type_info(VkDeviceOrHostAddressKHR); for info.members { if it.name == { case "deviceAddress"; assert(it.offset_in_bytes == 0, "VkDeviceOrHostAddressKHR.deviceAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceOrHostAddressKHR.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); case "hostAddress"; assert(it.offset_in_bytes == 0, "VkDeviceOrHostAddressKHR.hostAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceOrHostAddressKHR.hostAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDeviceOrHostAddressKHR) == 8, "VkDeviceOrHostAddressKHR has size % instead of 8", size_of(VkDeviceOrHostAddressKHR)); } { info := type_info(VkMicromapBuildInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMicromapBuildInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMicromapBuildInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkMicromapBuildInfoEXT.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildInfoEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkMicromapBuildInfoEXT.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 24, "VkMicromapBuildInfoEXT.mode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildInfoEXT.mode has unexpected size % instead of 4", it.type.runtime_size); case "dstMicromap"; assert(it.offset_in_bytes == 32, "VkMicromapBuildInfoEXT.dstMicromap has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.dstMicromap has unexpected size % instead of 8", it.type.runtime_size); case "usageCountsCount"; assert(it.offset_in_bytes == 40, "VkMicromapBuildInfoEXT.usageCountsCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildInfoEXT.usageCountsCount has unexpected size % instead of 4", it.type.runtime_size); case "pUsageCounts"; assert(it.offset_in_bytes == 48, "VkMicromapBuildInfoEXT.pUsageCounts has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.pUsageCounts has unexpected size % instead of 8", it.type.runtime_size); case "ppUsageCounts"; assert(it.offset_in_bytes == 56, "VkMicromapBuildInfoEXT.ppUsageCounts has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.ppUsageCounts has unexpected size % instead of 8", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 64, "VkMicromapBuildInfoEXT.data has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.data has unexpected size % instead of 8", it.type.runtime_size); case "scratchData"; assert(it.offset_in_bytes == 72, "VkMicromapBuildInfoEXT.scratchData has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.scratchData has unexpected size % instead of 8", it.type.runtime_size); case "triangleArray"; assert(it.offset_in_bytes == 80, "VkMicromapBuildInfoEXT.triangleArray has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.triangleArray has unexpected size % instead of 8", it.type.runtime_size); case "triangleArrayStride"; assert(it.offset_in_bytes == 88, "VkMicromapBuildInfoEXT.triangleArrayStride has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildInfoEXT.triangleArrayStride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMicromapBuildInfoEXT) == 96, "VkMicromapBuildInfoEXT has size % instead of 96", size_of(VkMicromapBuildInfoEXT)); } { info := type_info(VkMicromapCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMicromapCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMicromapCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "createFlags"; assert(it.offset_in_bytes == 16, "VkMicromapCreateInfoEXT.createFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapCreateInfoEXT.createFlags has unexpected size % instead of 4", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 24, "VkMicromapCreateInfoEXT.buffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapCreateInfoEXT.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 32, "VkMicromapCreateInfoEXT.offset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapCreateInfoEXT.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 40, "VkMicromapCreateInfoEXT.size has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapCreateInfoEXT.size has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 48, "VkMicromapCreateInfoEXT.type has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapCreateInfoEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "deviceAddress"; assert(it.offset_in_bytes == 56, "VkMicromapCreateInfoEXT.deviceAddress has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapCreateInfoEXT.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMicromapCreateInfoEXT) == 64, "VkMicromapCreateInfoEXT has size % instead of 64", size_of(VkMicromapCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceOpacityMicromapFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "micromap"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromap has unexpected size % instead of 4", it.type.runtime_size); case "micromapCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromapCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromapCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "micromapHostCommands"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromapHostCommands has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapFeaturesEXT.micromapHostCommands has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceOpacityMicromapFeaturesEXT) == 32, "VkPhysicalDeviceOpacityMicromapFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceOpacityMicromapFeaturesEXT)); } { info := type_info(VkPhysicalDeviceOpacityMicromapPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxOpacity2StateSubdivisionLevel"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.maxOpacity2StateSubdivisionLevel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.maxOpacity2StateSubdivisionLevel has unexpected size % instead of 4", it.type.runtime_size); case "maxOpacity4StateSubdivisionLevel"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.maxOpacity4StateSubdivisionLevel has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpacityMicromapPropertiesEXT.maxOpacity4StateSubdivisionLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceOpacityMicromapPropertiesEXT) == 24, "VkPhysicalDeviceOpacityMicromapPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceOpacityMicromapPropertiesEXT)); } { info := type_info(VkMicromapVersionInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMicromapVersionInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapVersionInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMicromapVersionInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapVersionInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pVersionData"; assert(it.offset_in_bytes == 16, "VkMicromapVersionInfoEXT.pVersionData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapVersionInfoEXT.pVersionData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMicromapVersionInfoEXT) == 24, "VkMicromapVersionInfoEXT has size % instead of 24", size_of(VkMicromapVersionInfoEXT)); } { info := type_info(VkCopyMicromapToMemoryInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyMicromapToMemoryInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMicromapToMemoryInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyMicromapToMemoryInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapToMemoryInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyMicromapToMemoryInfoEXT.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapToMemoryInfoEXT.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyMicromapToMemoryInfoEXT.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapToMemoryInfoEXT.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyMicromapToMemoryInfoEXT.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMicromapToMemoryInfoEXT.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyMicromapToMemoryInfoEXT) == 40, "VkCopyMicromapToMemoryInfoEXT has size % instead of 40", size_of(VkCopyMicromapToMemoryInfoEXT)); } { info := type_info(VkCopyMemoryToMicromapInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyMemoryToMicromapInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToMicromapInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyMemoryToMicromapInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToMicromapInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyMemoryToMicromapInfoEXT.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToMicromapInfoEXT.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyMemoryToMicromapInfoEXT.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToMicromapInfoEXT.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyMemoryToMicromapInfoEXT.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToMicromapInfoEXT.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyMemoryToMicromapInfoEXT) == 40, "VkCopyMemoryToMicromapInfoEXT has size % instead of 40", size_of(VkCopyMemoryToMicromapInfoEXT)); } { info := type_info(VkCopyMicromapInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyMicromapInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMicromapInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyMicromapInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyMicromapInfoEXT.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapInfoEXT.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyMicromapInfoEXT.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMicromapInfoEXT.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyMicromapInfoEXT.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMicromapInfoEXT.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyMicromapInfoEXT) == 40, "VkCopyMicromapInfoEXT has size % instead of 40", size_of(VkCopyMicromapInfoEXT)); } { info := type_info(VkMicromapBuildSizesInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMicromapBuildSizesInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildSizesInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMicromapBuildSizesInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildSizesInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "micromapSize"; assert(it.offset_in_bytes == 16, "VkMicromapBuildSizesInfoEXT.micromapSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildSizesInfoEXT.micromapSize has unexpected size % instead of 8", it.type.runtime_size); case "buildScratchSize"; assert(it.offset_in_bytes == 24, "VkMicromapBuildSizesInfoEXT.buildScratchSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMicromapBuildSizesInfoEXT.buildScratchSize has unexpected size % instead of 8", it.type.runtime_size); case "discardable"; assert(it.offset_in_bytes == 32, "VkMicromapBuildSizesInfoEXT.discardable has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapBuildSizesInfoEXT.discardable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkMicromapBuildSizesInfoEXT) == 40, "VkMicromapBuildSizesInfoEXT has size % instead of 40", size_of(VkMicromapBuildSizesInfoEXT)); } { info := type_info(VkAccelerationStructureTrianglesOpacityMicromapEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureTrianglesOpacityMicromapEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureTrianglesOpacityMicromapEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexType has unexpected size % instead of 4", it.type.runtime_size); case "indexBuffer"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "indexStride"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.indexStride has unexpected size % instead of 8", it.type.runtime_size); case "baseTriangle"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureTrianglesOpacityMicromapEXT.baseTriangle has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureTrianglesOpacityMicromapEXT.baseTriangle has unexpected size % instead of 4", it.type.runtime_size); case "usageCountsCount"; assert(it.offset_in_bytes == 44, "VkAccelerationStructureTrianglesOpacityMicromapEXT.usageCountsCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureTrianglesOpacityMicromapEXT.usageCountsCount has unexpected size % instead of 4", it.type.runtime_size); case "pUsageCounts"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureTrianglesOpacityMicromapEXT.pUsageCounts has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.pUsageCounts has unexpected size % instead of 8", it.type.runtime_size); case "ppUsageCounts"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureTrianglesOpacityMicromapEXT.ppUsageCounts has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.ppUsageCounts has unexpected size % instead of 8", it.type.runtime_size); case "micromap"; assert(it.offset_in_bytes == 64, "VkAccelerationStructureTrianglesOpacityMicromapEXT.micromap has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureTrianglesOpacityMicromapEXT.micromap has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureTrianglesOpacityMicromapEXT) == 72, "VkAccelerationStructureTrianglesOpacityMicromapEXT has size % instead of 72", size_of(VkAccelerationStructureTrianglesOpacityMicromapEXT)); } { info := type_info(VkMicromapTriangleEXT); for info.members { if it.name == { case "dataOffset"; assert(it.offset_in_bytes == 0, "VkMicromapTriangleEXT.dataOffset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMicromapTriangleEXT.dataOffset has unexpected size % instead of 4", it.type.runtime_size); case "subdivisionLevel"; assert(it.offset_in_bytes == 4, "VkMicromapTriangleEXT.subdivisionLevel has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkMicromapTriangleEXT.subdivisionLevel has unexpected size % instead of 2", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 6, "VkMicromapTriangleEXT.format has unexpected offset % instead of 6", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkMicromapTriangleEXT.format has unexpected size % instead of 2", it.type.runtime_size); } } assert(size_of(VkMicromapTriangleEXT) == 8, "VkMicromapTriangleEXT has size % instead of 8", size_of(VkMicromapTriangleEXT)); } { info := type_info(VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "clustercullingShader"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.clustercullingShader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.clustercullingShader has unexpected size % instead of 4", it.type.runtime_size); case "multiviewClusterCullingShader"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.multiviewClusterCullingShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI.multiviewClusterCullingShader has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI) == 24, "VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI)); } { info := type_info(VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxWorkGroupCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxWorkGroupCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxWorkGroupCount has unexpected size % instead of 12", it.type.runtime_size); case "maxWorkGroupSize"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxWorkGroupSize has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "maxOutputClusterCount"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxOutputClusterCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.maxOutputClusterCount has unexpected size % instead of 4", it.type.runtime_size); case "indirectBufferOffsetAlignment"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.indirectBufferOffsetAlignment has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI.indirectBufferOffsetAlignment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI) == 56, "VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI has size % instead of 56", size_of(VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI)); } { info := type_info(VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "clusterShadingRate"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.clusterShadingRate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI.clusterShadingRate has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI) == 24, "VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI)); } { info := type_info(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "borderColorSwizzle"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.borderColorSwizzle has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.borderColorSwizzle has unexpected size % instead of 4", it.type.runtime_size); case "borderColorSwizzleFromImage"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.borderColorSwizzleFromImage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT.borderColorSwizzleFromImage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT) == 24, "VkPhysicalDeviceBorderColorSwizzleFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceBorderColorSwizzleFeaturesEXT)); } { info := type_info(VkSamplerBorderColorComponentMappingCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerBorderColorComponentMappingCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerBorderColorComponentMappingCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerBorderColorComponentMappingCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerBorderColorComponentMappingCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "components"; assert(it.offset_in_bytes == 16, "VkSamplerBorderColorComponentMappingCreateInfoEXT.components has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkSamplerBorderColorComponentMappingCreateInfoEXT.components has unexpected size % instead of 16", it.type.runtime_size); case "srgb"; assert(it.offset_in_bytes == 32, "VkSamplerBorderColorComponentMappingCreateInfoEXT.srgb has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerBorderColorComponentMappingCreateInfoEXT.srgb has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerBorderColorComponentMappingCreateInfoEXT) == 40, "VkSamplerBorderColorComponentMappingCreateInfoEXT has size % instead of 40", size_of(VkSamplerBorderColorComponentMappingCreateInfoEXT)); } { info := type_info(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pageableDeviceLocalMemory"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.pageableDeviceLocalMemory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT.pageableDeviceLocalMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT) == 24, "VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT)); } { info := type_info(VkPhysicalDeviceShaderCorePropertiesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderCorePropertiesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderCorePropertiesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCorePropertiesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pixelRate"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderCorePropertiesARM.pixelRate has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesARM.pixelRate has unexpected size % instead of 4", it.type.runtime_size); case "texelRate"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceShaderCorePropertiesARM.texelRate has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesARM.texelRate has unexpected size % instead of 4", it.type.runtime_size); case "fmaRate"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderCorePropertiesARM.fmaRate has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCorePropertiesARM.fmaRate has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderCorePropertiesARM) == 32, "VkPhysicalDeviceShaderCorePropertiesARM has size % instead of 32", size_of(VkPhysicalDeviceShaderCorePropertiesARM)); } { info := type_info(VkDeviceQueueShaderCoreControlCreateInfoARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDeviceQueueShaderCoreControlCreateInfoARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueShaderCoreControlCreateInfoARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDeviceQueueShaderCoreControlCreateInfoARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDeviceQueueShaderCoreControlCreateInfoARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCoreCount"; assert(it.offset_in_bytes == 16, "VkDeviceQueueShaderCoreControlCreateInfoARM.shaderCoreCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDeviceQueueShaderCoreControlCreateInfoARM.shaderCoreCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDeviceQueueShaderCoreControlCreateInfoARM) == 24, "VkDeviceQueueShaderCoreControlCreateInfoARM has size % instead of 24", size_of(VkDeviceQueueShaderCoreControlCreateInfoARM)); } { info := type_info(VkPhysicalDeviceSchedulingControlsFeaturesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSchedulingControlsFeaturesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSchedulingControlsFeaturesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSchedulingControlsFeaturesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSchedulingControlsFeaturesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "schedulingControls"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSchedulingControlsFeaturesARM.schedulingControls has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSchedulingControlsFeaturesARM.schedulingControls has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSchedulingControlsFeaturesARM) == 24, "VkPhysicalDeviceSchedulingControlsFeaturesARM has size % instead of 24", size_of(VkPhysicalDeviceSchedulingControlsFeaturesARM)); } { info := type_info(VkPhysicalDeviceSchedulingControlsPropertiesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSchedulingControlsPropertiesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSchedulingControlsPropertiesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSchedulingControlsPropertiesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSchedulingControlsPropertiesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "schedulingControlsFlags"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSchedulingControlsPropertiesARM.schedulingControlsFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSchedulingControlsPropertiesARM.schedulingControlsFlags has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSchedulingControlsPropertiesARM) == 24, "VkPhysicalDeviceSchedulingControlsPropertiesARM has size % instead of 24", size_of(VkPhysicalDeviceSchedulingControlsPropertiesARM)); } { info := type_info(VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageSlicedViewOf3D"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.imageSlicedViewOf3D has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT.imageSlicedViewOf3D has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT) == 24, "VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT)); } { info := type_info(VkImageViewSlicedCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewSlicedCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewSlicedCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewSlicedCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewSlicedCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "sliceOffset"; assert(it.offset_in_bytes == 16, "VkImageViewSlicedCreateInfoEXT.sliceOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewSlicedCreateInfoEXT.sliceOffset has unexpected size % instead of 4", it.type.runtime_size); case "sliceCount"; assert(it.offset_in_bytes == 20, "VkImageViewSlicedCreateInfoEXT.sliceCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewSlicedCreateInfoEXT.sliceCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageViewSlicedCreateInfoEXT) == 24, "VkImageViewSlicedCreateInfoEXT has size % instead of 24", size_of(VkImageViewSlicedCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorSetHostMapping"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.descriptorSetHostMapping has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE.descriptorSetHostMapping has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE) == 24, "VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE has size % instead of 24", size_of(VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE)); } { info := type_info(VkDescriptorSetBindingReferenceVALVE); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetBindingReferenceVALVE.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetBindingReferenceVALVE.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetBindingReferenceVALVE.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetBindingReferenceVALVE.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorSetLayout"; assert(it.offset_in_bytes == 16, "VkDescriptorSetBindingReferenceVALVE.descriptorSetLayout has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetBindingReferenceVALVE.descriptorSetLayout has unexpected size % instead of 8", it.type.runtime_size); case "binding"; assert(it.offset_in_bytes == 24, "VkDescriptorSetBindingReferenceVALVE.binding has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetBindingReferenceVALVE.binding has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorSetBindingReferenceVALVE) == 32, "VkDescriptorSetBindingReferenceVALVE has size % instead of 32", size_of(VkDescriptorSetBindingReferenceVALVE)); } { info := type_info(VkDescriptorSetLayoutHostMappingInfoVALVE); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDescriptorSetLayoutHostMappingInfoVALVE.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutHostMappingInfoVALVE.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDescriptorSetLayoutHostMappingInfoVALVE.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutHostMappingInfoVALVE.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorOffset"; assert(it.offset_in_bytes == 16, "VkDescriptorSetLayoutHostMappingInfoVALVE.descriptorOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDescriptorSetLayoutHostMappingInfoVALVE.descriptorOffset has unexpected size % instead of 8", it.type.runtime_size); case "descriptorSize"; assert(it.offset_in_bytes == 24, "VkDescriptorSetLayoutHostMappingInfoVALVE.descriptorSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDescriptorSetLayoutHostMappingInfoVALVE.descriptorSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDescriptorSetLayoutHostMappingInfoVALVE) == 32, "VkDescriptorSetLayoutHostMappingInfoVALVE has size % instead of 32", size_of(VkDescriptorSetLayoutHostMappingInfoVALVE)); } { info := type_info(VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "nonSeamlessCubeMap"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.nonSeamlessCubeMap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT.nonSeamlessCubeMap has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT) == 24, "VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT)); } { info := type_info(VkPhysicalDeviceRenderPassStripedFeaturesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRenderPassStripedFeaturesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRenderPassStripedFeaturesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRenderPassStripedFeaturesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRenderPassStripedFeaturesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "renderPassStriped"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRenderPassStripedFeaturesARM.renderPassStriped has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRenderPassStripedFeaturesARM.renderPassStriped has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRenderPassStripedFeaturesARM) == 24, "VkPhysicalDeviceRenderPassStripedFeaturesARM has size % instead of 24", size_of(VkPhysicalDeviceRenderPassStripedFeaturesARM)); } { info := type_info(VkPhysicalDeviceRenderPassStripedPropertiesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRenderPassStripedPropertiesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRenderPassStripedPropertiesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRenderPassStripedPropertiesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRenderPassStripedPropertiesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "renderPassStripeGranularity"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRenderPassStripedPropertiesARM.renderPassStripeGranularity has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRenderPassStripedPropertiesARM.renderPassStripeGranularity has unexpected size % instead of 8", it.type.runtime_size); case "maxRenderPassStripes"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRenderPassStripedPropertiesARM.maxRenderPassStripes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRenderPassStripedPropertiesARM.maxRenderPassStripes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRenderPassStripedPropertiesARM) == 32, "VkPhysicalDeviceRenderPassStripedPropertiesARM has size % instead of 32", size_of(VkPhysicalDeviceRenderPassStripedPropertiesARM)); } { info := type_info(VkRenderPassStripeInfoARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassStripeInfoARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassStripeInfoARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassStripeInfoARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassStripeInfoARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stripeArea"; assert(it.offset_in_bytes == 16, "VkRenderPassStripeInfoARM.stripeArea has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkRenderPassStripeInfoARM.stripeArea has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkRenderPassStripeInfoARM) == 32, "VkRenderPassStripeInfoARM has size % instead of 32", size_of(VkRenderPassStripeInfoARM)); } { info := type_info(VkRenderPassStripeBeginInfoARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassStripeBeginInfoARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassStripeBeginInfoARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassStripeBeginInfoARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassStripeBeginInfoARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stripeInfoCount"; assert(it.offset_in_bytes == 16, "VkRenderPassStripeBeginInfoARM.stripeInfoCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassStripeBeginInfoARM.stripeInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pStripeInfos"; assert(it.offset_in_bytes == 24, "VkRenderPassStripeBeginInfoARM.pStripeInfos has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassStripeBeginInfoARM.pStripeInfos has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassStripeBeginInfoARM) == 32, "VkRenderPassStripeBeginInfoARM has size % instead of 32", size_of(VkRenderPassStripeBeginInfoARM)); } { info := type_info(VkRenderPassStripeSubmitInfoARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassStripeSubmitInfoARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassStripeSubmitInfoARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassStripeSubmitInfoARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassStripeSubmitInfoARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stripeSemaphoreInfoCount"; assert(it.offset_in_bytes == 16, "VkRenderPassStripeSubmitInfoARM.stripeSemaphoreInfoCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassStripeSubmitInfoARM.stripeSemaphoreInfoCount has unexpected size % instead of 4", it.type.runtime_size); case "pStripeSemaphoreInfos"; assert(it.offset_in_bytes == 24, "VkRenderPassStripeSubmitInfoARM.pStripeSemaphoreInfos has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassStripeSubmitInfoARM.pStripeSemaphoreInfos has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassStripeSubmitInfoARM) == 32, "VkRenderPassStripeSubmitInfoARM has size % instead of 32", size_of(VkRenderPassStripeSubmitInfoARM)); } { info := type_info(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityMapOffset"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.fragmentDensityMapOffset has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT.fragmentDensityMapOffset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT) == 24, "VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT)); } { info := type_info(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityOffsetGranularity"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.fragmentDensityOffsetGranularity has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT.fragmentDensityOffsetGranularity has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT) == 24, "VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT)); } { info := type_info(VkRenderPassFragmentDensityMapOffsetEndInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "fragmentDensityOffsetCount"; assert(it.offset_in_bytes == 16, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.fragmentDensityOffsetCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.fragmentDensityOffsetCount has unexpected size % instead of 4", it.type.runtime_size); case "pFragmentDensityOffsets"; assert(it.offset_in_bytes == 24, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.pFragmentDensityOffsets has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT.pFragmentDensityOffsets has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassFragmentDensityMapOffsetEndInfoEXT) == 32, "VkRenderPassFragmentDensityMapOffsetEndInfoEXT has size % instead of 32", size_of(VkRenderPassFragmentDensityMapOffsetEndInfoEXT)); } { info := type_info(VkCopyMemoryIndirectCommandNV); for info.members { if it.name == { case "srcAddress"; assert(it.offset_in_bytes == 0, "VkCopyMemoryIndirectCommandNV.srcAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryIndirectCommandNV.srcAddress has unexpected size % instead of 8", it.type.runtime_size); case "dstAddress"; assert(it.offset_in_bytes == 8, "VkCopyMemoryIndirectCommandNV.dstAddress has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryIndirectCommandNV.dstAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkCopyMemoryIndirectCommandNV.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryIndirectCommandNV.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkCopyMemoryIndirectCommandNV) == 24, "VkCopyMemoryIndirectCommandNV has size % instead of 24", size_of(VkCopyMemoryIndirectCommandNV)); } { info := type_info(VkCopyMemoryToImageIndirectCommandNV); for info.members { if it.name == { case "srcAddress"; assert(it.offset_in_bytes == 0, "VkCopyMemoryToImageIndirectCommandNV.srcAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToImageIndirectCommandNV.srcAddress has unexpected size % instead of 8", it.type.runtime_size); case "bufferRowLength"; assert(it.offset_in_bytes == 8, "VkCopyMemoryToImageIndirectCommandNV.bufferRowLength has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageIndirectCommandNV.bufferRowLength has unexpected size % instead of 4", it.type.runtime_size); case "bufferImageHeight"; assert(it.offset_in_bytes == 12, "VkCopyMemoryToImageIndirectCommandNV.bufferImageHeight has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToImageIndirectCommandNV.bufferImageHeight has unexpected size % instead of 4", it.type.runtime_size); case "imageSubresource"; assert(it.offset_in_bytes == 16, "VkCopyMemoryToImageIndirectCommandNV.imageSubresource has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkCopyMemoryToImageIndirectCommandNV.imageSubresource has unexpected size % instead of 16", it.type.runtime_size); case "imageOffset"; assert(it.offset_in_bytes == 32, "VkCopyMemoryToImageIndirectCommandNV.imageOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkCopyMemoryToImageIndirectCommandNV.imageOffset has unexpected size % instead of 12", it.type.runtime_size); case "imageExtent"; assert(it.offset_in_bytes == 44, "VkCopyMemoryToImageIndirectCommandNV.imageExtent has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkCopyMemoryToImageIndirectCommandNV.imageExtent has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkCopyMemoryToImageIndirectCommandNV) == 56, "VkCopyMemoryToImageIndirectCommandNV has size % instead of 56", size_of(VkCopyMemoryToImageIndirectCommandNV)); } { info := type_info(VkPhysicalDeviceCopyMemoryIndirectFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "indirectCopy"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.indirectCopy has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV.indirectCopy has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCopyMemoryIndirectFeaturesNV) == 24, "VkPhysicalDeviceCopyMemoryIndirectFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCopyMemoryIndirectFeaturesNV)); } { info := type_info(VkPhysicalDeviceCopyMemoryIndirectPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportedQueues"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.supportedQueues has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV.supportedQueues has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCopyMemoryIndirectPropertiesNV) == 24, "VkPhysicalDeviceCopyMemoryIndirectPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceCopyMemoryIndirectPropertiesNV)); } { info := type_info(VkDecompressMemoryRegionNV); for info.members { if it.name == { case "srcAddress"; assert(it.offset_in_bytes == 0, "VkDecompressMemoryRegionNV.srcAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDecompressMemoryRegionNV.srcAddress has unexpected size % instead of 8", it.type.runtime_size); case "dstAddress"; assert(it.offset_in_bytes == 8, "VkDecompressMemoryRegionNV.dstAddress has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDecompressMemoryRegionNV.dstAddress has unexpected size % instead of 8", it.type.runtime_size); case "compressedSize"; assert(it.offset_in_bytes == 16, "VkDecompressMemoryRegionNV.compressedSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDecompressMemoryRegionNV.compressedSize has unexpected size % instead of 8", it.type.runtime_size); case "decompressedSize"; assert(it.offset_in_bytes == 24, "VkDecompressMemoryRegionNV.decompressedSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDecompressMemoryRegionNV.decompressedSize has unexpected size % instead of 8", it.type.runtime_size); case "decompressionMethod"; assert(it.offset_in_bytes == 32, "VkDecompressMemoryRegionNV.decompressionMethod has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDecompressMemoryRegionNV.decompressionMethod has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDecompressMemoryRegionNV) == 40, "VkDecompressMemoryRegionNV has size % instead of 40", size_of(VkDecompressMemoryRegionNV)); } { info := type_info(VkPhysicalDeviceMemoryDecompressionFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memoryDecompression"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.memoryDecompression has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryDecompressionFeaturesNV.memoryDecompression has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryDecompressionFeaturesNV) == 24, "VkPhysicalDeviceMemoryDecompressionFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceMemoryDecompressionFeaturesNV)); } { info := type_info(VkPhysicalDeviceMemoryDecompressionPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "decompressionMethods"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.decompressionMethods has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.decompressionMethods has unexpected size % instead of 8", it.type.runtime_size); case "maxDecompressionIndirectCount"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.maxDecompressionIndirectCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMemoryDecompressionPropertiesNV.maxDecompressionIndirectCount has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMemoryDecompressionPropertiesNV) == 32, "VkPhysicalDeviceMemoryDecompressionPropertiesNV has size % instead of 32", size_of(VkPhysicalDeviceMemoryDecompressionPropertiesNV)); } { info := type_info(VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceGeneratedCompute"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedCompute has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedCompute has unexpected size % instead of 4", it.type.runtime_size); case "deviceGeneratedComputePipelines"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedComputePipelines has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedComputePipelines has unexpected size % instead of 4", it.type.runtime_size); case "deviceGeneratedComputeCaptureReplay"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedComputeCaptureReplay has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV.deviceGeneratedComputeCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV) == 32, "VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV has size % instead of 32", size_of(VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV)); } { info := type_info(VkComputePipelineIndirectBufferInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkComputePipelineIndirectBufferInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkComputePipelineIndirectBufferInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkComputePipelineIndirectBufferInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineIndirectBufferInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceAddress"; assert(it.offset_in_bytes == 16, "VkComputePipelineIndirectBufferInfoNV.deviceAddress has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineIndirectBufferInfoNV.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 24, "VkComputePipelineIndirectBufferInfoNV.size has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineIndirectBufferInfoNV.size has unexpected size % instead of 8", it.type.runtime_size); case "pipelineDeviceAddressCaptureReplay"; assert(it.offset_in_bytes == 32, "VkComputePipelineIndirectBufferInfoNV.pipelineDeviceAddressCaptureReplay has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkComputePipelineIndirectBufferInfoNV.pipelineDeviceAddressCaptureReplay has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkComputePipelineIndirectBufferInfoNV) == 40, "VkComputePipelineIndirectBufferInfoNV has size % instead of 40", size_of(VkComputePipelineIndirectBufferInfoNV)); } { info := type_info(VkPipelineIndirectDeviceAddressInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineIndirectDeviceAddressInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineIndirectDeviceAddressInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineIndirectDeviceAddressInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineIndirectDeviceAddressInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineBindPoint"; assert(it.offset_in_bytes == 16, "VkPipelineIndirectDeviceAddressInfoNV.pipelineBindPoint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineIndirectDeviceAddressInfoNV.pipelineBindPoint has unexpected size % instead of 4", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 24, "VkPipelineIndirectDeviceAddressInfoNV.pipeline has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineIndirectDeviceAddressInfoNV.pipeline has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineIndirectDeviceAddressInfoNV) == 32, "VkPipelineIndirectDeviceAddressInfoNV has size % instead of 32", size_of(VkPipelineIndirectDeviceAddressInfoNV)); } { info := type_info(VkBindPipelineIndirectCommandNV); for info.members { if it.name == { case "pipelineAddress"; assert(it.offset_in_bytes == 0, "VkBindPipelineIndirectCommandNV.pipelineAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindPipelineIndirectCommandNV.pipelineAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBindPipelineIndirectCommandNV) == 8, "VkBindPipelineIndirectCommandNV has size % instead of 8", size_of(VkBindPipelineIndirectCommandNV)); } { info := type_info(VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "spheres"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.spheres has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.spheres has unexpected size % instead of 4", it.type.runtime_size); case "linearSweptSpheres"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.linearSweptSpheres has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV.linearSweptSpheres has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV) == 24, "VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV)); } { info := type_info(VkAccelerationStructureGeometryLinearSweptSpheresDataNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexFormat"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexFormat has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexFormat has unexpected size % instead of 4", it.type.runtime_size); case "vertexData"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexData has unexpected size % instead of 8", it.type.runtime_size); case "vertexStride"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.vertexStride has unexpected size % instead of 8", it.type.runtime_size); case "radiusFormat"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusFormat has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusFormat has unexpected size % instead of 4", it.type.runtime_size); case "radiusData"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusData has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusData has unexpected size % instead of 8", it.type.runtime_size); case "radiusStride"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusStride has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.radiusStride has unexpected size % instead of 8", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 64, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexType has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexType has unexpected size % instead of 4", it.type.runtime_size); case "indexData"; assert(it.offset_in_bytes == 72, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexData has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexData has unexpected size % instead of 8", it.type.runtime_size); case "indexStride"; assert(it.offset_in_bytes == 80, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexStride has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexStride has unexpected size % instead of 8", it.type.runtime_size); case "indexingMode"; assert(it.offset_in_bytes == 88, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexingMode has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.indexingMode has unexpected size % instead of 4", it.type.runtime_size); case "endCapsMode"; assert(it.offset_in_bytes == 92, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.endCapsMode has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV.endCapsMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryLinearSweptSpheresDataNV) == 96, "VkAccelerationStructureGeometryLinearSweptSpheresDataNV has size % instead of 96", size_of(VkAccelerationStructureGeometryLinearSweptSpheresDataNV)); } { info := type_info(VkAccelerationStructureGeometrySpheresDataNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometrySpheresDataNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometrySpheresDataNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometrySpheresDataNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexFormat"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometrySpheresDataNV.vertexFormat has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometrySpheresDataNV.vertexFormat has unexpected size % instead of 4", it.type.runtime_size); case "vertexData"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometrySpheresDataNV.vertexData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.vertexData has unexpected size % instead of 8", it.type.runtime_size); case "vertexStride"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureGeometrySpheresDataNV.vertexStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.vertexStride has unexpected size % instead of 8", it.type.runtime_size); case "radiusFormat"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureGeometrySpheresDataNV.radiusFormat has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometrySpheresDataNV.radiusFormat has unexpected size % instead of 4", it.type.runtime_size); case "radiusData"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureGeometrySpheresDataNV.radiusData has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.radiusData has unexpected size % instead of 8", it.type.runtime_size); case "radiusStride"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureGeometrySpheresDataNV.radiusStride has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.radiusStride has unexpected size % instead of 8", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 64, "VkAccelerationStructureGeometrySpheresDataNV.indexType has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometrySpheresDataNV.indexType has unexpected size % instead of 4", it.type.runtime_size); case "indexData"; assert(it.offset_in_bytes == 72, "VkAccelerationStructureGeometrySpheresDataNV.indexData has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.indexData has unexpected size % instead of 8", it.type.runtime_size); case "indexStride"; assert(it.offset_in_bytes == 80, "VkAccelerationStructureGeometrySpheresDataNV.indexStride has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometrySpheresDataNV.indexStride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometrySpheresDataNV) == 88, "VkAccelerationStructureGeometrySpheresDataNV has size % instead of 88", size_of(VkAccelerationStructureGeometrySpheresDataNV)); } { info := type_info(VkPhysicalDeviceLinearColorAttachmentFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "linearColorAttachment"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.linearColorAttachment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV.linearColorAttachment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLinearColorAttachmentFeaturesNV) == 24, "VkPhysicalDeviceLinearColorAttachmentFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceLinearColorAttachmentFeaturesNV)); } { info := type_info(VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageCompressionControlSwapchain"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.imageCompressionControlSwapchain has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT.imageCompressionControlSwapchain has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT) == 24, "VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT)); } { info := type_info(VkImageViewSampleWeightCreateInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageViewSampleWeightCreateInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewSampleWeightCreateInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageViewSampleWeightCreateInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewSampleWeightCreateInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "filterCenter"; assert(it.offset_in_bytes == 16, "VkImageViewSampleWeightCreateInfoQCOM.filterCenter has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewSampleWeightCreateInfoQCOM.filterCenter has unexpected size % instead of 8", it.type.runtime_size); case "filterSize"; assert(it.offset_in_bytes == 24, "VkImageViewSampleWeightCreateInfoQCOM.filterSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageViewSampleWeightCreateInfoQCOM.filterSize has unexpected size % instead of 8", it.type.runtime_size); case "numPhases"; assert(it.offset_in_bytes == 32, "VkImageViewSampleWeightCreateInfoQCOM.numPhases has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageViewSampleWeightCreateInfoQCOM.numPhases has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageViewSampleWeightCreateInfoQCOM) == 40, "VkImageViewSampleWeightCreateInfoQCOM has size % instead of 40", size_of(VkImageViewSampleWeightCreateInfoQCOM)); } { info := type_info(VkPhysicalDeviceImageProcessingFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageProcessingFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageProcessingFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessingFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "textureSampleWeighted"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureSampleWeighted has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureSampleWeighted has unexpected size % instead of 4", it.type.runtime_size); case "textureBoxFilter"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureBoxFilter has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureBoxFilter has unexpected size % instead of 4", it.type.runtime_size); case "textureBlockMatch"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureBlockMatch has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingFeaturesQCOM.textureBlockMatch has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageProcessingFeaturesQCOM) == 32, "VkPhysicalDeviceImageProcessingFeaturesQCOM has size % instead of 32", size_of(VkPhysicalDeviceImageProcessingFeaturesQCOM)); } { info := type_info(VkPhysicalDeviceImageProcessingPropertiesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageProcessingPropertiesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingPropertiesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageProcessingPropertiesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessingPropertiesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxWeightFilterPhases"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxWeightFilterPhases has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxWeightFilterPhases has unexpected size % instead of 4", it.type.runtime_size); case "maxWeightFilterDimension"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxWeightFilterDimension has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxWeightFilterDimension has unexpected size % instead of 8", it.type.runtime_size); case "maxBlockMatchRegion"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxBlockMatchRegion has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxBlockMatchRegion has unexpected size % instead of 8", it.type.runtime_size); case "maxBoxFilterBlockSize"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxBoxFilterBlockSize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessingPropertiesQCOM.maxBoxFilterBlockSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageProcessingPropertiesQCOM) == 48, "VkPhysicalDeviceImageProcessingPropertiesQCOM has size % instead of 48", size_of(VkPhysicalDeviceImageProcessingPropertiesQCOM)); } { info := type_info(VkPhysicalDeviceNestedCommandBufferFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "nestedCommandBuffer"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBuffer has unexpected size % instead of 4", it.type.runtime_size); case "nestedCommandBufferRendering"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBufferRendering has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBufferRendering has unexpected size % instead of 4", it.type.runtime_size); case "nestedCommandBufferSimultaneousUse"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBufferSimultaneousUse has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT.nestedCommandBufferSimultaneousUse has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceNestedCommandBufferFeaturesEXT) == 32, "VkPhysicalDeviceNestedCommandBufferFeaturesEXT has size % instead of 32", size_of(VkPhysicalDeviceNestedCommandBufferFeaturesEXT)); } { info := type_info(VkPhysicalDeviceNestedCommandBufferPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxCommandBufferNestingLevel"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.maxCommandBufferNestingLevel has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT.maxCommandBufferNestingLevel has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceNestedCommandBufferPropertiesEXT) == 24, "VkPhysicalDeviceNestedCommandBufferPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceNestedCommandBufferPropertiesEXT)); } { info := type_info(VkExternalMemoryAcquireUnmodifiedEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalMemoryAcquireUnmodifiedEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryAcquireUnmodifiedEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalMemoryAcquireUnmodifiedEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalMemoryAcquireUnmodifiedEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "acquireUnmodifiedMemory"; assert(it.offset_in_bytes == 16, "VkExternalMemoryAcquireUnmodifiedEXT.acquireUnmodifiedMemory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalMemoryAcquireUnmodifiedEXT.acquireUnmodifiedMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalMemoryAcquireUnmodifiedEXT) == 24, "VkExternalMemoryAcquireUnmodifiedEXT has size % instead of 24", size_of(VkExternalMemoryAcquireUnmodifiedEXT)); } { info := type_info(VkPhysicalDeviceExtendedDynamicState3FeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "extendedDynamicState3TessellationDomainOrigin"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3TessellationDomainOrigin has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3TessellationDomainOrigin has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3DepthClampEnable"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClampEnable has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClampEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3PolygonMode"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3PolygonMode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3PolygonMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3RasterizationSamples"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RasterizationSamples has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RasterizationSamples has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3SampleMask"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3SampleMask has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3SampleMask has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3AlphaToCoverageEnable"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3AlphaToCoverageEnable has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3AlphaToCoverageEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3AlphaToOneEnable"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3AlphaToOneEnable has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3AlphaToOneEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3LogicOpEnable"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LogicOpEnable has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LogicOpEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ColorBlendEnable"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendEnable has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ColorBlendEquation"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendEquation has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendEquation has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ColorWriteMask"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorWriteMask has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorWriteMask has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3RasterizationStream"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RasterizationStream has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RasterizationStream has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ConservativeRasterizationMode"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ConservativeRasterizationMode has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ConservativeRasterizationMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ExtraPrimitiveOverestimationSize"; assert(it.offset_in_bytes == 68, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ExtraPrimitiveOverestimationSize has unexpected offset % instead of 68", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ExtraPrimitiveOverestimationSize has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3DepthClipEnable"; assert(it.offset_in_bytes == 72, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClipEnable has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClipEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3SampleLocationsEnable"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3SampleLocationsEnable has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3SampleLocationsEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ColorBlendAdvanced"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendAdvanced has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ColorBlendAdvanced has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ProvokingVertexMode"; assert(it.offset_in_bytes == 84, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ProvokingVertexMode has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ProvokingVertexMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3LineRasterizationMode"; assert(it.offset_in_bytes == 88, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LineRasterizationMode has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LineRasterizationMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3LineStippleEnable"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LineStippleEnable has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3LineStippleEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3DepthClipNegativeOneToOne"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClipNegativeOneToOne has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3DepthClipNegativeOneToOne has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ViewportWScalingEnable"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ViewportWScalingEnable has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ViewportWScalingEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ViewportSwizzle"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ViewportSwizzle has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ViewportSwizzle has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageToColorEnable"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageToColorEnable has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageToColorEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageToColorLocation"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageToColorLocation has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageToColorLocation has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageModulationMode"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationMode has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageModulationTableEnable"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationTableEnable has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationTableEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageModulationTable"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationTable has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageModulationTable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3CoverageReductionMode"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageReductionMode has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3CoverageReductionMode has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3RepresentativeFragmentTestEnable"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RepresentativeFragmentTestEnable has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3RepresentativeFragmentTestEnable has unexpected size % instead of 4", it.type.runtime_size); case "extendedDynamicState3ShadingRateImageEnable"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ShadingRateImageEnable has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT.extendedDynamicState3ShadingRateImageEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedDynamicState3FeaturesEXT) == 144, "VkPhysicalDeviceExtendedDynamicState3FeaturesEXT has size % instead of 144", size_of(VkPhysicalDeviceExtendedDynamicState3FeaturesEXT)); } { info := type_info(VkPhysicalDeviceExtendedDynamicState3PropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dynamicPrimitiveTopologyUnrestricted"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.dynamicPrimitiveTopologyUnrestricted has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT.dynamicPrimitiveTopologyUnrestricted has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedDynamicState3PropertiesEXT) == 24, "VkPhysicalDeviceExtendedDynamicState3PropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceExtendedDynamicState3PropertiesEXT)); } { info := type_info(VkColorBlendEquationEXT); for info.members { if it.name == { case "srcColorBlendFactor"; assert(it.offset_in_bytes == 0, "VkColorBlendEquationEXT.srcColorBlendFactor has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.srcColorBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "dstColorBlendFactor"; assert(it.offset_in_bytes == 4, "VkColorBlendEquationEXT.dstColorBlendFactor has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.dstColorBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "colorBlendOp"; assert(it.offset_in_bytes == 8, "VkColorBlendEquationEXT.colorBlendOp has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.colorBlendOp has unexpected size % instead of 4", it.type.runtime_size); case "srcAlphaBlendFactor"; assert(it.offset_in_bytes == 12, "VkColorBlendEquationEXT.srcAlphaBlendFactor has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.srcAlphaBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "dstAlphaBlendFactor"; assert(it.offset_in_bytes == 16, "VkColorBlendEquationEXT.dstAlphaBlendFactor has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.dstAlphaBlendFactor has unexpected size % instead of 4", it.type.runtime_size); case "alphaBlendOp"; assert(it.offset_in_bytes == 20, "VkColorBlendEquationEXT.alphaBlendOp has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendEquationEXT.alphaBlendOp has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkColorBlendEquationEXT) == 24, "VkColorBlendEquationEXT has size % instead of 24", size_of(VkColorBlendEquationEXT)); } { info := type_info(VkColorBlendAdvancedEXT); for info.members { if it.name == { case "advancedBlendOp"; assert(it.offset_in_bytes == 0, "VkColorBlendAdvancedEXT.advancedBlendOp has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendAdvancedEXT.advancedBlendOp has unexpected size % instead of 4", it.type.runtime_size); case "srcPremultiplied"; assert(it.offset_in_bytes == 4, "VkColorBlendAdvancedEXT.srcPremultiplied has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendAdvancedEXT.srcPremultiplied has unexpected size % instead of 4", it.type.runtime_size); case "dstPremultiplied"; assert(it.offset_in_bytes == 8, "VkColorBlendAdvancedEXT.dstPremultiplied has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendAdvancedEXT.dstPremultiplied has unexpected size % instead of 4", it.type.runtime_size); case "blendOverlap"; assert(it.offset_in_bytes == 12, "VkColorBlendAdvancedEXT.blendOverlap has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendAdvancedEXT.blendOverlap has unexpected size % instead of 4", it.type.runtime_size); case "clampResults"; assert(it.offset_in_bytes == 16, "VkColorBlendAdvancedEXT.clampResults has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkColorBlendAdvancedEXT.clampResults has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkColorBlendAdvancedEXT) == 20, "VkColorBlendAdvancedEXT has size % instead of 20", size_of(VkColorBlendAdvancedEXT)); } { info := type_info(VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "subpassMergeFeedback"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.subpassMergeFeedback has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT.subpassMergeFeedback has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT) == 24, "VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT)); } { info := type_info(VkRenderPassCreationControlEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassCreationControlEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreationControlEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassCreationControlEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreationControlEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "disallowMerging"; assert(it.offset_in_bytes == 16, "VkRenderPassCreationControlEXT.disallowMerging has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreationControlEXT.disallowMerging has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderPassCreationControlEXT) == 24, "VkRenderPassCreationControlEXT has size % instead of 24", size_of(VkRenderPassCreationControlEXT)); } { info := type_info(VkRenderPassCreationFeedbackInfoEXT); for info.members { if it.name == { case "postMergeSubpassCount"; assert(it.offset_in_bytes == 0, "VkRenderPassCreationFeedbackInfoEXT.postMergeSubpassCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreationFeedbackInfoEXT.postMergeSubpassCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderPassCreationFeedbackInfoEXT) == 4, "VkRenderPassCreationFeedbackInfoEXT has size % instead of 4", size_of(VkRenderPassCreationFeedbackInfoEXT)); } { info := type_info(VkRenderPassCreationFeedbackCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassCreationFeedbackCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassCreationFeedbackCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassCreationFeedbackCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreationFeedbackCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pRenderPassFeedback"; assert(it.offset_in_bytes == 16, "VkRenderPassCreationFeedbackCreateInfoEXT.pRenderPassFeedback has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassCreationFeedbackCreateInfoEXT.pRenderPassFeedback has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassCreationFeedbackCreateInfoEXT) == 24, "VkRenderPassCreationFeedbackCreateInfoEXT has size % instead of 24", size_of(VkRenderPassCreationFeedbackCreateInfoEXT)); } { info := type_info(VkRenderPassSubpassFeedbackInfoEXT); for info.members { if it.name == { case "subpassMergeStatus"; assert(it.offset_in_bytes == 0, "VkRenderPassSubpassFeedbackInfoEXT.subpassMergeStatus has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSubpassFeedbackInfoEXT.subpassMergeStatus has unexpected size % instead of 4", it.type.runtime_size); case "description"; assert(it.offset_in_bytes == 4, "VkRenderPassSubpassFeedbackInfoEXT.description has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 256, "VkRenderPassSubpassFeedbackInfoEXT.description has unexpected size % instead of 256", it.type.runtime_size); case "postMergeIndex"; assert(it.offset_in_bytes == 260, "VkRenderPassSubpassFeedbackInfoEXT.postMergeIndex has unexpected offset % instead of 260", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSubpassFeedbackInfoEXT.postMergeIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRenderPassSubpassFeedbackInfoEXT) == 264, "VkRenderPassSubpassFeedbackInfoEXT has size % instead of 264", size_of(VkRenderPassSubpassFeedbackInfoEXT)); } { info := type_info(VkRenderPassSubpassFeedbackCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderPassSubpassFeedbackCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderPassSubpassFeedbackCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderPassSubpassFeedbackCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassSubpassFeedbackCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pSubpassFeedback"; assert(it.offset_in_bytes == 16, "VkRenderPassSubpassFeedbackCreateInfoEXT.pSubpassFeedback has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderPassSubpassFeedbackCreateInfoEXT.pSubpassFeedback has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderPassSubpassFeedbackCreateInfoEXT) == 24, "VkRenderPassSubpassFeedbackCreateInfoEXT has size % instead of 24", size_of(VkRenderPassSubpassFeedbackCreateInfoEXT)); } { info := type_info(VkDirectDriverLoadingInfoLUNARG); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDirectDriverLoadingInfoLUNARG.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDirectDriverLoadingInfoLUNARG.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDirectDriverLoadingInfoLUNARG.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDirectDriverLoadingInfoLUNARG.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkDirectDriverLoadingInfoLUNARG.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDirectDriverLoadingInfoLUNARG.flags has unexpected size % instead of 4", it.type.runtime_size); case "pfnGetInstanceProcAddr"; assert(it.offset_in_bytes == 24, "VkDirectDriverLoadingInfoLUNARG.pfnGetInstanceProcAddr has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDirectDriverLoadingInfoLUNARG.pfnGetInstanceProcAddr has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDirectDriverLoadingInfoLUNARG) == 32, "VkDirectDriverLoadingInfoLUNARG has size % instead of 32", size_of(VkDirectDriverLoadingInfoLUNARG)); } { info := type_info(VkDirectDriverLoadingListLUNARG); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDirectDriverLoadingListLUNARG.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDirectDriverLoadingListLUNARG.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDirectDriverLoadingListLUNARG.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDirectDriverLoadingListLUNARG.pNext has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 16, "VkDirectDriverLoadingListLUNARG.mode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDirectDriverLoadingListLUNARG.mode has unexpected size % instead of 4", it.type.runtime_size); case "driverCount"; assert(it.offset_in_bytes == 20, "VkDirectDriverLoadingListLUNARG.driverCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDirectDriverLoadingListLUNARG.driverCount has unexpected size % instead of 4", it.type.runtime_size); case "pDrivers"; assert(it.offset_in_bytes == 24, "VkDirectDriverLoadingListLUNARG.pDrivers has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDirectDriverLoadingListLUNARG.pDrivers has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkDirectDriverLoadingListLUNARG) == 32, "VkDirectDriverLoadingListLUNARG has size % instead of 32", size_of(VkDirectDriverLoadingListLUNARG)); } { info := type_info(VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderModuleIdentifier"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.shaderModuleIdentifier has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT.shaderModuleIdentifier has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT) == 24, "VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT)); } { info := type_info(VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderModuleIdentifierAlgorithmUUID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.shaderModuleIdentifierAlgorithmUUID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT.shaderModuleIdentifierAlgorithmUUID has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT) == 32, "VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT has size % instead of 32", size_of(VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT)); } { info := type_info(VkPipelineShaderStageModuleIdentifierCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "identifierSize"; assert(it.offset_in_bytes == 16, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.identifierSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.identifierSize has unexpected size % instead of 4", it.type.runtime_size); case "pIdentifier"; assert(it.offset_in_bytes == 24, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.pIdentifier has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT.pIdentifier has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineShaderStageModuleIdentifierCreateInfoEXT) == 32, "VkPipelineShaderStageModuleIdentifierCreateInfoEXT has size % instead of 32", size_of(VkPipelineShaderStageModuleIdentifierCreateInfoEXT)); } { info := type_info(VkShaderModuleIdentifierEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkShaderModuleIdentifierEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderModuleIdentifierEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkShaderModuleIdentifierEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderModuleIdentifierEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "identifierSize"; assert(it.offset_in_bytes == 16, "VkShaderModuleIdentifierEXT.identifierSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderModuleIdentifierEXT.identifierSize has unexpected size % instead of 4", it.type.runtime_size); case "identifier"; assert(it.offset_in_bytes == 20, "VkShaderModuleIdentifierEXT.identifier has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkShaderModuleIdentifierEXT.identifier has unexpected size % instead of 32", it.type.runtime_size); } } assert(size_of(VkShaderModuleIdentifierEXT) == 56, "VkShaderModuleIdentifierEXT has size % instead of 56", size_of(VkShaderModuleIdentifierEXT)); } { info := type_info(VkPhysicalDeviceOpticalFlowFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceOpticalFlowFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceOpticalFlowFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceOpticalFlowFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "opticalFlow"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceOpticalFlowFeaturesNV.opticalFlow has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowFeaturesNV.opticalFlow has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceOpticalFlowFeaturesNV) == 24, "VkPhysicalDeviceOpticalFlowFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceOpticalFlowFeaturesNV)); } { info := type_info(VkPhysicalDeviceOpticalFlowPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceOpticalFlowPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceOpticalFlowPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceOpticalFlowPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportedOutputGridSizes"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceOpticalFlowPropertiesNV.supportedOutputGridSizes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.supportedOutputGridSizes has unexpected size % instead of 4", it.type.runtime_size); case "supportedHintGridSizes"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceOpticalFlowPropertiesNV.supportedHintGridSizes has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.supportedHintGridSizes has unexpected size % instead of 4", it.type.runtime_size); case "hintSupported"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceOpticalFlowPropertiesNV.hintSupported has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.hintSupported has unexpected size % instead of 4", it.type.runtime_size); case "costSupported"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceOpticalFlowPropertiesNV.costSupported has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.costSupported has unexpected size % instead of 4", it.type.runtime_size); case "bidirectionalFlowSupported"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceOpticalFlowPropertiesNV.bidirectionalFlowSupported has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.bidirectionalFlowSupported has unexpected size % instead of 4", it.type.runtime_size); case "globalFlowSupported"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceOpticalFlowPropertiesNV.globalFlowSupported has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.globalFlowSupported has unexpected size % instead of 4", it.type.runtime_size); case "minWidth"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceOpticalFlowPropertiesNV.minWidth has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.minWidth has unexpected size % instead of 4", it.type.runtime_size); case "minHeight"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceOpticalFlowPropertiesNV.minHeight has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.minHeight has unexpected size % instead of 4", it.type.runtime_size); case "maxWidth"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxWidth has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxWidth has unexpected size % instead of 4", it.type.runtime_size); case "maxHeight"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxHeight has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxHeight has unexpected size % instead of 4", it.type.runtime_size); case "maxNumRegionsOfInterest"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxNumRegionsOfInterest has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceOpticalFlowPropertiesNV.maxNumRegionsOfInterest has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceOpticalFlowPropertiesNV) == 64, "VkPhysicalDeviceOpticalFlowPropertiesNV has size % instead of 64", size_of(VkPhysicalDeviceOpticalFlowPropertiesNV)); } { info := type_info(VkOpticalFlowImageFormatInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpticalFlowImageFormatInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowImageFormatInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpticalFlowImageFormatInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowImageFormatInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "usage"; assert(it.offset_in_bytes == 16, "VkOpticalFlowImageFormatInfoNV.usage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowImageFormatInfoNV.usage has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOpticalFlowImageFormatInfoNV) == 24, "VkOpticalFlowImageFormatInfoNV has size % instead of 24", size_of(VkOpticalFlowImageFormatInfoNV)); } { info := type_info(VkOpticalFlowImageFormatPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpticalFlowImageFormatPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowImageFormatPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpticalFlowImageFormatPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowImageFormatPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "format"; assert(it.offset_in_bytes == 16, "VkOpticalFlowImageFormatPropertiesNV.format has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowImageFormatPropertiesNV.format has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOpticalFlowImageFormatPropertiesNV) == 24, "VkOpticalFlowImageFormatPropertiesNV has size % instead of 24", size_of(VkOpticalFlowImageFormatPropertiesNV)); } { info := type_info(VkOpticalFlowSessionCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpticalFlowSessionCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpticalFlowSessionCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowSessionCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "width"; assert(it.offset_in_bytes == 16, "VkOpticalFlowSessionCreateInfoNV.width has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 20, "VkOpticalFlowSessionCreateInfoNV.height has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.height has unexpected size % instead of 4", it.type.runtime_size); case "imageFormat"; assert(it.offset_in_bytes == 24, "VkOpticalFlowSessionCreateInfoNV.imageFormat has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.imageFormat has unexpected size % instead of 4", it.type.runtime_size); case "flowVectorFormat"; assert(it.offset_in_bytes == 28, "VkOpticalFlowSessionCreateInfoNV.flowVectorFormat has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.flowVectorFormat has unexpected size % instead of 4", it.type.runtime_size); case "costFormat"; assert(it.offset_in_bytes == 32, "VkOpticalFlowSessionCreateInfoNV.costFormat has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.costFormat has unexpected size % instead of 4", it.type.runtime_size); case "outputGridSize"; assert(it.offset_in_bytes == 36, "VkOpticalFlowSessionCreateInfoNV.outputGridSize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.outputGridSize has unexpected size % instead of 4", it.type.runtime_size); case "hintGridSize"; assert(it.offset_in_bytes == 40, "VkOpticalFlowSessionCreateInfoNV.hintGridSize has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.hintGridSize has unexpected size % instead of 4", it.type.runtime_size); case "performanceLevel"; assert(it.offset_in_bytes == 44, "VkOpticalFlowSessionCreateInfoNV.performanceLevel has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.performanceLevel has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 48, "VkOpticalFlowSessionCreateInfoNV.flags has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreateInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOpticalFlowSessionCreateInfoNV) == 56, "VkOpticalFlowSessionCreateInfoNV has size % instead of 56", size_of(VkOpticalFlowSessionCreateInfoNV)); } { info := type_info(VkOpticalFlowSessionCreatePrivateDataInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpticalFlowSessionCreatePrivateDataInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreatePrivateDataInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpticalFlowSessionCreatePrivateDataInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowSessionCreatePrivateDataInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "id"; assert(it.offset_in_bytes == 16, "VkOpticalFlowSessionCreatePrivateDataInfoNV.id has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreatePrivateDataInfoNV.id has unexpected size % instead of 4", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 20, "VkOpticalFlowSessionCreatePrivateDataInfoNV.size has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowSessionCreatePrivateDataInfoNV.size has unexpected size % instead of 4", it.type.runtime_size); case "pPrivateData"; assert(it.offset_in_bytes == 24, "VkOpticalFlowSessionCreatePrivateDataInfoNV.pPrivateData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowSessionCreatePrivateDataInfoNV.pPrivateData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkOpticalFlowSessionCreatePrivateDataInfoNV) == 32, "VkOpticalFlowSessionCreatePrivateDataInfoNV has size % instead of 32", size_of(VkOpticalFlowSessionCreatePrivateDataInfoNV)); } { info := type_info(VkOpticalFlowExecuteInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOpticalFlowExecuteInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowExecuteInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOpticalFlowExecuteInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowExecuteInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkOpticalFlowExecuteInfoNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowExecuteInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "regionCount"; assert(it.offset_in_bytes == 20, "VkOpticalFlowExecuteInfoNV.regionCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOpticalFlowExecuteInfoNV.regionCount has unexpected size % instead of 4", it.type.runtime_size); case "pRegions"; assert(it.offset_in_bytes == 24, "VkOpticalFlowExecuteInfoNV.pRegions has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOpticalFlowExecuteInfoNV.pRegions has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkOpticalFlowExecuteInfoNV) == 32, "VkOpticalFlowExecuteInfoNV has size % instead of 32", size_of(VkOpticalFlowExecuteInfoNV)); } { info := type_info(VkPhysicalDeviceLegacyDitheringFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "legacyDithering"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.legacyDithering has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyDitheringFeaturesEXT.legacyDithering has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLegacyDitheringFeaturesEXT) == 24, "VkPhysicalDeviceLegacyDitheringFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceLegacyDitheringFeaturesEXT)); } { info := type_info(VkPhysicalDeviceAntiLagFeaturesAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAntiLagFeaturesAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAntiLagFeaturesAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAntiLagFeaturesAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAntiLagFeaturesAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "antiLag"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAntiLagFeaturesAMD.antiLag has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAntiLagFeaturesAMD.antiLag has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAntiLagFeaturesAMD) == 24, "VkPhysicalDeviceAntiLagFeaturesAMD has size % instead of 24", size_of(VkPhysicalDeviceAntiLagFeaturesAMD)); } { info := type_info(VkAntiLagPresentationInfoAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAntiLagPresentationInfoAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAntiLagPresentationInfoAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAntiLagPresentationInfoAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAntiLagPresentationInfoAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 16, "VkAntiLagPresentationInfoAMD.stage has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAntiLagPresentationInfoAMD.stage has unexpected size % instead of 4", it.type.runtime_size); case "frameIndex"; assert(it.offset_in_bytes == 24, "VkAntiLagPresentationInfoAMD.frameIndex has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAntiLagPresentationInfoAMD.frameIndex has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAntiLagPresentationInfoAMD) == 32, "VkAntiLagPresentationInfoAMD has size % instead of 32", size_of(VkAntiLagPresentationInfoAMD)); } { info := type_info(VkAntiLagDataAMD); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAntiLagDataAMD.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAntiLagDataAMD.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAntiLagDataAMD.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAntiLagDataAMD.pNext has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 16, "VkAntiLagDataAMD.mode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAntiLagDataAMD.mode has unexpected size % instead of 4", it.type.runtime_size); case "maxFPS"; assert(it.offset_in_bytes == 20, "VkAntiLagDataAMD.maxFPS has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAntiLagDataAMD.maxFPS has unexpected size % instead of 4", it.type.runtime_size); case "pPresentationInfo"; assert(it.offset_in_bytes == 24, "VkAntiLagDataAMD.pPresentationInfo has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAntiLagDataAMD.pPresentationInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAntiLagDataAMD) == 32, "VkAntiLagDataAMD has size % instead of 32", size_of(VkAntiLagDataAMD)); } { info := type_info(VkPhysicalDeviceShaderObjectFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderObjectFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderObjectFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderObjectFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderObjectFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderObject"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderObjectFeaturesEXT.shaderObject has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderObjectFeaturesEXT.shaderObject has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderObjectFeaturesEXT) == 24, "VkPhysicalDeviceShaderObjectFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceShaderObjectFeaturesEXT)); } { info := type_info(VkPhysicalDeviceShaderObjectPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderObjectPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderObjectPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderObjectPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderObjectPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderBinaryUUID"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderObjectPropertiesEXT.shaderBinaryUUID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkPhysicalDeviceShaderObjectPropertiesEXT.shaderBinaryUUID has unexpected size % instead of 16", it.type.runtime_size); case "shaderBinaryVersion"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceShaderObjectPropertiesEXT.shaderBinaryVersion has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderObjectPropertiesEXT.shaderBinaryVersion has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderObjectPropertiesEXT) == 40, "VkPhysicalDeviceShaderObjectPropertiesEXT has size % instead of 40", size_of(VkPhysicalDeviceShaderObjectPropertiesEXT)); } { info := type_info(VkShaderCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkShaderCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkShaderCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkShaderCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "stage"; assert(it.offset_in_bytes == 20, "VkShaderCreateInfoEXT.stage has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.stage has unexpected size % instead of 4", it.type.runtime_size); case "nextStage"; assert(it.offset_in_bytes == 24, "VkShaderCreateInfoEXT.nextStage has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.nextStage has unexpected size % instead of 4", it.type.runtime_size); case "codeType"; assert(it.offset_in_bytes == 28, "VkShaderCreateInfoEXT.codeType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.codeType has unexpected size % instead of 4", it.type.runtime_size); case "codeSize"; assert(it.offset_in_bytes == 32, "VkShaderCreateInfoEXT.codeSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.codeSize has unexpected size % instead of 8", it.type.runtime_size); case "pCode"; assert(it.offset_in_bytes == 40, "VkShaderCreateInfoEXT.pCode has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pCode has unexpected size % instead of 8", it.type.runtime_size); case "pName"; assert(it.offset_in_bytes == 48, "VkShaderCreateInfoEXT.pName has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pName has unexpected size % instead of 8", it.type.runtime_size); case "setLayoutCount"; assert(it.offset_in_bytes == 56, "VkShaderCreateInfoEXT.setLayoutCount has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.setLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pSetLayouts"; assert(it.offset_in_bytes == 64, "VkShaderCreateInfoEXT.pSetLayouts has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pSetLayouts has unexpected size % instead of 8", it.type.runtime_size); case "pushConstantRangeCount"; assert(it.offset_in_bytes == 72, "VkShaderCreateInfoEXT.pushConstantRangeCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkShaderCreateInfoEXT.pushConstantRangeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPushConstantRanges"; assert(it.offset_in_bytes == 80, "VkShaderCreateInfoEXT.pPushConstantRanges has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pPushConstantRanges has unexpected size % instead of 8", it.type.runtime_size); case "pSpecializationInfo"; assert(it.offset_in_bytes == 88, "VkShaderCreateInfoEXT.pSpecializationInfo has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkShaderCreateInfoEXT.pSpecializationInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkShaderCreateInfoEXT) == 96, "VkShaderCreateInfoEXT has size % instead of 96", size_of(VkShaderCreateInfoEXT)); } { info := type_info(VkDepthClampRangeEXT); for info.members { if it.name == { case "minDepthClamp"; assert(it.offset_in_bytes == 0, "VkDepthClampRangeEXT.minDepthClamp has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthClampRangeEXT.minDepthClamp has unexpected size % instead of 4", it.type.runtime_size); case "maxDepthClamp"; assert(it.offset_in_bytes == 4, "VkDepthClampRangeEXT.maxDepthClamp has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDepthClampRangeEXT.maxDepthClamp has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDepthClampRangeEXT) == 8, "VkDepthClampRangeEXT has size % instead of 8", size_of(VkDepthClampRangeEXT)); } { info := type_info(VkPhysicalDeviceTilePropertiesFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "tileProperties"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.tileProperties has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTilePropertiesFeaturesQCOM.tileProperties has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTilePropertiesFeaturesQCOM) == 24, "VkPhysicalDeviceTilePropertiesFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceTilePropertiesFeaturesQCOM)); } { info := type_info(VkTilePropertiesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTilePropertiesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTilePropertiesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTilePropertiesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTilePropertiesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "tileSize"; assert(it.offset_in_bytes == 16, "VkTilePropertiesQCOM.tileSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkTilePropertiesQCOM.tileSize has unexpected size % instead of 12", it.type.runtime_size); case "apronSize"; assert(it.offset_in_bytes == 28, "VkTilePropertiesQCOM.apronSize has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTilePropertiesQCOM.apronSize has unexpected size % instead of 8", it.type.runtime_size); case "origin"; assert(it.offset_in_bytes == 36, "VkTilePropertiesQCOM.origin has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTilePropertiesQCOM.origin has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkTilePropertiesQCOM) == 48, "VkTilePropertiesQCOM has size % instead of 48", size_of(VkTilePropertiesQCOM)); } { info := type_info(VkPhysicalDeviceAmigoProfilingFeaturesSEC); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.pNext has unexpected size % instead of 8", it.type.runtime_size); case "amigoProfiling"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.amigoProfiling has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAmigoProfilingFeaturesSEC.amigoProfiling has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAmigoProfilingFeaturesSEC) == 24, "VkPhysicalDeviceAmigoProfilingFeaturesSEC has size % instead of 24", size_of(VkPhysicalDeviceAmigoProfilingFeaturesSEC)); } { info := type_info(VkAmigoProfilingSubmitInfoSEC); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAmigoProfilingSubmitInfoSEC.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAmigoProfilingSubmitInfoSEC.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAmigoProfilingSubmitInfoSEC.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAmigoProfilingSubmitInfoSEC.pNext has unexpected size % instead of 8", it.type.runtime_size); case "firstDrawTimestamp"; assert(it.offset_in_bytes == 16, "VkAmigoProfilingSubmitInfoSEC.firstDrawTimestamp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAmigoProfilingSubmitInfoSEC.firstDrawTimestamp has unexpected size % instead of 8", it.type.runtime_size); case "swapBufferTimestamp"; assert(it.offset_in_bytes == 24, "VkAmigoProfilingSubmitInfoSEC.swapBufferTimestamp has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAmigoProfilingSubmitInfoSEC.swapBufferTimestamp has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAmigoProfilingSubmitInfoSEC) == 32, "VkAmigoProfilingSubmitInfoSEC has size % instead of 32", size_of(VkAmigoProfilingSubmitInfoSEC)); } { info := type_info(VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multiviewPerViewViewports"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.multiviewPerViewViewports has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM.multiviewPerViewViewports has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM) == 24, "VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM)); } { info := type_info(VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingInvocationReorderReorderingHint"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.rayTracingInvocationReorderReorderingHint has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV.rayTracingInvocationReorderReorderingHint has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV) == 24, "VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV)); } { info := type_info(VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingInvocationReorder"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.rayTracingInvocationReorder has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV.rayTracingInvocationReorder has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV) == 24, "VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV)); } { info := type_info(VkPhysicalDeviceCooperativeVectorPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeVectorPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeVectorPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeVectorPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeVectorSupportedStages"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorSupportedStages has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorSupportedStages has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeVectorTrainingFloat16Accumulation"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorTrainingFloat16Accumulation has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorTrainingFloat16Accumulation has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeVectorTrainingFloat32Accumulation"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorTrainingFloat32Accumulation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorPropertiesNV.cooperativeVectorTrainingFloat32Accumulation has unexpected size % instead of 4", it.type.runtime_size); case "maxCooperativeVectorComponents"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceCooperativeVectorPropertiesNV.maxCooperativeVectorComponents has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorPropertiesNV.maxCooperativeVectorComponents has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeVectorPropertiesNV) == 32, "VkPhysicalDeviceCooperativeVectorPropertiesNV has size % instead of 32", size_of(VkPhysicalDeviceCooperativeVectorPropertiesNV)); } { info := type_info(VkPhysicalDeviceCooperativeVectorFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeVectorFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeVectorFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeVectorFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeVector"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeVectorFeaturesNV.cooperativeVector has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorFeaturesNV.cooperativeVector has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeVectorTraining"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeVectorFeaturesNV.cooperativeVectorTraining has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeVectorFeaturesNV.cooperativeVectorTraining has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeVectorFeaturesNV) == 24, "VkPhysicalDeviceCooperativeVectorFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCooperativeVectorFeaturesNV)); } { info := type_info(VkCooperativeVectorPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCooperativeVectorPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCooperativeVectorPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCooperativeVectorPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "inputType"; assert(it.offset_in_bytes == 16, "VkCooperativeVectorPropertiesNV.inputType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.inputType has unexpected size % instead of 4", it.type.runtime_size); case "inputInterpretation"; assert(it.offset_in_bytes == 20, "VkCooperativeVectorPropertiesNV.inputInterpretation has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.inputInterpretation has unexpected size % instead of 4", it.type.runtime_size); case "matrixInterpretation"; assert(it.offset_in_bytes == 24, "VkCooperativeVectorPropertiesNV.matrixInterpretation has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.matrixInterpretation has unexpected size % instead of 4", it.type.runtime_size); case "biasInterpretation"; assert(it.offset_in_bytes == 28, "VkCooperativeVectorPropertiesNV.biasInterpretation has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.biasInterpretation has unexpected size % instead of 4", it.type.runtime_size); case "resultType"; assert(it.offset_in_bytes == 32, "VkCooperativeVectorPropertiesNV.resultType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.resultType has unexpected size % instead of 4", it.type.runtime_size); case "transpose"; assert(it.offset_in_bytes == 36, "VkCooperativeVectorPropertiesNV.transpose has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeVectorPropertiesNV.transpose has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCooperativeVectorPropertiesNV) == 40, "VkCooperativeVectorPropertiesNV has size % instead of 40", size_of(VkCooperativeVectorPropertiesNV)); } { info := type_info(VkConvertCooperativeVectorMatrixInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkConvertCooperativeVectorMatrixInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkConvertCooperativeVectorMatrixInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "srcSize"; assert(it.offset_in_bytes == 16, "VkConvertCooperativeVectorMatrixInfoNV.srcSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.srcSize has unexpected size % instead of 8", it.type.runtime_size); case "srcData"; assert(it.offset_in_bytes == 24, "VkConvertCooperativeVectorMatrixInfoNV.srcData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.srcData has unexpected size % instead of 8", it.type.runtime_size); case "pDstSize"; assert(it.offset_in_bytes == 32, "VkConvertCooperativeVectorMatrixInfoNV.pDstSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.pDstSize has unexpected size % instead of 8", it.type.runtime_size); case "dstData"; assert(it.offset_in_bytes == 40, "VkConvertCooperativeVectorMatrixInfoNV.dstData has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.dstData has unexpected size % instead of 8", it.type.runtime_size); case "srcComponentType"; assert(it.offset_in_bytes == 48, "VkConvertCooperativeVectorMatrixInfoNV.srcComponentType has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.srcComponentType has unexpected size % instead of 4", it.type.runtime_size); case "dstComponentType"; assert(it.offset_in_bytes == 52, "VkConvertCooperativeVectorMatrixInfoNV.dstComponentType has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.dstComponentType has unexpected size % instead of 4", it.type.runtime_size); case "numRows"; assert(it.offset_in_bytes == 56, "VkConvertCooperativeVectorMatrixInfoNV.numRows has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.numRows has unexpected size % instead of 4", it.type.runtime_size); case "numColumns"; assert(it.offset_in_bytes == 60, "VkConvertCooperativeVectorMatrixInfoNV.numColumns has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.numColumns has unexpected size % instead of 4", it.type.runtime_size); case "srcLayout"; assert(it.offset_in_bytes == 64, "VkConvertCooperativeVectorMatrixInfoNV.srcLayout has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.srcLayout has unexpected size % instead of 4", it.type.runtime_size); case "srcStride"; assert(it.offset_in_bytes == 72, "VkConvertCooperativeVectorMatrixInfoNV.srcStride has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.srcStride has unexpected size % instead of 8", it.type.runtime_size); case "dstLayout"; assert(it.offset_in_bytes == 80, "VkConvertCooperativeVectorMatrixInfoNV.dstLayout has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkConvertCooperativeVectorMatrixInfoNV.dstLayout has unexpected size % instead of 4", it.type.runtime_size); case "dstStride"; assert(it.offset_in_bytes == 88, "VkConvertCooperativeVectorMatrixInfoNV.dstStride has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkConvertCooperativeVectorMatrixInfoNV.dstStride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkConvertCooperativeVectorMatrixInfoNV) == 96, "VkConvertCooperativeVectorMatrixInfoNV has size % instead of 96", size_of(VkConvertCooperativeVectorMatrixInfoNV)); } { info := type_info(VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "extendedSparseAddressSpace"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.extendedSparseAddressSpace has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV.extendedSparseAddressSpace has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV) == 24, "VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV)); } { info := type_info(VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "extendedSparseAddressSpaceSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseAddressSpaceSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseAddressSpaceSize has unexpected size % instead of 8", it.type.runtime_size); case "extendedSparseImageUsageFlags"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseImageUsageFlags has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseImageUsageFlags has unexpected size % instead of 4", it.type.runtime_size); case "extendedSparseBufferUsageFlags"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseBufferUsageFlags has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV.extendedSparseBufferUsageFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV) == 32, "VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV has size % instead of 32", size_of(VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV)); } { info := type_info(VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "legacyVertexAttributes"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.legacyVertexAttributes has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT.legacyVertexAttributes has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT) == 24, "VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT)); } { info := type_info(VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "nativeUnalignedPerformance"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.nativeUnalignedPerformance has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT.nativeUnalignedPerformance has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT) == 24, "VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT has size % instead of 24", size_of(VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT)); } { info := type_info(VkLayerSettingEXT); for info.members { if it.name == { case "pLayerName"; assert(it.offset_in_bytes == 0, "VkLayerSettingEXT.pLayerName has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLayerSettingEXT.pLayerName has unexpected size % instead of 8", it.type.runtime_size); case "pSettingName"; assert(it.offset_in_bytes == 8, "VkLayerSettingEXT.pSettingName has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLayerSettingEXT.pSettingName has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkLayerSettingEXT.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerSettingEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "valueCount"; assert(it.offset_in_bytes == 20, "VkLayerSettingEXT.valueCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerSettingEXT.valueCount has unexpected size % instead of 4", it.type.runtime_size); case "pValues"; assert(it.offset_in_bytes == 24, "VkLayerSettingEXT.pValues has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLayerSettingEXT.pValues has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLayerSettingEXT) == 32, "VkLayerSettingEXT has size % instead of 32", size_of(VkLayerSettingEXT)); } { info := type_info(VkLayerSettingsCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLayerSettingsCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerSettingsCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLayerSettingsCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLayerSettingsCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "settingCount"; assert(it.offset_in_bytes == 16, "VkLayerSettingsCreateInfoEXT.settingCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLayerSettingsCreateInfoEXT.settingCount has unexpected size % instead of 4", it.type.runtime_size); case "pSettings"; assert(it.offset_in_bytes == 24, "VkLayerSettingsCreateInfoEXT.pSettings has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLayerSettingsCreateInfoEXT.pSettings has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLayerSettingsCreateInfoEXT) == 32, "VkLayerSettingsCreateInfoEXT has size % instead of 32", size_of(VkLayerSettingsCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCoreBuiltins"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.shaderCoreBuiltins has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM.shaderCoreBuiltins has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM) == 24, "VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM has size % instead of 24", size_of(VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM)); } { info := type_info(VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCoreMask"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderCoreMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderCoreMask has unexpected size % instead of 8", it.type.runtime_size); case "shaderCoreCount"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderCoreCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderCoreCount has unexpected size % instead of 4", it.type.runtime_size); case "shaderWarpsPerCore"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderWarpsPerCore has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM.shaderWarpsPerCore has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM) == 32, "VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM has size % instead of 32", size_of(VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM)); } { info := type_info(VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineLibraryGroupHandles"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.pipelineLibraryGroupHandles has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT.pipelineLibraryGroupHandles has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT) == 24, "VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT has size % instead of 24", size_of(VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT)); } { info := type_info(VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dynamicRenderingUnusedAttachments"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.dynamicRenderingUnusedAttachments has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT.dynamicRenderingUnusedAttachments has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT) == 24, "VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT)); } { info := type_info(VkLatencySleepModeInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLatencySleepModeInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySleepModeInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLatencySleepModeInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySleepModeInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "lowLatencyMode"; assert(it.offset_in_bytes == 16, "VkLatencySleepModeInfoNV.lowLatencyMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySleepModeInfoNV.lowLatencyMode has unexpected size % instead of 4", it.type.runtime_size); case "lowLatencyBoost"; assert(it.offset_in_bytes == 20, "VkLatencySleepModeInfoNV.lowLatencyBoost has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySleepModeInfoNV.lowLatencyBoost has unexpected size % instead of 4", it.type.runtime_size); case "minimumIntervalUs"; assert(it.offset_in_bytes == 24, "VkLatencySleepModeInfoNV.minimumIntervalUs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySleepModeInfoNV.minimumIntervalUs has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkLatencySleepModeInfoNV) == 32, "VkLatencySleepModeInfoNV has size % instead of 32", size_of(VkLatencySleepModeInfoNV)); } { info := type_info(VkLatencySleepInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLatencySleepInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySleepInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLatencySleepInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySleepInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "signalSemaphore"; assert(it.offset_in_bytes == 16, "VkLatencySleepInfoNV.signalSemaphore has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySleepInfoNV.signalSemaphore has unexpected size % instead of 8", it.type.runtime_size); case "value"; assert(it.offset_in_bytes == 24, "VkLatencySleepInfoNV.value has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySleepInfoNV.value has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLatencySleepInfoNV) == 32, "VkLatencySleepInfoNV has size % instead of 32", size_of(VkLatencySleepInfoNV)); } { info := type_info(VkSetLatencyMarkerInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSetLatencyMarkerInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetLatencyMarkerInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSetLatencyMarkerInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetLatencyMarkerInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentID"; assert(it.offset_in_bytes == 16, "VkSetLatencyMarkerInfoNV.presentID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetLatencyMarkerInfoNV.presentID has unexpected size % instead of 8", it.type.runtime_size); case "marker"; assert(it.offset_in_bytes == 24, "VkSetLatencyMarkerInfoNV.marker has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetLatencyMarkerInfoNV.marker has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSetLatencyMarkerInfoNV) == 32, "VkSetLatencyMarkerInfoNV has size % instead of 32", size_of(VkSetLatencyMarkerInfoNV)); } { info := type_info(VkLatencyTimingsFrameReportNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLatencyTimingsFrameReportNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencyTimingsFrameReportNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLatencyTimingsFrameReportNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentID"; assert(it.offset_in_bytes == 16, "VkLatencyTimingsFrameReportNV.presentID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.presentID has unexpected size % instead of 8", it.type.runtime_size); case "inputSampleTimeUs"; assert(it.offset_in_bytes == 24, "VkLatencyTimingsFrameReportNV.inputSampleTimeUs has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.inputSampleTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "simStartTimeUs"; assert(it.offset_in_bytes == 32, "VkLatencyTimingsFrameReportNV.simStartTimeUs has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.simStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "simEndTimeUs"; assert(it.offset_in_bytes == 40, "VkLatencyTimingsFrameReportNV.simEndTimeUs has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.simEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "renderSubmitStartTimeUs"; assert(it.offset_in_bytes == 48, "VkLatencyTimingsFrameReportNV.renderSubmitStartTimeUs has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.renderSubmitStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "renderSubmitEndTimeUs"; assert(it.offset_in_bytes == 56, "VkLatencyTimingsFrameReportNV.renderSubmitEndTimeUs has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.renderSubmitEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "presentStartTimeUs"; assert(it.offset_in_bytes == 64, "VkLatencyTimingsFrameReportNV.presentStartTimeUs has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.presentStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "presentEndTimeUs"; assert(it.offset_in_bytes == 72, "VkLatencyTimingsFrameReportNV.presentEndTimeUs has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.presentEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "driverStartTimeUs"; assert(it.offset_in_bytes == 80, "VkLatencyTimingsFrameReportNV.driverStartTimeUs has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.driverStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "driverEndTimeUs"; assert(it.offset_in_bytes == 88, "VkLatencyTimingsFrameReportNV.driverEndTimeUs has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.driverEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "osRenderQueueStartTimeUs"; assert(it.offset_in_bytes == 96, "VkLatencyTimingsFrameReportNV.osRenderQueueStartTimeUs has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.osRenderQueueStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "osRenderQueueEndTimeUs"; assert(it.offset_in_bytes == 104, "VkLatencyTimingsFrameReportNV.osRenderQueueEndTimeUs has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.osRenderQueueEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "gpuRenderStartTimeUs"; assert(it.offset_in_bytes == 112, "VkLatencyTimingsFrameReportNV.gpuRenderStartTimeUs has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.gpuRenderStartTimeUs has unexpected size % instead of 8", it.type.runtime_size); case "gpuRenderEndTimeUs"; assert(it.offset_in_bytes == 120, "VkLatencyTimingsFrameReportNV.gpuRenderEndTimeUs has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencyTimingsFrameReportNV.gpuRenderEndTimeUs has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLatencyTimingsFrameReportNV) == 128, "VkLatencyTimingsFrameReportNV has size % instead of 128", size_of(VkLatencyTimingsFrameReportNV)); } { info := type_info(VkGetLatencyMarkerInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGetLatencyMarkerInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGetLatencyMarkerInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGetLatencyMarkerInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGetLatencyMarkerInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "timingCount"; assert(it.offset_in_bytes == 16, "VkGetLatencyMarkerInfoNV.timingCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGetLatencyMarkerInfoNV.timingCount has unexpected size % instead of 4", it.type.runtime_size); case "pTimings"; assert(it.offset_in_bytes == 24, "VkGetLatencyMarkerInfoNV.pTimings has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGetLatencyMarkerInfoNV.pTimings has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGetLatencyMarkerInfoNV) == 32, "VkGetLatencyMarkerInfoNV has size % instead of 32", size_of(VkGetLatencyMarkerInfoNV)); } { info := type_info(VkLatencySubmissionPresentIdNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLatencySubmissionPresentIdNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySubmissionPresentIdNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLatencySubmissionPresentIdNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySubmissionPresentIdNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentID"; assert(it.offset_in_bytes == 16, "VkLatencySubmissionPresentIdNV.presentID has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySubmissionPresentIdNV.presentID has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLatencySubmissionPresentIdNV) == 24, "VkLatencySubmissionPresentIdNV has size % instead of 24", size_of(VkLatencySubmissionPresentIdNV)); } { info := type_info(VkSwapchainLatencyCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSwapchainLatencyCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainLatencyCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSwapchainLatencyCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSwapchainLatencyCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "latencyModeEnable"; assert(it.offset_in_bytes == 16, "VkSwapchainLatencyCreateInfoNV.latencyModeEnable has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSwapchainLatencyCreateInfoNV.latencyModeEnable has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSwapchainLatencyCreateInfoNV) == 24, "VkSwapchainLatencyCreateInfoNV has size % instead of 24", size_of(VkSwapchainLatencyCreateInfoNV)); } { info := type_info(VkOutOfBandQueueTypeInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkOutOfBandQueueTypeInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOutOfBandQueueTypeInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkOutOfBandQueueTypeInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkOutOfBandQueueTypeInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queueType"; assert(it.offset_in_bytes == 16, "VkOutOfBandQueueTypeInfoNV.queueType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkOutOfBandQueueTypeInfoNV.queueType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkOutOfBandQueueTypeInfoNV) == 24, "VkOutOfBandQueueTypeInfoNV has size % instead of 24", size_of(VkOutOfBandQueueTypeInfoNV)); } { info := type_info(VkLatencySurfaceCapabilitiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkLatencySurfaceCapabilitiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySurfaceCapabilitiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkLatencySurfaceCapabilitiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySurfaceCapabilitiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentModeCount"; assert(it.offset_in_bytes == 16, "VkLatencySurfaceCapabilitiesNV.presentModeCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkLatencySurfaceCapabilitiesNV.presentModeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPresentModes"; assert(it.offset_in_bytes == 24, "VkLatencySurfaceCapabilitiesNV.pPresentModes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkLatencySurfaceCapabilitiesNV.pPresentModes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkLatencySurfaceCapabilitiesNV) == 32, "VkLatencySurfaceCapabilitiesNV has size % instead of 32", size_of(VkLatencySurfaceCapabilitiesNV)); } { info := type_info(VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "multiviewPerViewRenderAreas"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.multiviewPerViewRenderAreas has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM.multiviewPerViewRenderAreas has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM) == 24, "VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM)); } { info := type_info(VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "perViewRenderAreaCount"; assert(it.offset_in_bytes == 16, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.perViewRenderAreaCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.perViewRenderAreaCount has unexpected size % instead of 4", it.type.runtime_size); case "pPerViewRenderAreas"; assert(it.offset_in_bytes == 24, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.pPerViewRenderAreas has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM.pPerViewRenderAreas has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM) == 32, "VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM has size % instead of 32", size_of(VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM)); } { info := type_info(VkPhysicalDevicePerStageDescriptorSetFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "perStageDescriptorSet"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.perStageDescriptorSet has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.perStageDescriptorSet has unexpected size % instead of 4", it.type.runtime_size); case "dynamicPipelineLayout"; assert(it.offset_in_bytes == 20, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.dynamicPipelineLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV.dynamicPipelineLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePerStageDescriptorSetFeaturesNV) == 24, "VkPhysicalDevicePerStageDescriptorSetFeaturesNV has size % instead of 24", size_of(VkPhysicalDevicePerStageDescriptorSetFeaturesNV)); } { info := type_info(VkPhysicalDeviceImageProcessing2FeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "textureBlockMatch2"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.textureBlockMatch2 has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessing2FeaturesQCOM.textureBlockMatch2 has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageProcessing2FeaturesQCOM) == 24, "VkPhysicalDeviceImageProcessing2FeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceImageProcessing2FeaturesQCOM)); } { info := type_info(VkPhysicalDeviceImageProcessing2PropertiesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxBlockMatchWindow"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.maxBlockMatchWindow has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageProcessing2PropertiesQCOM.maxBlockMatchWindow has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageProcessing2PropertiesQCOM) == 24, "VkPhysicalDeviceImageProcessing2PropertiesQCOM has size % instead of 24", size_of(VkPhysicalDeviceImageProcessing2PropertiesQCOM)); } { info := type_info(VkSamplerBlockMatchWindowCreateInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerBlockMatchWindowCreateInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerBlockMatchWindowCreateInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerBlockMatchWindowCreateInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerBlockMatchWindowCreateInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "windowExtent"; assert(it.offset_in_bytes == 16, "VkSamplerBlockMatchWindowCreateInfoQCOM.windowExtent has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerBlockMatchWindowCreateInfoQCOM.windowExtent has unexpected size % instead of 8", it.type.runtime_size); case "windowCompareMode"; assert(it.offset_in_bytes == 24, "VkSamplerBlockMatchWindowCreateInfoQCOM.windowCompareMode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerBlockMatchWindowCreateInfoQCOM.windowCompareMode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerBlockMatchWindowCreateInfoQCOM) == 32, "VkSamplerBlockMatchWindowCreateInfoQCOM has size % instead of 32", size_of(VkSamplerBlockMatchWindowCreateInfoQCOM)); } { info := type_info(VkPhysicalDeviceCubicWeightsFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "selectableCubicWeights"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.selectableCubicWeights has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCubicWeightsFeaturesQCOM.selectableCubicWeights has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCubicWeightsFeaturesQCOM) == 24, "VkPhysicalDeviceCubicWeightsFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceCubicWeightsFeaturesQCOM)); } { info := type_info(VkSamplerCubicWeightsCreateInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerCubicWeightsCreateInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCubicWeightsCreateInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerCubicWeightsCreateInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerCubicWeightsCreateInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cubicWeights"; assert(it.offset_in_bytes == 16, "VkSamplerCubicWeightsCreateInfoQCOM.cubicWeights has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerCubicWeightsCreateInfoQCOM.cubicWeights has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerCubicWeightsCreateInfoQCOM) == 24, "VkSamplerCubicWeightsCreateInfoQCOM has size % instead of 24", size_of(VkSamplerCubicWeightsCreateInfoQCOM)); } { info := type_info(VkBlitImageCubicWeightsInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBlitImageCubicWeightsInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageCubicWeightsInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBlitImageCubicWeightsInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBlitImageCubicWeightsInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cubicWeights"; assert(it.offset_in_bytes == 16, "VkBlitImageCubicWeightsInfoQCOM.cubicWeights has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBlitImageCubicWeightsInfoQCOM.cubicWeights has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBlitImageCubicWeightsInfoQCOM) == 24, "VkBlitImageCubicWeightsInfoQCOM has size % instead of 24", size_of(VkBlitImageCubicWeightsInfoQCOM)); } { info := type_info(VkPhysicalDeviceYcbcrDegammaFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "ycbcrDegamma"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.ycbcrDegamma has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM.ycbcrDegamma has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceYcbcrDegammaFeaturesQCOM) == 24, "VkPhysicalDeviceYcbcrDegammaFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceYcbcrDegammaFeaturesQCOM)); } { info := type_info(VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "enableYDegamma"; assert(it.offset_in_bytes == 16, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.enableYDegamma has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.enableYDegamma has unexpected size % instead of 4", it.type.runtime_size); case "enableCbCrDegamma"; assert(it.offset_in_bytes == 20, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.enableCbCrDegamma has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM.enableCbCrDegamma has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM) == 24, "VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM has size % instead of 24", size_of(VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM)); } { info := type_info(VkPhysicalDeviceCubicClampFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCubicClampFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCubicClampFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCubicClampFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCubicClampFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cubicRangeClamp"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCubicClampFeaturesQCOM.cubicRangeClamp has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCubicClampFeaturesQCOM.cubicRangeClamp has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCubicClampFeaturesQCOM) == 24, "VkPhysicalDeviceCubicClampFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceCubicClampFeaturesQCOM)); } { info := type_info(VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "attachmentFeedbackLoopDynamicState"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.attachmentFeedbackLoopDynamicState has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT.attachmentFeedbackLoopDynamicState has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT) == 24, "VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT)); } { info := type_info(VkPhysicalDeviceLayeredDriverPropertiesMSFT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "underlyingAPI"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.underlyingAPI has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceLayeredDriverPropertiesMSFT.underlyingAPI has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceLayeredDriverPropertiesMSFT) == 24, "VkPhysicalDeviceLayeredDriverPropertiesMSFT has size % instead of 24", size_of(VkPhysicalDeviceLayeredDriverPropertiesMSFT)); } { info := type_info(VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "descriptorPoolOverallocation"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.descriptorPoolOverallocation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV.descriptorPoolOverallocation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV) == 24, "VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV)); } { info := type_info(VkPhysicalDeviceTileMemoryHeapFeaturesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "tileMemoryHeap"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.tileMemoryHeap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM.tileMemoryHeap has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTileMemoryHeapFeaturesQCOM) == 24, "VkPhysicalDeviceTileMemoryHeapFeaturesQCOM has size % instead of 24", size_of(VkPhysicalDeviceTileMemoryHeapFeaturesQCOM)); } { info := type_info(VkPhysicalDeviceTileMemoryHeapPropertiesQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "queueSubmitBoundary"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.queueSubmitBoundary has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.queueSubmitBoundary has unexpected size % instead of 4", it.type.runtime_size); case "tileBufferTransfers"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.tileBufferTransfers has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM.tileBufferTransfers has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceTileMemoryHeapPropertiesQCOM) == 24, "VkPhysicalDeviceTileMemoryHeapPropertiesQCOM has size % instead of 24", size_of(VkPhysicalDeviceTileMemoryHeapPropertiesQCOM)); } { info := type_info(VkTileMemoryRequirementsQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTileMemoryRequirementsQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTileMemoryRequirementsQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTileMemoryRequirementsQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemoryRequirementsQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkTileMemoryRequirementsQCOM.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemoryRequirementsQCOM.size has unexpected size % instead of 8", it.type.runtime_size); case "alignment"; assert(it.offset_in_bytes == 24, "VkTileMemoryRequirementsQCOM.alignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemoryRequirementsQCOM.alignment has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkTileMemoryRequirementsQCOM) == 32, "VkTileMemoryRequirementsQCOM has size % instead of 32", size_of(VkTileMemoryRequirementsQCOM)); } { info := type_info(VkTileMemoryBindInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTileMemoryBindInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTileMemoryBindInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTileMemoryBindInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemoryBindInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "memory"; assert(it.offset_in_bytes == 16, "VkTileMemoryBindInfoQCOM.memory has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemoryBindInfoQCOM.memory has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkTileMemoryBindInfoQCOM) == 24, "VkTileMemoryBindInfoQCOM has size % instead of 24", size_of(VkTileMemoryBindInfoQCOM)); } { info := type_info(VkTileMemorySizeInfoQCOM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkTileMemorySizeInfoQCOM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTileMemorySizeInfoQCOM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkTileMemorySizeInfoQCOM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemorySizeInfoQCOM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkTileMemorySizeInfoQCOM.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkTileMemorySizeInfoQCOM.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkTileMemorySizeInfoQCOM) == 24, "VkTileMemorySizeInfoQCOM has size % instead of 24", size_of(VkTileMemorySizeInfoQCOM)); } { info := type_info(VkDisplaySurfaceStereoCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplaySurfaceStereoCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceStereoCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplaySurfaceStereoCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplaySurfaceStereoCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "stereoType"; assert(it.offset_in_bytes == 16, "VkDisplaySurfaceStereoCreateInfoNV.stereoType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplaySurfaceStereoCreateInfoNV.stereoType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplaySurfaceStereoCreateInfoNV) == 24, "VkDisplaySurfaceStereoCreateInfoNV has size % instead of 24", size_of(VkDisplaySurfaceStereoCreateInfoNV)); } { info := type_info(VkDisplayModeStereoPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkDisplayModeStereoPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeStereoPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkDisplayModeStereoPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDisplayModeStereoPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hdmi3DSupported"; assert(it.offset_in_bytes == 16, "VkDisplayModeStereoPropertiesNV.hdmi3DSupported has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDisplayModeStereoPropertiesNV.hdmi3DSupported has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDisplayModeStereoPropertiesNV) == 24, "VkDisplayModeStereoPropertiesNV has size % instead of 24", size_of(VkDisplayModeStereoPropertiesNV)); } { info := type_info(VkPhysicalDeviceRawAccessChainsFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRawAccessChainsFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRawAccessChainsFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRawAccessChainsFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRawAccessChainsFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderRawAccessChains"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRawAccessChainsFeaturesNV.shaderRawAccessChains has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRawAccessChainsFeaturesNV.shaderRawAccessChains has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRawAccessChainsFeaturesNV) == 24, "VkPhysicalDeviceRawAccessChainsFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRawAccessChainsFeaturesNV)); } { info := type_info(VkExternalComputeQueueDeviceCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalComputeQueueDeviceCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalComputeQueueDeviceCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalComputeQueueDeviceCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalComputeQueueDeviceCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "reservedExternalQueues"; assert(it.offset_in_bytes == 16, "VkExternalComputeQueueDeviceCreateInfoNV.reservedExternalQueues has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalComputeQueueDeviceCreateInfoNV.reservedExternalQueues has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalComputeQueueDeviceCreateInfoNV) == 24, "VkExternalComputeQueueDeviceCreateInfoNV has size % instead of 24", size_of(VkExternalComputeQueueDeviceCreateInfoNV)); } { info := type_info(VkExternalComputeQueueCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalComputeQueueCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalComputeQueueCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalComputeQueueCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalComputeQueueCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "preferredQueue"; assert(it.offset_in_bytes == 16, "VkExternalComputeQueueCreateInfoNV.preferredQueue has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalComputeQueueCreateInfoNV.preferredQueue has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkExternalComputeQueueCreateInfoNV) == 24, "VkExternalComputeQueueCreateInfoNV has size % instead of 24", size_of(VkExternalComputeQueueCreateInfoNV)); } { info := type_info(VkExternalComputeQueueDataParamsNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkExternalComputeQueueDataParamsNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalComputeQueueDataParamsNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkExternalComputeQueueDataParamsNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkExternalComputeQueueDataParamsNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceIndex"; assert(it.offset_in_bytes == 16, "VkExternalComputeQueueDataParamsNV.deviceIndex has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkExternalComputeQueueDataParamsNV.deviceIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkExternalComputeQueueDataParamsNV) == 24, "VkExternalComputeQueueDataParamsNV has size % instead of 24", size_of(VkExternalComputeQueueDataParamsNV)); } { info := type_info(VkPhysicalDeviceExternalComputeQueuePropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "externalDataSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.externalDataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.externalDataSize has unexpected size % instead of 4", it.type.runtime_size); case "maxExternalQueues"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.maxExternalQueues has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceExternalComputeQueuePropertiesNV.maxExternalQueues has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceExternalComputeQueuePropertiesNV) == 24, "VkPhysicalDeviceExternalComputeQueuePropertiesNV has size % instead of 24", size_of(VkPhysicalDeviceExternalComputeQueuePropertiesNV)); } { info := type_info(VkPhysicalDeviceCommandBufferInheritanceFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "commandBufferInheritance"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.commandBufferInheritance has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV.commandBufferInheritance has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCommandBufferInheritanceFeaturesNV) == 24, "VkPhysicalDeviceCommandBufferInheritanceFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceCommandBufferInheritanceFeaturesNV)); } { info := type_info(VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderFloat16VectorAtomics"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.shaderFloat16VectorAtomics has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV.shaderFloat16VectorAtomics has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV) == 24, "VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV)); } { info := type_info(VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderReplicatedComposites"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.shaderReplicatedComposites has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT.shaderReplicatedComposites has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT) == 24, "VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT)); } { info := type_info(VkPhysicalDeviceRayTracingValidationFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingValidationFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingValidationFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingValidationFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingValidationFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingValidation"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingValidationFeaturesNV.rayTracingValidation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingValidationFeaturesNV.rayTracingValidation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingValidationFeaturesNV) == 24, "VkPhysicalDeviceRayTracingValidationFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceRayTracingValidationFeaturesNV)); } { info := type_info(VkPhysicalDeviceClusterAccelerationStructureFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "clusterAccelerationStructure"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.clusterAccelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV.clusterAccelerationStructure has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceClusterAccelerationStructureFeaturesNV) == 24, "VkPhysicalDeviceClusterAccelerationStructureFeaturesNV has size % instead of 24", size_of(VkPhysicalDeviceClusterAccelerationStructureFeaturesNV)); } { info := type_info(VkPhysicalDeviceClusterAccelerationStructurePropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxVerticesPerCluster"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxVerticesPerCluster has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxVerticesPerCluster has unexpected size % instead of 4", it.type.runtime_size); case "maxTrianglesPerCluster"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxTrianglesPerCluster has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxTrianglesPerCluster has unexpected size % instead of 4", it.type.runtime_size); case "clusterScratchByteAlignment"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterScratchByteAlignment has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterScratchByteAlignment has unexpected size % instead of 4", it.type.runtime_size); case "clusterByteAlignment"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterByteAlignment has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterByteAlignment has unexpected size % instead of 4", it.type.runtime_size); case "clusterTemplateByteAlignment"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterTemplateByteAlignment has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterTemplateByteAlignment has unexpected size % instead of 4", it.type.runtime_size); case "clusterBottomLevelByteAlignment"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterBottomLevelByteAlignment has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterBottomLevelByteAlignment has unexpected size % instead of 4", it.type.runtime_size); case "clusterTemplateBoundsByteAlignment"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterTemplateBoundsByteAlignment has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.clusterTemplateBoundsByteAlignment has unexpected size % instead of 4", it.type.runtime_size); case "maxClusterGeometryIndex"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxClusterGeometryIndex has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV.maxClusterGeometryIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceClusterAccelerationStructurePropertiesNV) == 48, "VkPhysicalDeviceClusterAccelerationStructurePropertiesNV has size % instead of 48", size_of(VkPhysicalDeviceClusterAccelerationStructurePropertiesNV)); } { info := type_info(VkClusterAccelerationStructureClustersBottomLevelInputNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureClustersBottomLevelInputNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureClustersBottomLevelInputNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureClustersBottomLevelInputNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureClustersBottomLevelInputNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxTotalClusterCount"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureClustersBottomLevelInputNV.maxTotalClusterCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureClustersBottomLevelInputNV.maxTotalClusterCount has unexpected size % instead of 4", it.type.runtime_size); case "maxClusterCountPerAccelerationStructure"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureClustersBottomLevelInputNV.maxClusterCountPerAccelerationStructure has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureClustersBottomLevelInputNV.maxClusterCountPerAccelerationStructure has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureClustersBottomLevelInputNV) == 24, "VkClusterAccelerationStructureClustersBottomLevelInputNV has size % instead of 24", size_of(VkClusterAccelerationStructureClustersBottomLevelInputNV)); } { info := type_info(VkClusterAccelerationStructureTriangleClusterInputNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureTriangleClusterInputNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureTriangleClusterInputNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureTriangleClusterInputNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexFormat"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureTriangleClusterInputNV.vertexFormat has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.vertexFormat has unexpected size % instead of 4", it.type.runtime_size); case "maxGeometryIndexValue"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureTriangleClusterInputNV.maxGeometryIndexValue has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxGeometryIndexValue has unexpected size % instead of 4", it.type.runtime_size); case "maxClusterUniqueGeometryCount"; assert(it.offset_in_bytes == 24, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterUniqueGeometryCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterUniqueGeometryCount has unexpected size % instead of 4", it.type.runtime_size); case "maxClusterTriangleCount"; assert(it.offset_in_bytes == 28, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterTriangleCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterTriangleCount has unexpected size % instead of 4", it.type.runtime_size); case "maxClusterVertexCount"; assert(it.offset_in_bytes == 32, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterVertexCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxClusterVertexCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTotalTriangleCount"; assert(it.offset_in_bytes == 36, "VkClusterAccelerationStructureTriangleClusterInputNV.maxTotalTriangleCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxTotalTriangleCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTotalVertexCount"; assert(it.offset_in_bytes == 40, "VkClusterAccelerationStructureTriangleClusterInputNV.maxTotalVertexCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.maxTotalVertexCount has unexpected size % instead of 4", it.type.runtime_size); case "minPositionTruncateBitCount"; assert(it.offset_in_bytes == 44, "VkClusterAccelerationStructureTriangleClusterInputNV.minPositionTruncateBitCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureTriangleClusterInputNV.minPositionTruncateBitCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureTriangleClusterInputNV) == 48, "VkClusterAccelerationStructureTriangleClusterInputNV has size % instead of 48", size_of(VkClusterAccelerationStructureTriangleClusterInputNV)); } { info := type_info(VkClusterAccelerationStructureMoveObjectsInputNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureMoveObjectsInputNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureMoveObjectsInputNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureMoveObjectsInputNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureMoveObjectsInputNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureMoveObjectsInputNV.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureMoveObjectsInputNV.type has unexpected size % instead of 4", it.type.runtime_size); case "noMoveOverlap"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureMoveObjectsInputNV.noMoveOverlap has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureMoveObjectsInputNV.noMoveOverlap has unexpected size % instead of 4", it.type.runtime_size); case "maxMovedBytes"; assert(it.offset_in_bytes == 24, "VkClusterAccelerationStructureMoveObjectsInputNV.maxMovedBytes has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureMoveObjectsInputNV.maxMovedBytes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureMoveObjectsInputNV) == 32, "VkClusterAccelerationStructureMoveObjectsInputNV has size % instead of 32", size_of(VkClusterAccelerationStructureMoveObjectsInputNV)); } { info := type_info(VkClusterAccelerationStructureOpInputNV); for info.members { if it.name == { case "pClustersBottomLevel"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureOpInputNV.pClustersBottomLevel has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureOpInputNV.pClustersBottomLevel has unexpected size % instead of 8", it.type.runtime_size); case "pTriangleClusters"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureOpInputNV.pTriangleClusters has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureOpInputNV.pTriangleClusters has unexpected size % instead of 8", it.type.runtime_size); case "pMoveObjects"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureOpInputNV.pMoveObjects has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureOpInputNV.pMoveObjects has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureOpInputNV) == 8, "VkClusterAccelerationStructureOpInputNV has size % instead of 8", size_of(VkClusterAccelerationStructureOpInputNV)); } { info := type_info(VkClusterAccelerationStructureInputInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureInputInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInputInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureInputInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureInputInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxAccelerationStructureCount"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureInputInfoNV.maxAccelerationStructureCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInputInfoNV.maxAccelerationStructureCount has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureInputInfoNV.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInputInfoNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "opType"; assert(it.offset_in_bytes == 24, "VkClusterAccelerationStructureInputInfoNV.opType has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInputInfoNV.opType has unexpected size % instead of 4", it.type.runtime_size); case "opMode"; assert(it.offset_in_bytes == 28, "VkClusterAccelerationStructureInputInfoNV.opMode has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInputInfoNV.opMode has unexpected size % instead of 4", it.type.runtime_size); case "opInput"; assert(it.offset_in_bytes == 32, "VkClusterAccelerationStructureInputInfoNV.opInput has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureInputInfoNV.opInput has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureInputInfoNV) == 40, "VkClusterAccelerationStructureInputInfoNV has size % instead of 40", size_of(VkClusterAccelerationStructureInputInfoNV)); } { info := type_info(VkStridedDeviceAddressRegionKHR); for info.members { if it.name == { case "deviceAddress"; assert(it.offset_in_bytes == 0, "VkStridedDeviceAddressRegionKHR.deviceAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkStridedDeviceAddressRegionKHR.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 8, "VkStridedDeviceAddressRegionKHR.stride has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkStridedDeviceAddressRegionKHR.stride has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 16, "VkStridedDeviceAddressRegionKHR.size has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkStridedDeviceAddressRegionKHR.size has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkStridedDeviceAddressRegionKHR) == 24, "VkStridedDeviceAddressRegionKHR has size % instead of 24", size_of(VkStridedDeviceAddressRegionKHR)); } { info := type_info(VkClusterAccelerationStructureCommandsInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureCommandsInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureCommandsInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureCommandsInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureCommandsInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "input"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureCommandsInfoNV.input has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkClusterAccelerationStructureCommandsInfoNV.input has unexpected size % instead of 40", it.type.runtime_size); case "dstImplicitData"; assert(it.offset_in_bytes == 56, "VkClusterAccelerationStructureCommandsInfoNV.dstImplicitData has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureCommandsInfoNV.dstImplicitData has unexpected size % instead of 8", it.type.runtime_size); case "scratchData"; assert(it.offset_in_bytes == 64, "VkClusterAccelerationStructureCommandsInfoNV.scratchData has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureCommandsInfoNV.scratchData has unexpected size % instead of 8", it.type.runtime_size); case "dstAddressesArray"; assert(it.offset_in_bytes == 72, "VkClusterAccelerationStructureCommandsInfoNV.dstAddressesArray has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkClusterAccelerationStructureCommandsInfoNV.dstAddressesArray has unexpected size % instead of 24", it.type.runtime_size); case "dstSizesArray"; assert(it.offset_in_bytes == 96, "VkClusterAccelerationStructureCommandsInfoNV.dstSizesArray has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkClusterAccelerationStructureCommandsInfoNV.dstSizesArray has unexpected size % instead of 24", it.type.runtime_size); case "srcInfosArray"; assert(it.offset_in_bytes == 120, "VkClusterAccelerationStructureCommandsInfoNV.srcInfosArray has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkClusterAccelerationStructureCommandsInfoNV.srcInfosArray has unexpected size % instead of 24", it.type.runtime_size); case "srcInfosCount"; assert(it.offset_in_bytes == 144, "VkClusterAccelerationStructureCommandsInfoNV.srcInfosCount has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureCommandsInfoNV.srcInfosCount has unexpected size % instead of 8", it.type.runtime_size); case "addressResolutionFlags"; assert(it.offset_in_bytes == 152, "VkClusterAccelerationStructureCommandsInfoNV.addressResolutionFlags has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureCommandsInfoNV.addressResolutionFlags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureCommandsInfoNV) == 160, "VkClusterAccelerationStructureCommandsInfoNV has size % instead of 160", size_of(VkClusterAccelerationStructureCommandsInfoNV)); } { info := type_info(VkStridedDeviceAddressNV); for info.members { if it.name == { case "startAddress"; assert(it.offset_in_bytes == 0, "VkStridedDeviceAddressNV.startAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkStridedDeviceAddressNV.startAddress has unexpected size % instead of 8", it.type.runtime_size); case "strideInBytes"; assert(it.offset_in_bytes == 8, "VkStridedDeviceAddressNV.strideInBytes has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkStridedDeviceAddressNV.strideInBytes has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkStridedDeviceAddressNV) == 16, "VkStridedDeviceAddressNV has size % instead of 16", size_of(VkStridedDeviceAddressNV)); } { info := type_info(VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV); for info.members { if it.name == { case "__bitfield"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV.__bitfield has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV.__bitfield has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV) == 4, "VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV has size % instead of 4", size_of(VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV)); } { info := type_info(VkClusterAccelerationStructureMoveObjectsInfoNV); for info.members { if it.name == { case "srcAccelerationStructure"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureMoveObjectsInfoNV.srcAccelerationStructure has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureMoveObjectsInfoNV.srcAccelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureMoveObjectsInfoNV) == 8, "VkClusterAccelerationStructureMoveObjectsInfoNV has size % instead of 8", size_of(VkClusterAccelerationStructureMoveObjectsInfoNV)); } { info := type_info(VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV); for info.members { if it.name == { case "clusterReferencesCount"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferencesCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferencesCount has unexpected size % instead of 4", it.type.runtime_size); case "clusterReferencesStride"; assert(it.offset_in_bytes == 4, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferencesStride has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferencesStride has unexpected size % instead of 4", it.type.runtime_size); case "clusterReferences"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferences has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV.clusterReferences has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV) == 16, "VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV has size % instead of 16", size_of(VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV)); } { info := type_info(VkClusterAccelerationStructureBuildTriangleClusterInfoNV); for info.members { if it.name == { case "clusterID"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.clusterID has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.clusterID has unexpected size % instead of 4", it.type.runtime_size); case "clusterFlags"; assert(it.offset_in_bytes == 4, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.clusterFlags has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.clusterFlags has unexpected size % instead of 4", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.__bitfield has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.__bitfield has unexpected size % instead of 4", it.type.runtime_size); case "baseGeometryIndexAndGeometryFlags"; assert(it.offset_in_bytes == 12, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.baseGeometryIndexAndGeometryFlags has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.baseGeometryIndexAndGeometryFlags has unexpected size % instead of 4", it.type.runtime_size); case "indexBufferStride"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.indexBufferStride has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.indexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "vertexBufferStride"; assert(it.offset_in_bytes == 18, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.vertexBufferStride has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.vertexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "geometryIndexAndFlagsBufferStride"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.geometryIndexAndFlagsBufferStride has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.geometryIndexAndFlagsBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "opacityMicromapIndexBufferStride"; assert(it.offset_in_bytes == 22, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapIndexBufferStride has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapIndexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "indexBuffer"; assert(it.offset_in_bytes == 24, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.indexBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.indexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "vertexBuffer"; assert(it.offset_in_bytes == 32, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.vertexBuffer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.vertexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "geometryIndexAndFlagsBuffer"; assert(it.offset_in_bytes == 40, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.geometryIndexAndFlagsBuffer has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.geometryIndexAndFlagsBuffer has unexpected size % instead of 8", it.type.runtime_size); case "opacityMicromapArray"; assert(it.offset_in_bytes == 48, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapArray has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapArray has unexpected size % instead of 8", it.type.runtime_size); case "opacityMicromapIndexBuffer"; assert(it.offset_in_bytes == 56, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapIndexBuffer has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV.opacityMicromapIndexBuffer has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureBuildTriangleClusterInfoNV) == 64, "VkClusterAccelerationStructureBuildTriangleClusterInfoNV has size % instead of 64", size_of(VkClusterAccelerationStructureBuildTriangleClusterInfoNV)); } { info := type_info(VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV); for info.members { if it.name == { case "clusterID"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.clusterID has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.clusterID has unexpected size % instead of 4", it.type.runtime_size); case "clusterFlags"; assert(it.offset_in_bytes == 4, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.clusterFlags has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.clusterFlags has unexpected size % instead of 4", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.__bitfield has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.__bitfield has unexpected size % instead of 4", it.type.runtime_size); case "baseGeometryIndexAndGeometryFlags"; assert(it.offset_in_bytes == 12, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.baseGeometryIndexAndGeometryFlags has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.baseGeometryIndexAndGeometryFlags has unexpected size % instead of 4", it.type.runtime_size); case "indexBufferStride"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.indexBufferStride has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.indexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "vertexBufferStride"; assert(it.offset_in_bytes == 18, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.vertexBufferStride has unexpected offset % instead of 18", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.vertexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "geometryIndexAndFlagsBufferStride"; assert(it.offset_in_bytes == 20, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.geometryIndexAndFlagsBufferStride has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.geometryIndexAndFlagsBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "opacityMicromapIndexBufferStride"; assert(it.offset_in_bytes == 22, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapIndexBufferStride has unexpected offset % instead of 22", it.offset_in_bytes); assert(it.type.runtime_size == 2, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapIndexBufferStride has unexpected size % instead of 2", it.type.runtime_size); case "indexBuffer"; assert(it.offset_in_bytes == 24, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.indexBuffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.indexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "vertexBuffer"; assert(it.offset_in_bytes == 32, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.vertexBuffer has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.vertexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "geometryIndexAndFlagsBuffer"; assert(it.offset_in_bytes == 40, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.geometryIndexAndFlagsBuffer has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.geometryIndexAndFlagsBuffer has unexpected size % instead of 8", it.type.runtime_size); case "opacityMicromapArray"; assert(it.offset_in_bytes == 48, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapArray has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapArray has unexpected size % instead of 8", it.type.runtime_size); case "opacityMicromapIndexBuffer"; assert(it.offset_in_bytes == 56, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapIndexBuffer has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.opacityMicromapIndexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "instantiationBoundingBoxLimit"; assert(it.offset_in_bytes == 64, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.instantiationBoundingBoxLimit has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV.instantiationBoundingBoxLimit has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV) == 72, "VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV has size % instead of 72", size_of(VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV)); } { info := type_info(VkClusterAccelerationStructureInstantiateClusterInfoNV); for info.members { if it.name == { case "clusterIdOffset"; assert(it.offset_in_bytes == 0, "VkClusterAccelerationStructureInstantiateClusterInfoNV.clusterIdOffset has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInstantiateClusterInfoNV.clusterIdOffset has unexpected size % instead of 4", it.type.runtime_size); case "__bitfield"; assert(it.offset_in_bytes == 4, "VkClusterAccelerationStructureInstantiateClusterInfoNV.__bitfield has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkClusterAccelerationStructureInstantiateClusterInfoNV.__bitfield has unexpected size % instead of 4", it.type.runtime_size); case "clusterTemplateAddress"; assert(it.offset_in_bytes == 8, "VkClusterAccelerationStructureInstantiateClusterInfoNV.clusterTemplateAddress has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkClusterAccelerationStructureInstantiateClusterInfoNV.clusterTemplateAddress has unexpected size % instead of 8", it.type.runtime_size); case "vertexBuffer"; assert(it.offset_in_bytes == 16, "VkClusterAccelerationStructureInstantiateClusterInfoNV.vertexBuffer has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkClusterAccelerationStructureInstantiateClusterInfoNV.vertexBuffer has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkClusterAccelerationStructureInstantiateClusterInfoNV) == 32, "VkClusterAccelerationStructureInstantiateClusterInfoNV has size % instead of 32", size_of(VkClusterAccelerationStructureInstantiateClusterInfoNV)); } { info := type_info(VkAccelerationStructureBuildSizesInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureBuildSizesInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildSizesInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureBuildSizesInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildSizesInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureSize"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureBuildSizesInfoKHR.accelerationStructureSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildSizesInfoKHR.accelerationStructureSize has unexpected size % instead of 8", it.type.runtime_size); case "updateScratchSize"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureBuildSizesInfoKHR.updateScratchSize has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildSizesInfoKHR.updateScratchSize has unexpected size % instead of 8", it.type.runtime_size); case "buildScratchSize"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureBuildSizesInfoKHR.buildScratchSize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildSizesInfoKHR.buildScratchSize has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureBuildSizesInfoKHR) == 40, "VkAccelerationStructureBuildSizesInfoKHR has size % instead of 40", size_of(VkAccelerationStructureBuildSizesInfoKHR)); } { info := type_info(VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "allowClusterAccelerationStructure"; assert(it.offset_in_bytes == 16, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.allowClusterAccelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV.allowClusterAccelerationStructure has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV) == 24, "VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV has size % instead of 24", size_of(VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV)); } { info := type_info(VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "partitionedAccelerationStructure"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.partitionedAccelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV.partitionedAccelerationStructure has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV) == 24, "VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV has size % instead of 24", size_of(VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV)); } { info := type_info(VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxPartitionCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.maxPartitionCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV.maxPartitionCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV) == 24, "VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV has size % instead of 24", size_of(VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV)); } { info := type_info(VkPartitionedAccelerationStructureFlagsNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPartitionedAccelerationStructureFlagsNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureFlagsNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPartitionedAccelerationStructureFlagsNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPartitionedAccelerationStructureFlagsNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "enablePartitionTranslation"; assert(it.offset_in_bytes == 16, "VkPartitionedAccelerationStructureFlagsNV.enablePartitionTranslation has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureFlagsNV.enablePartitionTranslation has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPartitionedAccelerationStructureFlagsNV) == 24, "VkPartitionedAccelerationStructureFlagsNV has size % instead of 24", size_of(VkPartitionedAccelerationStructureFlagsNV)); } { info := type_info(VkBuildPartitionedAccelerationStructureIndirectCommandNV); for info.members { if it.name == { case "opType"; assert(it.offset_in_bytes == 0, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.opType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.opType has unexpected size % instead of 4", it.type.runtime_size); case "argCount"; assert(it.offset_in_bytes == 4, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.argCount has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.argCount has unexpected size % instead of 4", it.type.runtime_size); case "argData"; assert(it.offset_in_bytes == 8, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.argData has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 16, "VkBuildPartitionedAccelerationStructureIndirectCommandNV.argData has unexpected size % instead of 16", it.type.runtime_size); } } assert(size_of(VkBuildPartitionedAccelerationStructureIndirectCommandNV) == 24, "VkBuildPartitionedAccelerationStructureIndirectCommandNV has size % instead of 24", size_of(VkBuildPartitionedAccelerationStructureIndirectCommandNV)); } { info := type_info(VkPartitionedAccelerationStructureWriteInstanceDataNV); for info.members { if it.name == { case "transform"; assert(it.offset_in_bytes == 0, "VkPartitionedAccelerationStructureWriteInstanceDataNV.transform has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 48, "VkPartitionedAccelerationStructureWriteInstanceDataNV.transform has unexpected size % instead of 48", it.type.runtime_size); case "explicitAABB"; assert(it.offset_in_bytes == 48, "VkPartitionedAccelerationStructureWriteInstanceDataNV.explicitAABB has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 24, "VkPartitionedAccelerationStructureWriteInstanceDataNV.explicitAABB has unexpected size % instead of 24", it.type.runtime_size); case "instanceID"; assert(it.offset_in_bytes == 72, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceID has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceID has unexpected size % instead of 4", it.type.runtime_size); case "instanceMask"; assert(it.offset_in_bytes == 76, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceMask has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceMask has unexpected size % instead of 4", it.type.runtime_size); case "instanceContributionToHitGroupIndex"; assert(it.offset_in_bytes == 80, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceContributionToHitGroupIndex has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceContributionToHitGroupIndex has unexpected size % instead of 4", it.type.runtime_size); case "instanceFlags"; assert(it.offset_in_bytes == 84, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceFlags has unexpected offset % instead of 84", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceFlags has unexpected size % instead of 4", it.type.runtime_size); case "instanceIndex"; assert(it.offset_in_bytes == 88, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceIndex has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.instanceIndex has unexpected size % instead of 4", it.type.runtime_size); case "partitionIndex"; assert(it.offset_in_bytes == 92, "VkPartitionedAccelerationStructureWriteInstanceDataNV.partitionIndex has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWriteInstanceDataNV.partitionIndex has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 96, "VkPartitionedAccelerationStructureWriteInstanceDataNV.accelerationStructure has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPartitionedAccelerationStructureWriteInstanceDataNV.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPartitionedAccelerationStructureWriteInstanceDataNV) == 104, "VkPartitionedAccelerationStructureWriteInstanceDataNV has size % instead of 104", size_of(VkPartitionedAccelerationStructureWriteInstanceDataNV)); } { info := type_info(VkPartitionedAccelerationStructureUpdateInstanceDataNV); for info.members { if it.name == { case "instanceIndex"; assert(it.offset_in_bytes == 0, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.instanceIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.instanceIndex has unexpected size % instead of 4", it.type.runtime_size); case "instanceContributionToHitGroupIndex"; assert(it.offset_in_bytes == 4, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.instanceContributionToHitGroupIndex has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.instanceContributionToHitGroupIndex has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 8, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.accelerationStructure has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPartitionedAccelerationStructureUpdateInstanceDataNV.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPartitionedAccelerationStructureUpdateInstanceDataNV) == 16, "VkPartitionedAccelerationStructureUpdateInstanceDataNV has size % instead of 16", size_of(VkPartitionedAccelerationStructureUpdateInstanceDataNV)); } { info := type_info(VkPartitionedAccelerationStructureWritePartitionTranslationDataNV); for info.members { if it.name == { case "partitionIndex"; assert(it.offset_in_bytes == 0, "VkPartitionedAccelerationStructureWritePartitionTranslationDataNV.partitionIndex has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureWritePartitionTranslationDataNV.partitionIndex has unexpected size % instead of 4", it.type.runtime_size); case "partitionTranslation"; assert(it.offset_in_bytes == 4, "VkPartitionedAccelerationStructureWritePartitionTranslationDataNV.partitionTranslation has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPartitionedAccelerationStructureWritePartitionTranslationDataNV.partitionTranslation has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkPartitionedAccelerationStructureWritePartitionTranslationDataNV) == 16, "VkPartitionedAccelerationStructureWritePartitionTranslationDataNV has size % instead of 16", size_of(VkPartitionedAccelerationStructureWritePartitionTranslationDataNV)); } { info := type_info(VkWriteDescriptorSetPartitionedAccelerationStructureNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureCount"; assert(it.offset_in_bytes == 16, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.accelerationStructureCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.accelerationStructureCount has unexpected size % instead of 4", it.type.runtime_size); case "pAccelerationStructures"; assert(it.offset_in_bytes == 24, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.pAccelerationStructures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetPartitionedAccelerationStructureNV.pAccelerationStructures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteDescriptorSetPartitionedAccelerationStructureNV) == 32, "VkWriteDescriptorSetPartitionedAccelerationStructureNV has size % instead of 32", size_of(VkWriteDescriptorSetPartitionedAccelerationStructureNV)); } { info := type_info(VkPartitionedAccelerationStructureInstancesInputNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPartitionedAccelerationStructureInstancesInputNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPartitionedAccelerationStructureInstancesInputNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPartitionedAccelerationStructureInstancesInputNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkPartitionedAccelerationStructureInstancesInputNV.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.flags has unexpected size % instead of 4", it.type.runtime_size); case "instanceCount"; assert(it.offset_in_bytes == 20, "VkPartitionedAccelerationStructureInstancesInputNV.instanceCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.instanceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxInstancePerPartitionCount"; assert(it.offset_in_bytes == 24, "VkPartitionedAccelerationStructureInstancesInputNV.maxInstancePerPartitionCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.maxInstancePerPartitionCount has unexpected size % instead of 4", it.type.runtime_size); case "partitionCount"; assert(it.offset_in_bytes == 28, "VkPartitionedAccelerationStructureInstancesInputNV.partitionCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.partitionCount has unexpected size % instead of 4", it.type.runtime_size); case "maxInstanceInGlobalPartitionCount"; assert(it.offset_in_bytes == 32, "VkPartitionedAccelerationStructureInstancesInputNV.maxInstanceInGlobalPartitionCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPartitionedAccelerationStructureInstancesInputNV.maxInstanceInGlobalPartitionCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPartitionedAccelerationStructureInstancesInputNV) == 40, "VkPartitionedAccelerationStructureInstancesInputNV has size % instead of 40", size_of(VkPartitionedAccelerationStructureInstancesInputNV)); } { info := type_info(VkBuildPartitionedAccelerationStructureInfoNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkBuildPartitionedAccelerationStructureInfoNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBuildPartitionedAccelerationStructureInfoNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkBuildPartitionedAccelerationStructureInfoNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "input"; assert(it.offset_in_bytes == 16, "VkBuildPartitionedAccelerationStructureInfoNV.input has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 40, "VkBuildPartitionedAccelerationStructureInfoNV.input has unexpected size % instead of 40", it.type.runtime_size); case "srcAccelerationStructureData"; assert(it.offset_in_bytes == 56, "VkBuildPartitionedAccelerationStructureInfoNV.srcAccelerationStructureData has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.srcAccelerationStructureData has unexpected size % instead of 8", it.type.runtime_size); case "dstAccelerationStructureData"; assert(it.offset_in_bytes == 64, "VkBuildPartitionedAccelerationStructureInfoNV.dstAccelerationStructureData has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.dstAccelerationStructureData has unexpected size % instead of 8", it.type.runtime_size); case "scratchData"; assert(it.offset_in_bytes == 72, "VkBuildPartitionedAccelerationStructureInfoNV.scratchData has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.scratchData has unexpected size % instead of 8", it.type.runtime_size); case "srcInfos"; assert(it.offset_in_bytes == 80, "VkBuildPartitionedAccelerationStructureInfoNV.srcInfos has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.srcInfos has unexpected size % instead of 8", it.type.runtime_size); case "srcInfosCount"; assert(it.offset_in_bytes == 88, "VkBuildPartitionedAccelerationStructureInfoNV.srcInfosCount has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBuildPartitionedAccelerationStructureInfoNV.srcInfosCount has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkBuildPartitionedAccelerationStructureInfoNV) == 96, "VkBuildPartitionedAccelerationStructureInfoNV has size % instead of 96", size_of(VkBuildPartitionedAccelerationStructureInfoNV)); } { info := type_info(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "deviceGeneratedCommands"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.deviceGeneratedCommands has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.deviceGeneratedCommands has unexpected size % instead of 4", it.type.runtime_size); case "dynamicGeneratedPipelineLayout"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.dynamicGeneratedPipelineLayout has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT.dynamicGeneratedPipelineLayout has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT) == 24, "VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT)); } { info := type_info(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxIndirectPipelineCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectPipelineCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectPipelineCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectShaderObjectCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectShaderObjectCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectShaderObjectCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectSequenceCount"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectSequenceCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectSequenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsTokenCount"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsTokenCount has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsTokenCount has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsTokenOffset"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsTokenOffset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsTokenOffset has unexpected size % instead of 4", it.type.runtime_size); case "maxIndirectCommandsIndirectStride"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsIndirectStride has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.maxIndirectCommandsIndirectStride has unexpected size % instead of 4", it.type.runtime_size); case "supportedIndirectCommandsInputModes"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsInputModes has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsInputModes has unexpected size % instead of 4", it.type.runtime_size); case "supportedIndirectCommandsShaderStages"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStages has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStages has unexpected size % instead of 4", it.type.runtime_size); case "supportedIndirectCommandsShaderStagesPipelineBinding"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStagesPipelineBinding has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStagesPipelineBinding has unexpected size % instead of 4", it.type.runtime_size); case "supportedIndirectCommandsShaderStagesShaderBinding"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStagesShaderBinding has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.supportedIndirectCommandsShaderStagesShaderBinding has unexpected size % instead of 4", it.type.runtime_size); case "deviceGeneratedCommandsTransformFeedback"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.deviceGeneratedCommandsTransformFeedback has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.deviceGeneratedCommandsTransformFeedback has unexpected size % instead of 4", it.type.runtime_size); case "deviceGeneratedCommandsMultiDrawIndirectCount"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.deviceGeneratedCommandsMultiDrawIndirectCount has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT.deviceGeneratedCommandsMultiDrawIndirectCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT) == 64, "VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT has size % instead of 64", size_of(VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT)); } { info := type_info(VkGeneratedCommandsMemoryRequirementsInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsMemoryRequirementsInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsMemoryRequirementsInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "indirectExecutionSet"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsMemoryRequirementsInfoEXT.indirectExecutionSet has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoEXT.indirectExecutionSet has unexpected size % instead of 8", it.type.runtime_size); case "indirectCommandsLayout"; assert(it.offset_in_bytes == 24, "VkGeneratedCommandsMemoryRequirementsInfoEXT.indirectCommandsLayout has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsMemoryRequirementsInfoEXT.indirectCommandsLayout has unexpected size % instead of 8", it.type.runtime_size); case "maxSequenceCount"; assert(it.offset_in_bytes == 32, "VkGeneratedCommandsMemoryRequirementsInfoEXT.maxSequenceCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoEXT.maxSequenceCount has unexpected size % instead of 4", it.type.runtime_size); case "maxDrawCount"; assert(it.offset_in_bytes == 36, "VkGeneratedCommandsMemoryRequirementsInfoEXT.maxDrawCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsMemoryRequirementsInfoEXT.maxDrawCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsMemoryRequirementsInfoEXT) == 40, "VkGeneratedCommandsMemoryRequirementsInfoEXT has size % instead of 40", size_of(VkGeneratedCommandsMemoryRequirementsInfoEXT)); } { info := type_info(VkIndirectExecutionSetPipelineInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetPipelineInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetPipelineInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectExecutionSetPipelineInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetPipelineInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "initialPipeline"; assert(it.offset_in_bytes == 16, "VkIndirectExecutionSetPipelineInfoEXT.initialPipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetPipelineInfoEXT.initialPipeline has unexpected size % instead of 8", it.type.runtime_size); case "maxPipelineCount"; assert(it.offset_in_bytes == 24, "VkIndirectExecutionSetPipelineInfoEXT.maxPipelineCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetPipelineInfoEXT.maxPipelineCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkIndirectExecutionSetPipelineInfoEXT) == 32, "VkIndirectExecutionSetPipelineInfoEXT has size % instead of 32", size_of(VkIndirectExecutionSetPipelineInfoEXT)); } { info := type_info(VkIndirectExecutionSetShaderLayoutInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetShaderLayoutInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderLayoutInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectExecutionSetShaderLayoutInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderLayoutInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "setLayoutCount"; assert(it.offset_in_bytes == 16, "VkIndirectExecutionSetShaderLayoutInfoEXT.setLayoutCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderLayoutInfoEXT.setLayoutCount has unexpected size % instead of 4", it.type.runtime_size); case "pSetLayouts"; assert(it.offset_in_bytes == 24, "VkIndirectExecutionSetShaderLayoutInfoEXT.pSetLayouts has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderLayoutInfoEXT.pSetLayouts has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectExecutionSetShaderLayoutInfoEXT) == 32, "VkIndirectExecutionSetShaderLayoutInfoEXT has size % instead of 32", size_of(VkIndirectExecutionSetShaderLayoutInfoEXT)); } { info := type_info(VkIndirectExecutionSetShaderInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetShaderInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectExecutionSetShaderInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCount"; assert(it.offset_in_bytes == 16, "VkIndirectExecutionSetShaderInfoEXT.shaderCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderInfoEXT.shaderCount has unexpected size % instead of 4", it.type.runtime_size); case "pInitialShaders"; assert(it.offset_in_bytes == 24, "VkIndirectExecutionSetShaderInfoEXT.pInitialShaders has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderInfoEXT.pInitialShaders has unexpected size % instead of 8", it.type.runtime_size); case "pSetLayoutInfos"; assert(it.offset_in_bytes == 32, "VkIndirectExecutionSetShaderInfoEXT.pSetLayoutInfos has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderInfoEXT.pSetLayoutInfos has unexpected size % instead of 8", it.type.runtime_size); case "maxShaderCount"; assert(it.offset_in_bytes == 40, "VkIndirectExecutionSetShaderInfoEXT.maxShaderCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderInfoEXT.maxShaderCount has unexpected size % instead of 4", it.type.runtime_size); case "pushConstantRangeCount"; assert(it.offset_in_bytes == 44, "VkIndirectExecutionSetShaderInfoEXT.pushConstantRangeCount has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetShaderInfoEXT.pushConstantRangeCount has unexpected size % instead of 4", it.type.runtime_size); case "pPushConstantRanges"; assert(it.offset_in_bytes == 48, "VkIndirectExecutionSetShaderInfoEXT.pPushConstantRanges has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetShaderInfoEXT.pPushConstantRanges has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectExecutionSetShaderInfoEXT) == 56, "VkIndirectExecutionSetShaderInfoEXT has size % instead of 56", size_of(VkIndirectExecutionSetShaderInfoEXT)); } { info := type_info(VkIndirectExecutionSetInfoEXT); for info.members { if it.name == { case "pPipelineInfo"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetInfoEXT.pPipelineInfo has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetInfoEXT.pPipelineInfo has unexpected size % instead of 8", it.type.runtime_size); case "pShaderInfo"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetInfoEXT.pShaderInfo has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetInfoEXT.pShaderInfo has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectExecutionSetInfoEXT) == 8, "VkIndirectExecutionSetInfoEXT has size % instead of 8", size_of(VkIndirectExecutionSetInfoEXT)); } { info := type_info(VkIndirectExecutionSetCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectExecutionSetCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectExecutionSetCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkIndirectExecutionSetCreateInfoEXT.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectExecutionSetCreateInfoEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "info"; assert(it.offset_in_bytes == 24, "VkIndirectExecutionSetCreateInfoEXT.info has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectExecutionSetCreateInfoEXT.info has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectExecutionSetCreateInfoEXT) == 32, "VkIndirectExecutionSetCreateInfoEXT has size % instead of 32", size_of(VkIndirectExecutionSetCreateInfoEXT)); } { info := type_info(VkGeneratedCommandsInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderStages"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsInfoEXT.shaderStages has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoEXT.shaderStages has unexpected size % instead of 4", it.type.runtime_size); case "indirectExecutionSet"; assert(it.offset_in_bytes == 24, "VkGeneratedCommandsInfoEXT.indirectExecutionSet has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.indirectExecutionSet has unexpected size % instead of 8", it.type.runtime_size); case "indirectCommandsLayout"; assert(it.offset_in_bytes == 32, "VkGeneratedCommandsInfoEXT.indirectCommandsLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.indirectCommandsLayout has unexpected size % instead of 8", it.type.runtime_size); case "indirectAddress"; assert(it.offset_in_bytes == 40, "VkGeneratedCommandsInfoEXT.indirectAddress has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.indirectAddress has unexpected size % instead of 8", it.type.runtime_size); case "indirectAddressSize"; assert(it.offset_in_bytes == 48, "VkGeneratedCommandsInfoEXT.indirectAddressSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.indirectAddressSize has unexpected size % instead of 8", it.type.runtime_size); case "preprocessAddress"; assert(it.offset_in_bytes == 56, "VkGeneratedCommandsInfoEXT.preprocessAddress has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.preprocessAddress has unexpected size % instead of 8", it.type.runtime_size); case "preprocessSize"; assert(it.offset_in_bytes == 64, "VkGeneratedCommandsInfoEXT.preprocessSize has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.preprocessSize has unexpected size % instead of 8", it.type.runtime_size); case "maxSequenceCount"; assert(it.offset_in_bytes == 72, "VkGeneratedCommandsInfoEXT.maxSequenceCount has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoEXT.maxSequenceCount has unexpected size % instead of 4", it.type.runtime_size); case "sequenceCountAddress"; assert(it.offset_in_bytes == 80, "VkGeneratedCommandsInfoEXT.sequenceCountAddress has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsInfoEXT.sequenceCountAddress has unexpected size % instead of 8", it.type.runtime_size); case "maxDrawCount"; assert(it.offset_in_bytes == 88, "VkGeneratedCommandsInfoEXT.maxDrawCount has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsInfoEXT.maxDrawCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsInfoEXT) == 96, "VkGeneratedCommandsInfoEXT has size % instead of 96", size_of(VkGeneratedCommandsInfoEXT)); } { info := type_info(VkWriteIndirectExecutionSetPipelineEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteIndirectExecutionSetPipelineEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteIndirectExecutionSetPipelineEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteIndirectExecutionSetPipelineEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteIndirectExecutionSetPipelineEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "index"; assert(it.offset_in_bytes == 16, "VkWriteIndirectExecutionSetPipelineEXT.index has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteIndirectExecutionSetPipelineEXT.index has unexpected size % instead of 4", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 24, "VkWriteIndirectExecutionSetPipelineEXT.pipeline has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteIndirectExecutionSetPipelineEXT.pipeline has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteIndirectExecutionSetPipelineEXT) == 32, "VkWriteIndirectExecutionSetPipelineEXT has size % instead of 32", size_of(VkWriteIndirectExecutionSetPipelineEXT)); } { info := type_info(VkIndirectCommandsPushConstantTokenEXT); for info.members { if it.name == { case "updateRange"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsPushConstantTokenEXT.updateRange has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkIndirectCommandsPushConstantTokenEXT.updateRange has unexpected size % instead of 12", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsPushConstantTokenEXT) == 12, "VkIndirectCommandsPushConstantTokenEXT has size % instead of 12", size_of(VkIndirectCommandsPushConstantTokenEXT)); } { info := type_info(VkIndirectCommandsVertexBufferTokenEXT); for info.members { if it.name == { case "vertexBindingUnit"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsVertexBufferTokenEXT.vertexBindingUnit has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsVertexBufferTokenEXT.vertexBindingUnit has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsVertexBufferTokenEXT) == 4, "VkIndirectCommandsVertexBufferTokenEXT has size % instead of 4", size_of(VkIndirectCommandsVertexBufferTokenEXT)); } { info := type_info(VkIndirectCommandsIndexBufferTokenEXT); for info.members { if it.name == { case "mode"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsIndexBufferTokenEXT.mode has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsIndexBufferTokenEXT.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsIndexBufferTokenEXT) == 4, "VkIndirectCommandsIndexBufferTokenEXT has size % instead of 4", size_of(VkIndirectCommandsIndexBufferTokenEXT)); } { info := type_info(VkIndirectCommandsExecutionSetTokenEXT); for info.members { if it.name == { case "type"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsExecutionSetTokenEXT.type has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsExecutionSetTokenEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "shaderStages"; assert(it.offset_in_bytes == 4, "VkIndirectCommandsExecutionSetTokenEXT.shaderStages has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsExecutionSetTokenEXT.shaderStages has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsExecutionSetTokenEXT) == 8, "VkIndirectCommandsExecutionSetTokenEXT has size % instead of 8", size_of(VkIndirectCommandsExecutionSetTokenEXT)); } { info := type_info(VkIndirectCommandsTokenDataEXT); for info.members { if it.name == { case "pPushConstant"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsTokenDataEXT.pPushConstant has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsTokenDataEXT.pPushConstant has unexpected size % instead of 8", it.type.runtime_size); case "pVertexBuffer"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsTokenDataEXT.pVertexBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsTokenDataEXT.pVertexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "pIndexBuffer"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsTokenDataEXT.pIndexBuffer has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsTokenDataEXT.pIndexBuffer has unexpected size % instead of 8", it.type.runtime_size); case "pExecutionSet"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsTokenDataEXT.pExecutionSet has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsTokenDataEXT.pExecutionSet has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsTokenDataEXT) == 8, "VkIndirectCommandsTokenDataEXT has size % instead of 8", size_of(VkIndirectCommandsTokenDataEXT)); } { info := type_info(VkIndirectCommandsLayoutTokenEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsLayoutTokenEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectCommandsLayoutTokenEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkIndirectCommandsLayoutTokenEXT.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenEXT.type has unexpected size % instead of 4", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 24, "VkIndirectCommandsLayoutTokenEXT.data has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutTokenEXT.data has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 32, "VkIndirectCommandsLayoutTokenEXT.offset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutTokenEXT.offset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsLayoutTokenEXT) == 40, "VkIndirectCommandsLayoutTokenEXT has size % instead of 40", size_of(VkIndirectCommandsLayoutTokenEXT)); } { info := type_info(VkIndirectCommandsLayoutCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkIndirectCommandsLayoutCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkIndirectCommandsLayoutCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkIndirectCommandsLayoutCreateInfoEXT.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoEXT.flags has unexpected size % instead of 4", it.type.runtime_size); case "shaderStages"; assert(it.offset_in_bytes == 20, "VkIndirectCommandsLayoutCreateInfoEXT.shaderStages has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoEXT.shaderStages has unexpected size % instead of 4", it.type.runtime_size); case "indirectStride"; assert(it.offset_in_bytes == 24, "VkIndirectCommandsLayoutCreateInfoEXT.indirectStride has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoEXT.indirectStride has unexpected size % instead of 4", it.type.runtime_size); case "pipelineLayout"; assert(it.offset_in_bytes == 32, "VkIndirectCommandsLayoutCreateInfoEXT.pipelineLayout has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoEXT.pipelineLayout has unexpected size % instead of 8", it.type.runtime_size); case "tokenCount"; assert(it.offset_in_bytes == 40, "VkIndirectCommandsLayoutCreateInfoEXT.tokenCount has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkIndirectCommandsLayoutCreateInfoEXT.tokenCount has unexpected size % instead of 4", it.type.runtime_size); case "pTokens"; assert(it.offset_in_bytes == 48, "VkIndirectCommandsLayoutCreateInfoEXT.pTokens has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkIndirectCommandsLayoutCreateInfoEXT.pTokens has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkIndirectCommandsLayoutCreateInfoEXT) == 56, "VkIndirectCommandsLayoutCreateInfoEXT has size % instead of 56", size_of(VkIndirectCommandsLayoutCreateInfoEXT)); } { info := type_info(VkDrawIndirectCountIndirectCommandEXT); for info.members { if it.name == { case "bufferAddress"; assert(it.offset_in_bytes == 0, "VkDrawIndirectCountIndirectCommandEXT.bufferAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkDrawIndirectCountIndirectCommandEXT.bufferAddress has unexpected size % instead of 8", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 8, "VkDrawIndirectCountIndirectCommandEXT.stride has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCountIndirectCommandEXT.stride has unexpected size % instead of 4", it.type.runtime_size); case "commandCount"; assert(it.offset_in_bytes == 12, "VkDrawIndirectCountIndirectCommandEXT.commandCount has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawIndirectCountIndirectCommandEXT.commandCount has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrawIndirectCountIndirectCommandEXT) == 16, "VkDrawIndirectCountIndirectCommandEXT has size % instead of 16", size_of(VkDrawIndirectCountIndirectCommandEXT)); } { info := type_info(VkBindVertexBufferIndirectCommandEXT); for info.members { if it.name == { case "bufferAddress"; assert(it.offset_in_bytes == 0, "VkBindVertexBufferIndirectCommandEXT.bufferAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindVertexBufferIndirectCommandEXT.bufferAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkBindVertexBufferIndirectCommandEXT.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVertexBufferIndirectCommandEXT.size has unexpected size % instead of 4", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 12, "VkBindVertexBufferIndirectCommandEXT.stride has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindVertexBufferIndirectCommandEXT.stride has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindVertexBufferIndirectCommandEXT) == 16, "VkBindVertexBufferIndirectCommandEXT has size % instead of 16", size_of(VkBindVertexBufferIndirectCommandEXT)); } { info := type_info(VkBindIndexBufferIndirectCommandEXT); for info.members { if it.name == { case "bufferAddress"; assert(it.offset_in_bytes == 0, "VkBindIndexBufferIndirectCommandEXT.bufferAddress has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkBindIndexBufferIndirectCommandEXT.bufferAddress has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 8, "VkBindIndexBufferIndirectCommandEXT.size has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindIndexBufferIndirectCommandEXT.size has unexpected size % instead of 4", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 12, "VkBindIndexBufferIndirectCommandEXT.indexType has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkBindIndexBufferIndirectCommandEXT.indexType has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkBindIndexBufferIndirectCommandEXT) == 16, "VkBindIndexBufferIndirectCommandEXT has size % instead of 16", size_of(VkBindIndexBufferIndirectCommandEXT)); } { info := type_info(VkGeneratedCommandsPipelineInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsPipelineInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsPipelineInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsPipelineInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsPipelineInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipeline"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsPipelineInfoEXT.pipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsPipelineInfoEXT.pipeline has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsPipelineInfoEXT) == 24, "VkGeneratedCommandsPipelineInfoEXT has size % instead of 24", size_of(VkGeneratedCommandsPipelineInfoEXT)); } { info := type_info(VkGeneratedCommandsShaderInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkGeneratedCommandsShaderInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsShaderInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkGeneratedCommandsShaderInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsShaderInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderCount"; assert(it.offset_in_bytes == 16, "VkGeneratedCommandsShaderInfoEXT.shaderCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkGeneratedCommandsShaderInfoEXT.shaderCount has unexpected size % instead of 4", it.type.runtime_size); case "pShaders"; assert(it.offset_in_bytes == 24, "VkGeneratedCommandsShaderInfoEXT.pShaders has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkGeneratedCommandsShaderInfoEXT.pShaders has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkGeneratedCommandsShaderInfoEXT) == 32, "VkGeneratedCommandsShaderInfoEXT has size % instead of 32", size_of(VkGeneratedCommandsShaderInfoEXT)); } { info := type_info(VkWriteIndirectExecutionSetShaderEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteIndirectExecutionSetShaderEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteIndirectExecutionSetShaderEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteIndirectExecutionSetShaderEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteIndirectExecutionSetShaderEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "index"; assert(it.offset_in_bytes == 16, "VkWriteIndirectExecutionSetShaderEXT.index has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteIndirectExecutionSetShaderEXT.index has unexpected size % instead of 4", it.type.runtime_size); case "shader"; assert(it.offset_in_bytes == 24, "VkWriteIndirectExecutionSetShaderEXT.shader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteIndirectExecutionSetShaderEXT.shader has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteIndirectExecutionSetShaderEXT) == 32, "VkWriteIndirectExecutionSetShaderEXT has size % instead of 32", size_of(VkWriteIndirectExecutionSetShaderEXT)); } { info := type_info(VkPhysicalDeviceImageAlignmentControlFeaturesMESA); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.pNext has unexpected size % instead of 8", it.type.runtime_size); case "imageAlignmentControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.imageAlignmentControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA.imageAlignmentControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageAlignmentControlFeaturesMESA) == 24, "VkPhysicalDeviceImageAlignmentControlFeaturesMESA has size % instead of 24", size_of(VkPhysicalDeviceImageAlignmentControlFeaturesMESA)); } { info := type_info(VkPhysicalDeviceImageAlignmentControlPropertiesMESA); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.pNext has unexpected size % instead of 8", it.type.runtime_size); case "supportedImageAlignmentMask"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.supportedImageAlignmentMask has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA.supportedImageAlignmentMask has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceImageAlignmentControlPropertiesMESA) == 24, "VkPhysicalDeviceImageAlignmentControlPropertiesMESA has size % instead of 24", size_of(VkPhysicalDeviceImageAlignmentControlPropertiesMESA)); } { info := type_info(VkImageAlignmentControlCreateInfoMESA); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkImageAlignmentControlCreateInfoMESA.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageAlignmentControlCreateInfoMESA.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkImageAlignmentControlCreateInfoMESA.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkImageAlignmentControlCreateInfoMESA.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maximumRequestedAlignment"; assert(it.offset_in_bytes == 16, "VkImageAlignmentControlCreateInfoMESA.maximumRequestedAlignment has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkImageAlignmentControlCreateInfoMESA.maximumRequestedAlignment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkImageAlignmentControlCreateInfoMESA) == 24, "VkImageAlignmentControlCreateInfoMESA has size % instead of 24", size_of(VkImageAlignmentControlCreateInfoMESA)); } { info := type_info(VkPhysicalDeviceDepthClampControlFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceDepthClampControlFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClampControlFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceDepthClampControlFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceDepthClampControlFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthClampControl"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceDepthClampControlFeaturesEXT.depthClampControl has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceDepthClampControlFeaturesEXT.depthClampControl has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceDepthClampControlFeaturesEXT) == 24, "VkPhysicalDeviceDepthClampControlFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceDepthClampControlFeaturesEXT)); } { info := type_info(VkPipelineViewportDepthClampControlCreateInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPipelineViewportDepthClampControlCreateInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportDepthClampControlCreateInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPipelineViewportDepthClampControlCreateInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportDepthClampControlCreateInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "depthClampMode"; assert(it.offset_in_bytes == 16, "VkPipelineViewportDepthClampControlCreateInfoEXT.depthClampMode has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPipelineViewportDepthClampControlCreateInfoEXT.depthClampMode has unexpected size % instead of 4", it.type.runtime_size); case "pDepthClampRange"; assert(it.offset_in_bytes == 24, "VkPipelineViewportDepthClampControlCreateInfoEXT.pDepthClampRange has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPipelineViewportDepthClampControlCreateInfoEXT.pDepthClampRange has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkPipelineViewportDepthClampControlCreateInfoEXT) == 32, "VkPipelineViewportDepthClampControlCreateInfoEXT has size % instead of 32", size_of(VkPipelineViewportDepthClampControlCreateInfoEXT)); } { info := type_info(VkPhysicalDeviceHdrVividFeaturesHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "hdrVivid"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.hdrVivid has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceHdrVividFeaturesHUAWEI.hdrVivid has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceHdrVividFeaturesHUAWEI) == 24, "VkPhysicalDeviceHdrVividFeaturesHUAWEI has size % instead of 24", size_of(VkPhysicalDeviceHdrVividFeaturesHUAWEI)); } { info := type_info(VkHdrVividDynamicMetadataHUAWEI); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkHdrVividDynamicMetadataHUAWEI.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkHdrVividDynamicMetadataHUAWEI.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkHdrVividDynamicMetadataHUAWEI.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrVividDynamicMetadataHUAWEI.pNext has unexpected size % instead of 8", it.type.runtime_size); case "dynamicMetadataSize"; assert(it.offset_in_bytes == 16, "VkHdrVividDynamicMetadataHUAWEI.dynamicMetadataSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrVividDynamicMetadataHUAWEI.dynamicMetadataSize has unexpected size % instead of 8", it.type.runtime_size); case "pDynamicMetadata"; assert(it.offset_in_bytes == 24, "VkHdrVividDynamicMetadataHUAWEI.pDynamicMetadata has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkHdrVividDynamicMetadataHUAWEI.pDynamicMetadata has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkHdrVividDynamicMetadataHUAWEI) == 32, "VkHdrVividDynamicMetadataHUAWEI has size % instead of 32", size_of(VkHdrVividDynamicMetadataHUAWEI)); } { info := type_info(VkCooperativeMatrixFlexibleDimensionsPropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "MGranularity"; assert(it.offset_in_bytes == 16, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.MGranularity has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.MGranularity has unexpected size % instead of 4", it.type.runtime_size); case "NGranularity"; assert(it.offset_in_bytes == 20, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.NGranularity has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.NGranularity has unexpected size % instead of 4", it.type.runtime_size); case "KGranularity"; assert(it.offset_in_bytes == 24, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.KGranularity has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.KGranularity has unexpected size % instead of 4", it.type.runtime_size); case "AType"; assert(it.offset_in_bytes == 28, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.AType has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.AType has unexpected size % instead of 4", it.type.runtime_size); case "BType"; assert(it.offset_in_bytes == 32, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.BType has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.BType has unexpected size % instead of 4", it.type.runtime_size); case "CType"; assert(it.offset_in_bytes == 36, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.CType has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.CType has unexpected size % instead of 4", it.type.runtime_size); case "ResultType"; assert(it.offset_in_bytes == 40, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.ResultType has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.ResultType has unexpected size % instead of 4", it.type.runtime_size); case "saturatingAccumulation"; assert(it.offset_in_bytes == 44, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.saturatingAccumulation has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.saturatingAccumulation has unexpected size % instead of 4", it.type.runtime_size); case "scope"; assert(it.offset_in_bytes == 48, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.scope has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.scope has unexpected size % instead of 4", it.type.runtime_size); case "workgroupInvocations"; assert(it.offset_in_bytes == 52, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.workgroupInvocations has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV.workgroupInvocations has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCooperativeMatrixFlexibleDimensionsPropertiesNV) == 56, "VkCooperativeMatrixFlexibleDimensionsPropertiesNV has size % instead of 56", size_of(VkCooperativeMatrixFlexibleDimensionsPropertiesNV)); } { info := type_info(VkPhysicalDeviceCooperativeMatrix2FeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrixWorkgroupScope"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixWorkgroupScope has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixWorkgroupScope has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixFlexibleDimensions"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixFlexibleDimensions has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixFlexibleDimensions has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixReductions"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixReductions has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixReductions has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixConversions"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixConversions has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixConversions has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixPerElementOperations"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixPerElementOperations has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixPerElementOperations has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixTensorAddressing"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixTensorAddressing has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixTensorAddressing has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixBlockLoads"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixBlockLoads has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV.cooperativeMatrixBlockLoads has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrix2FeaturesNV) == 48, "VkPhysicalDeviceCooperativeMatrix2FeaturesNV has size % instead of 48", size_of(VkPhysicalDeviceCooperativeMatrix2FeaturesNV)); } { info := type_info(VkPhysicalDeviceCooperativeMatrix2PropertiesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "cooperativeMatrixWorkgroupScopeMaxWorkgroupSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixWorkgroupScopeMaxWorkgroupSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixWorkgroupScopeMaxWorkgroupSize has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixFlexibleDimensionsMaxDimension"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixFlexibleDimensionsMaxDimension has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixFlexibleDimensionsMaxDimension has unexpected size % instead of 4", it.type.runtime_size); case "cooperativeMatrixWorkgroupScopeReservedSharedMemory"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixWorkgroupScopeReservedSharedMemory has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV.cooperativeMatrixWorkgroupScopeReservedSharedMemory has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceCooperativeMatrix2PropertiesNV) == 32, "VkPhysicalDeviceCooperativeMatrix2PropertiesNV has size % instead of 32", size_of(VkPhysicalDeviceCooperativeMatrix2PropertiesNV)); } { info := type_info(VkPhysicalDevicePipelineOpacityMicromapFeaturesARM); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pipelineOpacityMicromap"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.pipelineOpacityMicromap has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM.pipelineOpacityMicromap has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePipelineOpacityMicromapFeaturesARM) == 24, "VkPhysicalDevicePipelineOpacityMicromapFeaturesARM has size % instead of 24", size_of(VkPhysicalDevicePipelineOpacityMicromapFeaturesARM)); } { info := type_info(VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexAttributeRobustness"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.vertexAttributeRobustness has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT.vertexAttributeRobustness has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT) == 24, "VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT has size % instead of 24", size_of(VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT)); } { info := type_info(VkSetPresentConfigNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkSetPresentConfigNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetPresentConfigNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkSetPresentConfigNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkSetPresentConfigNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "numFramesPerBatch"; assert(it.offset_in_bytes == 16, "VkSetPresentConfigNV.numFramesPerBatch has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetPresentConfigNV.numFramesPerBatch has unexpected size % instead of 4", it.type.runtime_size); case "presentConfigFeedback"; assert(it.offset_in_bytes == 20, "VkSetPresentConfigNV.presentConfigFeedback has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkSetPresentConfigNV.presentConfigFeedback has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkSetPresentConfigNV) == 24, "VkSetPresentConfigNV has size % instead of 24", size_of(VkSetPresentConfigNV)); } { info := type_info(VkPhysicalDevicePresentMeteringFeaturesNV); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDevicePresentMeteringFeaturesNV.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentMeteringFeaturesNV.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDevicePresentMeteringFeaturesNV.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDevicePresentMeteringFeaturesNV.pNext has unexpected size % instead of 8", it.type.runtime_size); case "presentMetering"; assert(it.offset_in_bytes == 16, "VkPhysicalDevicePresentMeteringFeaturesNV.presentMetering has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDevicePresentMeteringFeaturesNV.presentMetering has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDevicePresentMeteringFeaturesNV) == 24, "VkPhysicalDevicePresentMeteringFeaturesNV has size % instead of 24", size_of(VkPhysicalDevicePresentMeteringFeaturesNV)); } { info := type_info(VkRenderingEndInfoEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRenderingEndInfoEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRenderingEndInfoEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRenderingEndInfoEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRenderingEndInfoEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRenderingEndInfoEXT) == 16, "VkRenderingEndInfoEXT has size % instead of 16", size_of(VkRenderingEndInfoEXT)); } { info := type_info(VkAccelerationStructureBuildRangeInfoKHR); for info.members { if it.name == { case "primitiveCount"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureBuildRangeInfoKHR.primitiveCount has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildRangeInfoKHR.primitiveCount has unexpected size % instead of 4", it.type.runtime_size); case "primitiveOffset"; assert(it.offset_in_bytes == 4, "VkAccelerationStructureBuildRangeInfoKHR.primitiveOffset has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildRangeInfoKHR.primitiveOffset has unexpected size % instead of 4", it.type.runtime_size); case "firstVertex"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureBuildRangeInfoKHR.firstVertex has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildRangeInfoKHR.firstVertex has unexpected size % instead of 4", it.type.runtime_size); case "transformOffset"; assert(it.offset_in_bytes == 12, "VkAccelerationStructureBuildRangeInfoKHR.transformOffset has unexpected offset % instead of 12", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildRangeInfoKHR.transformOffset has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureBuildRangeInfoKHR) == 16, "VkAccelerationStructureBuildRangeInfoKHR has size % instead of 16", size_of(VkAccelerationStructureBuildRangeInfoKHR)); } { info := type_info(VkAccelerationStructureGeometryTrianglesDataKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryTrianglesDataKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryTrianglesDataKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "vertexFormat"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexFormat has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexFormat has unexpected size % instead of 4", it.type.runtime_size); case "vertexData"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexData has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexData has unexpected size % instead of 8", it.type.runtime_size); case "vertexStride"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexStride has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.vertexStride has unexpected size % instead of 8", it.type.runtime_size); case "maxVertex"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureGeometryTrianglesDataKHR.maxVertex has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryTrianglesDataKHR.maxVertex has unexpected size % instead of 4", it.type.runtime_size); case "indexType"; assert(it.offset_in_bytes == 44, "VkAccelerationStructureGeometryTrianglesDataKHR.indexType has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryTrianglesDataKHR.indexType has unexpected size % instead of 4", it.type.runtime_size); case "indexData"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureGeometryTrianglesDataKHR.indexData has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.indexData has unexpected size % instead of 8", it.type.runtime_size); case "transformData"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureGeometryTrianglesDataKHR.transformData has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryTrianglesDataKHR.transformData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryTrianglesDataKHR) == 64, "VkAccelerationStructureGeometryTrianglesDataKHR has size % instead of 64", size_of(VkAccelerationStructureGeometryTrianglesDataKHR)); } { info := type_info(VkAccelerationStructureGeometryAabbsDataKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryAabbsDataKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryAabbsDataKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryAabbsDataKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryAabbsDataKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryAabbsDataKHR.data has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryAabbsDataKHR.data has unexpected size % instead of 8", it.type.runtime_size); case "stride"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometryAabbsDataKHR.stride has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryAabbsDataKHR.stride has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryAabbsDataKHR) == 32, "VkAccelerationStructureGeometryAabbsDataKHR has size % instead of 32", size_of(VkAccelerationStructureGeometryAabbsDataKHR)); } { info := type_info(VkAccelerationStructureGeometryInstancesDataKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryInstancesDataKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryInstancesDataKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryInstancesDataKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryInstancesDataKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "arrayOfPointers"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryInstancesDataKHR.arrayOfPointers has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryInstancesDataKHR.arrayOfPointers has unexpected size % instead of 4", it.type.runtime_size); case "data"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometryInstancesDataKHR.data has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryInstancesDataKHR.data has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryInstancesDataKHR) == 32, "VkAccelerationStructureGeometryInstancesDataKHR has size % instead of 32", size_of(VkAccelerationStructureGeometryInstancesDataKHR)); } { info := type_info(VkAccelerationStructureGeometryDataKHR); for info.members { if it.name == { case "triangles"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryDataKHR.triangles has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkAccelerationStructureGeometryDataKHR.triangles has unexpected size % instead of 64", it.type.runtime_size); case "aabbs"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryDataKHR.aabbs has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkAccelerationStructureGeometryDataKHR.aabbs has unexpected size % instead of 32", it.type.runtime_size); case "instances"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryDataKHR.instances has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 32, "VkAccelerationStructureGeometryDataKHR.instances has unexpected size % instead of 32", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryDataKHR) == 64, "VkAccelerationStructureGeometryDataKHR has size % instead of 64", size_of(VkAccelerationStructureGeometryDataKHR)); } { info := type_info(VkAccelerationStructureGeometryKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureGeometryKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureGeometryKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureGeometryKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "geometryType"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureGeometryKHR.geometryType has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryKHR.geometryType has unexpected size % instead of 4", it.type.runtime_size); case "geometry"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureGeometryKHR.geometry has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 64, "VkAccelerationStructureGeometryKHR.geometry has unexpected size % instead of 64", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 88, "VkAccelerationStructureGeometryKHR.flags has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureGeometryKHR.flags has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureGeometryKHR) == 96, "VkAccelerationStructureGeometryKHR has size % instead of 96", size_of(VkAccelerationStructureGeometryKHR)); } { info := type_info(VkAccelerationStructureBuildGeometryInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureBuildGeometryInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildGeometryInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureBuildGeometryInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureBuildGeometryInfoKHR.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildGeometryInfoKHR.type has unexpected size % instead of 4", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 20, "VkAccelerationStructureBuildGeometryInfoKHR.flags has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildGeometryInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureBuildGeometryInfoKHR.mode has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildGeometryInfoKHR.mode has unexpected size % instead of 4", it.type.runtime_size); case "srcAccelerationStructure"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureBuildGeometryInfoKHR.srcAccelerationStructure has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.srcAccelerationStructure has unexpected size % instead of 8", it.type.runtime_size); case "dstAccelerationStructure"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureBuildGeometryInfoKHR.dstAccelerationStructure has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.dstAccelerationStructure has unexpected size % instead of 8", it.type.runtime_size); case "geometryCount"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureBuildGeometryInfoKHR.geometryCount has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureBuildGeometryInfoKHR.geometryCount has unexpected size % instead of 4", it.type.runtime_size); case "pGeometries"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureBuildGeometryInfoKHR.pGeometries has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.pGeometries has unexpected size % instead of 8", it.type.runtime_size); case "ppGeometries"; assert(it.offset_in_bytes == 64, "VkAccelerationStructureBuildGeometryInfoKHR.ppGeometries has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.ppGeometries has unexpected size % instead of 8", it.type.runtime_size); case "scratchData"; assert(it.offset_in_bytes == 72, "VkAccelerationStructureBuildGeometryInfoKHR.scratchData has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureBuildGeometryInfoKHR.scratchData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureBuildGeometryInfoKHR) == 80, "VkAccelerationStructureBuildGeometryInfoKHR has size % instead of 80", size_of(VkAccelerationStructureBuildGeometryInfoKHR)); } { info := type_info(VkAccelerationStructureCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "createFlags"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureCreateInfoKHR.createFlags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureCreateInfoKHR.createFlags has unexpected size % instead of 4", it.type.runtime_size); case "buffer"; assert(it.offset_in_bytes == 24, "VkAccelerationStructureCreateInfoKHR.buffer has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoKHR.buffer has unexpected size % instead of 8", it.type.runtime_size); case "offset"; assert(it.offset_in_bytes == 32, "VkAccelerationStructureCreateInfoKHR.offset has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoKHR.offset has unexpected size % instead of 8", it.type.runtime_size); case "size"; assert(it.offset_in_bytes == 40, "VkAccelerationStructureCreateInfoKHR.size has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoKHR.size has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 48, "VkAccelerationStructureCreateInfoKHR.type has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureCreateInfoKHR.type has unexpected size % instead of 4", it.type.runtime_size); case "deviceAddress"; assert(it.offset_in_bytes == 56, "VkAccelerationStructureCreateInfoKHR.deviceAddress has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureCreateInfoKHR.deviceAddress has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureCreateInfoKHR) == 64, "VkAccelerationStructureCreateInfoKHR has size % instead of 64", size_of(VkAccelerationStructureCreateInfoKHR)); } { info := type_info(VkWriteDescriptorSetAccelerationStructureKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkWriteDescriptorSetAccelerationStructureKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetAccelerationStructureKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkWriteDescriptorSetAccelerationStructureKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetAccelerationStructureKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructureCount"; assert(it.offset_in_bytes == 16, "VkWriteDescriptorSetAccelerationStructureKHR.accelerationStructureCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkWriteDescriptorSetAccelerationStructureKHR.accelerationStructureCount has unexpected size % instead of 4", it.type.runtime_size); case "pAccelerationStructures"; assert(it.offset_in_bytes == 24, "VkWriteDescriptorSetAccelerationStructureKHR.pAccelerationStructures has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkWriteDescriptorSetAccelerationStructureKHR.pAccelerationStructures has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkWriteDescriptorSetAccelerationStructureKHR) == 32, "VkWriteDescriptorSetAccelerationStructureKHR has size % instead of 32", size_of(VkWriteDescriptorSetAccelerationStructureKHR)); } { info := type_info(VkPhysicalDeviceAccelerationStructureFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructure has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructureCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructureIndirectBuild"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureIndirectBuild has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureIndirectBuild has unexpected size % instead of 4", it.type.runtime_size); case "accelerationStructureHostCommands"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureHostCommands has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.accelerationStructureHostCommands has unexpected size % instead of 4", it.type.runtime_size); case "descriptorBindingAccelerationStructureUpdateAfterBind"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.descriptorBindingAccelerationStructureUpdateAfterBind has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructureFeaturesKHR.descriptorBindingAccelerationStructureUpdateAfterBind has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAccelerationStructureFeaturesKHR) == 40, "VkPhysicalDeviceAccelerationStructureFeaturesKHR has size % instead of 40", size_of(VkPhysicalDeviceAccelerationStructureFeaturesKHR)); } { info := type_info(VkPhysicalDeviceAccelerationStructurePropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxGeometryCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxGeometryCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxGeometryCount has unexpected size % instead of 8", it.type.runtime_size); case "maxInstanceCount"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxInstanceCount has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxInstanceCount has unexpected size % instead of 8", it.type.runtime_size); case "maxPrimitiveCount"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPrimitiveCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPrimitiveCount has unexpected size % instead of 8", it.type.runtime_size); case "maxPerStageDescriptorAccelerationStructures"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPerStageDescriptorAccelerationStructures has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPerStageDescriptorAccelerationStructures has unexpected size % instead of 4", it.type.runtime_size); case "maxPerStageDescriptorUpdateAfterBindAccelerationStructures"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPerStageDescriptorUpdateAfterBindAccelerationStructures has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxPerStageDescriptorUpdateAfterBindAccelerationStructures has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetAccelerationStructures"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxDescriptorSetAccelerationStructures has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxDescriptorSetAccelerationStructures has unexpected size % instead of 4", it.type.runtime_size); case "maxDescriptorSetUpdateAfterBindAccelerationStructures"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxDescriptorSetUpdateAfterBindAccelerationStructures has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.maxDescriptorSetUpdateAfterBindAccelerationStructures has unexpected size % instead of 4", it.type.runtime_size); case "minAccelerationStructureScratchOffsetAlignment"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.minAccelerationStructureScratchOffsetAlignment has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceAccelerationStructurePropertiesKHR.minAccelerationStructureScratchOffsetAlignment has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceAccelerationStructurePropertiesKHR) == 64, "VkPhysicalDeviceAccelerationStructurePropertiesKHR has size % instead of 64", size_of(VkPhysicalDeviceAccelerationStructurePropertiesKHR)); } { info := type_info(VkAccelerationStructureDeviceAddressInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureDeviceAddressInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureDeviceAddressInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureDeviceAddressInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureDeviceAddressInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "accelerationStructure"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureDeviceAddressInfoKHR.accelerationStructure has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureDeviceAddressInfoKHR.accelerationStructure has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureDeviceAddressInfoKHR) == 24, "VkAccelerationStructureDeviceAddressInfoKHR has size % instead of 24", size_of(VkAccelerationStructureDeviceAddressInfoKHR)); } { info := type_info(VkAccelerationStructureVersionInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkAccelerationStructureVersionInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkAccelerationStructureVersionInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkAccelerationStructureVersionInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureVersionInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "pVersionData"; assert(it.offset_in_bytes == 16, "VkAccelerationStructureVersionInfoKHR.pVersionData has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkAccelerationStructureVersionInfoKHR.pVersionData has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkAccelerationStructureVersionInfoKHR) == 24, "VkAccelerationStructureVersionInfoKHR has size % instead of 24", size_of(VkAccelerationStructureVersionInfoKHR)); } { info := type_info(VkCopyAccelerationStructureToMemoryInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyAccelerationStructureToMemoryInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyAccelerationStructureToMemoryInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyAccelerationStructureToMemoryInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureToMemoryInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyAccelerationStructureToMemoryInfoKHR.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureToMemoryInfoKHR.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyAccelerationStructureToMemoryInfoKHR.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureToMemoryInfoKHR.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyAccelerationStructureToMemoryInfoKHR.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyAccelerationStructureToMemoryInfoKHR.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyAccelerationStructureToMemoryInfoKHR) == 40, "VkCopyAccelerationStructureToMemoryInfoKHR has size % instead of 40", size_of(VkCopyAccelerationStructureToMemoryInfoKHR)); } { info := type_info(VkCopyMemoryToAccelerationStructureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyMemoryToAccelerationStructureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToAccelerationStructureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyMemoryToAccelerationStructureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToAccelerationStructureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyMemoryToAccelerationStructureInfoKHR.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToAccelerationStructureInfoKHR.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyMemoryToAccelerationStructureInfoKHR.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyMemoryToAccelerationStructureInfoKHR.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyMemoryToAccelerationStructureInfoKHR.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyMemoryToAccelerationStructureInfoKHR.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyMemoryToAccelerationStructureInfoKHR) == 40, "VkCopyMemoryToAccelerationStructureInfoKHR has size % instead of 40", size_of(VkCopyMemoryToAccelerationStructureInfoKHR)); } { info := type_info(VkCopyAccelerationStructureInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkCopyAccelerationStructureInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyAccelerationStructureInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkCopyAccelerationStructureInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "src"; assert(it.offset_in_bytes == 16, "VkCopyAccelerationStructureInfoKHR.src has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureInfoKHR.src has unexpected size % instead of 8", it.type.runtime_size); case "dst"; assert(it.offset_in_bytes == 24, "VkCopyAccelerationStructureInfoKHR.dst has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkCopyAccelerationStructureInfoKHR.dst has unexpected size % instead of 8", it.type.runtime_size); case "mode"; assert(it.offset_in_bytes == 32, "VkCopyAccelerationStructureInfoKHR.mode has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkCopyAccelerationStructureInfoKHR.mode has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkCopyAccelerationStructureInfoKHR) == 40, "VkCopyAccelerationStructureInfoKHR has size % instead of 40", size_of(VkCopyAccelerationStructureInfoKHR)); } { info := type_info(VkRayTracingShaderGroupCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingShaderGroupCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingShaderGroupCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingShaderGroupCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "type"; assert(it.offset_in_bytes == 16, "VkRayTracingShaderGroupCreateInfoKHR.type has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.type has unexpected size % instead of 4", it.type.runtime_size); case "generalShader"; assert(it.offset_in_bytes == 20, "VkRayTracingShaderGroupCreateInfoKHR.generalShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.generalShader has unexpected size % instead of 4", it.type.runtime_size); case "closestHitShader"; assert(it.offset_in_bytes == 24, "VkRayTracingShaderGroupCreateInfoKHR.closestHitShader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.closestHitShader has unexpected size % instead of 4", it.type.runtime_size); case "anyHitShader"; assert(it.offset_in_bytes == 28, "VkRayTracingShaderGroupCreateInfoKHR.anyHitShader has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.anyHitShader has unexpected size % instead of 4", it.type.runtime_size); case "intersectionShader"; assert(it.offset_in_bytes == 32, "VkRayTracingShaderGroupCreateInfoKHR.intersectionShader has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingShaderGroupCreateInfoKHR.intersectionShader has unexpected size % instead of 4", it.type.runtime_size); case "pShaderGroupCaptureReplayHandle"; assert(it.offset_in_bytes == 40, "VkRayTracingShaderGroupCreateInfoKHR.pShaderGroupCaptureReplayHandle has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingShaderGroupCreateInfoKHR.pShaderGroupCaptureReplayHandle has unexpected size % instead of 8", it.type.runtime_size); } } assert(size_of(VkRayTracingShaderGroupCreateInfoKHR) == 48, "VkRayTracingShaderGroupCreateInfoKHR has size % instead of 48", size_of(VkRayTracingShaderGroupCreateInfoKHR)); } { info := type_info(VkRayTracingPipelineInterfaceCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingPipelineInterfaceCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineInterfaceCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingPipelineInterfaceCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineInterfaceCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxPipelineRayPayloadSize"; assert(it.offset_in_bytes == 16, "VkRayTracingPipelineInterfaceCreateInfoKHR.maxPipelineRayPayloadSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineInterfaceCreateInfoKHR.maxPipelineRayPayloadSize has unexpected size % instead of 4", it.type.runtime_size); case "maxPipelineRayHitAttributeSize"; assert(it.offset_in_bytes == 20, "VkRayTracingPipelineInterfaceCreateInfoKHR.maxPipelineRayHitAttributeSize has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineInterfaceCreateInfoKHR.maxPipelineRayHitAttributeSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRayTracingPipelineInterfaceCreateInfoKHR) == 24, "VkRayTracingPipelineInterfaceCreateInfoKHR has size % instead of 24", size_of(VkRayTracingPipelineInterfaceCreateInfoKHR)); } { info := type_info(VkRayTracingPipelineCreateInfoKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkRayTracingPipelineCreateInfoKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkRayTracingPipelineCreateInfoKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "flags"; assert(it.offset_in_bytes == 16, "VkRayTracingPipelineCreateInfoKHR.flags has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.flags has unexpected size % instead of 4", it.type.runtime_size); case "stageCount"; assert(it.offset_in_bytes == 20, "VkRayTracingPipelineCreateInfoKHR.stageCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.stageCount has unexpected size % instead of 4", it.type.runtime_size); case "pStages"; assert(it.offset_in_bytes == 24, "VkRayTracingPipelineCreateInfoKHR.pStages has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pStages has unexpected size % instead of 8", it.type.runtime_size); case "groupCount"; assert(it.offset_in_bytes == 32, "VkRayTracingPipelineCreateInfoKHR.groupCount has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.groupCount has unexpected size % instead of 4", it.type.runtime_size); case "pGroups"; assert(it.offset_in_bytes == 40, "VkRayTracingPipelineCreateInfoKHR.pGroups has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pGroups has unexpected size % instead of 8", it.type.runtime_size); case "maxPipelineRayRecursionDepth"; assert(it.offset_in_bytes == 48, "VkRayTracingPipelineCreateInfoKHR.maxPipelineRayRecursionDepth has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.maxPipelineRayRecursionDepth has unexpected size % instead of 4", it.type.runtime_size); case "pLibraryInfo"; assert(it.offset_in_bytes == 56, "VkRayTracingPipelineCreateInfoKHR.pLibraryInfo has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pLibraryInfo has unexpected size % instead of 8", it.type.runtime_size); case "pLibraryInterface"; assert(it.offset_in_bytes == 64, "VkRayTracingPipelineCreateInfoKHR.pLibraryInterface has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pLibraryInterface has unexpected size % instead of 8", it.type.runtime_size); case "pDynamicState"; assert(it.offset_in_bytes == 72, "VkRayTracingPipelineCreateInfoKHR.pDynamicState has unexpected offset % instead of 72", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.pDynamicState has unexpected size % instead of 8", it.type.runtime_size); case "layout"; assert(it.offset_in_bytes == 80, "VkRayTracingPipelineCreateInfoKHR.layout has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.layout has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineHandle"; assert(it.offset_in_bytes == 88, "VkRayTracingPipelineCreateInfoKHR.basePipelineHandle has unexpected offset % instead of 88", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkRayTracingPipelineCreateInfoKHR.basePipelineHandle has unexpected size % instead of 8", it.type.runtime_size); case "basePipelineIndex"; assert(it.offset_in_bytes == 96, "VkRayTracingPipelineCreateInfoKHR.basePipelineIndex has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkRayTracingPipelineCreateInfoKHR.basePipelineIndex has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkRayTracingPipelineCreateInfoKHR) == 104, "VkRayTracingPipelineCreateInfoKHR has size % instead of 104", size_of(VkRayTracingPipelineCreateInfoKHR)); } { info := type_info(VkPhysicalDeviceRayTracingPipelineFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayTracingPipeline"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipeline has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipeline has unexpected size % instead of 4", it.type.runtime_size); case "rayTracingPipelineShaderGroupHandleCaptureReplay"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineShaderGroupHandleCaptureReplay has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineShaderGroupHandleCaptureReplay has unexpected size % instead of 4", it.type.runtime_size); case "rayTracingPipelineShaderGroupHandleCaptureReplayMixed"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineShaderGroupHandleCaptureReplayMixed has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineShaderGroupHandleCaptureReplayMixed has unexpected size % instead of 4", it.type.runtime_size); case "rayTracingPipelineTraceRaysIndirect"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineTraceRaysIndirect has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTracingPipelineTraceRaysIndirect has unexpected size % instead of 4", it.type.runtime_size); case "rayTraversalPrimitiveCulling"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTraversalPrimitiveCulling has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR.rayTraversalPrimitiveCulling has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingPipelineFeaturesKHR) == 40, "VkPhysicalDeviceRayTracingPipelineFeaturesKHR has size % instead of 40", size_of(VkPhysicalDeviceRayTracingPipelineFeaturesKHR)); } { info := type_info(VkPhysicalDeviceRayTracingPipelinePropertiesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "shaderGroupHandleSize"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleSize has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleSize has unexpected size % instead of 4", it.type.runtime_size); case "maxRayRecursionDepth"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayRecursionDepth has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayRecursionDepth has unexpected size % instead of 4", it.type.runtime_size); case "maxShaderGroupStride"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxShaderGroupStride has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxShaderGroupStride has unexpected size % instead of 4", it.type.runtime_size); case "shaderGroupBaseAlignment"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupBaseAlignment has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupBaseAlignment has unexpected size % instead of 4", it.type.runtime_size); case "shaderGroupHandleCaptureReplaySize"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleCaptureReplaySize has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleCaptureReplaySize has unexpected size % instead of 4", it.type.runtime_size); case "maxRayDispatchInvocationCount"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayDispatchInvocationCount has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayDispatchInvocationCount has unexpected size % instead of 4", it.type.runtime_size); case "shaderGroupHandleAlignment"; assert(it.offset_in_bytes == 40, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleAlignment has unexpected offset % instead of 40", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.shaderGroupHandleAlignment has unexpected size % instead of 4", it.type.runtime_size); case "maxRayHitAttributeSize"; assert(it.offset_in_bytes == 44, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayHitAttributeSize has unexpected offset % instead of 44", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR.maxRayHitAttributeSize has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayTracingPipelinePropertiesKHR) == 48, "VkPhysicalDeviceRayTracingPipelinePropertiesKHR has size % instead of 48", size_of(VkPhysicalDeviceRayTracingPipelinePropertiesKHR)); } { info := type_info(VkTraceRaysIndirectCommandKHR); for info.members { if it.name == { case "width"; assert(it.offset_in_bytes == 0, "VkTraceRaysIndirectCommandKHR.width has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommandKHR.width has unexpected size % instead of 4", it.type.runtime_size); case "height"; assert(it.offset_in_bytes == 4, "VkTraceRaysIndirectCommandKHR.height has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommandKHR.height has unexpected size % instead of 4", it.type.runtime_size); case "depth"; assert(it.offset_in_bytes == 8, "VkTraceRaysIndirectCommandKHR.depth has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkTraceRaysIndirectCommandKHR.depth has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkTraceRaysIndirectCommandKHR) == 12, "VkTraceRaysIndirectCommandKHR has size % instead of 12", size_of(VkTraceRaysIndirectCommandKHR)); } { info := type_info(VkPhysicalDeviceRayQueryFeaturesKHR); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceRayQueryFeaturesKHR.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayQueryFeaturesKHR.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceRayQueryFeaturesKHR.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceRayQueryFeaturesKHR.pNext has unexpected size % instead of 8", it.type.runtime_size); case "rayQuery"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceRayQueryFeaturesKHR.rayQuery has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceRayQueryFeaturesKHR.rayQuery has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceRayQueryFeaturesKHR) == 24, "VkPhysicalDeviceRayQueryFeaturesKHR has size % instead of 24", size_of(VkPhysicalDeviceRayQueryFeaturesKHR)); } { info := type_info(VkPhysicalDeviceMeshShaderFeaturesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMeshShaderFeaturesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMeshShaderFeaturesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMeshShaderFeaturesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "taskShader"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMeshShaderFeaturesEXT.taskShader has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.taskShader has unexpected size % instead of 4", it.type.runtime_size); case "meshShader"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMeshShaderFeaturesEXT.meshShader has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.meshShader has unexpected size % instead of 4", it.type.runtime_size); case "multiviewMeshShader"; assert(it.offset_in_bytes == 24, "VkPhysicalDeviceMeshShaderFeaturesEXT.multiviewMeshShader has unexpected offset % instead of 24", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.multiviewMeshShader has unexpected size % instead of 4", it.type.runtime_size); case "primitiveFragmentShadingRateMeshShader"; assert(it.offset_in_bytes == 28, "VkPhysicalDeviceMeshShaderFeaturesEXT.primitiveFragmentShadingRateMeshShader has unexpected offset % instead of 28", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.primitiveFragmentShadingRateMeshShader has unexpected size % instead of 4", it.type.runtime_size); case "meshShaderQueries"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceMeshShaderFeaturesEXT.meshShaderQueries has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderFeaturesEXT.meshShaderQueries has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMeshShaderFeaturesEXT) == 40, "VkPhysicalDeviceMeshShaderFeaturesEXT has size % instead of 40", size_of(VkPhysicalDeviceMeshShaderFeaturesEXT)); } { info := type_info(VkPhysicalDeviceMeshShaderPropertiesEXT); for info.members { if it.name == { case "sType"; assert(it.offset_in_bytes == 0, "VkPhysicalDeviceMeshShaderPropertiesEXT.sType has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.sType has unexpected size % instead of 4", it.type.runtime_size); case "pNext"; assert(it.offset_in_bytes == 8, "VkPhysicalDeviceMeshShaderPropertiesEXT.pNext has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 8, "VkPhysicalDeviceMeshShaderPropertiesEXT.pNext has unexpected size % instead of 8", it.type.runtime_size); case "maxTaskWorkGroupTotalCount"; assert(it.offset_in_bytes == 16, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupTotalCount has unexpected offset % instead of 16", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupTotalCount has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskWorkGroupCount"; assert(it.offset_in_bytes == 20, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupCount has unexpected offset % instead of 20", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupCount has unexpected size % instead of 12", it.type.runtime_size); case "maxTaskWorkGroupInvocations"; assert(it.offset_in_bytes == 32, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupInvocations has unexpected offset % instead of 32", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskWorkGroupSize"; assert(it.offset_in_bytes == 36, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupSize has unexpected offset % instead of 36", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "maxTaskPayloadSize"; assert(it.offset_in_bytes == 48, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskPayloadSize has unexpected offset % instead of 48", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskPayloadSize has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskSharedMemorySize"; assert(it.offset_in_bytes == 52, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskSharedMemorySize has unexpected offset % instead of 52", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskSharedMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxTaskPayloadAndSharedMemorySize"; assert(it.offset_in_bytes == 56, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskPayloadAndSharedMemorySize has unexpected offset % instead of 56", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxTaskPayloadAndSharedMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshWorkGroupTotalCount"; assert(it.offset_in_bytes == 60, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupTotalCount has unexpected offset % instead of 60", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupTotalCount has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshWorkGroupCount"; assert(it.offset_in_bytes == 64, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupCount has unexpected offset % instead of 64", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupCount has unexpected size % instead of 12", it.type.runtime_size); case "maxMeshWorkGroupInvocations"; assert(it.offset_in_bytes == 76, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupInvocations has unexpected offset % instead of 76", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshWorkGroupSize"; assert(it.offset_in_bytes == 80, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupSize has unexpected offset % instead of 80", it.offset_in_bytes); assert(it.type.runtime_size == 12, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshWorkGroupSize has unexpected size % instead of 12", it.type.runtime_size); case "maxMeshSharedMemorySize"; assert(it.offset_in_bytes == 92, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshSharedMemorySize has unexpected offset % instead of 92", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshSharedMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshPayloadAndSharedMemorySize"; assert(it.offset_in_bytes == 96, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshPayloadAndSharedMemorySize has unexpected offset % instead of 96", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshPayloadAndSharedMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputMemorySize"; assert(it.offset_in_bytes == 100, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputMemorySize has unexpected offset % instead of 100", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshPayloadAndOutputMemorySize"; assert(it.offset_in_bytes == 104, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshPayloadAndOutputMemorySize has unexpected offset % instead of 104", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshPayloadAndOutputMemorySize has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputComponents"; assert(it.offset_in_bytes == 108, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputComponents has unexpected offset % instead of 108", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputComponents has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputVertices"; assert(it.offset_in_bytes == 112, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputVertices has unexpected offset % instead of 112", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputVertices has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputPrimitives"; assert(it.offset_in_bytes == 116, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputPrimitives has unexpected offset % instead of 116", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputPrimitives has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshOutputLayers"; assert(it.offset_in_bytes == 120, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputLayers has unexpected offset % instead of 120", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshOutputLayers has unexpected size % instead of 4", it.type.runtime_size); case "maxMeshMultiviewViewCount"; assert(it.offset_in_bytes == 124, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshMultiviewViewCount has unexpected offset % instead of 124", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxMeshMultiviewViewCount has unexpected size % instead of 4", it.type.runtime_size); case "meshOutputPerVertexGranularity"; assert(it.offset_in_bytes == 128, "VkPhysicalDeviceMeshShaderPropertiesEXT.meshOutputPerVertexGranularity has unexpected offset % instead of 128", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.meshOutputPerVertexGranularity has unexpected size % instead of 4", it.type.runtime_size); case "meshOutputPerPrimitiveGranularity"; assert(it.offset_in_bytes == 132, "VkPhysicalDeviceMeshShaderPropertiesEXT.meshOutputPerPrimitiveGranularity has unexpected offset % instead of 132", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.meshOutputPerPrimitiveGranularity has unexpected size % instead of 4", it.type.runtime_size); case "maxPreferredTaskWorkGroupInvocations"; assert(it.offset_in_bytes == 136, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxPreferredTaskWorkGroupInvocations has unexpected offset % instead of 136", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxPreferredTaskWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "maxPreferredMeshWorkGroupInvocations"; assert(it.offset_in_bytes == 140, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxPreferredMeshWorkGroupInvocations has unexpected offset % instead of 140", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.maxPreferredMeshWorkGroupInvocations has unexpected size % instead of 4", it.type.runtime_size); case "prefersLocalInvocationVertexOutput"; assert(it.offset_in_bytes == 144, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersLocalInvocationVertexOutput has unexpected offset % instead of 144", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersLocalInvocationVertexOutput has unexpected size % instead of 4", it.type.runtime_size); case "prefersLocalInvocationPrimitiveOutput"; assert(it.offset_in_bytes == 148, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersLocalInvocationPrimitiveOutput has unexpected offset % instead of 148", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersLocalInvocationPrimitiveOutput has unexpected size % instead of 4", it.type.runtime_size); case "prefersCompactVertexOutput"; assert(it.offset_in_bytes == 152, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersCompactVertexOutput has unexpected offset % instead of 152", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersCompactVertexOutput has unexpected size % instead of 4", it.type.runtime_size); case "prefersCompactPrimitiveOutput"; assert(it.offset_in_bytes == 156, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersCompactPrimitiveOutput has unexpected offset % instead of 156", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkPhysicalDeviceMeshShaderPropertiesEXT.prefersCompactPrimitiveOutput has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkPhysicalDeviceMeshShaderPropertiesEXT) == 160, "VkPhysicalDeviceMeshShaderPropertiesEXT has size % instead of 160", size_of(VkPhysicalDeviceMeshShaderPropertiesEXT)); } { info := type_info(VkDrawMeshTasksIndirectCommandEXT); for info.members { if it.name == { case "groupCountX"; assert(it.offset_in_bytes == 0, "VkDrawMeshTasksIndirectCommandEXT.groupCountX has unexpected offset % instead of 0", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawMeshTasksIndirectCommandEXT.groupCountX has unexpected size % instead of 4", it.type.runtime_size); case "groupCountY"; assert(it.offset_in_bytes == 4, "VkDrawMeshTasksIndirectCommandEXT.groupCountY has unexpected offset % instead of 4", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawMeshTasksIndirectCommandEXT.groupCountY has unexpected size % instead of 4", it.type.runtime_size); case "groupCountZ"; assert(it.offset_in_bytes == 8, "VkDrawMeshTasksIndirectCommandEXT.groupCountZ has unexpected offset % instead of 8", it.offset_in_bytes); assert(it.type.runtime_size == 4, "VkDrawMeshTasksIndirectCommandEXT.groupCountZ has unexpected size % instead of 4", it.type.runtime_size); } } assert(size_of(VkDrawMeshTasksIndirectCommandEXT) == 12, "VkDrawMeshTasksIndirectCommandEXT has size % instead of 12", size_of(VkDrawMeshTasksIndirectCommandEXT)); } }