All Classes and Interfaces
Class
Description
An instance that holds a
MemorySegment
.The OpenAL binding.
Method handles.
typedef (int) ALsizei (*ALBufferCallbackTypeSOFT)(ALvoid* userptr, ALvoid* sampledata, (int) ALsizei numbytes);
The OpenAL context related functions.
Method handles.
typedef void (*ALCEventProcTypeSOFT)((int) ALCenum eventType, (int) ALCenum deviceType, ALCdevice* device, (int) ALCsizei length, const ALCchar* message, void* userParam);
typedef void (*ALDebugProcEXT)((int) ALenum source, (int) ALenum type, (unsigned int) ALuint id, (int) ALenum severity, (int) ALsizei length, const ALchar* message, void* userParam);
typedef void (*ALEventProcSOFT)((int) ALenum eventType, (unsigned int) ALuint object, (unsigned int) ALuint param, (int) ALsizei length, const ALchar* message, void* userParam);
OpenAL extensions
Method handles.
typedef void (*ALFoldbackCallback)((int) ALenum event, (int) ALsizei blockIndex);
Layout
struct BytePtr {
jbyte value;
};
Memory layouts of C builtin type got from
Linker.canonicalLayouts()
.Layout
struct CharPtr {
jchar value;
};
Layout
struct DoublePtr {
jdouble value;
};
Layout
struct DrawArraysIndirectCommand {
unsigned int count;
unsigned int instanceCount;
unsigned int first;
unsigned int baseInstance;
};
Layout
struct DrawElementsIndirectCommand {
unsigned int count;
unsigned int instanceCount;
unsigned int firstIndex;
int baseVertex;
unsigned int baseInstance;
};
Layout
struct FloatPtr {
jfloat value;
};
The latest OpenGL functions in core profile.
typedef void (*GLDebugProc)((unsigned int) GLenum source, (unsigned int) GLenum type, (unsigned int) GLuint id, (unsigned int) GLenum severity, (int) GLsizei length, const GLchar* message, const void* userParam);
typedef void (*GLDebugProcAMD)((unsigned int) GLuint id, (unsigned int) GLenum category, (unsigned int) GLenum severity, (int) GLsizei length, const GLchar* message, void* userParam);
The GLFW binding.
Method handles.
typedef void* (*GLFWAllocateFun)(size_t size, void* user);
Layout
struct GLFWAllocator {
(void* (*GLFWAllocateFun)(size_t size, void* user)) GLFWallocatefun allocate;
(void* (*GLFWReallocateFun)(void* block, size_t size, void* user)) GLFWreallocatefun reallocate;
(void (*GLFWDeallocateFun)(void* block, void* user)) GLFWdeallocatefun deallocate;
void* user;
};
typedef void (*GLFWCharFun)(GLFWwindow* window, unsigned int codepoint);
typedef void (*GLFWCursorEnterFun)(GLFWwindow* window, (int) GLFWboolean entered);
typedef void (*GLFWCursorPosFun)(GLFWwindow* window, double xpos, double ypos);
typedef void (*GLFWDeallocateFun)(void* block, void* user);
typedef void (*GLFWDropFun)(GLFWwindow* window, int path_count, const char** paths);
The GLFW error callback creator.
typedef void (*GLFWErrorFun)(int error_code, const char* description);
typedef void (*GLFWFramebufferSizeFun)(GLFWwindow* window, int width, int height);
Layout
struct GLFWGamepadState {
unsigned char buttons[15];
float axes[6];
};
Layout
struct GLFWGammaRamp {
unsigned short* red;
unsigned short* green;
unsigned short* blue;
unsigned int size;
};
Layout
struct GLFWImage {
int width;
int height;
unsigned char* pixels;
};
typedef void (*GLFWJoystickFun)(int jid, int event);
typedef void (*GLFWKeyFun)(GLFWwindow* window, int key, int scancode, int action, int mods);
Accessor of symbol lookup of module
glfw
.typedef void (*GLFWMonitorFun)(GLFWmonitor* monitor, int event);
typedef void (*GLFWMouseButtonFun)(GLFWwindow* window, int button, int action, int mods);
GLFW native functions.
Method handles.
typedef void* (*GLFWReallocateFun)(void* block, size_t size, void* user);
typedef void (*GLFWScrollFun)(GLFWwindow* window, double xoffset, double yoffset);
Layout
struct GLFWVidMode {
int width;
int height;
int redBits;
int greenBits;
int blueBits;
int refreshRate;
};
typedef void (*GLFWWindowCloseFun)(GLFWwindow* window);
typedef void (*GLFWWindowContentScaleFun)(GLFWwindow* window, float xscale, float yscale);
typedef void (*GLFWWindowFocusFun)(GLFWwindow* window, (int) GLFWboolean focused);
typedef void (*GLFWWindowIconifyFun)(GLFWwindow* window, (int) GLFWboolean iconified);
typedef void (*GLFWWindowMaximizeFun)(GLFWwindow* window, (int) GLFWboolean maximized);
typedef void (*GLFWWindowPosFun)(GLFWwindow* window, int xpos, int ypos);
typedef void (*GLFWWindowRefreshFun)(GLFWwindow* window);
typedef void (*GLFWWindowSizeFun)(GLFWwindow* window, int width, int height);
The OpenGL loading function.
Similar to
SymbolNotFoundError
, but prints a helpful message.OpenGL utilities.
Group type
Layout
struct IntPtr {
jint value;
};
A builder of
StructLayout
which automatically computes the padding between elements.Layout
struct LongPtr {
jlong value;
};
The matrix-to-native-memory util.
Memory stack
Utilities of memory segment.
Native File Dialog Extended binding.
Method handles.
A wrapper of NFD path set enumerator.
A result of
fromPathSet
Layout
struct NFDFilterItem {
const nfdnchar_t* name;
const nfdnchar_t* spec;
};
Accessor of symbol lookup of module
nfd
.Layout
struct NFDOpenDialogArgs {
const nfdnfilteritem_t* filterList;
(unsigned int) nfdfiltersize_t filterCount;
const nfdnchar_t* defaultPath;
(struct NFDWindowHandle) nfdwindowhandle_t parentWindow;
};
Layout
struct NFDPathSetEnum {
void* ptr;
};
Layout
struct NFDPickFolderArgs {
const nfdnchar_t* defaultPath;
(struct NFDWindowHandle) nfdwindowhandle_t parentWindow;
};
Layout
struct NFDSaveDialogArgs {
const nfdnfilteritem_t* filterList;
(unsigned int) nfdfiltersize_t filterCount;
const nfdnchar_t* defaultPath;
const nfdnchar_t* defaultName;
(struct NFDWindowHandle) nfdwindowhandle_t parentWindow;
};
Layout
struct NFDWindowHandle {
size_t type;
void* handle;
};
Accessor of symbol lookup of module
openal
.Constants of OverrunGL.
The configurations for OverrunGL.
A configuration entry.
The runtime helper, for internal use.
Layout
struct ShortPtr {
jshort value;
};
Method handles.
Layout
struct STBIIOCallbacks {
(int (*STBIIORead)(void* user, char* data, int size)) stbi_io_callbacks$read read;
(void (*STBIIOSkip)(void* user, int n)) stbi_io_callbacks$skip skip;
((int) STBbool (*STBIIOEof)(void* user)) stbi_io_callbacks$eof eof;
};
typedef (int) STBbool (*STBIIOEof)(void* user);
typedef int (*STBIIORead)(void* user, char* data, int size);
typedef void (*STBIIOSkip)(void* user, int n);
Method handles.
Method handles.
Method handles.
Layout
struct STBIR_RESIZE {
void* user_data;
void const * input_pixels;
int input_w;
int input_h;
double input_s0;
double input_t0;
double input_s1;
double input_t1;
stbir_input_callback* input_cb;
void* output_pixels;
int output_w;
int output_h;
int output_subx;
int output_suby;
int output_subw;
int output_subh;
stbir_output_callback* output_cb;
int input_stride_in_bytes;
int output_stride_in_bytes;
int splits;
int fast_alpha;
int needs_rebuild;
int called_alloc;
(int) stbir_pixel_layout input_pixel_layout_public;
(int) stbir_pixel_layout output_pixel_layout_public;
(int) stbir_datatype input_data_type;
(int) stbir_datatype output_data_type;
(int) stbir_filter horizontal_filter;
(int) stbir_filter vertical_filter;
(int) stbir_edge horizontal_edge;
(int) stbir_edge vertical_edge;
stbir__kernel_callback* horizontal_filter_kernel;
stbir__support_callback* horizontal_filter_support;
stbir__kernel_callback* vertical_filter_kernel;
stbir__support_callback* vertical_filter_support;
stbir__info* samplers;
};
typedef void const * (*STBIRInputCallback)(void* optional_output, void const * input_ptr, int num_pixels, int x, int y, void* context);
typedef float (*STBIRKernelCallback)(float x, float scale, void* user_data);
typedef void (*STBIROutputCallback)(void const * output_ptr, int num_pixels, int y, void* context);
typedef float (*STBIRSupportCallback)(float scale, void* user_data);
typedef void (*STBIWriteFunc)(void* context, void* data, int size);
Accessor of symbol lookup of module
stb
.Method handles.
Method handles.
Layout
struct STBRPContext {
int width;
int height;
int align;
int init_mode;
int heuristic;
int num_nodes;
stbrp_node* active_head;
stbrp_node* free_head;
(struct STBRPNode) stbrp_node extra[2];
};
Layout
struct STBRPNode {
(int) stbrp_coord x;
(int) stbrp_coord y;
stbrp_node* next;
};
Layout
struct STBRPRect {
int id;
(int) stbrp_coord w;
(int) stbrp_coord h;
(int) stbrp_coord x;
(int) stbrp_coord y;
int was_packed;
};
=======================================================================
Method handles.
Layout
struct STBTT__bitmap {
int w;
int h;
int stride;
unsigned char* pixels;
};
Layout
struct STBTT__buf {
unsigned char* data;
int cursor;
int size;
};
Layout
struct STBTTAlignedQuad {
float x0;
float y0;
float s0;
float t0;
float x1;
float y1;
float s1;
float t1;
};
Layout
struct STBTTBakedChar {
unsigned short x0;
unsigned short y0;
unsigned short x1;
unsigned short y1;
float xoff;
float yoff;
float xadvance;
};
Layout
struct STBTTFontInfo {
void* userdata;
unsigned char* data;
int fontstart;
int numGlyphs;
int loca;
int head;
int glyf;
int hhea;
int hmtx;
int kern;
int gpos;
int svg;
int index_map;
int indexToLocFormat;
(struct STBTT__buf) stbtt__buf cff;
(struct STBTT__buf) stbtt__buf charstrings;
(struct STBTT__buf) stbtt__buf gsubrs;
(struct STBTT__buf) stbtt__buf subrs;
(struct STBTT__buf) stbtt__buf fontdicts;
(struct STBTT__buf) stbtt__buf fdselect;
};
Layout
struct STBTTKerningEntry {
int glyph1;
int glyph2;
int advance;
};
Layout
struct STBTTPackedChar {
unsigned short x0;
unsigned short y0;
unsigned short x1;
unsigned short y1;
float xoff;
float yoff;
float xadvance;
float xoff2;
float yoff2;
};
Layout
struct STBTTPackRange {
float font_size;
int first_unicode_codepoint_in_range;
int* array_of_unicode_codepoints;
int num_chars;
stbtt_packedchar* chardata_for_range;
unsigned char h_oversample;
unsigned char v_oversample;
};
Layout
struct STBTTVertex {
(short) stbtt_vertex_type x;
(short) stbtt_vertex_type y;
(short) stbtt_vertex_type cx;
(short) stbtt_vertex_type cy;
(short) stbtt_vertex_type cx1;
(short) stbtt_vertex_type cy1;
unsigned char type;
unsigned char padding;
};
Method handles.
Layout
struct STBVorbisAlloc {
char* alloc_buffer;
int alloc_buffer_length_in_bytes;
};
Layout
struct STBVorbisComment {
char* vendor;
int comment_list_length;
char** comment_list;
};
Layout
struct STBVorbisInfo {
unsigned int sample_rate;
int channels;
unsigned int setup_memory_required;
unsigned int setup_temp_memory_required;
unsigned int temp_memory_required;
int max_frame_size;
};
Layout
struct StdVideoAV1CDEF {
uint8_t cdef_damping_minus_3;
uint8_t cdef_bits;
uint8_t cdef_y_pri_strength[8];
uint8_t cdef_y_sec_strength[8];
uint8_t cdef_uv_pri_strength[8];
uint8_t cdef_uv_sec_strength[8];
};
Layout
struct StdVideoAV1ColorConfig {
(struct StdVideoAV1ColorConfigFlags) StdVideoAV1ColorConfigFlags flags;
uint8_t BitDepth;
uint8_t subsampling_x;
uint8_t subsampling_y;
uint8_t reserved1;
(int) StdVideoAV1ColorPrimaries color_primaries;
(int) StdVideoAV1TransferCharacteristics transfer_characteristics;
(int) StdVideoAV1MatrixCoefficients matrix_coefficients;
(int) StdVideoAV1ChromaSamplePosition chroma_sample_position;
};
Layout
struct StdVideoAV1ColorConfigFlags {
uint32_t mono_chrome : 1;
uint32_t color_range : 1;
uint32_t separate_uv_delta_q : 1;
uint32_t color_description_present_flag : 1;
uint32_t reserved : 28;
};
Layout
struct StdVideoAV1FilmGrain {
(struct StdVideoAV1FilmGrainFlags) StdVideoAV1FilmGrainFlags flags;
uint8_t grain_scaling_minus_8;
uint8_t ar_coeff_lag;
uint8_t ar_coeff_shift_minus_6;
uint8_t grain_scale_shift;
uint16_t grain_seed;
uint8_t film_grain_params_ref_idx;
uint8_t num_y_points;
uint8_t point_y_value[14];
uint8_t point_y_scaling[14];
uint8_t num_cb_points;
uint8_t point_cb_value[10];
uint8_t point_cb_scaling[10];
uint8_t num_cr_points;
uint8_t point_cr_value[10];
uint8_t point_cr_scaling[10];
int8_t ar_coeffs_y_plus_128[24];
int8_t ar_coeffs_cb_plus_128[25];
int8_t ar_coeffs_cr_plus_128[25];
uint8_t cb_mult;
uint8_t cb_luma_mult;
uint16_t cb_offset;
uint8_t cr_mult;
uint8_t cr_luma_mult;
uint16_t cr_offset;
};
Layout
struct StdVideoAV1FilmGrainFlags {
uint32_t chroma_scaling_from_luma : 1;
uint32_t overlap_flag : 1;
uint32_t clip_to_restricted_range : 1;
uint32_t update_grain : 1;
uint32_t reserved : 28;
};
Layout
struct StdVideoAV1GlobalMotion {
uint8_t GmType[8];
int32_t gm_params[8][6];
};
Layout
struct StdVideoAV1LoopFilter {
(struct StdVideoAV1LoopFilterFlags) StdVideoAV1LoopFilterFlags flags;
uint8_t loop_filter_level[4];
uint8_t loop_filter_sharpness;
uint8_t update_ref_delta;
int8_t loop_filter_ref_deltas[8];
uint8_t update_mode_delta;
int8_t loop_filter_mode_deltas[2];
};
Layout
struct StdVideoAV1LoopFilterFlags {
uint32_t loop_filter_delta_enabled : 1;
uint32_t loop_filter_delta_update : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoAV1LoopRestoration {
(int) StdVideoAV1FrameRestorationType FrameRestorationType[3];
uint16_t LoopRestorationSize[3];
};
Layout
struct StdVideoAV1Quantization {
(struct StdVideoAV1QuantizationFlags) StdVideoAV1QuantizationFlags flags;
uint8_t base_q_idx;
int8_t DeltaQYDc;
int8_t DeltaQUDc;
int8_t DeltaQUAc;
int8_t DeltaQVDc;
int8_t DeltaQVAc;
uint8_t qm_y;
uint8_t qm_u;
uint8_t qm_v;
};
Layout
struct StdVideoAV1QuantizationFlags {
uint32_t using_qmatrix : 1;
uint32_t diff_uv_delta : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoAV1Segmentation {
uint8_t FeatureEnabled[8];
int16_t FeatureData[8][8];
};
Layout
struct StdVideoAV1SequenceHeader {
(struct StdVideoAV1SequenceHeaderFlags) StdVideoAV1SequenceHeaderFlags flags;
(int) StdVideoAV1Profile seq_profile;
uint8_t frame_width_bits_minus_1;
uint8_t frame_height_bits_minus_1;
uint16_t max_frame_width_minus_1;
uint16_t max_frame_height_minus_1;
uint8_t delta_frame_id_length_minus_2;
uint8_t additional_frame_id_length_minus_1;
uint8_t order_hint_bits_minus_1;
uint8_t seq_force_integer_mv;
uint8_t seq_force_screen_content_tools;
uint8_t reserved1[5];
const StdVideoAV1ColorConfig* pColorConfig;
const StdVideoAV1TimingInfo* pTimingInfo;
};
Layout
struct StdVideoAV1SequenceHeaderFlags {
uint32_t still_picture : 1;
uint32_t reduced_still_picture_header : 1;
uint32_t use_128x128_superblock : 1;
uint32_t enable_filter_intra : 1;
uint32_t enable_intra_edge_filter : 1;
uint32_t enable_interintra_compound : 1;
uint32_t enable_masked_compound : 1;
uint32_t enable_warped_motion : 1;
uint32_t enable_dual_filter : 1;
uint32_t enable_order_hint : 1;
uint32_t enable_jnt_comp : 1;
uint32_t enable_ref_frame_mvs : 1;
uint32_t frame_id_numbers_present_flag : 1;
uint32_t enable_superres : 1;
uint32_t enable_cdef : 1;
uint32_t enable_restoration : 1;
uint32_t film_grain_params_present : 1;
uint32_t timing_info_present_flag : 1;
uint32_t initial_display_delay_present_flag : 1;
uint32_t reserved : 13;
};
Layout
struct StdVideoAV1TileInfo {
(struct StdVideoAV1TileInfoFlags) StdVideoAV1TileInfoFlags flags;
uint8_t TileCols;
uint8_t TileRows;
uint16_t context_update_tile_id;
uint8_t tile_size_bytes_minus_1;
uint8_t reserved1[7];
const uint16_t* pMiColStarts;
const uint16_t* pMiRowStarts;
const uint16_t* pWidthInSbsMinus1;
const uint16_t* pHeightInSbsMinus1;
};
Layout
struct StdVideoAV1TileInfoFlags {
uint32_t uniform_tile_spacing_flag : 1;
uint32_t reserved : 31;
};
Layout
struct StdVideoAV1TimingInfo {
(struct StdVideoAV1TimingInfoFlags) StdVideoAV1TimingInfoFlags flags;
uint32_t num_units_in_display_tick;
uint32_t time_scale;
uint32_t num_ticks_per_picture_minus_1;
};
Layout
struct StdVideoAV1TimingInfoFlags {
uint32_t equal_picture_interval : 1;
uint32_t reserved : 31;
};
Layout
struct StdVideoDecodeAV1PictureInfo {
(struct StdVideoDecodeAV1PictureInfoFlags) StdVideoDecodeAV1PictureInfoFlags flags;
(int) StdVideoAV1FrameType frame_type;
uint32_t current_frame_id;
uint8_t OrderHint;
uint8_t primary_ref_frame;
uint8_t refresh_frame_flags;
uint8_t reserved1;
(int) StdVideoAV1InterpolationFilter interpolation_filter;
(int) StdVideoAV1TxMode TxMode;
uint8_t delta_q_res;
uint8_t delta_lf_res;
uint8_t SkipModeFrame[2];
uint8_t coded_denom;
uint8_t reserved2[3];
uint8_t OrderHints[8];
uint32_t expectedFrameId[8];
const StdVideoAV1TileInfo* pTileInfo;
const StdVideoAV1Quantization* pQuantization;
const StdVideoAV1Segmentation* pSegmentation;
const StdVideoAV1LoopFilter* pLoopFilter;
const StdVideoAV1CDEF* pCDEF;
const StdVideoAV1LoopRestoration* pLoopRestoration;
const StdVideoAV1GlobalMotion* pGlobalMotion;
const StdVideoAV1FilmGrain* pFilmGrain;
};
Layout
struct StdVideoDecodeAV1PictureInfoFlags {
uint32_t error_resilient_mode : 1;
uint32_t disable_cdf_update : 1;
uint32_t use_superres : 1;
uint32_t render_and_frame_size_different : 1;
uint32_t allow_screen_content_tools : 1;
uint32_t is_filter_switchable : 1;
uint32_t force_integer_mv : 1;
uint32_t frame_size_override_flag : 1;
uint32_t buffer_removal_time_present_flag : 1;
uint32_t allow_intrabc : 1;
uint32_t frame_refs_short_signaling : 1;
uint32_t allow_high_precision_mv : 1;
uint32_t is_motion_mode_switchable : 1;
uint32_t use_ref_frame_mvs : 1;
uint32_t disable_frame_end_update_cdf : 1;
uint32_t allow_warped_motion : 1;
uint32_t reduced_tx_set : 1;
uint32_t reference_select : 1;
uint32_t skip_mode_present : 1;
uint32_t delta_q_present : 1;
uint32_t delta_lf_present : 1;
uint32_t delta_lf_multi : 1;
uint32_t segmentation_enabled : 1;
uint32_t segmentation_update_map : 1;
uint32_t segmentation_temporal_update : 1;
uint32_t segmentation_update_data : 1;
uint32_t UsesLr : 1;
uint32_t usesChromaLr : 1;
uint32_t apply_grain : 1;
uint32_t reserved : 3;
};
Layout
struct StdVideoDecodeAV1ReferenceInfo {
(struct StdVideoDecodeAV1ReferenceInfoFlags) StdVideoDecodeAV1ReferenceInfoFlags flags;
uint8_t frame_type;
uint8_t RefFrameSignBias;
uint8_t OrderHint;
uint8_t SavedOrderHints[8];
};
Layout
struct StdVideoDecodeAV1ReferenceInfoFlags {
uint32_t disable_frame_end_update_cdf : 1;
uint32_t segmentation_enabled : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoDecodeH264PictureInfo {
(struct StdVideoDecodeH264PictureInfoFlags) StdVideoDecodeH264PictureInfoFlags flags;
uint8_t seq_parameter_set_id;
uint8_t pic_parameter_set_id;
uint8_t reserved1;
uint8_t reserved2;
uint16_t frame_num;
uint16_t idr_pic_id;
int32_t PicOrderCnt[2];
};
Layout
struct StdVideoDecodeH264PictureInfoFlags {
uint32_t field_pic_flag : 1;
uint32_t is_intra : 1;
uint32_t IdrPicFlag : 1;
uint32_t bottom_field_flag : 1;
uint32_t is_reference : 1;
uint32_t complementary_field_pair : 1;
};
Layout
struct StdVideoDecodeH264ReferenceInfo {
(struct StdVideoDecodeH264ReferenceInfoFlags) StdVideoDecodeH264ReferenceInfoFlags flags;
uint16_t FrameNum;
uint16_t reserved;
int32_t PicOrderCnt[2];
};
Layout
struct StdVideoDecodeH264ReferenceInfoFlags {
uint32_t top_field_flag : 1;
uint32_t bottom_field_flag : 1;
uint32_t used_for_long_term_reference : 1;
uint32_t is_non_existing : 1;
};
Layout
struct StdVideoDecodeH265PictureInfo {
(struct StdVideoDecodeH265PictureInfoFlags) StdVideoDecodeH265PictureInfoFlags flags;
uint8_t sps_video_parameter_set_id;
uint8_t pps_seq_parameter_set_id;
uint8_t pps_pic_parameter_set_id;
uint8_t NumDeltaPocsOfRefRpsIdx;
int32_t PicOrderCntVal;
uint16_t NumBitsForSTRefPicSetInSlice;
uint16_t reserved;
uint8_t RefPicSetStCurrBefore[8];
uint8_t RefPicSetStCurrAfter[8];
uint8_t RefPicSetLtCurr[8];
};
Layout
struct StdVideoDecodeH265PictureInfoFlags {
uint32_t IrapPicFlag : 1;
uint32_t IdrPicFlag : 1;
uint32_t IsReference : 1;
uint32_t short_term_ref_pic_set_sps_flag : 1;
};
Layout
struct StdVideoDecodeH265ReferenceInfo {
(struct StdVideoDecodeH265ReferenceInfoFlags) StdVideoDecodeH265ReferenceInfoFlags flags;
int32_t PicOrderCntVal;
};
Layout
struct StdVideoDecodeH265ReferenceInfoFlags {
uint32_t used_for_long_term_reference : 1;
uint32_t unused_for_reference : 1;
};
Layout
struct StdVideoDecodeVP9PictureInfo {
(struct StdVideoDecodeVP9PictureInfoFlags) StdVideoDecodeVP9PictureInfoFlags flags;
(int) StdVideoVP9Profile profile;
(int) StdVideoVP9FrameType frame_type;
uint8_t frame_context_idx;
uint8_t reset_frame_context;
uint8_t refresh_frame_flags;
uint8_t ref_frame_sign_bias_mask;
(int) StdVideoVP9InterpolationFilter interpolation_filter;
uint8_t base_q_idx;
int8_t delta_q_y_dc;
int8_t delta_q_uv_dc;
int8_t delta_q_uv_ac;
uint8_t tile_cols_log2;
uint8_t tile_rows_log2;
uint16_t reserved1[3];
const StdVideoVP9ColorConfig* pColorConfig;
const StdVideoVP9LoopFilter* pLoopFilter;
const StdVideoVP9Segmentation* pSegmentation;
};
Layout
struct StdVideoDecodeVP9PictureInfoFlags {
uint32_t error_resilient_mode : 1;
uint32_t intra_only : 1;
uint32_t allow_high_precision_mv : 1;
uint32_t refresh_frame_context : 1;
uint32_t frame_parallel_decoding_mode : 1;
uint32_t segmentation_enabled : 1;
uint32_t show_frame : 1;
uint32_t UsePrevFrameMvs : 1;
uint32_t reserved : 24;
};
Layout
struct StdVideoEncodeAV1DecoderModelInfo {
uint8_t buffer_delay_length_minus_1;
uint8_t buffer_removal_time_length_minus_1;
uint8_t frame_presentation_time_length_minus_1;
uint8_t reserved1;
uint32_t num_units_in_decoding_tick;
};
Layout
struct StdVideoEncodeAV1ExtensionHeader {
uint8_t temporal_id;
uint8_t spatial_id;
};
Layout
struct StdVideoEncodeAV1OperatingPointInfo {
(struct StdVideoEncodeAV1OperatingPointInfoFlags) StdVideoEncodeAV1OperatingPointInfoFlags flags;
uint16_t operating_point_idc;
uint8_t seq_level_idx;
uint8_t seq_tier;
uint32_t decoder_buffer_delay;
uint32_t encoder_buffer_delay;
uint8_t initial_display_delay_minus_1;
};
Layout
struct StdVideoEncodeAV1OperatingPointInfoFlags {
uint32_t decoder_model_present_for_this_op : 1;
uint32_t low_delay_mode_flag : 1;
uint32_t initial_display_delay_present_for_this_op : 1;
uint32_t reserved : 29;
};
Layout
struct StdVideoEncodeAV1PictureInfo {
(struct StdVideoEncodeAV1PictureInfoFlags) StdVideoEncodeAV1PictureInfoFlags flags;
(int) StdVideoAV1FrameType frame_type;
uint32_t frame_presentation_time;
uint32_t current_frame_id;
uint8_t order_hint;
uint8_t primary_ref_frame;
uint8_t refresh_frame_flags;
uint8_t coded_denom;
uint16_t render_width_minus_1;
uint16_t render_height_minus_1;
(int) StdVideoAV1InterpolationFilter interpolation_filter;
(int) StdVideoAV1TxMode TxMode;
uint8_t delta_q_res;
uint8_t delta_lf_res;
uint8_t ref_order_hint[8];
int8_t ref_frame_idx[7];
uint8_t reserved1[3];
uint32_t delta_frame_id_minus_1[7];
const StdVideoAV1TileInfo* pTileInfo;
const StdVideoAV1Quantization* pQuantization;
const StdVideoAV1Segmentation* pSegmentation;
const StdVideoAV1LoopFilter* pLoopFilter;
const StdVideoAV1CDEF* pCDEF;
const StdVideoAV1LoopRestoration* pLoopRestoration;
const StdVideoAV1GlobalMotion* pGlobalMotion;
const StdVideoEncodeAV1ExtensionHeader* pExtensionHeader;
const uint32_t* pBufferRemovalTimes;
};
Layout
struct StdVideoEncodeAV1PictureInfoFlags {
uint32_t error_resilient_mode : 1;
uint32_t disable_cdf_update : 1;
uint32_t use_superres : 1;
uint32_t render_and_frame_size_different : 1;
uint32_t allow_screen_content_tools : 1;
uint32_t is_filter_switchable : 1;
uint32_t force_integer_mv : 1;
uint32_t frame_size_override_flag : 1;
uint32_t buffer_removal_time_present_flag : 1;
uint32_t allow_intrabc : 1;
uint32_t frame_refs_short_signaling : 1;
uint32_t allow_high_precision_mv : 1;
uint32_t is_motion_mode_switchable : 1;
uint32_t use_ref_frame_mvs : 1;
uint32_t disable_frame_end_update_cdf : 1;
uint32_t allow_warped_motion : 1;
uint32_t reduced_tx_set : 1;
uint32_t skip_mode_present : 1;
uint32_t delta_q_present : 1;
uint32_t delta_lf_present : 1;
uint32_t delta_lf_multi : 1;
uint32_t segmentation_enabled : 1;
uint32_t segmentation_update_map : 1;
uint32_t segmentation_temporal_update : 1;
uint32_t segmentation_update_data : 1;
uint32_t UsesLr : 1;
uint32_t usesChromaLr : 1;
uint32_t show_frame : 1;
uint32_t showable_frame : 1;
uint32_t reserved : 3;
};
Layout
struct StdVideoEncodeAV1ReferenceInfo {
(struct StdVideoEncodeAV1ReferenceInfoFlags) StdVideoEncodeAV1ReferenceInfoFlags flags;
uint32_t RefFrameId;
(int) StdVideoAV1FrameType frame_type;
uint8_t OrderHint;
uint8_t reserved1[3];
const StdVideoEncodeAV1ExtensionHeader* pExtensionHeader;
};
Layout
struct StdVideoEncodeAV1ReferenceInfoFlags {
uint32_t disable_frame_end_update_cdf : 1;
uint32_t segmentation_enabled : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoEncodeH264PictureInfo {
(struct StdVideoEncodeH264PictureInfoFlags) StdVideoEncodeH264PictureInfoFlags flags;
uint8_t seq_parameter_set_id;
uint8_t pic_parameter_set_id;
uint16_t idr_pic_id;
(int) StdVideoH264PictureType primary_pic_type;
uint32_t frame_num;
int32_t PicOrderCnt;
uint8_t temporal_id;
uint8_t reserved1[3];
const StdVideoEncodeH264ReferenceListsInfo* pRefLists;
};
Layout
struct StdVideoEncodeH264PictureInfoFlags {
uint32_t IdrPicFlag : 1;
uint32_t is_reference : 1;
uint32_t no_output_of_prior_pics_flag : 1;
uint32_t long_term_reference_flag : 1;
uint32_t adaptive_ref_pic_marking_mode_flag : 1;
uint32_t reserved : 27;
};
Layout
struct StdVideoEncodeH264ReferenceInfo {
(struct StdVideoEncodeH264ReferenceInfoFlags) StdVideoEncodeH264ReferenceInfoFlags flags;
(int) StdVideoH264PictureType primary_pic_type;
uint32_t FrameNum;
int32_t PicOrderCnt;
uint16_t long_term_pic_num;
uint16_t long_term_frame_idx;
uint8_t temporal_id;
};
Layout
struct StdVideoEncodeH264ReferenceInfoFlags {
uint32_t used_for_long_term_reference : 1;
uint32_t reserved : 31;
};
Layout
struct StdVideoEncodeH264ReferenceListsInfo {
(struct StdVideoEncodeH264ReferenceListsInfoFlags) StdVideoEncodeH264ReferenceListsInfoFlags flags;
uint8_t num_ref_idx_l0_active_minus1;
uint8_t num_ref_idx_l1_active_minus1;
uint8_t RefPicList0[32];
uint8_t RefPicList1[32];
uint8_t refList0ModOpCount;
uint8_t refList1ModOpCount;
uint8_t refPicMarkingOpCount;
uint8_t reserved1[7];
const StdVideoEncodeH264RefListModEntry* pRefList0ModOperations;
const StdVideoEncodeH264RefListModEntry* pRefList1ModOperations;
const StdVideoEncodeH264RefPicMarkingEntry* pRefPicMarkingOperations;
};
Layout
struct StdVideoEncodeH264ReferenceListsInfoFlags {
uint32_t ref_pic_list_modification_flag_l0 : 1;
uint32_t ref_pic_list_modification_flag_l1 : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoEncodeH264RefListModEntry {
(int) StdVideoH264ModificationOfPicNumsIdc modification_of_pic_nums_idc;
uint16_t abs_diff_pic_num_minus1;
uint16_t long_term_pic_num;
};
Layout
struct StdVideoEncodeH264RefPicMarkingEntry {
(int) StdVideoH264MemMgmtControlOp memory_management_control_operation;
uint16_t difference_of_pic_nums_minus1;
uint16_t long_term_pic_num;
uint16_t long_term_frame_idx;
uint16_t max_long_term_frame_idx_plus1;
};
Layout
struct StdVideoEncodeH264SliceHeader {
(struct StdVideoEncodeH264SliceHeaderFlags) StdVideoEncodeH264SliceHeaderFlags flags;
uint32_t first_mb_in_slice;
(int) StdVideoH264SliceType slice_type;
int8_t slice_alpha_c0_offset_div2;
int8_t slice_beta_offset_div2;
int8_t slice_qp_delta;
uint8_t reserved1;
(int) StdVideoH264CabacInitIdc cabac_init_idc;
(int) StdVideoH264DisableDeblockingFilterIdc disable_deblocking_filter_idc;
const StdVideoEncodeH264WeightTable* pWeightTable;
};
Layout
struct StdVideoEncodeH264SliceHeaderFlags {
uint32_t direct_spatial_mv_pred_flag : 1;
uint32_t num_ref_idx_active_override_flag : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoEncodeH264WeightTable {
(struct StdVideoEncodeH264WeightTableFlags) StdVideoEncodeH264WeightTableFlags flags;
uint8_t luma_log2_weight_denom;
uint8_t chroma_log2_weight_denom;
int8_t luma_weight_l0[32];
int8_t luma_offset_l0[32];
int8_t chroma_weight_l0[32][2];
int8_t chroma_offset_l0[32][2];
int8_t luma_weight_l1[32];
int8_t luma_offset_l1[32];
int8_t chroma_weight_l1[32][2];
int8_t chroma_offset_l1[32][2];
};
Layout
struct StdVideoEncodeH264WeightTableFlags {
uint32_t luma_weight_l0_flag;
uint32_t chroma_weight_l0_flag;
uint32_t luma_weight_l1_flag;
uint32_t chroma_weight_l1_flag;
};
Layout
struct StdVideoEncodeH265LongTermRefPics {
uint8_t num_long_term_sps;
uint8_t num_long_term_pics;
uint8_t lt_idx_sps[32];
uint8_t poc_lsb_lt[16];
uint16_t used_by_curr_pic_lt_flag;
uint8_t delta_poc_msb_present_flag[48];
uint8_t delta_poc_msb_cycle_lt[48];
};
Layout
struct StdVideoEncodeH265PictureInfo {
(struct StdVideoEncodeH265PictureInfoFlags) StdVideoEncodeH265PictureInfoFlags flags;
(int) StdVideoH265PictureType pic_type;
uint8_t sps_video_parameter_set_id;
uint8_t pps_seq_parameter_set_id;
uint8_t pps_pic_parameter_set_id;
uint8_t short_term_ref_pic_set_idx;
int32_t PicOrderCntVal;
uint8_t TemporalId;
uint8_t reserved1[7];
const StdVideoEncodeH265ReferenceListsInfo* pRefLists;
const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
const StdVideoEncodeH265LongTermRefPics* pLongTermRefPics;
};
Layout
struct StdVideoEncodeH265PictureInfoFlags {
uint32_t is_reference : 1;
uint32_t IrapPicFlag : 1;
uint32_t used_for_long_term_reference : 1;
uint32_t discardable_flag : 1;
uint32_t cross_layer_bla_flag : 1;
uint32_t pic_output_flag : 1;
uint32_t no_output_of_prior_pics_flag : 1;
uint32_t short_term_ref_pic_set_sps_flag : 1;
uint32_t slice_temporal_mvp_enabled_flag : 1;
uint32_t reserved : 23;
};
Layout
struct StdVideoEncodeH265ReferenceInfo {
(struct StdVideoEncodeH265ReferenceInfoFlags) StdVideoEncodeH265ReferenceInfoFlags flags;
(int) StdVideoH265PictureType pic_type;
int32_t PicOrderCntVal;
uint8_t TemporalId;
};
Layout
struct StdVideoEncodeH265ReferenceInfoFlags {
uint32_t used_for_long_term_reference : 1;
uint32_t unused_for_reference : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoEncodeH265ReferenceListsInfo {
(struct StdVideoEncodeH265ReferenceListsInfoFlags) StdVideoEncodeH265ReferenceListsInfoFlags flags;
uint8_t num_ref_idx_l0_active_minus1;
uint8_t num_ref_idx_l1_active_minus1;
uint8_t RefPicList0[15];
uint8_t RefPicList1[15];
uint8_t list_entry_l0[15];
uint8_t list_entry_l1[15];
};
Layout
struct StdVideoEncodeH265ReferenceListsInfoFlags {
uint32_t ref_pic_list_modification_flag_l0 : 1;
uint32_t ref_pic_list_modification_flag_l1 : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoEncodeH265SliceSegmentHeader {
(struct StdVideoEncodeH265SliceSegmentHeaderFlags) StdVideoEncodeH265SliceSegmentHeaderFlags flags;
(int) StdVideoH265SliceType slice_type;
uint32_t slice_segment_address;
uint8_t collocated_ref_idx;
uint8_t MaxNumMergeCand;
int8_t slice_cb_qp_offset;
int8_t slice_cr_qp_offset;
int8_t slice_beta_offset_div2;
int8_t slice_tc_offset_div2;
int8_t slice_act_y_qp_offset;
int8_t slice_act_cb_qp_offset;
int8_t slice_act_cr_qp_offset;
int8_t slice_qp_delta;
uint16_t reserved1;
const StdVideoEncodeH265WeightTable* pWeightTable;
};
Layout
struct StdVideoEncodeH265SliceSegmentHeaderFlags {
uint32_t first_slice_segment_in_pic_flag : 1;
uint32_t dependent_slice_segment_flag : 1;
uint32_t slice_sao_luma_flag : 1;
uint32_t slice_sao_chroma_flag : 1;
uint32_t num_ref_idx_active_override_flag : 1;
uint32_t mvd_l1_zero_flag : 1;
uint32_t cabac_init_flag : 1;
uint32_t cu_chroma_qp_offset_enabled_flag : 1;
uint32_t deblocking_filter_override_flag : 1;
uint32_t slice_deblocking_filter_disabled_flag : 1;
uint32_t collocated_from_l0_flag : 1;
uint32_t slice_loop_filter_across_slices_enabled_flag : 1;
uint32_t reserved : 20;
};
Layout
struct StdVideoEncodeH265WeightTable {
(struct StdVideoEncodeH265WeightTableFlags) StdVideoEncodeH265WeightTableFlags flags;
uint8_t luma_log2_weight_denom;
int8_t delta_chroma_log2_weight_denom;
int8_t delta_luma_weight_l0[15];
int8_t luma_offset_l0[15];
int8_t delta_chroma_weight_l0[15][2];
int8_t delta_chroma_offset_l0[15][2];
int8_t delta_luma_weight_l1[15];
int8_t luma_offset_l1[15];
int8_t delta_chroma_weight_l1[15][2];
int8_t delta_chroma_offset_l1[15][2];
};
Layout
struct StdVideoEncodeH265WeightTableFlags {
uint16_t luma_weight_l0_flag;
uint16_t chroma_weight_l0_flag;
uint16_t luma_weight_l1_flag;
uint16_t chroma_weight_l1_flag;
};
Layout
struct StdVideoH264HrdParameters {
uint8_t cpb_cnt_minus1;
uint8_t bit_rate_scale;
uint8_t cpb_size_scale;
uint8_t reserved1;
uint32_t bit_rate_value_minus1[32];
uint32_t cpb_size_value_minus1[32];
uint8_t cbr_flag[32];
uint32_t initial_cpb_removal_delay_length_minus1;
uint32_t cpb_removal_delay_length_minus1;
uint32_t dpb_output_delay_length_minus1;
uint32_t time_offset_length;
};
Layout
struct StdVideoH264PictureParameterSet {
(struct StdVideoH264PpsFlags) StdVideoH264PpsFlags flags;
uint8_t seq_parameter_set_id;
uint8_t pic_parameter_set_id;
uint8_t num_ref_idx_l0_default_active_minus1;
uint8_t num_ref_idx_l1_default_active_minus1;
(int) StdVideoH264WeightedBipredIdc weighted_bipred_idc;
int8_t pic_init_qp_minus26;
int8_t pic_init_qs_minus26;
int8_t chroma_qp_index_offset;
int8_t second_chroma_qp_index_offset;
const StdVideoH264ScalingLists* pScalingLists;
};
Layout
struct StdVideoH264PpsFlags {
uint32_t transform_8x8_mode_flag : 1;
uint32_t redundant_pic_cnt_present_flag : 1;
uint32_t constrained_intra_pred_flag : 1;
uint32_t deblocking_filter_control_present_flag : 1;
uint32_t weighted_pred_flag : 1;
uint32_t bottom_field_pic_order_in_frame_present_flag : 1;
uint32_t entropy_coding_mode_flag : 1;
uint32_t pic_scaling_matrix_present_flag : 1;
};
Layout
struct StdVideoH264ScalingLists {
uint16_t scaling_list_present_mask;
uint16_t use_default_scaling_matrix_mask;
uint8_t ScalingList4x4[6][16];
uint8_t ScalingList8x8[6][64];
};
Layout
struct StdVideoH264SequenceParameterSet {
(struct StdVideoH264SpsFlags) StdVideoH264SpsFlags flags;
(int) StdVideoH264ProfileIdc profile_idc;
(int) StdVideoH264LevelIdc level_idc;
(int) StdVideoH264ChromaFormatIdc chroma_format_idc;
uint8_t seq_parameter_set_id;
uint8_t bit_depth_luma_minus8;
uint8_t bit_depth_chroma_minus8;
uint8_t log2_max_frame_num_minus4;
(int) StdVideoH264PocType pic_order_cnt_type;
int32_t offset_for_non_ref_pic;
int32_t offset_for_top_to_bottom_field;
uint8_t log2_max_pic_order_cnt_lsb_minus4;
uint8_t num_ref_frames_in_pic_order_cnt_cycle;
uint8_t max_num_ref_frames;
uint8_t reserved1;
uint32_t pic_width_in_mbs_minus1;
uint32_t pic_height_in_map_units_minus1;
uint32_t frame_crop_left_offset;
uint32_t frame_crop_right_offset;
uint32_t frame_crop_top_offset;
uint32_t frame_crop_bottom_offset;
uint32_t reserved2;
const int32_t* pOffsetForRefFrame;
const StdVideoH264ScalingLists* pScalingLists;
const StdVideoH264SequenceParameterSetVui* pSequenceParameterSetVui;
};
Layout
struct StdVideoH264SequenceParameterSetVui {
(struct StdVideoH264SpsVuiFlags) StdVideoH264SpsVuiFlags flags;
(int) StdVideoH264AspectRatioIdc aspect_ratio_idc;
uint16_t sar_width;
uint16_t sar_height;
uint8_t video_format;
uint8_t colour_primaries;
uint8_t transfer_characteristics;
uint8_t matrix_coefficients;
uint32_t num_units_in_tick;
uint32_t time_scale;
uint8_t max_num_reorder_frames;
uint8_t max_dec_frame_buffering;
uint8_t chroma_sample_loc_type_top_field;
uint8_t chroma_sample_loc_type_bottom_field;
uint32_t reserved1;
const StdVideoH264HrdParameters* pHrdParameters;
};
Layout
struct StdVideoH264SpsFlags {
uint32_t constraint_set0_flag : 1;
uint32_t constraint_set1_flag : 1;
uint32_t constraint_set2_flag : 1;
uint32_t constraint_set3_flag : 1;
uint32_t constraint_set4_flag : 1;
uint32_t constraint_set5_flag : 1;
uint32_t direct_8x8_inference_flag : 1;
uint32_t mb_adaptive_frame_field_flag : 1;
uint32_t frame_mbs_only_flag : 1;
uint32_t delta_pic_order_always_zero_flag : 1;
uint32_t separate_colour_plane_flag : 1;
uint32_t gaps_in_frame_num_value_allowed_flag : 1;
uint32_t qpprime_y_zero_transform_bypass_flag : 1;
uint32_t frame_cropping_flag : 1;
uint32_t seq_scaling_matrix_present_flag : 1;
uint32_t vui_parameters_present_flag : 1;
};
Layout
struct StdVideoH264SpsVuiFlags {
uint32_t aspect_ratio_info_present_flag : 1;
uint32_t overscan_info_present_flag : 1;
uint32_t overscan_appropriate_flag : 1;
uint32_t video_signal_type_present_flag : 1;
uint32_t video_full_range_flag : 1;
uint32_t color_description_present_flag : 1;
uint32_t chroma_loc_info_present_flag : 1;
uint32_t timing_info_present_flag : 1;
uint32_t fixed_frame_rate_flag : 1;
uint32_t bitstream_restriction_flag : 1;
uint32_t nal_hrd_parameters_present_flag : 1;
uint32_t vcl_hrd_parameters_present_flag : 1;
};
Layout
struct StdVideoH265DecPicBufMgr {
uint32_t max_latency_increase_plus1[7];
uint8_t max_dec_pic_buffering_minus1[7];
uint8_t max_num_reorder_pics[7];
};
Layout
struct StdVideoH265HrdFlags {
uint32_t nal_hrd_parameters_present_flag : 1;
uint32_t vcl_hrd_parameters_present_flag : 1;
uint32_t sub_pic_hrd_params_present_flag : 1;
uint32_t sub_pic_cpb_params_in_pic_timing_sei_flag : 1;
uint32_t fixed_pic_rate_general_flag : 8;
uint32_t fixed_pic_rate_within_cvs_flag : 8;
uint32_t low_delay_hrd_flag : 8;
};
Layout
struct StdVideoH265HrdParameters {
(struct StdVideoH265HrdFlags) StdVideoH265HrdFlags flags;
uint8_t tick_divisor_minus2;
uint8_t du_cpb_removal_delay_increment_length_minus1;
uint8_t dpb_output_delay_du_length_minus1;
uint8_t bit_rate_scale;
uint8_t cpb_size_scale;
uint8_t cpb_size_du_scale;
uint8_t initial_cpb_removal_delay_length_minus1;
uint8_t au_cpb_removal_delay_length_minus1;
uint8_t dpb_output_delay_length_minus1;
uint8_t cpb_cnt_minus1[7];
uint16_t elemental_duration_in_tc_minus1[7];
uint16_t reserved[3];
const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersNal;
const StdVideoH265SubLayerHrdParameters* pSubLayerHrdParametersVcl;
};
Layout
struct StdVideoH265LongTermRefPicsSps {
uint32_t used_by_curr_pic_lt_sps_flag;
uint32_t lt_ref_pic_poc_lsb_sps[32];
};
Layout
struct StdVideoH265PictureParameterSet {
(struct StdVideoH265PpsFlags) StdVideoH265PpsFlags flags;
uint8_t pps_pic_parameter_set_id;
uint8_t pps_seq_parameter_set_id;
uint8_t sps_video_parameter_set_id;
uint8_t num_extra_slice_header_bits;
uint8_t num_ref_idx_l0_default_active_minus1;
uint8_t num_ref_idx_l1_default_active_minus1;
int8_t init_qp_minus26;
uint8_t diff_cu_qp_delta_depth;
int8_t pps_cb_qp_offset;
int8_t pps_cr_qp_offset;
int8_t pps_beta_offset_div2;
int8_t pps_tc_offset_div2;
uint8_t log2_parallel_merge_level_minus2;
uint8_t log2_max_transform_skip_block_size_minus2;
uint8_t diff_cu_chroma_qp_offset_depth;
uint8_t chroma_qp_offset_list_len_minus1;
int8_t cb_qp_offset_list[6];
int8_t cr_qp_offset_list[6];
uint8_t log2_sao_offset_scale_luma;
uint8_t log2_sao_offset_scale_chroma;
int8_t pps_act_y_qp_offset_plus5;
int8_t pps_act_cb_qp_offset_plus5;
int8_t pps_act_cr_qp_offset_plus3;
uint8_t pps_num_palette_predictor_initializers;
uint8_t luma_bit_depth_entry_minus8;
uint8_t chroma_bit_depth_entry_minus8;
uint8_t num_tile_columns_minus1;
uint8_t num_tile_rows_minus1;
uint8_t reserved1;
uint8_t reserved2;
uint16_t column_width_minus1[19];
uint16_t row_height_minus1[21];
uint32_t reserved3;
const StdVideoH265ScalingLists* pScalingLists;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
};
Layout
struct StdVideoH265PpsFlags {
uint32_t dependent_slice_segments_enabled_flag : 1;
uint32_t output_flag_present_flag : 1;
uint32_t sign_data_hiding_enabled_flag : 1;
uint32_t cabac_init_present_flag : 1;
uint32_t constrained_intra_pred_flag : 1;
uint32_t transform_skip_enabled_flag : 1;
uint32_t cu_qp_delta_enabled_flag : 1;
uint32_t pps_slice_chroma_qp_offsets_present_flag : 1;
uint32_t weighted_pred_flag : 1;
uint32_t weighted_bipred_flag : 1;
uint32_t transquant_bypass_enabled_flag : 1;
uint32_t tiles_enabled_flag : 1;
uint32_t entropy_coding_sync_enabled_flag : 1;
uint32_t uniform_spacing_flag : 1;
uint32_t loop_filter_across_tiles_enabled_flag : 1;
uint32_t pps_loop_filter_across_slices_enabled_flag : 1;
uint32_t deblocking_filter_control_present_flag : 1;
uint32_t deblocking_filter_override_enabled_flag : 1;
uint32_t pps_deblocking_filter_disabled_flag : 1;
uint32_t pps_scaling_list_data_present_flag : 1;
uint32_t lists_modification_present_flag : 1;
uint32_t slice_segment_header_extension_present_flag : 1;
uint32_t pps_extension_present_flag : 1;
uint32_t cross_component_prediction_enabled_flag : 1;
uint32_t chroma_qp_offset_list_enabled_flag : 1;
uint32_t pps_curr_pic_ref_enabled_flag : 1;
uint32_t residual_adaptive_colour_transform_enabled_flag : 1;
uint32_t pps_slice_act_qp_offsets_present_flag : 1;
uint32_t pps_palette_predictor_initializers_present_flag : 1;
uint32_t monochrome_palette_flag : 1;
uint32_t pps_range_extension_flag : 1;
};
Layout
struct StdVideoH265PredictorPaletteEntries {
uint16_t PredictorPaletteEntries[3][128];
};
Layout
struct StdVideoH265ProfileTierLevel {
(struct StdVideoH265ProfileTierLevelFlags) StdVideoH265ProfileTierLevelFlags flags;
(int) StdVideoH265ProfileIdc general_profile_idc;
(int) StdVideoH265LevelIdc general_level_idc;
};
Layout
struct StdVideoH265ProfileTierLevelFlags {
uint32_t general_tier_flag : 1;
uint32_t general_progressive_source_flag : 1;
uint32_t general_interlaced_source_flag : 1;
uint32_t general_non_packed_constraint_flag : 1;
uint32_t general_frame_only_constraint_flag : 1;
};
Layout
struct StdVideoH265ScalingLists {
uint8_t ScalingList4x4[6][16];
uint8_t ScalingList8x8[6][64];
uint8_t ScalingList16x16[6][64];
uint8_t ScalingList32x32[2][64];
uint8_t ScalingListDCCoef16x16[6];
uint8_t ScalingListDCCoef32x32[2];
};
Layout
struct StdVideoH265SequenceParameterSet {
(struct StdVideoH265SpsFlags) StdVideoH265SpsFlags flags;
(int) StdVideoH265ChromaFormatIdc chroma_format_idc;
uint32_t pic_width_in_luma_samples;
uint32_t pic_height_in_luma_samples;
uint8_t sps_video_parameter_set_id;
uint8_t sps_max_sub_layers_minus1;
uint8_t sps_seq_parameter_set_id;
uint8_t bit_depth_luma_minus8;
uint8_t bit_depth_chroma_minus8;
uint8_t log2_max_pic_order_cnt_lsb_minus4;
uint8_t log2_min_luma_coding_block_size_minus3;
uint8_t log2_diff_max_min_luma_coding_block_size;
uint8_t log2_min_luma_transform_block_size_minus2;
uint8_t log2_diff_max_min_luma_transform_block_size;
uint8_t max_transform_hierarchy_depth_inter;
uint8_t max_transform_hierarchy_depth_intra;
uint8_t num_short_term_ref_pic_sets;
uint8_t num_long_term_ref_pics_sps;
uint8_t pcm_sample_bit_depth_luma_minus1;
uint8_t pcm_sample_bit_depth_chroma_minus1;
uint8_t log2_min_pcm_luma_coding_block_size_minus3;
uint8_t log2_diff_max_min_pcm_luma_coding_block_size;
uint8_t reserved1;
uint8_t reserved2;
uint8_t palette_max_size;
uint8_t delta_palette_max_predictor_size;
uint8_t motion_vector_resolution_control_idc;
uint8_t sps_num_palette_predictor_initializers_minus1;
uint32_t conf_win_left_offset;
uint32_t conf_win_right_offset;
uint32_t conf_win_top_offset;
uint32_t conf_win_bottom_offset;
const StdVideoH265ProfileTierLevel* pProfileTierLevel;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265ScalingLists* pScalingLists;
const StdVideoH265ShortTermRefPicSet* pShortTermRefPicSet;
const StdVideoH265LongTermRefPicsSps* pLongTermRefPicsSps;
const StdVideoH265SequenceParameterSetVui* pSequenceParameterSetVui;
const StdVideoH265PredictorPaletteEntries* pPredictorPaletteEntries;
};
Layout
struct StdVideoH265SequenceParameterSetVui {
(struct StdVideoH265SpsVuiFlags) StdVideoH265SpsVuiFlags flags;
(int) StdVideoH265AspectRatioIdc aspect_ratio_idc;
uint16_t sar_width;
uint16_t sar_height;
uint8_t video_format;
uint8_t colour_primaries;
uint8_t transfer_characteristics;
uint8_t matrix_coeffs;
uint8_t chroma_sample_loc_type_top_field;
uint8_t chroma_sample_loc_type_bottom_field;
uint8_t reserved1;
uint8_t reserved2;
uint16_t def_disp_win_left_offset;
uint16_t def_disp_win_right_offset;
uint16_t def_disp_win_top_offset;
uint16_t def_disp_win_bottom_offset;
uint32_t vui_num_units_in_tick;
uint32_t vui_time_scale;
uint32_t vui_num_ticks_poc_diff_one_minus1;
uint16_t min_spatial_segmentation_idc;
uint16_t reserved3;
uint8_t max_bytes_per_pic_denom;
uint8_t max_bits_per_min_cu_denom;
uint8_t log2_max_mv_length_horizontal;
uint8_t log2_max_mv_length_vertical;
const StdVideoH265HrdParameters* pHrdParameters;
};
Layout
struct StdVideoH265ShortTermRefPicSet {
(struct StdVideoH265ShortTermRefPicSetFlags) StdVideoH265ShortTermRefPicSetFlags flags;
uint32_t delta_idx_minus1;
uint16_t use_delta_flag;
uint16_t abs_delta_rps_minus1;
uint16_t used_by_curr_pic_flag;
uint16_t used_by_curr_pic_s0_flag;
uint16_t used_by_curr_pic_s1_flag;
uint16_t reserved1;
uint8_t reserved2;
uint8_t reserved3;
uint8_t num_negative_pics;
uint8_t num_positive_pics;
uint16_t delta_poc_s0_minus1[16];
uint16_t delta_poc_s1_minus1[16];
};
Layout
struct StdVideoH265ShortTermRefPicSetFlags {
uint32_t inter_ref_pic_set_prediction_flag : 1;
uint32_t delta_rps_sign : 1;
};
Layout
struct StdVideoH265SpsFlags {
uint32_t sps_temporal_id_nesting_flag : 1;
uint32_t separate_colour_plane_flag : 1;
uint32_t conformance_window_flag : 1;
uint32_t sps_sub_layer_ordering_info_present_flag : 1;
uint32_t scaling_list_enabled_flag : 1;
uint32_t sps_scaling_list_data_present_flag : 1;
uint32_t amp_enabled_flag : 1;
uint32_t sample_adaptive_offset_enabled_flag : 1;
uint32_t pcm_enabled_flag : 1;
uint32_t pcm_loop_filter_disabled_flag : 1;
uint32_t long_term_ref_pics_present_flag : 1;
uint32_t sps_temporal_mvp_enabled_flag : 1;
uint32_t strong_intra_smoothing_enabled_flag : 1;
uint32_t vui_parameters_present_flag : 1;
uint32_t sps_extension_present_flag : 1;
uint32_t sps_range_extension_flag : 1;
uint32_t transform_skip_rotation_enabled_flag : 1;
uint32_t transform_skip_context_enabled_flag : 1;
uint32_t implicit_rdpcm_enabled_flag : 1;
uint32_t explicit_rdpcm_enabled_flag : 1;
uint32_t extended_precision_processing_flag : 1;
uint32_t intra_smoothing_disabled_flag : 1;
uint32_t high_precision_offsets_enabled_flag : 1;
uint32_t persistent_rice_adaptation_enabled_flag : 1;
uint32_t cabac_bypass_alignment_enabled_flag : 1;
uint32_t sps_scc_extension_flag : 1;
uint32_t sps_curr_pic_ref_enabled_flag : 1;
uint32_t palette_mode_enabled_flag : 1;
uint32_t sps_palette_predictor_initializers_present_flag : 1;
uint32_t intra_boundary_filtering_disabled_flag : 1;
};
Layout
struct StdVideoH265SpsVuiFlags {
uint32_t aspect_ratio_info_present_flag : 1;
uint32_t overscan_info_present_flag : 1;
uint32_t overscan_appropriate_flag : 1;
uint32_t video_signal_type_present_flag : 1;
uint32_t video_full_range_flag : 1;
uint32_t colour_description_present_flag : 1;
uint32_t chroma_loc_info_present_flag : 1;
uint32_t neutral_chroma_indication_flag : 1;
uint32_t field_seq_flag : 1;
uint32_t frame_field_info_present_flag : 1;
uint32_t default_display_window_flag : 1;
uint32_t vui_timing_info_present_flag : 1;
uint32_t vui_poc_proportional_to_timing_flag : 1;
uint32_t vui_hrd_parameters_present_flag : 1;
uint32_t bitstream_restriction_flag : 1;
uint32_t tiles_fixed_structure_flag : 1;
uint32_t motion_vectors_over_pic_boundaries_flag : 1;
uint32_t restricted_ref_pic_lists_flag : 1;
};
Layout
struct StdVideoH265SubLayerHrdParameters {
uint32_t bit_rate_value_minus1[32];
uint32_t cpb_size_value_minus1[32];
uint32_t cpb_size_du_value_minus1[32];
uint32_t bit_rate_du_value_minus1[32];
uint32_t cbr_flag;
};
Layout
struct StdVideoH265VideoParameterSet {
(struct StdVideoH265VpsFlags) StdVideoH265VpsFlags flags;
uint8_t vps_video_parameter_set_id;
uint8_t vps_max_sub_layers_minus1;
uint8_t reserved1;
uint8_t reserved2;
uint32_t vps_num_units_in_tick;
uint32_t vps_time_scale;
uint32_t vps_num_ticks_poc_diff_one_minus1;
uint32_t reserved3;
const StdVideoH265DecPicBufMgr* pDecPicBufMgr;
const StdVideoH265HrdParameters* pHrdParameters;
const StdVideoH265ProfileTierLevel* pProfileTierLevel;
};
Layout
struct StdVideoH265VpsFlags {
uint32_t vps_temporal_id_nesting_flag : 1;
uint32_t vps_sub_layer_ordering_info_present_flag : 1;
uint32_t vps_timing_info_present_flag : 1;
uint32_t vps_poc_proportional_to_timing_flag : 1;
};
Layout
struct StdVideoVP9ColorConfig {
(struct StdVideoVP9ColorConfigFlags) StdVideoVP9ColorConfigFlags flags;
uint8_t BitDepth;
uint8_t subsampling_x;
uint8_t subsampling_y;
uint8_t reserved1;
(int) StdVideoVP9ColorSpace color_space;
};
Layout
struct StdVideoVP9ColorConfigFlags {
uint32_t color_range : 1;
uint32_t reserved : 31;
};
Layout
struct StdVideoVP9LoopFilter {
(struct StdVideoVP9LoopFilterFlags) StdVideoVP9LoopFilterFlags flags;
uint8_t loop_filter_level;
uint8_t loop_filter_sharpness;
uint8_t update_ref_delta;
int8_t loop_filter_ref_deltas[4];
uint8_t update_mode_delta;
int8_t loop_filter_mode_deltas[2];
};
Layout
struct StdVideoVP9LoopFilterFlags {
uint32_t loop_filter_delta_enabled : 1;
uint32_t loop_filter_delta_update : 1;
uint32_t reserved : 30;
};
Layout
struct StdVideoVP9Segmentation {
(struct StdVideoVP9SegmentationFlags) StdVideoVP9SegmentationFlags flags;
uint8_t segmentation_tree_probs[7];
uint8_t segmentation_pred_prob[3];
uint8_t FeatureEnabled[8];
int16_t FeatureData[8][4];
};
Layout
struct StdVideoVP9SegmentationFlags {
uint32_t segmentation_update_map : 1;
uint32_t segmentation_temporal_update : 1;
uint32_t segmentation_update_data : 1;
uint32_t segmentation_abs_or_delta_update : 1;
uint32_t reserved : 28;
};
Indicates that a symbol of a function in a native library was not found.
An interface that represents an upcall i.e.
The vector-to-native-memory util.
This class loads the Vulkan library into the JVM process.
Global commands that do not require a dispatchable handle to be passed.
Layout
struct VkAabbPositionsKHR {
float minX;
float minY;
float minZ;
float maxX;
float maxY;
float maxZ;
};
Layout
struct VkAabbPositionsNV {
float minX;
float minY;
float minZ;
float maxX;
float maxY;
float maxZ;
};
Layout
struct VkAccelerationStructureBuildGeometryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkAccelerationStructureTypeKHR type;
((uint32_t) VkFlags) VkBuildAccelerationStructureFlagsKHR flags;
(int) VkBuildAccelerationStructureModeKHR mode;
(uint64_t) VkAccelerationStructureKHR srcAccelerationStructure;
(uint64_t) VkAccelerationStructureKHR dstAccelerationStructure;
uint32_t geometryCount;
const VkAccelerationStructureGeometryKHR* pGeometries;
const VkAccelerationStructureGeometryKHR* const * ppGeometries;
(union VkDeviceOrHostAddressKHR) VkDeviceOrHostAddressKHR scratchData;
};
Layout
struct VkAccelerationStructureBuildRangeInfoKHR {
uint32_t primitiveCount;
uint32_t primitiveOffset;
uint32_t firstVertex;
uint32_t transformOffset;
};
Layout
struct VkAccelerationStructureBuildSizesInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize accelerationStructureSize;
(uint64_t) VkDeviceSize updateScratchSize;
(uint64_t) VkDeviceSize buildScratchSize;
};
Layout
struct VkAccelerationStructureCaptureDescriptorDataInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkAccelerationStructureKHR accelerationStructure;
(uint64_t) VkAccelerationStructureNV accelerationStructureNV;
};
Layout
struct VkAccelerationStructureCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAccelerationStructureCreateFlagsKHR createFlags;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
(int) VkAccelerationStructureTypeKHR type;
(uint64_t) VkDeviceAddress deviceAddress;
};
Layout
struct VkAccelerationStructureCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize compactedSize;
(struct VkAccelerationStructureInfoNV) VkAccelerationStructureInfoNV info;
};
Layout
struct VkAccelerationStructureDenseGeometryFormatTrianglesDataAMDX {
(int) VkStructureType sType;
const void* pNext;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR compressedData;
(uint64_t) VkDeviceSize dataSize;
uint32_t numTriangles;
uint32_t numVertices;
uint32_t maxPrimitiveIndex;
uint32_t maxGeometryIndex;
(int) VkCompressedTriangleFormatAMDX format;
};
Layout
struct VkAccelerationStructureDeviceAddressInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkAccelerationStructureKHR accelerationStructure;
};
Layout
struct VkAccelerationStructureGeometryAabbsDataKHR {
(int) VkStructureType sType;
const void* pNext;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR data;
(uint64_t) VkDeviceSize stride;
};
Layout
union VkAccelerationStructureGeometryDataKHR {
(struct VkAccelerationStructureGeometryTrianglesDataKHR) VkAccelerationStructureGeometryTrianglesDataKHR triangles;
(struct VkAccelerationStructureGeometryAabbsDataKHR) VkAccelerationStructureGeometryAabbsDataKHR aabbs;
(struct VkAccelerationStructureGeometryInstancesDataKHR) VkAccelerationStructureGeometryInstancesDataKHR instances;
};
Layout
struct VkAccelerationStructureGeometryInstancesDataKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 arrayOfPointers;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR data;
};
Layout
struct VkAccelerationStructureGeometryKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkGeometryTypeKHR geometryType;
(union VkAccelerationStructureGeometryDataKHR) VkAccelerationStructureGeometryDataKHR geometry;
((uint32_t) VkFlags) VkGeometryFlagsKHR flags;
};
Layout
struct VkAccelerationStructureGeometryLinearSweptSpheresDataNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat vertexFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR vertexData;
(uint64_t) VkDeviceSize vertexStride;
(int) VkFormat radiusFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR radiusData;
(uint64_t) VkDeviceSize radiusStride;
(int) VkIndexType indexType;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR indexData;
(uint64_t) VkDeviceSize indexStride;
(int) VkRayTracingLssIndexingModeNV indexingMode;
(int) VkRayTracingLssPrimitiveEndCapsModeNV endCapsMode;
};
Layout
struct VkAccelerationStructureGeometryMotionTrianglesDataNV {
(int) VkStructureType sType;
const void* pNext;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR vertexData;
};
Layout
struct VkAccelerationStructureGeometrySpheresDataNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat vertexFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR vertexData;
(uint64_t) VkDeviceSize vertexStride;
(int) VkFormat radiusFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR radiusData;
(uint64_t) VkDeviceSize radiusStride;
(int) VkIndexType indexType;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR indexData;
(uint64_t) VkDeviceSize indexStride;
};
Layout
struct VkAccelerationStructureGeometryTrianglesDataKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat vertexFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR vertexData;
(uint64_t) VkDeviceSize vertexStride;
uint32_t maxVertex;
(int) VkIndexType indexType;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR indexData;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR transformData;
};
Layout
struct VkAccelerationStructureInfoNV {
(int) VkStructureType sType;
const void* pNext;
((int) VkAccelerationStructureTypeKHR) VkAccelerationStructureTypeNV type;
(((uint32_t) VkFlags) VkBuildAccelerationStructureFlagsKHR) VkBuildAccelerationStructureFlagsNV flags;
uint32_t instanceCount;
uint32_t geometryCount;
const VkGeometryNV* pGeometries;
};
Layout
struct VkAccelerationStructureInstanceKHR {
(struct VkTransformMatrixKHR) VkTransformMatrixKHR transform;
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
((uint32_t) VkFlags) VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference;
};
Layout
struct VkAccelerationStructureInstanceNV {
(struct VkTransformMatrixKHR) VkTransformMatrixKHR transform;
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
((uint32_t) VkFlags) VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference;
};
Layout
struct VkAccelerationStructureMatrixMotionInstanceNV {
(struct VkTransformMatrixKHR) VkTransformMatrixKHR transformT0;
(struct VkTransformMatrixKHR) VkTransformMatrixKHR transformT1;
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
((uint32_t) VkFlags) VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference;
};
Layout
struct VkAccelerationStructureMemoryRequirementsInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkAccelerationStructureMemoryRequirementsTypeNV type;
(uint64_t) VkAccelerationStructureNV accelerationStructure;
};
Layout
struct VkAccelerationStructureMotionInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxInstances;
((uint32_t) VkFlags) VkAccelerationStructureMotionInfoFlagsNV flags;
};
Layout
union VkAccelerationStructureMotionInstanceDataNV {
(struct VkAccelerationStructureInstanceKHR) VkAccelerationStructureInstanceKHR staticInstance;
(struct VkAccelerationStructureMatrixMotionInstanceNV) VkAccelerationStructureMatrixMotionInstanceNV matrixMotionInstance;
(struct VkAccelerationStructureSRTMotionInstanceNV) VkAccelerationStructureSRTMotionInstanceNV srtMotionInstance;
};
Layout
struct VkAccelerationStructureMotionInstanceNV {
(int) VkAccelerationStructureMotionInstanceTypeNV type;
((uint32_t) VkFlags) VkAccelerationStructureMotionInstanceFlagsNV flags;
(union VkAccelerationStructureMotionInstanceDataNV) VkAccelerationStructureMotionInstanceDataNV data;
};
Layout
struct VkAccelerationStructureSRTMotionInstanceNV {
(struct VkSRTDataNV) VkSRTDataNV transformT0;
(struct VkSRTDataNV) VkSRTDataNV transformT1;
uint32_t instanceCustomIndex : 24;
uint32_t mask : 8;
uint32_t instanceShaderBindingTableRecordOffset : 24;
((uint32_t) VkFlags) VkGeometryInstanceFlagsKHR flags : 8;
uint64_t accelerationStructureReference;
};
Layout
struct VkAccelerationStructureTrianglesDisplacementMicromapNV {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat displacementBiasAndScaleFormat;
(int) VkFormat displacementVectorFormat;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR displacementBiasAndScaleBuffer;
(uint64_t) VkDeviceSize displacementBiasAndScaleStride;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR displacementVectorBuffer;
(uint64_t) VkDeviceSize displacementVectorStride;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR displacedMicromapPrimitiveFlags;
(uint64_t) VkDeviceSize displacedMicromapPrimitiveFlagsStride;
(int) VkIndexType indexType;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR indexBuffer;
(uint64_t) VkDeviceSize indexStride;
uint32_t baseTriangle;
uint32_t usageCountsCount;
const VkMicromapUsageEXT* pUsageCounts;
const VkMicromapUsageEXT* const * ppUsageCounts;
(uint64_t) VkMicromapEXT micromap;
};
Layout
struct VkAccelerationStructureTrianglesOpacityMicromapEXT {
(int) VkStructureType sType;
void* pNext;
(int) VkIndexType indexType;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR indexBuffer;
(uint64_t) VkDeviceSize indexStride;
uint32_t baseTriangle;
uint32_t usageCountsCount;
const VkMicromapUsageEXT* pUsageCounts;
const VkMicromapUsageEXT* const * ppUsageCounts;
(uint64_t) VkMicromapEXT micromap;
};
Layout
struct VkAccelerationStructureVersionInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const uint8_t* pVersionData;
};
Layout
struct VkAcquireNextImageInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSwapchainKHR swapchain;
uint64_t timeout;
(uint64_t) VkSemaphore semaphore;
(uint64_t) VkFence fence;
uint32_t deviceMask;
};
Layout
struct VkAcquireProfilingLockInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAcquireProfilingLockFlagsKHR flags;
uint64_t timeout;
};
Layout
struct VkAllocationCallbacks {
void* pUserData;
(void* (*VkAllocationFunction)(void* pUserData, size_t size, size_t alignment, (int) VkSystemAllocationScope allocationScope)) PFN_vkAllocationFunction pfnAllocation;
(void* (*VkReallocationFunction)(void* pUserData, void* pOriginal, size_t size, size_t alignment, (int) VkSystemAllocationScope allocationScope)) PFN_vkReallocationFunction pfnReallocation;
(void (*VkFreeFunction)(void* pUserData, void* pMemory)) PFN_vkFreeFunction pfnFree;
(void (*VkInternalAllocationNotification)(void* pUserData, size_t size, (int) VkInternalAllocationType allocationType, (int) VkSystemAllocationScope allocationScope)) PFN_vkInternalAllocationNotification pfnInternalAllocation;
(void (*VkInternalFreeNotification)(void* pUserData, size_t size, (int) VkInternalAllocationType allocationType, (int) VkSystemAllocationScope allocationScope)) PFN_vkInternalFreeNotification pfnInternalFree;
};
typedef void* (*VkAllocationFunction)(void* pUserData, size_t size, size_t alignment, (int) VkSystemAllocationScope allocationScope);
Layout
struct VkAmigoProfilingSubmitInfoSEC {
(int) VkStructureType sType;
const void* pNext;
uint64_t firstDrawTimestamp;
uint64_t swapBufferTimestamp;
};
Layout
struct VkAndroidHardwareBufferFormatProperties2ANDROID {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat format;
uint64_t externalFormat;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 formatFeatures;
(struct VkComponentMapping) VkComponentMapping samplerYcbcrConversionComponents;
(int) VkSamplerYcbcrModelConversion suggestedYcbcrModel;
(int) VkSamplerYcbcrRange suggestedYcbcrRange;
(int) VkChromaLocation suggestedXChromaOffset;
(int) VkChromaLocation suggestedYChromaOffset;
};
Layout
struct VkAndroidHardwareBufferFormatPropertiesANDROID {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat format;
uint64_t externalFormat;
((uint32_t) VkFlags) VkFormatFeatureFlags formatFeatures;
(struct VkComponentMapping) VkComponentMapping samplerYcbcrConversionComponents;
(int) VkSamplerYcbcrModelConversion suggestedYcbcrModel;
(int) VkSamplerYcbcrRange suggestedYcbcrRange;
(int) VkChromaLocation suggestedXChromaOffset;
(int) VkChromaLocation suggestedYChromaOffset;
};
Layout
struct VkAndroidHardwareBufferFormatResolvePropertiesANDROID {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat colorAttachmentFormat;
};
Layout
struct VkAndroidHardwareBufferPropertiesANDROID {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize allocationSize;
uint32_t memoryTypeBits;
};
Layout
struct VkAndroidHardwareBufferUsageANDROID {
(int) VkStructureType sType;
void* pNext;
uint64_t androidHardwareBufferUsage;
};
Layout
struct VkAndroidSurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAndroidSurfaceCreateFlagsKHR flags;
struct ANativeWindow * window;
};
Layout
struct VkAntiLagDataAMD {
(int) VkStructureType sType;
const void* pNext;
(int) VkAntiLagModeAMD mode;
uint32_t maxFPS;
const VkAntiLagPresentationInfoAMD* pPresentationInfo;
};
Layout
struct VkAntiLagPresentationInfoAMD {
(int) VkStructureType sType;
void* pNext;
(int) VkAntiLagStageAMD stage;
uint64_t frameIndex;
};
Layout
struct VkApplicationInfo {
(int) VkStructureType sType;
const void* pNext;
const char* pApplicationName;
uint32_t applicationVersion;
const char* pEngineName;
uint32_t engineVersion;
uint32_t apiVersion;
};
Layout
struct VkApplicationParametersEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t vendorID;
uint32_t deviceID;
uint32_t key;
uint64_t value;
};
Layout
struct VkAttachmentDescription {
((uint32_t) VkFlags) VkAttachmentDescriptionFlags flags;
(int) VkFormat format;
(int) VkSampleCountFlagBits samples;
(int) VkAttachmentLoadOp loadOp;
(int) VkAttachmentStoreOp storeOp;
(int) VkAttachmentLoadOp stencilLoadOp;
(int) VkAttachmentStoreOp stencilStoreOp;
(int) VkImageLayout initialLayout;
(int) VkImageLayout finalLayout;
};
Layout
struct VkAttachmentDescription2 {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAttachmentDescriptionFlags flags;
(int) VkFormat format;
(int) VkSampleCountFlagBits samples;
(int) VkAttachmentLoadOp loadOp;
(int) VkAttachmentStoreOp storeOp;
(int) VkAttachmentLoadOp stencilLoadOp;
(int) VkAttachmentStoreOp stencilStoreOp;
(int) VkImageLayout initialLayout;
(int) VkImageLayout finalLayout;
};
Layout
struct VkAttachmentDescription2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAttachmentDescriptionFlags flags;
(int) VkFormat format;
(int) VkSampleCountFlagBits samples;
(int) VkAttachmentLoadOp loadOp;
(int) VkAttachmentStoreOp storeOp;
(int) VkAttachmentLoadOp stencilLoadOp;
(int) VkAttachmentStoreOp stencilStoreOp;
(int) VkImageLayout initialLayout;
(int) VkImageLayout finalLayout;
};
Layout
struct VkAttachmentDescriptionStencilLayout {
(int) VkStructureType sType;
void* pNext;
(int) VkImageLayout stencilInitialLayout;
(int) VkImageLayout stencilFinalLayout;
};
Layout
struct VkAttachmentDescriptionStencilLayoutKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkImageLayout stencilInitialLayout;
(int) VkImageLayout stencilFinalLayout;
};
Layout
struct VkAttachmentFeedbackLoopInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 feedbackLoopEnable;
};
Layout
struct VkAttachmentReference {
uint32_t attachment;
(int) VkImageLayout layout;
};
Layout
struct VkAttachmentReference2 {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachment;
(int) VkImageLayout layout;
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
};
Layout
struct VkAttachmentReference2KHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachment;
(int) VkImageLayout layout;
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
};
Layout
struct VkAttachmentReferenceStencilLayout {
(int) VkStructureType sType;
void* pNext;
(int) VkImageLayout stencilLayout;
};
Layout
struct VkAttachmentReferenceStencilLayoutKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkImageLayout stencilLayout;
};
Layout
struct VkAttachmentSampleCountInfoAMD {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const VkSampleCountFlagBits* pColorAttachmentSamples;
(int) VkSampleCountFlagBits depthStencilAttachmentSamples;
};
Layout
struct VkAttachmentSampleCountInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const VkSampleCountFlagBits* pColorAttachmentSamples;
(int) VkSampleCountFlagBits depthStencilAttachmentSamples;
};
Layout
struct VkAttachmentSampleLocationsEXT {
uint32_t attachmentIndex;
(struct VkSampleLocationsInfoEXT) VkSampleLocationsInfoEXT sampleLocationsInfo;
};
Layout
struct VkBaseInStructure {
(int) VkStructureType sType;
const struct VkBaseInStructure * pNext;
};
Layout
struct VkBaseOutStructure {
(int) VkStructureType sType;
struct VkBaseOutStructure * pNext;
};
Layout
struct VkBindAccelerationStructureMemoryInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkAccelerationStructureNV accelerationStructure;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
uint32_t deviceIndexCount;
const uint32_t* pDeviceIndices;
};
Layout
struct VkBindBufferMemoryDeviceGroupInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceIndexCount;
const uint32_t* pDeviceIndices;
};
Layout
struct VkBindBufferMemoryDeviceGroupInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceIndexCount;
const uint32_t* pDeviceIndices;
};
Layout
struct VkBindBufferMemoryInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindBufferMemoryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindDataGraphPipelineSessionMemoryInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDataGraphPipelineSessionARM session;
(int) VkDataGraphPipelineSessionBindPointARM bindPoint;
uint32_t objectIndex;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindDescriptorBufferEmbeddedSamplersInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t set;
};
Layout
struct VkBindDescriptorSetsInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t firstSet;
uint32_t descriptorSetCount;
const VkDescriptorSet* pDescriptorSets;
uint32_t dynamicOffsetCount;
const uint32_t* pDynamicOffsets;
};
Layout
struct VkBindDescriptorSetsInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t firstSet;
uint32_t descriptorSetCount;
const VkDescriptorSet* pDescriptorSets;
uint32_t dynamicOffsetCount;
const uint32_t* pDynamicOffsets;
};
Layout
struct VkBindImageMemoryDeviceGroupInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceIndexCount;
const uint32_t* pDeviceIndices;
uint32_t splitInstanceBindRegionCount;
const VkRect2D* pSplitInstanceBindRegions;
};
Layout
struct VkBindImageMemoryDeviceGroupInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceIndexCount;
const uint32_t* pDeviceIndices;
uint32_t splitInstanceBindRegionCount;
const VkRect2D* pSplitInstanceBindRegions;
};
Layout
struct VkBindImageMemoryInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindImageMemoryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindImageMemorySwapchainInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSwapchainKHR swapchain;
uint32_t imageIndex;
};
Layout
struct VkBindImagePlaneMemoryInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkBindImagePlaneMemoryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkBindIndexBufferIndirectCommandEXT {
(uint64_t) VkDeviceAddress bufferAddress;
uint32_t size;
(int) VkIndexType indexType;
};
Layout
struct VkBindIndexBufferIndirectCommandNV {
(uint64_t) VkDeviceAddress bufferAddress;
uint32_t size;
(int) VkIndexType indexType;
};
Layout
struct VkBindMemoryStatus {
(int) VkStructureType sType;
const void* pNext;
VkResult* pResult;
};
Layout
struct VkBindMemoryStatusKHR {
(int) VkStructureType sType;
const void* pNext;
VkResult* pResult;
};
Layout
struct VkBindPipelineIndirectCommandNV {
(uint64_t) VkDeviceAddress pipelineAddress;
};
Layout
struct VkBindShaderGroupIndirectCommandNV {
uint32_t groupIndex;
};
Layout
struct VkBindSparseInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreCount;
const VkSemaphore* pWaitSemaphores;
uint32_t bufferBindCount;
const VkSparseBufferMemoryBindInfo* pBufferBinds;
uint32_t imageOpaqueBindCount;
const VkSparseImageOpaqueMemoryBindInfo* pImageOpaqueBinds;
uint32_t imageBindCount;
const VkSparseImageMemoryBindInfo* pImageBinds;
uint32_t signalSemaphoreCount;
const VkSemaphore* pSignalSemaphores;
};
Layout
struct VkBindTensorMemoryInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorARM tensor;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
};
Layout
struct VkBindVertexBufferIndirectCommandEXT {
(uint64_t) VkDeviceAddress bufferAddress;
uint32_t size;
uint32_t stride;
};
Layout
struct VkBindVertexBufferIndirectCommandNV {
(uint64_t) VkDeviceAddress bufferAddress;
uint32_t size;
uint32_t stride;
};
Layout
struct VkBindVideoSessionMemoryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t memoryBindIndex;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
(uint64_t) VkDeviceSize memorySize;
};
Layout
struct VkBlitImageCubicWeightsInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(int) VkCubicFilterWeightsQCOM cubicWeights;
};
Layout
struct VkBlitImageInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageBlit2* pRegions;
(int) VkFilter filter;
};
Layout
struct VkBlitImageInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageBlit2* pRegions;
(int) VkFilter filter;
};
Layout
struct VkBufferCaptureDescriptorDataInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferCollectionBufferCreateInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBufferCollectionFUCHSIA collection;
uint32_t index;
};
Layout
struct VkBufferCollectionConstraintsInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
uint32_t minBufferCount;
uint32_t maxBufferCount;
uint32_t minBufferCountForCamping;
uint32_t minBufferCountForDedicatedSlack;
uint32_t minBufferCountForSharedSlack;
};
Layout
struct VkBufferCollectionCreateInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(int32_t) zx_handle_t collectionToken;
};
Layout
struct VkBufferCollectionImageCreateInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBufferCollectionFUCHSIA collection;
uint32_t index;
};
Layout
struct VkBufferCollectionPropertiesFUCHSIA {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
uint32_t bufferCount;
uint32_t createInfoIndex;
uint64_t sysmemPixelFormat;
((uint32_t) VkFlags) VkFormatFeatureFlags formatFeatures;
(struct VkSysmemColorSpaceFUCHSIA) VkSysmemColorSpaceFUCHSIA sysmemColorSpaceIndex;
(struct VkComponentMapping) VkComponentMapping samplerYcbcrConversionComponents;
(int) VkSamplerYcbcrModelConversion suggestedYcbcrModel;
(int) VkSamplerYcbcrRange suggestedYcbcrRange;
(int) VkChromaLocation suggestedXChromaOffset;
(int) VkChromaLocation suggestedYChromaOffset;
};
Layout
struct VkBufferConstraintsInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(struct VkBufferCreateInfo) VkBufferCreateInfo createInfo;
((uint32_t) VkFlags) VkFormatFeatureFlags requiredFormatFeatures;
(struct VkBufferCollectionConstraintsInfoFUCHSIA) VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints;
};
Layout
struct VkBufferCopy {
(uint64_t) VkDeviceSize srcOffset;
(uint64_t) VkDeviceSize dstOffset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferCopy2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize srcOffset;
(uint64_t) VkDeviceSize dstOffset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferCopy2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize srcOffset;
(uint64_t) VkDeviceSize dstOffset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkBufferCreateFlags flags;
(uint64_t) VkDeviceSize size;
((uint32_t) VkFlags) VkBufferUsageFlags usage;
(int) VkSharingMode sharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
};
Layout
struct VkBufferDeviceAddressCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceAddress deviceAddress;
};
Layout
struct VkBufferDeviceAddressInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferDeviceAddressInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferDeviceAddressInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferImageCopy {
(uint64_t) VkDeviceSize bufferOffset;
uint32_t bufferRowLength;
uint32_t bufferImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkBufferImageCopy2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize bufferOffset;
uint32_t bufferRowLength;
uint32_t bufferImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkBufferImageCopy2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize bufferOffset;
uint32_t bufferRowLength;
uint32_t bufferImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkBufferMemoryBarrier {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferMemoryBarrier2 {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferMemoryBarrier2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkBufferMemoryRequirementsInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferMemoryRequirementsInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkBufferOpaqueCaptureAddressCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint64_t opaqueCaptureAddress;
};
Layout
struct VkBufferOpaqueCaptureAddressCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint64_t opaqueCaptureAddress;
};
Layout
struct VkBufferUsageFlags2CreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkBufferUsageFlags2 usage;
};
Layout
struct VkBufferUsageFlags2CreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkBufferUsageFlags2 usage;
};
Layout
struct VkBufferViewCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkBufferViewCreateFlags flags;
(uint64_t) VkBuffer buffer;
(int) VkFormat format;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize range;
};
Layout
struct VkBuildPartitionedAccelerationStructureIndirectCommandNV {
(int) VkPartitionedAccelerationStructureOpTypeNV opType;
uint32_t argCount;
(struct VkStridedDeviceAddressNV) VkStridedDeviceAddressNV argData;
};
Layout
struct VkBuildPartitionedAccelerationStructureInfoNV {
(int) VkStructureType sType;
void* pNext;
(struct VkPartitionedAccelerationStructureInstancesInputNV) VkPartitionedAccelerationStructureInstancesInputNV input;
(uint64_t) VkDeviceAddress srcAccelerationStructureData;
(uint64_t) VkDeviceAddress dstAccelerationStructureData;
(uint64_t) VkDeviceAddress scratchData;
(uint64_t) VkDeviceAddress srcInfos;
(uint64_t) VkDeviceAddress srcInfosCount;
};
Layout
struct VkCalibratedTimestampInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkTimeDomainKHR timeDomain;
};
Layout
struct VkCalibratedTimestampInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkTimeDomainKHR timeDomain;
};
Layout
struct VkCheckpointData2NV {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 stage;
void* pCheckpointMarker;
};
Layout
struct VkCheckpointDataNV {
(int) VkStructureType sType;
void* pNext;
(int) VkPipelineStageFlagBits stage;
void* pCheckpointMarker;
};
Layout
struct VkClearAttachment {
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
uint32_t colorAttachment;
(union VkClearValue) VkClearValue clearValue;
};
Layout
union VkClearColorValue {
float float32[4];
int32_t int32[4];
uint32_t uint32[4];
};
Layout
struct VkClearDepthStencilValue {
float depth;
uint32_t stencil;
};
Layout
struct VkClearRect {
(struct VkRect2D) VkRect2D rect;
uint32_t baseArrayLayer;
uint32_t layerCount;
};
Layout
union VkClearValue {
(union VkClearColorValue) VkClearColorValue color;
(struct VkClearDepthStencilValue) VkClearDepthStencilValue depthStencil;
};
Layout
struct VkClusterAccelerationStructureBuildClustersBottomLevelInfoNV {
uint32_t clusterReferencesCount;
uint32_t clusterReferencesStride;
(uint64_t) VkDeviceAddress clusterReferences;
};
Layout
struct VkClusterAccelerationStructureBuildTriangleClusterInfoNV {
uint32_t clusterID;
((uint32_t) VkFlags) VkClusterAccelerationStructureClusterFlagsNV clusterFlags;
uint32_t triangleCount : 9;
uint32_t vertexCount : 9;
uint32_t positionTruncateBitCount : 6;
uint32_t indexType : 4;
uint32_t opacityMicromapIndexType : 4;
(struct VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV) VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags;
uint16_t indexBufferStride;
uint16_t vertexBufferStride;
uint16_t geometryIndexAndFlagsBufferStride;
uint16_t opacityMicromapIndexBufferStride;
(uint64_t) VkDeviceAddress indexBuffer;
(uint64_t) VkDeviceAddress vertexBuffer;
(uint64_t) VkDeviceAddress geometryIndexAndFlagsBuffer;
(uint64_t) VkDeviceAddress opacityMicromapArray;
(uint64_t) VkDeviceAddress opacityMicromapIndexBuffer;
};
Layout
struct VkClusterAccelerationStructureBuildTriangleClusterTemplateInfoNV {
uint32_t clusterID;
((uint32_t) VkFlags) VkClusterAccelerationStructureClusterFlagsNV clusterFlags;
uint32_t triangleCount : 9;
uint32_t vertexCount : 9;
uint32_t positionTruncateBitCount : 6;
uint32_t indexType : 4;
uint32_t opacityMicromapIndexType : 4;
(struct VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV) VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV baseGeometryIndexAndGeometryFlags;
uint16_t indexBufferStride;
uint16_t vertexBufferStride;
uint16_t geometryIndexAndFlagsBufferStride;
uint16_t opacityMicromapIndexBufferStride;
(uint64_t) VkDeviceAddress indexBuffer;
(uint64_t) VkDeviceAddress vertexBuffer;
(uint64_t) VkDeviceAddress geometryIndexAndFlagsBuffer;
(uint64_t) VkDeviceAddress opacityMicromapArray;
(uint64_t) VkDeviceAddress opacityMicromapIndexBuffer;
(uint64_t) VkDeviceAddress instantiationBoundingBoxLimit;
};
Layout
struct VkClusterAccelerationStructureClustersBottomLevelInputNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxTotalClusterCount;
uint32_t maxClusterCountPerAccelerationStructure;
};
Layout
struct VkClusterAccelerationStructureCommandsInfoNV {
(int) VkStructureType sType;
void* pNext;
(struct VkClusterAccelerationStructureInputInfoNV) VkClusterAccelerationStructureInputInfoNV input;
(uint64_t) VkDeviceAddress dstImplicitData;
(uint64_t) VkDeviceAddress scratchData;
(struct VkStridedDeviceAddressRegionKHR) VkStridedDeviceAddressRegionKHR dstAddressesArray;
(struct VkStridedDeviceAddressRegionKHR) VkStridedDeviceAddressRegionKHR dstSizesArray;
(struct VkStridedDeviceAddressRegionKHR) VkStridedDeviceAddressRegionKHR srcInfosArray;
(uint64_t) VkDeviceAddress srcInfosCount;
((uint32_t) VkFlags) VkClusterAccelerationStructureAddressResolutionFlagsNV addressResolutionFlags;
};
Layout
struct VkClusterAccelerationStructureGeometryIndexAndGeometryFlagsNV {
uint32_t geometryIndex : 24;
uint32_t reserved : 5;
uint32_t geometryFlags : 3;
};
Layout
struct VkClusterAccelerationStructureGetTemplateIndicesInfoNV {
(uint64_t) VkDeviceAddress clusterTemplateAddress;
};
Layout
struct VkClusterAccelerationStructureInputInfoNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxAccelerationStructureCount;
((uint32_t) VkFlags) VkBuildAccelerationStructureFlagsKHR flags;
(int) VkClusterAccelerationStructureOpTypeNV opType;
(int) VkClusterAccelerationStructureOpModeNV opMode;
(union VkClusterAccelerationStructureOpInputNV) VkClusterAccelerationStructureOpInputNV opInput;
};
Layout
struct VkClusterAccelerationStructureInstantiateClusterInfoNV {
uint32_t clusterIdOffset;
uint32_t geometryIndexOffset : 24;
uint32_t reserved : 8;
(uint64_t) VkDeviceAddress clusterTemplateAddress;
(struct VkStridedDeviceAddressNV) VkStridedDeviceAddressNV vertexBuffer;
};
Layout
struct VkClusterAccelerationStructureMoveObjectsInfoNV {
(uint64_t) VkDeviceAddress srcAccelerationStructure;
};
Layout
struct VkClusterAccelerationStructureMoveObjectsInputNV {
(int) VkStructureType sType;
void* pNext;
(int) VkClusterAccelerationStructureTypeNV type;
(uint32_t) VkBool32 noMoveOverlap;
(uint64_t) VkDeviceSize maxMovedBytes;
};
Layout
union VkClusterAccelerationStructureOpInputNV {
VkClusterAccelerationStructureClustersBottomLevelInputNV* pClustersBottomLevel;
VkClusterAccelerationStructureTriangleClusterInputNV* pTriangleClusters;
VkClusterAccelerationStructureMoveObjectsInputNV* pMoveObjects;
};
Layout
struct VkClusterAccelerationStructureTriangleClusterInputNV {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat vertexFormat;
uint32_t maxGeometryIndexValue;
uint32_t maxClusterUniqueGeometryCount;
uint32_t maxClusterTriangleCount;
uint32_t maxClusterVertexCount;
uint32_t maxTotalTriangleCount;
uint32_t maxTotalVertexCount;
uint32_t minPositionTruncateBitCount;
};
Layout
struct VkCoarseSampleLocationNV {
uint32_t pixelX;
uint32_t pixelY;
uint32_t sample;
};
Layout
struct VkCoarseSampleOrderCustomNV {
(int) VkShadingRatePaletteEntryNV shadingRate;
uint32_t sampleCount;
uint32_t sampleLocationCount;
const VkCoarseSampleLocationNV* pSampleLocations;
};
Layout
struct VkColorBlendAdvancedEXT {
(int) VkBlendOp advancedBlendOp;
(uint32_t) VkBool32 srcPremultiplied;
(uint32_t) VkBool32 dstPremultiplied;
(int) VkBlendOverlapEXT blendOverlap;
(uint32_t) VkBool32 clampResults;
};
Layout
struct VkColorBlendEquationEXT {
(int) VkBlendFactor srcColorBlendFactor;
(int) VkBlendFactor dstColorBlendFactor;
(int) VkBlendOp colorBlendOp;
(int) VkBlendFactor srcAlphaBlendFactor;
(int) VkBlendFactor dstAlphaBlendFactor;
(int) VkBlendOp alphaBlendOp;
};
Wraps a Vulkan command buffer handle.
Layout
struct VkCommandBufferAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkCommandPool commandPool;
(int) VkCommandBufferLevel level;
uint32_t commandBufferCount;
};
Layout
struct VkCommandBufferBeginInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkCommandBufferUsageFlags flags;
const VkCommandBufferInheritanceInfo* pInheritanceInfo;
};
Layout
struct VkCommandBufferInheritanceConditionalRenderingInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 conditionalRenderingEnable;
};
Layout
struct VkCommandBufferInheritanceInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkRenderPass renderPass;
uint32_t subpass;
(uint64_t) VkFramebuffer framebuffer;
(uint32_t) VkBool32 occlusionQueryEnable;
((uint32_t) VkFlags) VkQueryControlFlags queryFlags;
((uint32_t) VkFlags) VkQueryPipelineStatisticFlags pipelineStatistics;
};
Layout
struct VkCommandBufferInheritanceRenderingInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderingFlags flags;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
(int) VkSampleCountFlagBits rasterizationSamples;
};
Layout
struct VkCommandBufferInheritanceRenderingInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderingFlags flags;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
(int) VkSampleCountFlagBits rasterizationSamples;
};
Layout
struct VkCommandBufferInheritanceRenderPassTransformInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(int) VkSurfaceTransformFlagBitsKHR transform;
(struct VkRect2D) VkRect2D renderArea;
};
Layout
struct VkCommandBufferInheritanceViewportScissorInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 viewportScissor2D;
uint32_t viewportDepthCount;
const VkViewport* pViewportDepths;
};
Layout
struct VkCommandBufferSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
(struct VkCommandBuffer*) VkCommandBuffer commandBuffer;
uint32_t deviceMask;
};
Layout
struct VkCommandBufferSubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkCommandBuffer*) VkCommandBuffer commandBuffer;
uint32_t deviceMask;
};
Layout
struct VkCommandPoolCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkCommandPoolCreateFlags flags;
uint32_t queueFamilyIndex;
};
Layout
struct VkCommandPoolMemoryConsumption {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize commandPoolAllocated;
(uint64_t) VkDeviceSize commandPoolReservedSize;
(uint64_t) VkDeviceSize commandBufferAllocated;
};
Layout
struct VkCommandPoolMemoryReservationCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize commandPoolReservedSize;
uint32_t commandPoolMaxCommandBuffers;
};
Layout
struct VkComponentMapping {
(int) VkComponentSwizzle r;
(int) VkComponentSwizzle g;
(int) VkComponentSwizzle b;
(int) VkComponentSwizzle a;
};
Layout
struct VkComputePipelineCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCreateFlags flags;
(struct VkPipelineShaderStageCreateInfo) VkPipelineShaderStageCreateInfo stage;
(uint64_t) VkPipelineLayout layout;
(uint64_t) VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
};
Layout
struct VkComputePipelineIndirectBufferInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceAddress deviceAddress;
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceAddress pipelineDeviceAddressCaptureReplay;
};
Layout
struct VkConditionalRenderingBeginInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
((uint32_t) VkFlags) VkConditionalRenderingFlagsEXT flags;
};
Layout
struct VkConformanceVersion {
uint8_t major;
uint8_t minor;
uint8_t subminor;
uint8_t patch;
};
Layout
struct VkConformanceVersionKHR {
uint8_t major;
uint8_t minor;
uint8_t subminor;
uint8_t patch;
};
Layout
struct VkConvertCooperativeVectorMatrixInfoNV {
(int) VkStructureType sType;
const void* pNext;
size_t srcSize;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR srcData;
size_t* pDstSize;
(union VkDeviceOrHostAddressKHR) VkDeviceOrHostAddressKHR dstData;
(int) VkComponentTypeKHR srcComponentType;
(int) VkComponentTypeKHR dstComponentType;
uint32_t numRows;
uint32_t numColumns;
(int) VkCooperativeVectorMatrixLayoutNV srcLayout;
size_t srcStride;
(int) VkCooperativeVectorMatrixLayoutNV dstLayout;
size_t dstStride;
};
Layout
struct VkCooperativeMatrixFlexibleDimensionsPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t MGranularity;
uint32_t NGranularity;
uint32_t KGranularity;
(int) VkComponentTypeKHR AType;
(int) VkComponentTypeKHR BType;
(int) VkComponentTypeKHR CType;
(int) VkComponentTypeKHR ResultType;
(uint32_t) VkBool32 saturatingAccumulation;
(int) VkScopeKHR scope;
uint32_t workgroupInvocations;
};
Layout
struct VkCooperativeMatrixPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t MSize;
uint32_t NSize;
uint32_t KSize;
(int) VkComponentTypeKHR AType;
(int) VkComponentTypeKHR BType;
(int) VkComponentTypeKHR CType;
(int) VkComponentTypeKHR ResultType;
(uint32_t) VkBool32 saturatingAccumulation;
(int) VkScopeKHR scope;
};
Layout
struct VkCooperativeMatrixPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t MSize;
uint32_t NSize;
uint32_t KSize;
((int) VkComponentTypeKHR) VkComponentTypeNV AType;
((int) VkComponentTypeKHR) VkComponentTypeNV BType;
((int) VkComponentTypeKHR) VkComponentTypeNV CType;
((int) VkComponentTypeKHR) VkComponentTypeNV DType;
((int) VkScopeKHR) VkScopeNV scope;
};
Layout
struct VkCooperativeVectorPropertiesNV {
(int) VkStructureType sType;
void* pNext;
(int) VkComponentTypeKHR inputType;
(int) VkComponentTypeKHR inputInterpretation;
(int) VkComponentTypeKHR matrixInterpretation;
(int) VkComponentTypeKHR biasInterpretation;
(int) VkComponentTypeKHR resultType;
(uint32_t) VkBool32 transpose;
};
Layout
struct VkCopyAccelerationStructureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkAccelerationStructureKHR src;
(uint64_t) VkAccelerationStructureKHR dst;
(int) VkCopyAccelerationStructureModeKHR mode;
};
Layout
struct VkCopyAccelerationStructureToMemoryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkAccelerationStructureKHR src;
(union VkDeviceOrHostAddressKHR) VkDeviceOrHostAddressKHR dst;
(int) VkCopyAccelerationStructureModeKHR mode;
};
Layout
struct VkCopyBufferInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer srcBuffer;
(uint64_t) VkBuffer dstBuffer;
uint32_t regionCount;
const VkBufferCopy2* pRegions;
};
Layout
struct VkCopyBufferInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer srcBuffer;
(uint64_t) VkBuffer dstBuffer;
uint32_t regionCount;
const VkBufferCopy2* pRegions;
};
Layout
struct VkCopyBufferToImageInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer srcBuffer;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkBufferImageCopy2* pRegions;
};
Layout
struct VkCopyBufferToImageInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer srcBuffer;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkBufferImageCopy2* pRegions;
};
Layout
struct VkCopyCommandTransformInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(int) VkSurfaceTransformFlagBitsKHR transform;
};
Layout
struct VkCopyDescriptorSet {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorSet srcSet;
uint32_t srcBinding;
uint32_t srcArrayElement;
(uint64_t) VkDescriptorSet dstSet;
uint32_t dstBinding;
uint32_t dstArrayElement;
uint32_t descriptorCount;
};
Layout
struct VkCopyImageInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageCopy2* pRegions;
};
Layout
struct VkCopyImageInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageCopy2* pRegions;
};
Layout
struct VkCopyImageToBufferInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkBuffer dstBuffer;
uint32_t regionCount;
const VkBufferImageCopy2* pRegions;
};
Layout
struct VkCopyImageToBufferInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkBuffer dstBuffer;
uint32_t regionCount;
const VkBufferImageCopy2* pRegions;
};
Layout
struct VkCopyImageToImageInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageCopy2* pRegions;
};
Layout
struct VkCopyImageToImageInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageCopy2* pRegions;
};
Layout
struct VkCopyImageToMemoryInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
uint32_t regionCount;
const VkImageToMemoryCopy* pRegions;
};
Layout
struct VkCopyImageToMemoryInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
uint32_t regionCount;
const VkImageToMemoryCopy* pRegions;
};
Layout
struct VkCopyMemoryIndirectCommandNV {
(uint64_t) VkDeviceAddress srcAddress;
(uint64_t) VkDeviceAddress dstAddress;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkCopyMemoryToAccelerationStructureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR src;
(uint64_t) VkAccelerationStructureKHR dst;
(int) VkCopyAccelerationStructureModeKHR mode;
};
Layout
struct VkCopyMemoryToImageIndirectCommandNV {
(uint64_t) VkDeviceAddress srcAddress;
uint32_t bufferRowLength;
uint32_t bufferImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkCopyMemoryToImageInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkMemoryToImageCopy* pRegions;
};
Layout
struct VkCopyMemoryToImageInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHostImageCopyFlags flags;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkMemoryToImageCopy* pRegions;
};
Layout
struct VkCopyMemoryToMicromapInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR src;
(uint64_t) VkMicromapEXT dst;
(int) VkCopyMicromapModeEXT mode;
};
Layout
struct VkCopyMicromapInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkMicromapEXT src;
(uint64_t) VkMicromapEXT dst;
(int) VkCopyMicromapModeEXT mode;
};
Layout
struct VkCopyMicromapToMemoryInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkMicromapEXT src;
(union VkDeviceOrHostAddressKHR) VkDeviceOrHostAddressKHR dst;
(int) VkCopyMicromapModeEXT mode;
};
Layout
struct VkCopyTensorInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorARM srcTensor;
(uint64_t) VkTensorARM dstTensor;
uint32_t regionCount;
const VkTensorCopyARM* pRegions;
};
Layout
struct VkCudaFunctionCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkCudaModuleNV module;
const char* pName;
};
Layout
struct VkCudaLaunchInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkCudaFunctionNV function;
uint32_t gridDimX;
uint32_t gridDimY;
uint32_t gridDimZ;
uint32_t blockDimX;
uint32_t blockDimY;
uint32_t blockDimZ;
uint32_t sharedMemBytes;
size_t paramCount;
const void* const * pParams;
size_t extraCount;
const void* const * pExtras;
};
Layout
struct VkCudaModuleCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
size_t dataSize;
const void* pData;
};
Layout
struct VkCuFunctionCreateInfoNVX {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkCuModuleNVX module;
const char* pName;
};
Layout
struct VkCuLaunchInfoNVX {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkCuFunctionNVX function;
uint32_t gridDimX;
uint32_t gridDimY;
uint32_t gridDimZ;
uint32_t blockDimX;
uint32_t blockDimY;
uint32_t blockDimZ;
uint32_t sharedMemBytes;
size_t paramCount;
const void* const * pParams;
size_t extraCount;
const void* const * pExtras;
};
Layout
struct VkCuModuleCreateInfoNVX {
(int) VkStructureType sType;
const void* pNext;
size_t dataSize;
const void* pData;
};
Layout
struct VkCuModuleTexturingModeCreateInfoNVX {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 use64bitTexturing;
};
Layout
struct VkD3D12FenceSubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreValuesCount;
const uint64_t* pWaitSemaphoreValues;
uint32_t signalSemaphoreValuesCount;
const uint64_t* pSignalSemaphoreValues;
};
Layout
struct VkDataGraphPipelineCompilerControlCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
const char* pVendorOptions;
};
Layout
struct VkDataGraphPipelineConstantARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t id;
const void* pConstantData;
};
Layout
struct VkDataGraphPipelineConstantTensorSemiStructuredSparsityInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t dimension;
uint32_t zeroCount;
uint32_t groupSize;
};
Layout
struct VkDataGraphPipelineCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
(((uint64_t) VkFlags64) VkPipelineCreateFlags2) VkPipelineCreateFlags2KHR flags;
(uint64_t) VkPipelineLayout layout;
uint32_t resourceInfoCount;
const VkDataGraphPipelineResourceInfoARM* pResourceInfos;
};
Layout
struct VkDataGraphPipelineDispatchInfoARM {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkDataGraphPipelineDispatchFlagsARM flags;
};
Layout
struct VkDataGraphPipelineIdentifierCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t identifierSize;
const uint8_t* pIdentifier;
};
Layout
struct VkDataGraphPipelineInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipeline dataGraphPipeline;
};
Layout
struct VkDataGraphPipelinePropertyQueryResultARM {
(int) VkStructureType sType;
const void* pNext;
(int) VkDataGraphPipelinePropertyARM property;
(uint32_t) VkBool32 isText;
size_t dataSize;
void* pData;
};
Layout
struct VkDataGraphPipelineResourceInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t descriptorSet;
uint32_t binding;
uint32_t arrayElement;
};
Layout
struct VkDataGraphPipelineSessionBindPointRequirementARM {
(int) VkStructureType sType;
const void* pNext;
(int) VkDataGraphPipelineSessionBindPointARM bindPoint;
(int) VkDataGraphPipelineSessionBindPointTypeARM bindPointType;
uint32_t numObjects;
};
Layout
struct VkDataGraphPipelineSessionBindPointRequirementsInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDataGraphPipelineSessionARM session;
};
Layout
struct VkDataGraphPipelineSessionCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkDataGraphPipelineSessionCreateFlagsARM flags;
(uint64_t) VkPipeline dataGraphPipeline;
};
Layout
struct VkDataGraphPipelineSessionMemoryRequirementsInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDataGraphPipelineSessionARM session;
(int) VkDataGraphPipelineSessionBindPointARM bindPoint;
uint32_t objectIndex;
};
Layout
struct VkDataGraphPipelineShaderModuleCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkShaderModule module;
const char* pName;
const VkSpecializationInfo* pSpecializationInfo;
uint32_t constantCount;
const VkDataGraphPipelineConstantARM* pConstants;
};
Layout
struct VkDataGraphProcessingEngineCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t processingEngineCount;
VkPhysicalDeviceDataGraphProcessingEngineARM* pProcessingEngines;
};
Layout
struct VkDebugMarkerMarkerInfoEXT {
(int) VkStructureType sType;
const void* pNext;
const char* pMarkerName;
float color[4];
};
Layout
struct VkDebugMarkerObjectNameInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDebugReportObjectTypeEXT objectType;
uint64_t object;
const char* pObjectName;
};
Layout
struct VkDebugMarkerObjectTagInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDebugReportObjectTypeEXT objectType;
uint64_t object;
uint64_t tagName;
size_t tagSize;
const void* pTag;
};
Layout
struct VkDebugReportCallbackCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDebugReportFlagsEXT flags;
((uint32_t) VkBool32 (*VkDebugReportCallbackEXT)(((uint32_t) VkFlags) VkDebugReportFlagsEXT flags, (int) VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage, void* pUserData)) PFN_vkDebugReportCallbackEXT pfnCallback;
void* pUserData;
};
typedef (uint32_t) VkBool32 (*VkDebugReportCallbackEXT)(((uint32_t) VkFlags) VkDebugReportFlagsEXT flags, (int) VkDebugReportObjectTypeEXT objectType, uint64_t object, size_t location, int32_t messageCode, const char* pLayerPrefix, const char* pMessage, void* pUserData);
Layout
struct VkDebugUtilsLabelEXT {
(int) VkStructureType sType;
const void* pNext;
const char* pLabelName;
float color[4];
};
Layout
struct VkDebugUtilsMessengerCallbackDataEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDebugUtilsMessengerCallbackDataFlagsEXT flags;
const char* pMessageIdName;
int32_t messageIdNumber;
const char* pMessage;
uint32_t queueLabelCount;
const VkDebugUtilsLabelEXT* pQueueLabels;
uint32_t cmdBufLabelCount;
const VkDebugUtilsLabelEXT* pCmdBufLabels;
uint32_t objectCount;
const VkDebugUtilsObjectNameInfoEXT* pObjects;
};
typedef (uint32_t) VkBool32 (*VkDebugUtilsMessengerCallbackEXT)((int) VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, ((uint32_t) VkFlags) VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData, void* pUserData);
Layout
struct VkDebugUtilsMessengerCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDebugUtilsMessengerCreateFlagsEXT flags;
((uint32_t) VkFlags) VkDebugUtilsMessageSeverityFlagsEXT messageSeverity;
((uint32_t) VkFlags) VkDebugUtilsMessageTypeFlagsEXT messageType;
((uint32_t) VkBool32 (*VkDebugUtilsMessengerCallbackEXT)((int) VkDebugUtilsMessageSeverityFlagBitsEXT messageSeverity, ((uint32_t) VkFlags) VkDebugUtilsMessageTypeFlagsEXT messageTypes, const VkDebugUtilsMessengerCallbackDataEXT* pCallbackData, void* pUserData)) PFN_vkDebugUtilsMessengerCallbackEXT pfnUserCallback;
void* pUserData;
};
Layout
struct VkDebugUtilsObjectNameInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkObjectType objectType;
uint64_t objectHandle;
const char* pObjectName;
};
Layout
struct VkDebugUtilsObjectTagInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkObjectType objectType;
uint64_t objectHandle;
uint64_t tagName;
size_t tagSize;
const void* pTag;
};
Layout
struct VkDecompressMemoryRegionNV {
(uint64_t) VkDeviceAddress srcAddress;
(uint64_t) VkDeviceAddress dstAddress;
(uint64_t) VkDeviceSize compressedSize;
(uint64_t) VkDeviceSize decompressedSize;
((uint64_t) VkFlags64) VkMemoryDecompressionMethodFlagsNV decompressionMethod;
};
Layout
struct VkDedicatedAllocationBufferCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 dedicatedAllocation;
};
Layout
struct VkDedicatedAllocationImageCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 dedicatedAllocation;
};
Layout
struct VkDedicatedAllocationMemoryAllocateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkDependencyInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDependencyFlags dependencyFlags;
uint32_t memoryBarrierCount;
const VkMemoryBarrier2* pMemoryBarriers;
uint32_t bufferMemoryBarrierCount;
const VkBufferMemoryBarrier2* pBufferMemoryBarriers;
uint32_t imageMemoryBarrierCount;
const VkImageMemoryBarrier2* pImageMemoryBarriers;
};
Layout
struct VkDependencyInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDependencyFlags dependencyFlags;
uint32_t memoryBarrierCount;
const VkMemoryBarrier2* pMemoryBarriers;
uint32_t bufferMemoryBarrierCount;
const VkBufferMemoryBarrier2* pBufferMemoryBarriers;
uint32_t imageMemoryBarrierCount;
const VkImageMemoryBarrier2* pImageMemoryBarriers;
};
Layout
struct VkDepthBiasInfoEXT {
(int) VkStructureType sType;
const void* pNext;
float depthBiasConstantFactor;
float depthBiasClamp;
float depthBiasSlopeFactor;
};
Layout
struct VkDepthBiasRepresentationInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDepthBiasRepresentationEXT depthBiasRepresentation;
(uint32_t) VkBool32 depthBiasExact;
};
Layout
struct VkDepthClampRangeEXT {
float minDepthClamp;
float maxDepthClamp;
};
Layout
struct VkDescriptorAddressInfoEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceAddress address;
(uint64_t) VkDeviceSize range;
(int) VkFormat format;
};
Layout
struct VkDescriptorBufferBindingInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceAddress address;
((uint32_t) VkFlags) VkBufferUsageFlags usage;
};
Layout
struct VkDescriptorBufferBindingPushDescriptorBufferHandleEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkDescriptorBufferInfo {
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize range;
};
Layout
union VkDescriptorDataEXT {
const VkSampler* pSampler;
const VkDescriptorImageInfo* pCombinedImageSampler;
const VkDescriptorImageInfo* pInputAttachmentImage;
const VkDescriptorImageInfo* pSampledImage;
const VkDescriptorImageInfo* pStorageImage;
const VkDescriptorAddressInfoEXT* pUniformTexelBuffer;
const VkDescriptorAddressInfoEXT* pStorageTexelBuffer;
const VkDescriptorAddressInfoEXT* pUniformBuffer;
const VkDescriptorAddressInfoEXT* pStorageBuffer;
(uint64_t) VkDeviceAddress accelerationStructure;
};
Layout
struct VkDescriptorGetInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDescriptorType type;
(union VkDescriptorDataEXT) VkDescriptorDataEXT data;
};
Layout
struct VkDescriptorGetTensorInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorViewARM tensorView;
};
Layout
struct VkDescriptorImageInfo {
(uint64_t) VkSampler sampler;
(uint64_t) VkImageView imageView;
(int) VkImageLayout imageLayout;
};
Layout
struct VkDescriptorPoolCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDescriptorPoolCreateFlags flags;
uint32_t maxSets;
uint32_t poolSizeCount;
const VkDescriptorPoolSize* pPoolSizes;
};
Layout
struct VkDescriptorPoolInlineUniformBlockCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxInlineUniformBlockBindings;
};
Layout
struct VkDescriptorPoolInlineUniformBlockCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxInlineUniformBlockBindings;
};
Layout
struct VkDescriptorPoolSize {
(int) VkDescriptorType type;
uint32_t descriptorCount;
};
Layout
struct VkDescriptorSetAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorPool descriptorPool;
uint32_t descriptorSetCount;
const VkDescriptorSetLayout* pSetLayouts;
};
Layout
struct VkDescriptorSetBindingReferenceVALVE {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorSetLayout descriptorSetLayout;
uint32_t binding;
};
Layout
struct VkDescriptorSetLayoutBinding {
uint32_t binding;
(int) VkDescriptorType descriptorType;
uint32_t descriptorCount;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
const VkSampler* pImmutableSamplers;
};
Layout
struct VkDescriptorSetLayoutBindingFlagsCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t bindingCount;
const VkDescriptorBindingFlags* pBindingFlags;
};
Layout
struct VkDescriptorSetLayoutBindingFlagsCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t bindingCount;
const VkDescriptorBindingFlags* pBindingFlags;
};
Layout
struct VkDescriptorSetLayoutCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDescriptorSetLayoutCreateFlags flags;
uint32_t bindingCount;
const VkDescriptorSetLayoutBinding* pBindings;
};
Layout
struct VkDescriptorSetLayoutHostMappingInfoVALVE {
(int) VkStructureType sType;
void* pNext;
size_t descriptorOffset;
uint32_t descriptorSize;
};
Layout
struct VkDescriptorSetLayoutSupport {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 supported;
};
Layout
struct VkDescriptorSetLayoutSupportKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 supported;
};
Layout
struct VkDescriptorSetVariableDescriptorCountAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t descriptorSetCount;
const uint32_t* pDescriptorCounts;
};
Layout
struct VkDescriptorSetVariableDescriptorCountAllocateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t descriptorSetCount;
const uint32_t* pDescriptorCounts;
};
Layout
struct VkDescriptorSetVariableDescriptorCountLayoutSupport {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVariableDescriptorCount;
};
Layout
struct VkDescriptorSetVariableDescriptorCountLayoutSupportEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVariableDescriptorCount;
};
Layout
struct VkDescriptorUpdateTemplateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDescriptorUpdateTemplateCreateFlags flags;
uint32_t descriptorUpdateEntryCount;
const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;
(int) VkDescriptorUpdateTemplateType templateType;
(uint64_t) VkDescriptorSetLayout descriptorSetLayout;
(int) VkPipelineBindPoint pipelineBindPoint;
(uint64_t) VkPipelineLayout pipelineLayout;
uint32_t set;
};
Layout
struct VkDescriptorUpdateTemplateCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDescriptorUpdateTemplateCreateFlags flags;
uint32_t descriptorUpdateEntryCount;
const VkDescriptorUpdateTemplateEntry* pDescriptorUpdateEntries;
(int) VkDescriptorUpdateTemplateType templateType;
(uint64_t) VkDescriptorSetLayout descriptorSetLayout;
(int) VkPipelineBindPoint pipelineBindPoint;
(uint64_t) VkPipelineLayout pipelineLayout;
uint32_t set;
};
Layout
struct VkDescriptorUpdateTemplateEntry {
uint32_t dstBinding;
uint32_t dstArrayElement;
uint32_t descriptorCount;
(int) VkDescriptorType descriptorType;
size_t offset;
size_t stride;
};
Layout
struct VkDescriptorUpdateTemplateEntryKHR {
uint32_t dstBinding;
uint32_t dstArrayElement;
uint32_t descriptorCount;
(int) VkDescriptorType descriptorType;
size_t offset;
size_t stride;
};
Wraps a Vulkan device dispatchable handle.
Layout
struct VkDeviceAddressBindingCallbackDataEXT {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkDeviceAddressBindingFlagsEXT flags;
(uint64_t) VkDeviceAddress baseAddress;
(uint64_t) VkDeviceSize size;
(int) VkDeviceAddressBindingTypeEXT bindingType;
};
Layout
struct VkDeviceBufferMemoryRequirements {
(int) VkStructureType sType;
const void* pNext;
const VkBufferCreateInfo* pCreateInfo;
};
Layout
struct VkDeviceBufferMemoryRequirementsKHR {
(int) VkStructureType sType;
const void* pNext;
const VkBufferCreateInfo* pCreateInfo;
};
Layout
struct VkDeviceCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceCreateFlags flags;
uint32_t queueCreateInfoCount;
const VkDeviceQueueCreateInfo* pQueueCreateInfos;
uint32_t enabledLayerCount;
const char* const * ppEnabledLayerNames;
uint32_t enabledExtensionCount;
const char* const * ppEnabledExtensionNames;
const VkPhysicalDeviceFeatures* pEnabledFeatures;
};
Layout
struct VkDeviceDeviceMemoryReportCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceMemoryReportFlagsEXT flags;
(void (*VkDeviceMemoryReportCallbackEXT)(const VkDeviceMemoryReportCallbackDataEXT* pCallbackData, void* pUserData)) PFN_vkDeviceMemoryReportCallbackEXT pfnUserCallback;
void* pUserData;
};
Layout
struct VkDeviceDiagnosticsConfigCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceDiagnosticsConfigFlagsNV flags;
};
Layout
struct VkDeviceEventInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDeviceEventTypeEXT deviceEvent;
};
Layout
struct VkDeviceFaultAddressInfoEXT {
(int) VkDeviceFaultAddressTypeEXT addressType;
(uint64_t) VkDeviceAddress reportedAddress;
(uint64_t) VkDeviceSize addressPrecision;
};
Layout
struct VkDeviceFaultCountsEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t addressInfoCount;
uint32_t vendorInfoCount;
(uint64_t) VkDeviceSize vendorBinarySize;
};
Layout
struct VkDeviceFaultInfoEXT {
(int) VkStructureType sType;
void* pNext;
char description[256];
VkDeviceFaultAddressInfoEXT* pAddressInfos;
VkDeviceFaultVendorInfoEXT* pVendorInfos;
void* pVendorBinaryData;
};
Layout
struct VkDeviceFaultVendorBinaryHeaderVersionOneEXT {
uint32_t headerSize;
(int) VkDeviceFaultVendorBinaryHeaderVersionEXT headerVersion;
uint32_t vendorID;
uint32_t deviceID;
uint32_t driverVersion;
uint8_t pipelineCacheUUID[16];
uint32_t applicationNameOffset;
uint32_t applicationVersion;
uint32_t engineNameOffset;
uint32_t engineVersion;
uint32_t apiVersion;
};
Layout
struct VkDeviceFaultVendorInfoEXT {
char description[256];
uint64_t vendorFaultCode;
uint64_t vendorFaultData;
};
Layout
struct VkDeviceGroupBindSparseInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t resourceDeviceIndex;
uint32_t memoryDeviceIndex;
};
Layout
struct VkDeviceGroupBindSparseInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t resourceDeviceIndex;
uint32_t memoryDeviceIndex;
};
Layout
struct VkDeviceGroupCommandBufferBeginInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceMask;
};
Layout
struct VkDeviceGroupCommandBufferBeginInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceMask;
};
Layout
struct VkDeviceGroupDeviceCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t physicalDeviceCount;
const VkPhysicalDevice* pPhysicalDevices;
};
Layout
struct VkDeviceGroupDeviceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t physicalDeviceCount;
const VkPhysicalDevice* pPhysicalDevices;
};
Layout
struct VkDeviceGroupPresentCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t presentMask[32];
((uint32_t) VkFlags) VkDeviceGroupPresentModeFlagsKHR modes;
};
Layout
struct VkDeviceGroupPresentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const uint32_t* pDeviceMasks;
(int) VkDeviceGroupPresentModeFlagBitsKHR mode;
};
Layout
struct VkDeviceGroupRenderPassBeginInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceMask;
uint32_t deviceRenderAreaCount;
const VkRect2D* pDeviceRenderAreas;
};
Layout
struct VkDeviceGroupRenderPassBeginInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceMask;
uint32_t deviceRenderAreaCount;
const VkRect2D* pDeviceRenderAreas;
};
Layout
struct VkDeviceGroupSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreCount;
const uint32_t* pWaitSemaphoreDeviceIndices;
uint32_t commandBufferCount;
const uint32_t* pCommandBufferDeviceMasks;
uint32_t signalSemaphoreCount;
const uint32_t* pSignalSemaphoreDeviceIndices;
};
Layout
struct VkDeviceGroupSubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreCount;
const uint32_t* pWaitSemaphoreDeviceIndices;
uint32_t commandBufferCount;
const uint32_t* pCommandBufferDeviceMasks;
uint32_t signalSemaphoreCount;
const uint32_t* pSignalSemaphoreDeviceIndices;
};
Layout
struct VkDeviceGroupSwapchainCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceGroupPresentModeFlagsKHR modes;
};
Layout
struct VkDeviceImageMemoryRequirements {
(int) VkStructureType sType;
const void* pNext;
const VkImageCreateInfo* pCreateInfo;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkDeviceImageMemoryRequirementsKHR {
(int) VkStructureType sType;
const void* pNext;
const VkImageCreateInfo* pCreateInfo;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkDeviceImageSubresourceInfo {
(int) VkStructureType sType;
const void* pNext;
const VkImageCreateInfo* pCreateInfo;
const VkImageSubresource2* pSubresource;
};
Layout
struct VkDeviceImageSubresourceInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const VkImageCreateInfo* pCreateInfo;
const VkImageSubresource2* pSubresource;
};
Layout
struct VkDeviceMemoryOpaqueCaptureAddressInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkDeviceMemoryOpaqueCaptureAddressInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkDeviceMemoryOverallocationCreateInfoAMD {
(int) VkStructureType sType;
const void* pNext;
(int) VkMemoryOverallocationBehaviorAMD overallocationBehavior;
};
Layout
struct VkDeviceMemoryReportCallbackDataEXT {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkDeviceMemoryReportFlagsEXT flags;
(int) VkDeviceMemoryReportEventTypeEXT type;
uint64_t memoryObjectId;
(uint64_t) VkDeviceSize size;
(int) VkObjectType objectType;
uint64_t objectHandle;
uint32_t heapIndex;
};
typedef void (*VkDeviceMemoryReportCallbackEXT)(const VkDeviceMemoryReportCallbackDataEXT* pCallbackData, void* pUserData);
Layout
struct VkDeviceObjectReservationCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t pipelineCacheCreateInfoCount;
const VkPipelineCacheCreateInfo* pPipelineCacheCreateInfos;
uint32_t pipelinePoolSizeCount;
const VkPipelinePoolSize* pPipelinePoolSizes;
uint32_t semaphoreRequestCount;
uint32_t commandBufferRequestCount;
uint32_t fenceRequestCount;
uint32_t deviceMemoryRequestCount;
uint32_t bufferRequestCount;
uint32_t imageRequestCount;
uint32_t eventRequestCount;
uint32_t queryPoolRequestCount;
uint32_t bufferViewRequestCount;
uint32_t imageViewRequestCount;
uint32_t layeredImageViewRequestCount;
uint32_t pipelineCacheRequestCount;
uint32_t pipelineLayoutRequestCount;
uint32_t renderPassRequestCount;
uint32_t graphicsPipelineRequestCount;
uint32_t computePipelineRequestCount;
uint32_t descriptorSetLayoutRequestCount;
uint32_t samplerRequestCount;
uint32_t descriptorPoolRequestCount;
uint32_t descriptorSetRequestCount;
uint32_t framebufferRequestCount;
uint32_t commandPoolRequestCount;
uint32_t samplerYcbcrConversionRequestCount;
uint32_t surfaceRequestCount;
uint32_t swapchainRequestCount;
uint32_t displayModeRequestCount;
uint32_t subpassDescriptionRequestCount;
uint32_t attachmentDescriptionRequestCount;
uint32_t descriptorSetLayoutBindingRequestCount;
uint32_t descriptorSetLayoutBindingLimit;
uint32_t maxImageViewMipLevels;
uint32_t maxImageViewArrayLayers;
uint32_t maxLayeredImageViewMipLevels;
uint32_t maxOcclusionQueriesPerPool;
uint32_t maxPipelineStatisticsQueriesPerPool;
uint32_t maxTimestampQueriesPerPool;
uint32_t maxImmutableSamplersPerDescriptorSetLayout;
};
Layout
union VkDeviceOrHostAddressConstAMDX {
(uint64_t) VkDeviceAddress deviceAddress;
const void* hostAddress;
};
Layout
union VkDeviceOrHostAddressConstKHR {
(uint64_t) VkDeviceAddress deviceAddress;
const void* hostAddress;
};
Layout
union VkDeviceOrHostAddressKHR {
(uint64_t) VkDeviceAddress deviceAddress;
void* hostAddress;
};
Layout
struct VkDevicePipelineBinaryInternalCacheControlKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 disableInternalCache;
};
Layout
struct VkDevicePrivateDataCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t privateDataSlotRequestCount;
};
Layout
struct VkDevicePrivateDataCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t privateDataSlotRequestCount;
};
Layout
struct VkDeviceQueueCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceQueueCreateFlags flags;
uint32_t queueFamilyIndex;
uint32_t queueCount;
const float* pQueuePriorities;
};
Layout
struct VkDeviceQueueGlobalPriorityCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkQueueGlobalPriority globalPriority;
};
Layout
struct VkDeviceQueueGlobalPriorityCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkQueueGlobalPriority globalPriority;
};
Layout
struct VkDeviceQueueGlobalPriorityCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkQueueGlobalPriority globalPriority;
};
Layout
struct VkDeviceQueueInfo2 {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDeviceQueueCreateFlags flags;
uint32_t queueFamilyIndex;
uint32_t queueIndex;
};
Layout
struct VkDeviceQueueShaderCoreControlCreateInfoARM {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderCoreCount;
};
Layout
struct VkDeviceSemaphoreSciSyncPoolReservationCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t semaphoreSciSyncPoolRequestCount;
};
Layout
struct VkDeviceTensorMemoryRequirementsARM {
(int) VkStructureType sType;
const void* pNext;
const VkTensorCreateInfoARM* pCreateInfo;
};
Layout
struct VkDirectDriverLoadingInfoLUNARG {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkDirectDriverLoadingFlagsLUNARG flags;
((void (*VkVoidFunction)()) PFN_vkVoidFunction (*VkGetInstanceProcAddrLUNARG)((struct VkInstance*) VkInstance instance, const char* pName)) PFN_vkGetInstanceProcAddrLUNARG pfnGetInstanceProcAddr;
};
Layout
struct VkDirectDriverLoadingListLUNARG {
(int) VkStructureType sType;
const void* pNext;
(int) VkDirectDriverLoadingModeLUNARG mode;
uint32_t driverCount;
const VkDirectDriverLoadingInfoLUNARG* pDrivers;
};
Layout
struct VkDirectFBSurfaceCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDirectFBSurfaceCreateFlagsEXT flags;
IDirectFB* dfb;
IDirectFBSurface* surface;
};
Layout
struct VkDispatchGraphCountInfoAMDX {
uint32_t count;
(union VkDeviceOrHostAddressConstAMDX) VkDeviceOrHostAddressConstAMDX infos;
uint64_t stride;
};
Layout
struct VkDispatchGraphInfoAMDX {
uint32_t nodeIndex;
uint32_t payloadCount;
(union VkDeviceOrHostAddressConstAMDX) VkDeviceOrHostAddressConstAMDX payloads;
uint64_t payloadStride;
};
Layout
struct VkDispatchIndirectCommand {
uint32_t x;
uint32_t y;
uint32_t z;
};
Layout
struct VkDispatchTileInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkDisplayEventInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDisplayEventTypeEXT displayEvent;
};
Layout
struct VkDisplayModeCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDisplayModeCreateFlagsKHR flags;
(struct VkDisplayModeParametersKHR) VkDisplayModeParametersKHR parameters;
};
Layout
struct VkDisplayModeParametersKHR {
(struct VkExtent2D) VkExtent2D visibleRegion;
uint32_t refreshRate;
};
Layout
struct VkDisplayModeProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkDisplayModePropertiesKHR) VkDisplayModePropertiesKHR displayModeProperties;
};
Layout
struct VkDisplayModePropertiesKHR {
(uint64_t) VkDisplayModeKHR displayMode;
(struct VkDisplayModeParametersKHR) VkDisplayModeParametersKHR parameters;
};
Layout
struct VkDisplayModeStereoPropertiesNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 hdmi3DSupported;
};
Layout
struct VkDisplayNativeHdrSurfaceCapabilitiesAMD {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 localDimmingSupport;
};
Layout
struct VkDisplayPlaneCapabilities2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkDisplayPlaneCapabilitiesKHR) VkDisplayPlaneCapabilitiesKHR capabilities;
};
Layout
struct VkDisplayPlaneCapabilitiesKHR {
((uint32_t) VkFlags) VkDisplayPlaneAlphaFlagsKHR supportedAlpha;
(struct VkOffset2D) VkOffset2D minSrcPosition;
(struct VkOffset2D) VkOffset2D maxSrcPosition;
(struct VkExtent2D) VkExtent2D minSrcExtent;
(struct VkExtent2D) VkExtent2D maxSrcExtent;
(struct VkOffset2D) VkOffset2D minDstPosition;
(struct VkOffset2D) VkOffset2D maxDstPosition;
(struct VkExtent2D) VkExtent2D minDstExtent;
(struct VkExtent2D) VkExtent2D maxDstExtent;
};
Layout
struct VkDisplayPlaneInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDisplayModeKHR mode;
uint32_t planeIndex;
};
Layout
struct VkDisplayPlaneProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkDisplayPlanePropertiesKHR) VkDisplayPlanePropertiesKHR displayPlaneProperties;
};
Layout
struct VkDisplayPlanePropertiesKHR {
(uint64_t) VkDisplayKHR currentDisplay;
uint32_t currentStackIndex;
};
Layout
struct VkDisplayPowerInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDisplayPowerStateEXT powerState;
};
Layout
struct VkDisplayPresentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkRect2D) VkRect2D srcRect;
(struct VkRect2D) VkRect2D dstRect;
(uint32_t) VkBool32 persistent;
};
Layout
struct VkDisplayProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkDisplayPropertiesKHR) VkDisplayPropertiesKHR displayProperties;
};
Layout
struct VkDisplayPropertiesKHR {
(uint64_t) VkDisplayKHR display;
const char* displayName;
(struct VkExtent2D) VkExtent2D physicalDimensions;
(struct VkExtent2D) VkExtent2D physicalResolution;
((uint32_t) VkFlags) VkSurfaceTransformFlagsKHR supportedTransforms;
(uint32_t) VkBool32 planeReorderPossible;
(uint32_t) VkBool32 persistentContent;
};
Layout
struct VkDisplaySurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkDisplaySurfaceCreateFlagsKHR flags;
(uint64_t) VkDisplayModeKHR displayMode;
uint32_t planeIndex;
uint32_t planeStackIndex;
(int) VkSurfaceTransformFlagBitsKHR transform;
float globalAlpha;
(int) VkDisplayPlaneAlphaFlagBitsKHR alphaMode;
(struct VkExtent2D) VkExtent2D imageExtent;
};
Layout
struct VkDisplaySurfaceStereoCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkDisplaySurfaceStereoTypeNV stereoType;
};
Layout
struct VkDrawIndexedIndirectCommand {
uint32_t indexCount;
uint32_t instanceCount;
uint32_t firstIndex;
int32_t vertexOffset;
uint32_t firstInstance;
};
Layout
struct VkDrawIndirectCommand {
uint32_t vertexCount;
uint32_t instanceCount;
uint32_t firstVertex;
uint32_t firstInstance;
};
Layout
struct VkDrawIndirectCountIndirectCommandEXT {
(uint64_t) VkDeviceAddress bufferAddress;
uint32_t stride;
uint32_t commandCount;
};
Layout
struct VkDrawMeshTasksIndirectCommandEXT {
uint32_t groupCountX;
uint32_t groupCountY;
uint32_t groupCountZ;
};
Layout
struct VkDrawMeshTasksIndirectCommandNV {
uint32_t taskCount;
uint32_t firstTask;
};
Layout
struct VkDrmFormatModifierProperties2EXT {
uint64_t drmFormatModifier;
uint32_t drmFormatModifierPlaneCount;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 drmFormatModifierTilingFeatures;
};
Layout
struct VkDrmFormatModifierPropertiesEXT {
uint64_t drmFormatModifier;
uint32_t drmFormatModifierPlaneCount;
((uint32_t) VkFlags) VkFormatFeatureFlags drmFormatModifierTilingFeatures;
};
Layout
struct VkDrmFormatModifierPropertiesList2EXT {
(int) VkStructureType sType;
void* pNext;
uint32_t drmFormatModifierCount;
VkDrmFormatModifierProperties2EXT* pDrmFormatModifierProperties;
};
Layout
struct VkDrmFormatModifierPropertiesListEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t drmFormatModifierCount;
VkDrmFormatModifierPropertiesEXT* pDrmFormatModifierProperties;
};
Layout
struct VkEventCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkEventCreateFlags flags;
};
Layout
struct VkExecutionGraphPipelineCreateInfoAMDX {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCreateFlags flags;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo* pStages;
const VkPipelineLibraryCreateInfoKHR* pLibraryInfo;
(uint64_t) VkPipelineLayout layout;
(uint64_t) VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
};
Layout
struct VkExecutionGraphPipelineScratchSizeAMDX {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize minSize;
(uint64_t) VkDeviceSize maxSize;
(uint64_t) VkDeviceSize sizeGranularity;
};
Layout
struct VkExportFenceCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags handleTypes;
};
Layout
struct VkExportFenceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags handleTypes;
};
Layout
struct VkExportFenceSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(struct NvSciSyncAttrListRec *) NvSciSyncAttrList pAttributes;
};
Layout
struct VkExportFenceWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const SECURITY_ATTRIBUTES* pAttributes;
(unsigned long) DWORD dwAccess;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkExportMemoryAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExportMemoryAllocateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExportMemoryAllocateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlagsNV handleTypes;
};
Layout
struct VkExportMemorySciBufInfoNV {
(int) VkStructureType sType;
const void* pNext;
(struct NvSciBufAttrListRec *) NvSciBufAttrList pAttributes;
};
Layout
struct VkExportMemoryWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const SECURITY_ATTRIBUTES* pAttributes;
(unsigned long) DWORD dwAccess;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkExportMemoryWin32HandleInfoNV {
(int) VkStructureType sType;
const void* pNext;
const SECURITY_ATTRIBUTES* pAttributes;
(unsigned long) DWORD dwAccess;
};
Layout
struct VkExportMetalBufferInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(void*) MTLBuffer_id mtlBuffer;
};
Layout
struct VkExportMetalCommandQueueInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(struct VkQueue*) VkQueue queue;
(void*) MTLCommandQueue_id mtlCommandQueue;
};
Layout
struct VkExportMetalDeviceInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(void*) MTLDevice_id mtlDevice;
};
Layout
struct VkExportMetalIOSurfaceInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(struct __IOSurface *) IOSurfaceRef ioSurface;
};
Layout
struct VkExportMetalObjectCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkExportMetalObjectTypeFlagBitsEXT exportObjectType;
};
Layout
struct VkExportMetalObjectsInfoEXT {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkExportMetalSharedEventInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(uint64_t) VkEvent event;
(void*) MTLSharedEvent_id mtlSharedEvent;
};
Layout
struct VkExportMetalTextureInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkImageView imageView;
(uint64_t) VkBufferView bufferView;
(int) VkImageAspectFlagBits plane;
(void*) MTLTexture_id mtlTexture;
};
Layout
struct VkExportSemaphoreCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags handleTypes;
};
Layout
struct VkExportSemaphoreCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags handleTypes;
};
Layout
struct VkExportSemaphoreSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(struct NvSciSyncAttrListRec *) NvSciSyncAttrList pAttributes;
};
Layout
struct VkExportSemaphoreWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const SECURITY_ATTRIBUTES* pAttributes;
(unsigned long) DWORD dwAccess;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkExtensionProperties {
char extensionName[256];
uint32_t specVersion;
};
Layout
struct VkExtent2D {
uint32_t width;
uint32_t height;
};
Layout
struct VkExtent3D {
uint32_t width;
uint32_t height;
uint32_t depth;
};
Layout
struct VkExternalBufferProperties {
(int) VkStructureType sType;
void* pNext;
(struct VkExternalMemoryProperties) VkExternalMemoryProperties externalMemoryProperties;
};
Layout
struct VkExternalBufferPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkExternalMemoryProperties) VkExternalMemoryProperties externalMemoryProperties;
};
Layout
struct VkExternalComputeQueueCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(struct VkQueue*) VkQueue preferredQueue;
};
Layout
struct VkExternalComputeQueueDataParamsNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t deviceIndex;
};
Layout
struct VkExternalComputeQueueDeviceCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t reservedExternalQueues;
};
Wraps a
VkExternalComputeQueueNV
dispatchable handle provided by VK_NV_external_compute_queue.Layout
struct VkExternalFenceProperties {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags compatibleHandleTypes;
((uint32_t) VkFlags) VkExternalFenceFeatureFlags externalFenceFeatures;
};
Layout
struct VkExternalFencePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalFenceHandleTypeFlags compatibleHandleTypes;
((uint32_t) VkFlags) VkExternalFenceFeatureFlags externalFenceFeatures;
};
Layout
struct VkExternalFormatANDROID {
(int) VkStructureType sType;
void* pNext;
uint64_t externalFormat;
};
Layout
struct VkExternalFormatQNX {
(int) VkStructureType sType;
void* pNext;
uint64_t externalFormat;
};
Layout
struct VkExternalImageFormatProperties {
(int) VkStructureType sType;
void* pNext;
(struct VkExternalMemoryProperties) VkExternalMemoryProperties externalMemoryProperties;
};
Layout
struct VkExternalImageFormatPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkExternalMemoryProperties) VkExternalMemoryProperties externalMemoryProperties;
};
Layout
struct VkExternalImageFormatPropertiesNV {
(struct VkImageFormatProperties) VkImageFormatProperties imageFormatProperties;
((uint32_t) VkFlags) VkExternalMemoryFeatureFlagsNV externalMemoryFeatures;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlagsNV exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlagsNV compatibleHandleTypes;
};
Layout
struct VkExternalMemoryAcquireUnmodifiedEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 acquireUnmodifiedMemory;
};
Layout
struct VkExternalMemoryBufferCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExternalMemoryBufferCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExternalMemoryImageCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExternalMemoryImageCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExternalMemoryImageCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlagsNV handleTypes;
};
Layout
struct VkExternalMemoryProperties {
((uint32_t) VkFlags) VkExternalMemoryFeatureFlags externalMemoryFeatures;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags compatibleHandleTypes;
};
Layout
struct VkExternalMemoryPropertiesKHR {
((uint32_t) VkFlags) VkExternalMemoryFeatureFlags externalMemoryFeatures;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags compatibleHandleTypes;
};
Layout
struct VkExternalMemoryTensorCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags handleTypes;
};
Layout
struct VkExternalSemaphoreProperties {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;
((uint32_t) VkFlags) VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;
};
Layout
struct VkExternalSemaphorePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags exportFromImportedHandleTypes;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags compatibleHandleTypes;
((uint32_t) VkFlags) VkExternalSemaphoreFeatureFlags externalSemaphoreFeatures;
};
Layout
struct VkExternalTensorPropertiesARM {
(int) VkStructureType sType;
const void* pNext;
(struct VkExternalMemoryProperties) VkExternalMemoryProperties externalMemoryProperties;
};
typedef void (*VkFaultCallbackFunction)((uint32_t) VkBool32 unrecordedFaults, uint32_t faultCount, const VkFaultData* pFaults);
Layout
struct VkFaultCallbackInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t faultCount;
VkFaultData* pFaults;
(void (*VkFaultCallbackFunction)((uint32_t) VkBool32 unrecordedFaults, uint32_t faultCount, const VkFaultData* pFaults)) PFN_vkFaultCallbackFunction pfnFaultCallback;
};
Layout
struct VkFaultData {
(int) VkStructureType sType;
void* pNext;
(int) VkFaultLevel faultLevel;
(int) VkFaultType faultType;
};
Layout
struct VkFenceCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkFenceCreateFlags flags;
};
Layout
struct VkFenceGetFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
(int) VkExternalFenceHandleTypeFlagBits handleType;
};
Layout
struct VkFenceGetSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
(int) VkExternalFenceHandleTypeFlagBits handleType;
};
Layout
struct VkFenceGetWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
(int) VkExternalFenceHandleTypeFlagBits handleType;
};
Layout
struct VkFilterCubicImageViewImageFormatPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 filterCubic;
(uint32_t) VkBool32 filterCubicMinmax;
};
VkFormat
adapted from vulkan_format_traits.hppLayout
struct VkFormatProperties {
((uint32_t) VkFlags) VkFormatFeatureFlags linearTilingFeatures;
((uint32_t) VkFlags) VkFormatFeatureFlags optimalTilingFeatures;
((uint32_t) VkFlags) VkFormatFeatureFlags bufferFeatures;
};
Layout
struct VkFormatProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkFormatProperties) VkFormatProperties formatProperties;
};
Layout
struct VkFormatProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkFormatProperties) VkFormatProperties formatProperties;
};
Layout
struct VkFormatProperties3 {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 linearTilingFeatures;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 optimalTilingFeatures;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 bufferFeatures;
};
Layout
struct VkFormatProperties3KHR {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 linearTilingFeatures;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 optimalTilingFeatures;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 bufferFeatures;
};
Layout
struct VkFragmentShadingRateAttachmentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const VkAttachmentReference2* pFragmentShadingRateAttachment;
(struct VkExtent2D) VkExtent2D shadingRateAttachmentTexelSize;
};
Layout
struct VkFrameBoundaryEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkFrameBoundaryFlagsEXT flags;
uint64_t frameID;
uint32_t imageCount;
const VkImage* pImages;
uint32_t bufferCount;
const VkBuffer* pBuffers;
uint64_t tagName;
size_t tagSize;
const void* pTag;
};
Layout
struct VkFrameBoundaryTensorsARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t tensorCount;
const VkTensorARM* pTensors;
};
Layout
struct VkFramebufferAttachmentImageInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageCreateFlags flags;
((uint32_t) VkFlags) VkImageUsageFlags usage;
uint32_t width;
uint32_t height;
uint32_t layerCount;
uint32_t viewFormatCount;
const VkFormat* pViewFormats;
};
Layout
struct VkFramebufferAttachmentImageInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageCreateFlags flags;
((uint32_t) VkFlags) VkImageUsageFlags usage;
uint32_t width;
uint32_t height;
uint32_t layerCount;
uint32_t viewFormatCount;
const VkFormat* pViewFormats;
};
Layout
struct VkFramebufferAttachmentsCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentImageInfoCount;
const VkFramebufferAttachmentImageInfo* pAttachmentImageInfos;
};
Layout
struct VkFramebufferAttachmentsCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentImageInfoCount;
const VkFramebufferAttachmentImageInfo* pAttachmentImageInfos;
};
Layout
struct VkFramebufferCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkFramebufferCreateFlags flags;
(uint64_t) VkRenderPass renderPass;
uint32_t attachmentCount;
const VkImageView* pAttachments;
uint32_t width;
uint32_t height;
uint32_t layers;
};
Layout
struct VkFramebufferMixedSamplesCombinationNV {
(int) VkStructureType sType;
void* pNext;
(int) VkCoverageReductionModeNV coverageReductionMode;
(int) VkSampleCountFlagBits rasterizationSamples;
((uint32_t) VkFlags) VkSampleCountFlags depthStencilSamples;
((uint32_t) VkFlags) VkSampleCountFlags colorSamples;
};
typedef void (*VkFreeFunction)(void* pUserData, void* pMemory);
Layout
struct VkGeneratedCommandsInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags shaderStages;
(uint64_t) VkIndirectExecutionSetEXT indirectExecutionSet;
(uint64_t) VkIndirectCommandsLayoutEXT indirectCommandsLayout;
(uint64_t) VkDeviceAddress indirectAddress;
(uint64_t) VkDeviceSize indirectAddressSize;
(uint64_t) VkDeviceAddress preprocessAddress;
(uint64_t) VkDeviceSize preprocessSize;
uint32_t maxSequenceCount;
(uint64_t) VkDeviceAddress sequenceCountAddress;
uint32_t maxDrawCount;
};
Layout
struct VkGeneratedCommandsInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkPipelineBindPoint pipelineBindPoint;
(uint64_t) VkPipeline pipeline;
(uint64_t) VkIndirectCommandsLayoutNV indirectCommandsLayout;
uint32_t streamCount;
const VkIndirectCommandsStreamNV* pStreams;
uint32_t sequencesCount;
(uint64_t) VkBuffer preprocessBuffer;
(uint64_t) VkDeviceSize preprocessOffset;
(uint64_t) VkDeviceSize preprocessSize;
(uint64_t) VkBuffer sequencesCountBuffer;
(uint64_t) VkDeviceSize sequencesCountOffset;
(uint64_t) VkBuffer sequencesIndexBuffer;
(uint64_t) VkDeviceSize sequencesIndexOffset;
};
Layout
struct VkGeneratedCommandsMemoryRequirementsInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkIndirectExecutionSetEXT indirectExecutionSet;
(uint64_t) VkIndirectCommandsLayoutEXT indirectCommandsLayout;
uint32_t maxSequenceCount;
uint32_t maxDrawCount;
};
Layout
struct VkGeneratedCommandsMemoryRequirementsInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkPipelineBindPoint pipelineBindPoint;
(uint64_t) VkPipeline pipeline;
(uint64_t) VkIndirectCommandsLayoutNV indirectCommandsLayout;
uint32_t maxSequencesCount;
};
Layout
struct VkGeneratedCommandsPipelineInfoEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkGeneratedCommandsShaderInfoEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderCount;
const VkShaderEXT* pShaders;
};
Layout
struct VkGeometryAABBNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer aabbData;
uint32_t numAABBs;
uint32_t stride;
(uint64_t) VkDeviceSize offset;
};
Layout
struct VkGeometryDataNV {
(struct VkGeometryTrianglesNV) VkGeometryTrianglesNV triangles;
(struct VkGeometryAABBNV) VkGeometryAABBNV aabbs;
};
Layout
struct VkGeometryNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkGeometryTypeKHR geometryType;
(struct VkGeometryDataNV) VkGeometryDataNV geometry;
((uint32_t) VkFlags) VkGeometryFlagsKHR flags;
};
Layout
struct VkGeometryTrianglesNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBuffer vertexData;
(uint64_t) VkDeviceSize vertexOffset;
uint32_t vertexCount;
(uint64_t) VkDeviceSize vertexStride;
(int) VkFormat vertexFormat;
(uint64_t) VkBuffer indexData;
(uint64_t) VkDeviceSize indexOffset;
uint32_t indexCount;
(int) VkIndexType indexType;
(uint64_t) VkBuffer transformData;
(uint64_t) VkDeviceSize transformOffset;
};
typedef (void (*VkVoidFunction)()) PFN_vkVoidFunction (*VkGetInstanceProcAddrLUNARG)((struct VkInstance*) VkInstance instance, const char* pName);
Layout
struct VkGetLatencyMarkerInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t timingCount;
VkLatencyTimingsFrameReportNV* pTimings;
};
Layout
struct VkGraphicsPipelineCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCreateFlags flags;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo* pStages;
const VkPipelineVertexInputStateCreateInfo* pVertexInputState;
const VkPipelineInputAssemblyStateCreateInfo* pInputAssemblyState;
const VkPipelineTessellationStateCreateInfo* pTessellationState;
const VkPipelineViewportStateCreateInfo* pViewportState;
const VkPipelineRasterizationStateCreateInfo* pRasterizationState;
const VkPipelineMultisampleStateCreateInfo* pMultisampleState;
const VkPipelineDepthStencilStateCreateInfo* pDepthStencilState;
const VkPipelineColorBlendStateCreateInfo* pColorBlendState;
const VkPipelineDynamicStateCreateInfo* pDynamicState;
(uint64_t) VkPipelineLayout layout;
(uint64_t) VkRenderPass renderPass;
uint32_t subpass;
(uint64_t) VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
};
Layout
struct VkGraphicsPipelineLibraryCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkGraphicsPipelineLibraryFlagsEXT flags;
};
Layout
struct VkGraphicsPipelineShaderGroupsCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t groupCount;
const VkGraphicsShaderGroupCreateInfoNV* pGroups;
uint32_t pipelineCount;
const VkPipeline* pPipelines;
};
Layout
struct VkGraphicsShaderGroupCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo* pStages;
const VkPipelineVertexInputStateCreateInfo* pVertexInputState;
const VkPipelineTessellationStateCreateInfo* pTessellationState;
};
Layout
struct VkHdrMetadataEXT {
(int) VkStructureType sType;
const void* pNext;
(struct VkXYColorEXT) VkXYColorEXT displayPrimaryRed;
(struct VkXYColorEXT) VkXYColorEXT displayPrimaryGreen;
(struct VkXYColorEXT) VkXYColorEXT displayPrimaryBlue;
(struct VkXYColorEXT) VkXYColorEXT whitePoint;
float maxLuminance;
float minLuminance;
float maxContentLightLevel;
float maxFrameAverageLightLevel;
};
Layout
struct VkHdrVividDynamicMetadataHUAWEI {
(int) VkStructureType sType;
const void* pNext;
size_t dynamicMetadataSize;
const void* pDynamicMetadata;
};
Layout
struct VkHeadlessSurfaceCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkHeadlessSurfaceCreateFlagsEXT flags;
};
Layout
struct VkHostImageCopyDevicePerformanceQuery {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 optimalDeviceAccess;
(uint32_t) VkBool32 identicalMemoryLayout;
};
Layout
struct VkHostImageCopyDevicePerformanceQueryEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 optimalDeviceAccess;
(uint32_t) VkBool32 identicalMemoryLayout;
};
Layout
struct VkHostImageLayoutTransitionInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(int) VkImageLayout oldLayout;
(int) VkImageLayout newLayout;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkHostImageLayoutTransitionInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(int) VkImageLayout oldLayout;
(int) VkImageLayout newLayout;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkImageAlignmentControlCreateInfoMESA {
(int) VkStructureType sType;
const void* pNext;
uint32_t maximumRequestedAlignment;
};
Layout
struct VkImageBlit {
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffsets[2];
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffsets[2];
};
Layout
struct VkImageBlit2 {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffsets[2];
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffsets[2];
};
Layout
struct VkImageBlit2KHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffsets[2];
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffsets[2];
};
Layout
struct VkImageCaptureDescriptorDataInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
};
Layout
struct VkImageCompressionControlEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageCompressionFlagsEXT flags;
uint32_t compressionControlPlaneCount;
VkImageCompressionFixedRateFlagsEXT* pFixedRateFlags;
};
Layout
struct VkImageCompressionPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkImageCompressionFlagsEXT imageCompressionFlags;
((uint32_t) VkFlags) VkImageCompressionFixedRateFlagsEXT imageCompressionFixedRateFlags;
};
Layout
struct VkImageConstraintsInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
uint32_t formatConstraintsCount;
const VkImageFormatConstraintsInfoFUCHSIA* pFormatConstraints;
(struct VkBufferCollectionConstraintsInfoFUCHSIA) VkBufferCollectionConstraintsInfoFUCHSIA bufferCollectionConstraints;
((uint32_t) VkFlags) VkImageConstraintsInfoFlagsFUCHSIA flags;
};
Layout
struct VkImageCopy {
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageCopy2 {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageCopy2KHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageCreateFlags flags;
(int) VkImageType imageType;
(int) VkFormat format;
(struct VkExtent3D) VkExtent3D extent;
uint32_t mipLevels;
uint32_t arrayLayers;
(int) VkSampleCountFlagBits samples;
(int) VkImageTiling tiling;
((uint32_t) VkFlags) VkImageUsageFlags usage;
(int) VkSharingMode sharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
(int) VkImageLayout initialLayout;
};
Layout
struct VkImageDrmFormatModifierExplicitCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint64_t drmFormatModifier;
uint32_t drmFormatModifierPlaneCount;
const VkSubresourceLayout* pPlaneLayouts;
};
Layout
struct VkImageDrmFormatModifierListCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t drmFormatModifierCount;
const uint64_t* pDrmFormatModifiers;
};
Layout
struct VkImageDrmFormatModifierPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint64_t drmFormatModifier;
};
Layout
struct VkImageFormatConstraintsInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageCreateInfo) VkImageCreateInfo imageCreateInfo;
((uint32_t) VkFlags) VkFormatFeatureFlags requiredFormatFeatures;
((uint32_t) VkFlags) VkImageFormatConstraintsFlagsFUCHSIA flags;
uint64_t sysmemPixelFormat;
uint32_t colorSpaceCount;
const VkSysmemColorSpaceFUCHSIA* pColorSpaces;
};
Layout
struct VkImageFormatListCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewFormatCount;
const VkFormat* pViewFormats;
};
Layout
struct VkImageFormatListCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewFormatCount;
const VkFormat* pViewFormats;
};
Layout
struct VkImageFormatProperties {
(struct VkExtent3D) VkExtent3D maxExtent;
uint32_t maxMipLevels;
uint32_t maxArrayLayers;
((uint32_t) VkFlags) VkSampleCountFlags sampleCounts;
(uint64_t) VkDeviceSize maxResourceSize;
};
Layout
struct VkImageFormatProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkImageFormatProperties) VkImageFormatProperties imageFormatProperties;
};
Layout
struct VkImageFormatProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkImageFormatProperties) VkImageFormatProperties imageFormatProperties;
};
Layout
struct VkImageMemoryBarrier {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
(int) VkImageLayout oldLayout;
(int) VkImageLayout newLayout;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkImage image;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkImageMemoryBarrier2 {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
(int) VkImageLayout oldLayout;
(int) VkImageLayout newLayout;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkImage image;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkImageMemoryBarrier2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
(int) VkImageLayout oldLayout;
(int) VkImageLayout newLayout;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkImage image;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkImageMemoryRequirementsInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
};
Layout
struct VkImageMemoryRequirementsInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
};
Layout
struct VkImagePipeSurfaceCreateInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImagePipeSurfaceCreateFlagsFUCHSIA flags;
(int32_t) zx_handle_t imagePipeHandle;
};
Layout
struct VkImagePlaneMemoryRequirementsInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkImagePlaneMemoryRequirementsInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkImageAspectFlagBits planeAspect;
};
Layout
struct VkImageResolve {
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageResolve2 {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageResolve2KHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers srcSubresource;
(struct VkOffset3D) VkOffset3D srcOffset;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers dstSubresource;
(struct VkOffset3D) VkOffset3D dstOffset;
(struct VkExtent3D) VkExtent3D extent;
};
Layout
struct VkImageSparseMemoryRequirementsInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
};
Layout
struct VkImageSparseMemoryRequirementsInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
};
Layout
struct VkImageStencilUsageCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags stencilUsage;
};
Layout
struct VkImageStencilUsageCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags stencilUsage;
};
Layout
struct VkImageSubresource {
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
uint32_t mipLevel;
uint32_t arrayLayer;
};
Layout
struct VkImageSubresource2 {
(int) VkStructureType sType;
void* pNext;
(struct VkImageSubresource) VkImageSubresource imageSubresource;
};
Layout
struct VkImageSubresource2EXT {
(int) VkStructureType sType;
void* pNext;
(struct VkImageSubresource) VkImageSubresource imageSubresource;
};
Layout
struct VkImageSubresource2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkImageSubresource) VkImageSubresource imageSubresource;
};
Layout
struct VkImageSubresourceLayers {
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
uint32_t mipLevel;
uint32_t baseArrayLayer;
uint32_t layerCount;
};
Layout
struct VkImageSubresourceRange {
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
uint32_t baseMipLevel;
uint32_t levelCount;
uint32_t baseArrayLayer;
uint32_t layerCount;
};
Layout
struct VkImageSwapchainCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSwapchainKHR swapchain;
};
Layout
struct VkImageToMemoryCopy {
(int) VkStructureType sType;
const void* pNext;
void* pHostPointer;
uint32_t memoryRowLength;
uint32_t memoryImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkImageToMemoryCopyEXT {
(int) VkStructureType sType;
const void* pNext;
void* pHostPointer;
uint32_t memoryRowLength;
uint32_t memoryImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkImageViewAddressPropertiesNVX {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceAddress deviceAddress;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkImageViewASTCDecodeModeEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat decodeMode;
};
Layout
struct VkImageViewCaptureDescriptorDataInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
};
Layout
struct VkImageViewCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageViewCreateFlags flags;
(uint64_t) VkImage image;
(int) VkImageViewType viewType;
(int) VkFormat format;
(struct VkComponentMapping) VkComponentMapping components;
(struct VkImageSubresourceRange) VkImageSubresourceRange subresourceRange;
};
Layout
struct VkImageViewHandleInfoNVX {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
(int) VkDescriptorType descriptorType;
(uint64_t) VkSampler sampler;
};
Layout
struct VkImageViewMinLodCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
float minLod;
};
Layout
struct VkImageViewSampleWeightCreateInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(struct VkOffset2D) VkOffset2D filterCenter;
(struct VkExtent2D) VkExtent2D filterSize;
uint32_t numPhases;
};
Layout
struct VkImageViewSlicedCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t sliceOffset;
uint32_t sliceCount;
};
Layout
struct VkImageViewUsageCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags usage;
};
Layout
struct VkImageViewUsageCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags usage;
};
Layout
struct VkImportAndroidHardwareBufferInfoANDROID {
(int) VkStructureType sType;
const void* pNext;
struct AHardwareBuffer * buffer;
};
Layout
struct VkImportFenceFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
((uint32_t) VkFlags) VkFenceImportFlags flags;
(int) VkExternalFenceHandleTypeFlagBits handleType;
int fd;
};
Layout
struct VkImportFenceSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
(int) VkExternalFenceHandleTypeFlagBits handleType;
void* handle;
};
Layout
struct VkImportFenceWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkFence fence;
((uint32_t) VkFlags) VkFenceImportFlags flags;
(int) VkExternalFenceHandleTypeFlagBits handleType;
(void*) HANDLE handle;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkImportMemoryBufferCollectionFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkBufferCollectionFUCHSIA collection;
uint32_t index;
};
Layout
struct VkImportMemoryFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
int fd;
};
Layout
struct VkImportMemoryHostPointerInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
void* pHostPointer;
};
Layout
struct VkImportMemoryMetalHandleInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
void* handle;
};
Layout
struct VkImportMemorySciBufInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
(struct NvSciBufObjRefRec *) NvSciBufObj handle;
};
Layout
struct VkImportMemoryWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
(void*) HANDLE handle;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkImportMemoryWin32HandleInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlagsNV handleType;
(void*) HANDLE handle;
};
Layout
struct VkImportMemoryZirconHandleInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
(int32_t) zx_handle_t handle;
};
Layout
struct VkImportMetalBufferInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(void*) MTLBuffer_id mtlBuffer;
};
Layout
struct VkImportMetalIOSurfaceInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(struct __IOSurface *) IOSurfaceRef ioSurface;
};
Layout
struct VkImportMetalSharedEventInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(void*) MTLSharedEvent_id mtlSharedEvent;
};
Layout
struct VkImportMetalTextureInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkImageAspectFlagBits plane;
(void*) MTLTexture_id mtlTexture;
};
Layout
struct VkImportScreenBufferInfoQNX {
(int) VkStructureType sType;
const void* pNext;
struct _screen_buffer * buffer;
};
Layout
struct VkImportSemaphoreFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
((uint32_t) VkFlags) VkSemaphoreImportFlags flags;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
int fd;
};
Layout
struct VkImportSemaphoreSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
void* handle;
};
Layout
struct VkImportSemaphoreWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
((uint32_t) VkFlags) VkSemaphoreImportFlags flags;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
(void*) HANDLE handle;
(const wchar_t*) LPCWSTR name;
};
Layout
struct VkImportSemaphoreZirconHandleInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
((uint32_t) VkFlags) VkSemaphoreImportFlags flags;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
(int32_t) zx_handle_t zirconHandle;
};
Layout
struct VkIndirectCommandsExecutionSetTokenEXT {
(int) VkIndirectExecutionSetInfoTypeEXT type;
((uint32_t) VkFlags) VkShaderStageFlags shaderStages;
};
Layout
struct VkIndirectCommandsIndexBufferTokenEXT {
(int) VkIndirectCommandsInputModeFlagBitsEXT mode;
};
Layout
struct VkIndirectCommandsLayoutCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkIndirectCommandsLayoutUsageFlagsEXT flags;
((uint32_t) VkFlags) VkShaderStageFlags shaderStages;
uint32_t indirectStride;
(uint64_t) VkPipelineLayout pipelineLayout;
uint32_t tokenCount;
const VkIndirectCommandsLayoutTokenEXT* pTokens;
};
Layout
struct VkIndirectCommandsLayoutCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkIndirectCommandsLayoutUsageFlagsNV flags;
(int) VkPipelineBindPoint pipelineBindPoint;
uint32_t tokenCount;
const VkIndirectCommandsLayoutTokenNV* pTokens;
uint32_t streamCount;
const uint32_t* pStreamStrides;
};
Layout
struct VkIndirectCommandsLayoutTokenEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkIndirectCommandsTokenTypeEXT type;
(union VkIndirectCommandsTokenDataEXT) VkIndirectCommandsTokenDataEXT data;
uint32_t offset;
};
Layout
struct VkIndirectCommandsLayoutTokenNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkIndirectCommandsTokenTypeNV tokenType;
uint32_t stream;
uint32_t offset;
uint32_t vertexBindingUnit;
(uint32_t) VkBool32 vertexDynamicStride;
(uint64_t) VkPipelineLayout pushconstantPipelineLayout;
((uint32_t) VkFlags) VkShaderStageFlags pushconstantShaderStageFlags;
uint32_t pushconstantOffset;
uint32_t pushconstantSize;
((uint32_t) VkFlags) VkIndirectStateFlagsNV indirectStateFlags;
uint32_t indexTypeCount;
const VkIndexType* pIndexTypes;
const uint32_t* pIndexTypeValues;
};
Layout
struct VkIndirectCommandsPushConstantTokenEXT {
(struct VkPushConstantRange) VkPushConstantRange updateRange;
};
Layout
struct VkIndirectCommandsStreamNV {
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
};
Layout
union VkIndirectCommandsTokenDataEXT {
const VkIndirectCommandsPushConstantTokenEXT* pPushConstant;
const VkIndirectCommandsVertexBufferTokenEXT* pVertexBuffer;
const VkIndirectCommandsIndexBufferTokenEXT* pIndexBuffer;
const VkIndirectCommandsExecutionSetTokenEXT* pExecutionSet;
};
Layout
struct VkIndirectCommandsVertexBufferTokenEXT {
uint32_t vertexBindingUnit;
};
Layout
struct VkIndirectExecutionSetCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkIndirectExecutionSetInfoTypeEXT type;
(union VkIndirectExecutionSetInfoEXT) VkIndirectExecutionSetInfoEXT info;
};
Layout
union VkIndirectExecutionSetInfoEXT {
const VkIndirectExecutionSetPipelineInfoEXT* pPipelineInfo;
const VkIndirectExecutionSetShaderInfoEXT* pShaderInfo;
};
Layout
struct VkIndirectExecutionSetPipelineInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipeline initialPipeline;
uint32_t maxPipelineCount;
};
Layout
struct VkIndirectExecutionSetShaderInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t shaderCount;
const VkShaderEXT* pInitialShaders;
const VkIndirectExecutionSetShaderLayoutInfoEXT* pSetLayoutInfos;
uint32_t maxShaderCount;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
};
Layout
struct VkIndirectExecutionSetShaderLayoutInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
};
Layout
struct VkInitializePerformanceApiInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
void* pUserData;
};
Layout
struct VkInputAttachmentAspectReference {
uint32_t subpass;
uint32_t inputAttachmentIndex;
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
};
Layout
struct VkInputAttachmentAspectReferenceKHR {
uint32_t subpass;
uint32_t inputAttachmentIndex;
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
};
Wraps a Vulkan instance handle.
Layout
struct VkInstanceCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkInstanceCreateFlags flags;
const VkApplicationInfo* pApplicationInfo;
uint32_t enabledLayerCount;
const char* const * ppEnabledLayerNames;
uint32_t enabledExtensionCount;
const char* const * ppEnabledExtensionNames;
};
typedef void (*VkInternalAllocationNotification)(void* pUserData, size_t size, (int) VkInternalAllocationType allocationType, (int) VkSystemAllocationScope allocationScope);
typedef void (*VkInternalFreeNotification)(void* pUserData, size_t size, (int) VkInternalAllocationType allocationType, (int) VkSystemAllocationScope allocationScope);
Layout
struct VkIOSSurfaceCreateInfoMVK {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkIOSSurfaceCreateFlagsMVK flags;
const void* pView;
};
Layout
struct VkLatencySleepInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore signalSemaphore;
uint64_t value;
};
Layout
struct VkLatencySleepModeInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 lowLatencyMode;
(uint32_t) VkBool32 lowLatencyBoost;
uint32_t minimumIntervalUs;
};
Layout
struct VkLatencySubmissionPresentIdNV {
(int) VkStructureType sType;
const void* pNext;
uint64_t presentID;
};
Layout
struct VkLatencySurfaceCapabilitiesNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t presentModeCount;
VkPresentModeKHR* pPresentModes;
};
Layout
struct VkLatencyTimingsFrameReportNV {
(int) VkStructureType sType;
const void* pNext;
uint64_t presentID;
uint64_t inputSampleTimeUs;
uint64_t simStartTimeUs;
uint64_t simEndTimeUs;
uint64_t renderSubmitStartTimeUs;
uint64_t renderSubmitEndTimeUs;
uint64_t presentStartTimeUs;
uint64_t presentEndTimeUs;
uint64_t driverStartTimeUs;
uint64_t driverEndTimeUs;
uint64_t osRenderQueueStartTimeUs;
uint64_t osRenderQueueEndTimeUs;
uint64_t gpuRenderStartTimeUs;
uint64_t gpuRenderEndTimeUs;
};
Layout
struct VkLayerProperties {
char layerName[256];
uint32_t specVersion;
uint32_t implementationVersion;
char description[256];
};
Layout
struct VkLayerSettingEXT {
const char* pLayerName;
const char* pSettingName;
(int) VkLayerSettingTypeEXT type;
uint32_t valueCount;
const void* pValues;
};
Layout
struct VkLayerSettingsCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t settingCount;
const VkLayerSettingEXT* pSettings;
};
The Vulkan loading function.
Layout
struct VkMacOSSurfaceCreateInfoMVK {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMacOSSurfaceCreateFlagsMVK flags;
const void* pView;
};
Layout
struct VkMappedMemoryRange {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Method handles.
Layout
struct VkMemoryAllocateFlagsInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryAllocateFlags flags;
uint32_t deviceMask;
};
Layout
struct VkMemoryAllocateFlagsInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryAllocateFlags flags;
uint32_t deviceMask;
};
Layout
struct VkMemoryAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize allocationSize;
uint32_t memoryTypeIndex;
};
Layout
struct VkMemoryBarrier {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
};
Layout
struct VkMemoryBarrier2 {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
};
Layout
struct VkMemoryBarrier2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
};
Layout
struct VkMemoryBarrierAccessFlags3KHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkAccessFlags3KHR srcAccessMask3;
((uint64_t) VkFlags64) VkAccessFlags3KHR dstAccessMask3;
};
Layout
struct VkMemoryDedicatedAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkMemoryDedicatedAllocateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage image;
(uint64_t) VkBuffer buffer;
};
Layout
struct VkMemoryDedicatedAllocateInfoTensorARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorARM tensor;
};
Layout
struct VkMemoryDedicatedRequirements {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 prefersDedicatedAllocation;
(uint32_t) VkBool32 requiresDedicatedAllocation;
};
Layout
struct VkMemoryDedicatedRequirementsKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 prefersDedicatedAllocation;
(uint32_t) VkBool32 requiresDedicatedAllocation;
};
Layout
struct VkMemoryFdPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryGetAndroidHardwareBufferInfoANDROID {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkMemoryGetFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryGetMetalHandleInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryGetRemoteAddressInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryGetSciBufInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryGetWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryGetZirconHandleInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkMemoryHeap {
(uint64_t) VkDeviceSize size;
((uint32_t) VkFlags) VkMemoryHeapFlags flags;
};
Layout
struct VkMemoryHostPointerPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryMapInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryMapFlags flags;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkMemoryMapInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryMapFlags flags;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkMemoryMapPlacedInfoEXT {
(int) VkStructureType sType;
const void* pNext;
void* pPlacedAddress;
};
Layout
struct VkMemoryMetalHandlePropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryOpaqueCaptureAddressAllocateInfo {
(int) VkStructureType sType;
const void* pNext;
uint64_t opaqueCaptureAddress;
};
Layout
struct VkMemoryOpaqueCaptureAddressAllocateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint64_t opaqueCaptureAddress;
};
Layout
struct VkMemoryPriorityAllocateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
float priority;
};
Layout
struct VkMemoryRequirements {
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceSize alignment;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryRequirements2 {
(int) VkStructureType sType;
void* pNext;
(struct VkMemoryRequirements) VkMemoryRequirements memoryRequirements;
};
Layout
struct VkMemoryRequirements2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkMemoryRequirements) VkMemoryRequirements memoryRequirements;
};
Layout
struct VkMemorySciBufPropertiesNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryToImageCopy {
(int) VkStructureType sType;
const void* pNext;
const void* pHostPointer;
uint32_t memoryRowLength;
uint32_t memoryImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkMemoryToImageCopyEXT {
(int) VkStructureType sType;
const void* pNext;
const void* pHostPointer;
uint32_t memoryRowLength;
uint32_t memoryImageHeight;
(struct VkImageSubresourceLayers) VkImageSubresourceLayers imageSubresource;
(struct VkOffset3D) VkOffset3D imageOffset;
(struct VkExtent3D) VkExtent3D imageExtent;
};
Layout
struct VkMemoryType {
((uint32_t) VkFlags) VkMemoryPropertyFlags propertyFlags;
uint32_t heapIndex;
};
Layout
struct VkMemoryUnmapInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryUnmapFlags flags;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkMemoryUnmapInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMemoryUnmapFlags flags;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkMemoryWin32HandlePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMemoryZirconHandlePropertiesFUCHSIA {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryTypeBits;
};
Layout
struct VkMetalSurfaceCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMetalSurfaceCreateFlagsEXT flags;
const CAMetalLayer* pLayer;
};
Layout
struct VkMicromapBuildInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkMicromapTypeEXT type;
((uint32_t) VkFlags) VkBuildMicromapFlagsEXT flags;
(int) VkBuildMicromapModeEXT mode;
(uint64_t) VkMicromapEXT dstMicromap;
uint32_t usageCountsCount;
const VkMicromapUsageEXT* pUsageCounts;
const VkMicromapUsageEXT* const * ppUsageCounts;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR data;
(union VkDeviceOrHostAddressKHR) VkDeviceOrHostAddressKHR scratchData;
(union VkDeviceOrHostAddressConstKHR) VkDeviceOrHostAddressConstKHR triangleArray;
(uint64_t) VkDeviceSize triangleArrayStride;
};
Layout
struct VkMicromapBuildSizesInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize micromapSize;
(uint64_t) VkDeviceSize buildScratchSize;
(uint32_t) VkBool32 discardable;
};
Layout
struct VkMicromapCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkMicromapCreateFlagsEXT createFlags;
(uint64_t) VkBuffer buffer;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
(int) VkMicromapTypeEXT type;
(uint64_t) VkDeviceAddress deviceAddress;
};
Layout
struct VkMicromapTriangleEXT {
uint32_t dataOffset;
uint16_t subdivisionLevel;
uint16_t format;
};
Layout
struct VkMicromapUsageEXT {
uint32_t count;
uint32_t subdivisionLevel;
uint32_t format;
};
Layout
struct VkMicromapVersionInfoEXT {
(int) VkStructureType sType;
const void* pNext;
const uint8_t* pVersionData;
};
Layout
struct VkMultiDrawIndexedInfoEXT {
uint32_t firstIndex;
uint32_t indexCount;
int32_t vertexOffset;
};
Layout
struct VkMultiDrawInfoEXT {
uint32_t firstVertex;
uint32_t vertexCount;
};
Layout
struct VkMultisampledRenderToSingleSampledInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 multisampledRenderToSingleSampledEnable;
(int) VkSampleCountFlagBits rasterizationSamples;
};
Layout
struct VkMultisamplePropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D maxSampleLocationGridSize;
};
Layout
struct VkMultiviewPerViewAttributesInfoNVX {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 perViewAttributes;
(uint32_t) VkBool32 perViewAttributesPositionXOnly;
};
Layout
struct VkMultiviewPerViewRenderAreasRenderPassBeginInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
uint32_t perViewRenderAreaCount;
const VkRect2D* pPerViewRenderAreas;
};
Layout
struct VkMutableDescriptorTypeCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t mutableDescriptorTypeListCount;
const VkMutableDescriptorTypeListEXT* pMutableDescriptorTypeLists;
};
Layout
struct VkMutableDescriptorTypeCreateInfoVALVE {
(int) VkStructureType sType;
const void* pNext;
uint32_t mutableDescriptorTypeListCount;
const VkMutableDescriptorTypeListEXT* pMutableDescriptorTypeLists;
};
Layout
struct VkMutableDescriptorTypeListEXT {
uint32_t descriptorTypeCount;
const VkDescriptorType* pDescriptorTypes;
};
Layout
struct VkMutableDescriptorTypeListVALVE {
uint32_t descriptorTypeCount;
const VkDescriptorType* pDescriptorTypes;
};
Layout
struct VkNativeBufferANDROID {
(int) VkStructureType sType;
const void* pNext;
const void* handle;
int stride;
int format;
int usage;
(struct VkNativeBufferUsage2ANDROID) VkNativeBufferUsage2ANDROID usage2;
};
Layout
struct VkNativeBufferUsage2ANDROID {
uint64_t consumer;
uint64_t producer;
};
Layout
struct VkOffset2D {
int32_t x;
int32_t y;
};
Layout
struct VkOffset3D {
int32_t x;
int32_t y;
int32_t z;
};
Layout
struct VkOHSurfaceCreateInfoOHOS {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSurfaceCreateFlagsOHOS flags;
OHNativeWindow* window;
};
Layout
struct VkOpaqueCaptureDescriptorDataCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
const void* opaqueCaptureDescriptorData;
};
Layout
struct VkOpticalFlowExecuteInfoNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkOpticalFlowExecuteFlagsNV flags;
uint32_t regionCount;
const VkRect2D* pRegions;
};
Layout
struct VkOpticalFlowImageFormatInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkOpticalFlowUsageFlagsNV usage;
};
Layout
struct VkOpticalFlowImageFormatPropertiesNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
};
Layout
struct VkOpticalFlowSessionCreateInfoNV {
(int) VkStructureType sType;
void* pNext;
uint32_t width;
uint32_t height;
(int) VkFormat imageFormat;
(int) VkFormat flowVectorFormat;
(int) VkFormat costFormat;
((uint32_t) VkFlags) VkOpticalFlowGridSizeFlagsNV outputGridSize;
((uint32_t) VkFlags) VkOpticalFlowGridSizeFlagsNV hintGridSize;
(int) VkOpticalFlowPerformanceLevelNV performanceLevel;
((uint32_t) VkFlags) VkOpticalFlowSessionCreateFlagsNV flags;
};
Layout
struct VkOpticalFlowSessionCreatePrivateDataInfoNV {
(int) VkStructureType sType;
void* pNext;
uint32_t id;
uint32_t size;
const void* pPrivateData;
};
Layout
struct VkOutOfBandQueueTypeInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkOutOfBandQueueTypeNV queueType;
};
Layout
struct VkPartitionedAccelerationStructureFlagsNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 enablePartitionTranslation;
};
Layout
struct VkPartitionedAccelerationStructureInstancesInputNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkBuildAccelerationStructureFlagsKHR flags;
uint32_t instanceCount;
uint32_t maxInstancePerPartitionCount;
uint32_t partitionCount;
uint32_t maxInstanceInGlobalPartitionCount;
};
Layout
struct VkPartitionedAccelerationStructureUpdateInstanceDataNV {
uint32_t instanceIndex;
uint32_t instanceContributionToHitGroupIndex;
(uint64_t) VkDeviceAddress accelerationStructure;
};
Layout
struct VkPartitionedAccelerationStructureWriteInstanceDataNV {
(struct VkTransformMatrixKHR) VkTransformMatrixKHR transform;
float explicitAABB[6];
uint32_t instanceID;
uint32_t instanceMask;
uint32_t instanceContributionToHitGroupIndex;
((uint32_t) VkFlags) VkPartitionedAccelerationStructureInstanceFlagsNV instanceFlags;
uint32_t instanceIndex;
uint32_t partitionIndex;
(uint64_t) VkDeviceAddress accelerationStructure;
};
Layout
struct VkPartitionedAccelerationStructureWritePartitionTranslationDataNV {
uint32_t partitionIndex;
float partitionTranslation[3];
};
Layout
struct VkPastPresentationTimingGOOGLE {
uint32_t presentID;
uint64_t desiredPresentTime;
uint64_t actualPresentTime;
uint64_t earliestPresentTime;
uint64_t presentMargin;
};
Layout
struct VkPerformanceConfigurationAcquireInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
(int) VkPerformanceConfigurationTypeINTEL type;
};
Layout
struct VkPerformanceCounterDescriptionKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkPerformanceCounterDescriptionFlagsKHR flags;
char name[256];
char category[256];
char description[256];
};
Layout
struct VkPerformanceCounterKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkPerformanceCounterUnitKHR unit;
(int) VkPerformanceCounterScopeKHR scope;
(int) VkPerformanceCounterStorageKHR storage;
uint8_t uuid[16];
};
Layout
union VkPerformanceCounterResultKHR {
int32_t int32;
int64_t int64;
uint32_t uint32;
uint64_t uint64;
float float32;
double float64;
};
Layout
struct VkPerformanceMarkerInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
uint64_t marker;
};
Layout
struct VkPerformanceOverrideInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
(int) VkPerformanceOverrideTypeINTEL type;
(uint32_t) VkBool32 enable;
uint64_t parameter;
};
Layout
struct VkPerformanceQueryReservationInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxPerformanceQueriesPerPool;
};
Layout
struct VkPerformanceQuerySubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t counterPassIndex;
};
Layout
struct VkPerformanceStreamMarkerInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
uint32_t marker;
};
Layout
union VkPerformanceValueDataINTEL {
uint32_t value32;
uint64_t value64;
float valueFloat;
(uint32_t) VkBool32 valueBool;
const char* valueString;
};
Layout
struct VkPerformanceValueINTEL {
(int) VkPerformanceValueTypeINTEL type;
(union VkPerformanceValueDataINTEL) VkPerformanceValueDataINTEL data;
};
Layout
struct VkPerTileBeginInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkPerTileEndInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
};
Wraps a Vulkan physical device handle.
Layout
struct VkPhysicalDevice16BitStorageFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 storageBuffer16BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer16BitAccess;
(uint32_t) VkBool32 storagePushConstant16;
(uint32_t) VkBool32 storageInputOutput16;
};
Layout
struct VkPhysicalDevice16BitStorageFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 storageBuffer16BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer16BitAccess;
(uint32_t) VkBool32 storagePushConstant16;
(uint32_t) VkBool32 storageInputOutput16;
};
Layout
struct VkPhysicalDevice4444FormatsFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 formatA4R4G4B4;
(uint32_t) VkBool32 formatA4B4G4R4;
};
Layout
struct VkPhysicalDevice8BitStorageFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 storageBuffer8BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer8BitAccess;
(uint32_t) VkBool32 storagePushConstant8;
};
Layout
struct VkPhysicalDevice8BitStorageFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 storageBuffer8BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer8BitAccess;
(uint32_t) VkBool32 storagePushConstant8;
};
Layout
struct VkPhysicalDeviceAccelerationStructureFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 accelerationStructure;
(uint32_t) VkBool32 accelerationStructureCaptureReplay;
(uint32_t) VkBool32 accelerationStructureIndirectBuild;
(uint32_t) VkBool32 accelerationStructureHostCommands;
(uint32_t) VkBool32 descriptorBindingAccelerationStructureUpdateAfterBind;
};
Layout
struct VkPhysicalDeviceAccelerationStructurePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint64_t maxGeometryCount;
uint64_t maxInstanceCount;
uint64_t maxPrimitiveCount;
uint32_t maxPerStageDescriptorAccelerationStructures;
uint32_t maxPerStageDescriptorUpdateAfterBindAccelerationStructures;
uint32_t maxDescriptorSetAccelerationStructures;
uint32_t maxDescriptorSetUpdateAfterBindAccelerationStructures;
uint32_t minAccelerationStructureScratchOffsetAlignment;
};
Layout
struct VkPhysicalDeviceAddressBindingReportFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 reportAddressBinding;
};
Layout
struct VkPhysicalDeviceAmigoProfilingFeaturesSEC {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 amigoProfiling;
};
Layout
struct VkPhysicalDeviceAntiLagFeaturesAMD {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 antiLag;
};
Layout
struct VkPhysicalDeviceASTCDecodeFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 decodeModeSharedExponent;
};
Layout
struct VkPhysicalDeviceAttachmentFeedbackLoopDynamicStateFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 attachmentFeedbackLoopDynamicState;
};
Layout
struct VkPhysicalDeviceAttachmentFeedbackLoopLayoutFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 attachmentFeedbackLoopLayout;
};
Layout
struct VkPhysicalDeviceBlendOperationAdvancedFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 advancedBlendCoherentOperations;
};
Layout
struct VkPhysicalDeviceBlendOperationAdvancedPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t advancedBlendMaxColorAttachments;
(uint32_t) VkBool32 advancedBlendIndependentBlend;
(uint32_t) VkBool32 advancedBlendNonPremultipliedSrcColor;
(uint32_t) VkBool32 advancedBlendNonPremultipliedDstColor;
(uint32_t) VkBool32 advancedBlendCorrelatedOverlap;
(uint32_t) VkBool32 advancedBlendAllOperations;
};
Layout
struct VkPhysicalDeviceBorderColorSwizzleFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 borderColorSwizzle;
(uint32_t) VkBool32 borderColorSwizzleFromImage;
};
Layout
struct VkPhysicalDeviceBufferAddressFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 bufferDeviceAddress;
(uint32_t) VkBool32 bufferDeviceAddressCaptureReplay;
(uint32_t) VkBool32 bufferDeviceAddressMultiDevice;
};
Layout
struct VkPhysicalDeviceBufferDeviceAddressFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 bufferDeviceAddress;
(uint32_t) VkBool32 bufferDeviceAddressCaptureReplay;
(uint32_t) VkBool32 bufferDeviceAddressMultiDevice;
};
Layout
struct VkPhysicalDeviceBufferDeviceAddressFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 bufferDeviceAddress;
(uint32_t) VkBool32 bufferDeviceAddressCaptureReplay;
(uint32_t) VkBool32 bufferDeviceAddressMultiDevice;
};
Layout
struct VkPhysicalDeviceBufferDeviceAddressFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 bufferDeviceAddress;
(uint32_t) VkBool32 bufferDeviceAddressCaptureReplay;
(uint32_t) VkBool32 bufferDeviceAddressMultiDevice;
};
Layout
struct VkPhysicalDeviceClusterAccelerationStructureFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 clusterAccelerationStructure;
};
Layout
struct VkPhysicalDeviceClusterAccelerationStructurePropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVerticesPerCluster;
uint32_t maxTrianglesPerCluster;
uint32_t clusterScratchByteAlignment;
uint32_t clusterByteAlignment;
uint32_t clusterTemplateByteAlignment;
uint32_t clusterBottomLevelByteAlignment;
uint32_t clusterTemplateBoundsByteAlignment;
uint32_t maxClusterGeometryIndex;
};
Layout
struct VkPhysicalDeviceClusterCullingShaderFeaturesHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 clustercullingShader;
(uint32_t) VkBool32 multiviewClusterCullingShader;
};
Layout
struct VkPhysicalDeviceClusterCullingShaderPropertiesHUAWEI {
(int) VkStructureType sType;
void* pNext;
uint32_t maxWorkGroupCount[3];
uint32_t maxWorkGroupSize[3];
uint32_t maxOutputClusterCount;
(uint64_t) VkDeviceSize indirectBufferOffsetAlignment;
};
Layout
struct VkPhysicalDeviceClusterCullingShaderVrsFeaturesHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 clusterShadingRate;
};
Layout
struct VkPhysicalDeviceCoherentMemoryFeaturesAMD {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceCoherentMemory;
};
Layout
struct VkPhysicalDeviceColorWriteEnableFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 colorWriteEnable;
};
Layout
struct VkPhysicalDeviceCommandBufferInheritanceFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 commandBufferInheritance;
};
Layout
struct VkPhysicalDeviceComputeShaderDerivativesFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 computeDerivativeGroupQuads;
(uint32_t) VkBool32 computeDerivativeGroupLinear;
};
Layout
struct VkPhysicalDeviceComputeShaderDerivativesFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 computeDerivativeGroupQuads;
(uint32_t) VkBool32 computeDerivativeGroupLinear;
};
Layout
struct VkPhysicalDeviceComputeShaderDerivativesPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 meshAndTaskShaderDerivatives;
};
Layout
struct VkPhysicalDeviceConditionalRenderingFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 conditionalRendering;
(uint32_t) VkBool32 inheritedConditionalRendering;
};
Layout
struct VkPhysicalDeviceConservativeRasterizationPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
float primitiveOverestimationSize;
float maxExtraPrimitiveOverestimationSize;
float extraPrimitiveOverestimationSizeGranularity;
(uint32_t) VkBool32 primitiveUnderestimation;
(uint32_t) VkBool32 conservativePointAndLineRasterization;
(uint32_t) VkBool32 degenerateTrianglesRasterized;
(uint32_t) VkBool32 degenerateLinesRasterized;
(uint32_t) VkBool32 fullyCoveredFragmentShaderInputVariable;
(uint32_t) VkBool32 conservativeRasterizationPostDepthCoverage;
};
Layout
struct VkPhysicalDeviceCooperativeMatrix2FeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cooperativeMatrixWorkgroupScope;
(uint32_t) VkBool32 cooperativeMatrixFlexibleDimensions;
(uint32_t) VkBool32 cooperativeMatrixReductions;
(uint32_t) VkBool32 cooperativeMatrixConversions;
(uint32_t) VkBool32 cooperativeMatrixPerElementOperations;
(uint32_t) VkBool32 cooperativeMatrixTensorAddressing;
(uint32_t) VkBool32 cooperativeMatrixBlockLoads;
};
Layout
struct VkPhysicalDeviceCooperativeMatrix2PropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t cooperativeMatrixWorkgroupScopeMaxWorkgroupSize;
uint32_t cooperativeMatrixFlexibleDimensionsMaxDimension;
uint32_t cooperativeMatrixWorkgroupScopeReservedSharedMemory;
};
Layout
struct VkPhysicalDeviceCooperativeMatrixFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cooperativeMatrix;
(uint32_t) VkBool32 cooperativeMatrixRobustBufferAccess;
};
Layout
struct VkPhysicalDeviceCooperativeMatrixFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cooperativeMatrix;
(uint32_t) VkBool32 cooperativeMatrixRobustBufferAccess;
};
Layout
struct VkPhysicalDeviceCooperativeMatrixPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags cooperativeMatrixSupportedStages;
};
Layout
struct VkPhysicalDeviceCooperativeMatrixPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags cooperativeMatrixSupportedStages;
};
Layout
struct VkPhysicalDeviceCooperativeVectorFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cooperativeVector;
(uint32_t) VkBool32 cooperativeVectorTraining;
};
Layout
struct VkPhysicalDeviceCooperativeVectorPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags cooperativeVectorSupportedStages;
(uint32_t) VkBool32 cooperativeVectorTrainingFloat16Accumulation;
(uint32_t) VkBool32 cooperativeVectorTrainingFloat32Accumulation;
uint32_t maxCooperativeVectorComponents;
};
Layout
struct VkPhysicalDeviceCopyMemoryIndirectFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 indirectCopy;
};
Layout
struct VkPhysicalDeviceCopyMemoryIndirectPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkQueueFlags supportedQueues;
};
Layout
struct VkPhysicalDeviceCornerSampledImageFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cornerSampledImage;
};
Layout
struct VkPhysicalDeviceCoverageReductionModeFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 coverageReductionMode;
};
Layout
struct VkPhysicalDeviceCubicClampFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cubicRangeClamp;
};
Layout
struct VkPhysicalDeviceCubicWeightsFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 selectableCubicWeights;
};
Layout
struct VkPhysicalDeviceCudaKernelLaunchFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 cudaKernelLaunchFeatures;
};
Layout
struct VkPhysicalDeviceCudaKernelLaunchPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t computeCapabilityMinor;
uint32_t computeCapabilityMajor;
};
Layout
struct VkPhysicalDeviceCustomBorderColorFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 customBorderColors;
(uint32_t) VkBool32 customBorderColorWithoutFormat;
};
Layout
struct VkPhysicalDeviceCustomBorderColorPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxCustomBorderColorSamplers;
};
Layout
struct VkPhysicalDeviceDataGraphFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dataGraph;
(uint32_t) VkBool32 dataGraphUpdateAfterBind;
(uint32_t) VkBool32 dataGraphSpecializationConstants;
(uint32_t) VkBool32 dataGraphDescriptorBuffer;
(uint32_t) VkBool32 dataGraphShaderModule;
};
Layout
struct VkPhysicalDeviceDataGraphOperationSupportARM {
(int) VkPhysicalDeviceDataGraphOperationTypeARM operationType;
char name[128];
uint32_t version;
};
Layout
struct VkPhysicalDeviceDataGraphProcessingEngineARM {
(int) VkPhysicalDeviceDataGraphProcessingEngineTypeARM type;
(uint32_t) VkBool32 isForeign;
};
Layout
struct VkPhysicalDeviceDedicatedAllocationImageAliasingFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dedicatedAllocationImageAliasing;
};
Layout
struct VkPhysicalDeviceDenseGeometryFormatFeaturesAMDX {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 denseGeometryFormat;
};
Layout
struct VkPhysicalDeviceDepthBiasControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthBiasControl;
(uint32_t) VkBool32 leastRepresentableValueForceUnormRepresentation;
(uint32_t) VkBool32 floatRepresentation;
(uint32_t) VkBool32 depthBiasExact;
};
Layout
struct VkPhysicalDeviceDepthClampControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthClampControl;
};
Layout
struct VkPhysicalDeviceDepthClampZeroOneFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthClampZeroOne;
};
Layout
struct VkPhysicalDeviceDepthClampZeroOneFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthClampZeroOne;
};
Layout
struct VkPhysicalDeviceDepthClipControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthClipControl;
};
Layout
struct VkPhysicalDeviceDepthClipEnableFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 depthClipEnable;
};
Layout
struct VkPhysicalDeviceDepthStencilResolveProperties {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkResolveModeFlags supportedDepthResolveModes;
((uint32_t) VkFlags) VkResolveModeFlags supportedStencilResolveModes;
(uint32_t) VkBool32 independentResolveNone;
(uint32_t) VkBool32 independentResolve;
};
Layout
struct VkPhysicalDeviceDepthStencilResolvePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkResolveModeFlags supportedDepthResolveModes;
((uint32_t) VkFlags) VkResolveModeFlags supportedStencilResolveModes;
(uint32_t) VkBool32 independentResolveNone;
(uint32_t) VkBool32 independentResolve;
};
Layout
struct VkPhysicalDeviceDescriptorBufferDensityMapPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
size_t combinedImageSamplerDensityMapDescriptorSize;
};
Layout
struct VkPhysicalDeviceDescriptorBufferFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 descriptorBuffer;
(uint32_t) VkBool32 descriptorBufferCaptureReplay;
(uint32_t) VkBool32 descriptorBufferImageLayoutIgnored;
(uint32_t) VkBool32 descriptorBufferPushDescriptors;
};
Layout
struct VkPhysicalDeviceDescriptorBufferPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 combinedImageSamplerDescriptorSingleArray;
(uint32_t) VkBool32 bufferlessPushDescriptors;
(uint32_t) VkBool32 allowSamplerImageViewPostSubmitCreation;
(uint64_t) VkDeviceSize descriptorBufferOffsetAlignment;
uint32_t maxDescriptorBufferBindings;
uint32_t maxResourceDescriptorBufferBindings;
uint32_t maxSamplerDescriptorBufferBindings;
uint32_t maxEmbeddedImmutableSamplerBindings;
uint32_t maxEmbeddedImmutableSamplers;
size_t bufferCaptureReplayDescriptorDataSize;
size_t imageCaptureReplayDescriptorDataSize;
size_t imageViewCaptureReplayDescriptorDataSize;
size_t samplerCaptureReplayDescriptorDataSize;
size_t accelerationStructureCaptureReplayDescriptorDataSize;
size_t samplerDescriptorSize;
size_t combinedImageSamplerDescriptorSize;
size_t sampledImageDescriptorSize;
size_t storageImageDescriptorSize;
size_t uniformTexelBufferDescriptorSize;
size_t robustUniformTexelBufferDescriptorSize;
size_t storageTexelBufferDescriptorSize;
size_t robustStorageTexelBufferDescriptorSize;
size_t uniformBufferDescriptorSize;
size_t robustUniformBufferDescriptorSize;
size_t storageBufferDescriptorSize;
size_t robustStorageBufferDescriptorSize;
size_t inputAttachmentDescriptorSize;
size_t accelerationStructureDescriptorSize;
(uint64_t) VkDeviceSize maxSamplerDescriptorBufferRange;
(uint64_t) VkDeviceSize maxResourceDescriptorBufferRange;
(uint64_t) VkDeviceSize samplerDescriptorBufferAddressSpaceSize;
(uint64_t) VkDeviceSize resourceDescriptorBufferAddressSpaceSize;
(uint64_t) VkDeviceSize descriptorBufferAddressSpaceSize;
};
Layout
struct VkPhysicalDeviceDescriptorBufferTensorFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 descriptorBufferTensorDescriptors;
};
Layout
struct VkPhysicalDeviceDescriptorBufferTensorPropertiesARM {
(int) VkStructureType sType;
void* pNext;
size_t tensorCaptureReplayDescriptorDataSize;
size_t tensorViewCaptureReplayDescriptorDataSize;
size_t tensorDescriptorSize;
};
Layout
struct VkPhysicalDeviceDescriptorIndexingFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderInputAttachmentArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingSampledImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUpdateUnusedWhilePending;
(uint32_t) VkBool32 descriptorBindingPartiallyBound;
(uint32_t) VkBool32 descriptorBindingVariableDescriptorCount;
(uint32_t) VkBool32 runtimeDescriptorArray;
};
Layout
struct VkPhysicalDeviceDescriptorIndexingFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderInputAttachmentArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingSampledImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUpdateUnusedWhilePending;
(uint32_t) VkBool32 descriptorBindingPartiallyBound;
(uint32_t) VkBool32 descriptorBindingVariableDescriptorCount;
(uint32_t) VkBool32 runtimeDescriptorArray;
};
Layout
struct VkPhysicalDeviceDescriptorIndexingProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxUpdateAfterBindDescriptorsInAllPools;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
(uint32_t) VkBool32 robustBufferAccessUpdateAfterBind;
(uint32_t) VkBool32 quadDivergentImplicitLod;
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
uint32_t maxPerStageUpdateAfterBindResources;
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
};
Layout
struct VkPhysicalDeviceDescriptorIndexingPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxUpdateAfterBindDescriptorsInAllPools;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
(uint32_t) VkBool32 robustBufferAccessUpdateAfterBind;
(uint32_t) VkBool32 quadDivergentImplicitLod;
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
uint32_t maxPerStageUpdateAfterBindResources;
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
};
Layout
struct VkPhysicalDeviceDescriptorPoolOverallocationFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 descriptorPoolOverallocation;
};
Layout
struct VkPhysicalDeviceDescriptorSetHostMappingFeaturesVALVE {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 descriptorSetHostMapping;
};
Layout
struct VkPhysicalDeviceDeviceGeneratedCommandsComputeFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceGeneratedCompute;
(uint32_t) VkBool32 deviceGeneratedComputePipelines;
(uint32_t) VkBool32 deviceGeneratedComputeCaptureReplay;
};
Layout
struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceGeneratedCommands;
(uint32_t) VkBool32 dynamicGeneratedPipelineLayout;
};
Layout
struct VkPhysicalDeviceDeviceGeneratedCommandsFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceGeneratedCommands;
};
Layout
struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxIndirectPipelineCount;
uint32_t maxIndirectShaderObjectCount;
uint32_t maxIndirectSequenceCount;
uint32_t maxIndirectCommandsTokenCount;
uint32_t maxIndirectCommandsTokenOffset;
uint32_t maxIndirectCommandsIndirectStride;
((uint32_t) VkFlags) VkIndirectCommandsInputModeFlagsEXT supportedIndirectCommandsInputModes;
((uint32_t) VkFlags) VkShaderStageFlags supportedIndirectCommandsShaderStages;
((uint32_t) VkFlags) VkShaderStageFlags supportedIndirectCommandsShaderStagesPipelineBinding;
((uint32_t) VkFlags) VkShaderStageFlags supportedIndirectCommandsShaderStagesShaderBinding;
(uint32_t) VkBool32 deviceGeneratedCommandsTransformFeedback;
(uint32_t) VkBool32 deviceGeneratedCommandsMultiDrawIndirectCount;
};
Layout
struct VkPhysicalDeviceDeviceGeneratedCommandsPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxGraphicsShaderGroupCount;
uint32_t maxIndirectSequenceCount;
uint32_t maxIndirectCommandsTokenCount;
uint32_t maxIndirectCommandsStreamCount;
uint32_t maxIndirectCommandsTokenOffset;
uint32_t maxIndirectCommandsStreamStride;
uint32_t minSequencesCountBufferOffsetAlignment;
uint32_t minSequencesIndexBufferOffsetAlignment;
uint32_t minIndirectCommandsBufferOffsetAlignment;
};
Layout
struct VkPhysicalDeviceDeviceMemoryReportFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceMemoryReport;
};
Layout
struct VkPhysicalDeviceDiagnosticsConfigFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 diagnosticsConfig;
};
Layout
struct VkPhysicalDeviceDiscardRectanglePropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxDiscardRectangles;
};
Layout
struct VkPhysicalDeviceDisplacementMicromapFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 displacementMicromap;
};
Layout
struct VkPhysicalDeviceDisplacementMicromapPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxDisplacementMicromapSubdivisionLevel;
};
Layout
struct VkPhysicalDeviceDriverProperties {
(int) VkStructureType sType;
void* pNext;
(int) VkDriverId driverID;
char driverName[256];
char driverInfo[256];
(struct VkConformanceVersion) VkConformanceVersion conformanceVersion;
};
Layout
struct VkPhysicalDeviceDriverPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkDriverId driverID;
char driverName[256];
char driverInfo[256];
(struct VkConformanceVersion) VkConformanceVersion conformanceVersion;
};
Layout
struct VkPhysicalDeviceDrmPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hasPrimary;
(uint32_t) VkBool32 hasRender;
int64_t primaryMajor;
int64_t primaryMinor;
int64_t renderMajor;
int64_t renderMinor;
};
Layout
struct VkPhysicalDeviceDynamicRenderingFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicRendering;
};
Layout
struct VkPhysicalDeviceDynamicRenderingFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicRendering;
};
Layout
struct VkPhysicalDeviceDynamicRenderingLocalReadFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicRenderingLocalRead;
};
Layout
struct VkPhysicalDeviceDynamicRenderingLocalReadFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicRenderingLocalRead;
};
Layout
struct VkPhysicalDeviceDynamicRenderingUnusedAttachmentsFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicRenderingUnusedAttachments;
};
Layout
struct VkPhysicalDeviceExclusiveScissorFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 exclusiveScissor;
};
Layout
struct VkPhysicalDeviceExtendedDynamicState2FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 extendedDynamicState2;
(uint32_t) VkBool32 extendedDynamicState2LogicOp;
(uint32_t) VkBool32 extendedDynamicState2PatchControlPoints;
};
Layout
struct VkPhysicalDeviceExtendedDynamicState3FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 extendedDynamicState3TessellationDomainOrigin;
(uint32_t) VkBool32 extendedDynamicState3DepthClampEnable;
(uint32_t) VkBool32 extendedDynamicState3PolygonMode;
(uint32_t) VkBool32 extendedDynamicState3RasterizationSamples;
(uint32_t) VkBool32 extendedDynamicState3SampleMask;
(uint32_t) VkBool32 extendedDynamicState3AlphaToCoverageEnable;
(uint32_t) VkBool32 extendedDynamicState3AlphaToOneEnable;
(uint32_t) VkBool32 extendedDynamicState3LogicOpEnable;
(uint32_t) VkBool32 extendedDynamicState3ColorBlendEnable;
(uint32_t) VkBool32 extendedDynamicState3ColorBlendEquation;
(uint32_t) VkBool32 extendedDynamicState3ColorWriteMask;
(uint32_t) VkBool32 extendedDynamicState3RasterizationStream;
(uint32_t) VkBool32 extendedDynamicState3ConservativeRasterizationMode;
(uint32_t) VkBool32 extendedDynamicState3ExtraPrimitiveOverestimationSize;
(uint32_t) VkBool32 extendedDynamicState3DepthClipEnable;
(uint32_t) VkBool32 extendedDynamicState3SampleLocationsEnable;
(uint32_t) VkBool32 extendedDynamicState3ColorBlendAdvanced;
(uint32_t) VkBool32 extendedDynamicState3ProvokingVertexMode;
(uint32_t) VkBool32 extendedDynamicState3LineRasterizationMode;
(uint32_t) VkBool32 extendedDynamicState3LineStippleEnable;
(uint32_t) VkBool32 extendedDynamicState3DepthClipNegativeOneToOne;
(uint32_t) VkBool32 extendedDynamicState3ViewportWScalingEnable;
(uint32_t) VkBool32 extendedDynamicState3ViewportSwizzle;
(uint32_t) VkBool32 extendedDynamicState3CoverageToColorEnable;
(uint32_t) VkBool32 extendedDynamicState3CoverageToColorLocation;
(uint32_t) VkBool32 extendedDynamicState3CoverageModulationMode;
(uint32_t) VkBool32 extendedDynamicState3CoverageModulationTableEnable;
(uint32_t) VkBool32 extendedDynamicState3CoverageModulationTable;
(uint32_t) VkBool32 extendedDynamicState3CoverageReductionMode;
(uint32_t) VkBool32 extendedDynamicState3RepresentativeFragmentTestEnable;
(uint32_t) VkBool32 extendedDynamicState3ShadingRateImageEnable;
};
Layout
struct VkPhysicalDeviceExtendedDynamicState3PropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 dynamicPrimitiveTopologyUnrestricted;
};
Layout
struct VkPhysicalDeviceExtendedDynamicStateFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 extendedDynamicState;
};
Layout
struct VkPhysicalDeviceExtendedSparseAddressSpaceFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 extendedSparseAddressSpace;
};
Layout
struct VkPhysicalDeviceExtendedSparseAddressSpacePropertiesNV {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize extendedSparseAddressSpaceSize;
((uint32_t) VkFlags) VkImageUsageFlags extendedSparseImageUsageFlags;
((uint32_t) VkFlags) VkBufferUsageFlags extendedSparseBufferUsageFlags;
};
Layout
struct VkPhysicalDeviceExternalBufferInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkBufferCreateFlags flags;
((uint32_t) VkFlags) VkBufferUsageFlags usage;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalBufferInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkBufferCreateFlags flags;
((uint32_t) VkFlags) VkBufferUsageFlags usage;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalComputeQueuePropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t externalDataSize;
uint32_t maxExternalQueues;
};
Layout
struct VkPhysicalDeviceExternalFenceInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalFenceHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalFenceInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalFenceHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalFormatResolveFeaturesANDROID {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 externalFormatResolve;
};
Layout
struct VkPhysicalDeviceExternalFormatResolvePropertiesANDROID {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 nullColorAttachmentWithExternalFormatResolve;
(int) VkChromaLocation externalFormatResolveChromaOffsetX;
(int) VkChromaLocation externalFormatResolveChromaOffsetY;
};
Layout
struct VkPhysicalDeviceExternalImageFormatInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalImageFormatInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalMemoryHostPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize minImportedHostPointerAlignment;
};
Layout
struct VkPhysicalDeviceExternalMemoryRDMAFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 externalMemoryRDMA;
};
Layout
struct VkPhysicalDeviceExternalMemorySciBufFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 sciBufImport;
(uint32_t) VkBool32 sciBufExport;
};
Layout
struct VkPhysicalDeviceExternalMemoryScreenBufferFeaturesQNX {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 screenBufferImport;
};
Layout
struct VkPhysicalDeviceExternalSciBufFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 sciBufImport;
(uint32_t) VkBool32 sciBufExport;
};
Layout
struct VkPhysicalDeviceExternalSciSync2FeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 sciSyncFence;
(uint32_t) VkBool32 sciSyncSemaphore2;
(uint32_t) VkBool32 sciSyncImport;
(uint32_t) VkBool32 sciSyncExport;
};
Layout
struct VkPhysicalDeviceExternalSciSyncFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 sciSyncFence;
(uint32_t) VkBool32 sciSyncSemaphore;
(uint32_t) VkBool32 sciSyncImport;
(uint32_t) VkBool32 sciSyncExport;
};
Layout
struct VkPhysicalDeviceExternalSemaphoreInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalSemaphoreInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceExternalTensorInfoARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkTensorCreateFlagsARM flags;
const VkTensorDescriptionARM* pDescription;
(int) VkExternalMemoryHandleTypeFlagBits handleType;
};
Layout
struct VkPhysicalDeviceFaultFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceFault;
(uint32_t) VkBool32 deviceFaultVendorBinary;
};
Layout
struct VkPhysicalDeviceFeatures {
(uint32_t) VkBool32 robustBufferAccess;
(uint32_t) VkBool32 fullDrawIndexUint32;
(uint32_t) VkBool32 imageCubeArray;
(uint32_t) VkBool32 independentBlend;
(uint32_t) VkBool32 geometryShader;
(uint32_t) VkBool32 tessellationShader;
(uint32_t) VkBool32 sampleRateShading;
(uint32_t) VkBool32 dualSrcBlend;
(uint32_t) VkBool32 logicOp;
(uint32_t) VkBool32 multiDrawIndirect;
(uint32_t) VkBool32 drawIndirectFirstInstance;
(uint32_t) VkBool32 depthClamp;
(uint32_t) VkBool32 depthBiasClamp;
(uint32_t) VkBool32 fillModeNonSolid;
(uint32_t) VkBool32 depthBounds;
(uint32_t) VkBool32 wideLines;
(uint32_t) VkBool32 largePoints;
(uint32_t) VkBool32 alphaToOne;
(uint32_t) VkBool32 multiViewport;
(uint32_t) VkBool32 samplerAnisotropy;
(uint32_t) VkBool32 textureCompressionETC2;
(uint32_t) VkBool32 textureCompressionASTC_LDR;
(uint32_t) VkBool32 textureCompressionBC;
(uint32_t) VkBool32 occlusionQueryPrecise;
(uint32_t) VkBool32 pipelineStatisticsQuery;
(uint32_t) VkBool32 vertexPipelineStoresAndAtomics;
(uint32_t) VkBool32 fragmentStoresAndAtomics;
(uint32_t) VkBool32 shaderTessellationAndGeometryPointSize;
(uint32_t) VkBool32 shaderImageGatherExtended;
(uint32_t) VkBool32 shaderStorageImageExtendedFormats;
(uint32_t) VkBool32 shaderStorageImageMultisample;
(uint32_t) VkBool32 shaderStorageImageReadWithoutFormat;
(uint32_t) VkBool32 shaderStorageImageWriteWithoutFormat;
(uint32_t) VkBool32 shaderUniformBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderSampledImageArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageImageArrayDynamicIndexing;
(uint32_t) VkBool32 shaderClipDistance;
(uint32_t) VkBool32 shaderCullDistance;
(uint32_t) VkBool32 shaderFloat64;
(uint32_t) VkBool32 shaderInt64;
(uint32_t) VkBool32 shaderInt16;
(uint32_t) VkBool32 shaderResourceResidency;
(uint32_t) VkBool32 shaderResourceMinLod;
(uint32_t) VkBool32 sparseBinding;
(uint32_t) VkBool32 sparseResidencyBuffer;
(uint32_t) VkBool32 sparseResidencyImage2D;
(uint32_t) VkBool32 sparseResidencyImage3D;
(uint32_t) VkBool32 sparseResidency2Samples;
(uint32_t) VkBool32 sparseResidency4Samples;
(uint32_t) VkBool32 sparseResidency8Samples;
(uint32_t) VkBool32 sparseResidency16Samples;
(uint32_t) VkBool32 sparseResidencyAliased;
(uint32_t) VkBool32 variableMultisampleRate;
(uint32_t) VkBool32 inheritedQueries;
};
Layout
struct VkPhysicalDeviceFeatures2 {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceFeatures) VkPhysicalDeviceFeatures features;
};
Layout
struct VkPhysicalDeviceFeatures2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceFeatures) VkPhysicalDeviceFeatures features;
};
Layout
struct VkPhysicalDeviceFloat16Int8FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloat16;
(uint32_t) VkBool32 shaderInt8;
};
Layout
struct VkPhysicalDeviceFloatControlsProperties {
(int) VkStructureType sType;
void* pNext;
(int) VkShaderFloatControlsIndependence denormBehaviorIndependence;
(int) VkShaderFloatControlsIndependence roundingModeIndependence;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat16;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat32;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat64;
(uint32_t) VkBool32 shaderDenormPreserveFloat16;
(uint32_t) VkBool32 shaderDenormPreserveFloat32;
(uint32_t) VkBool32 shaderDenormPreserveFloat64;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat16;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat32;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat64;
};
Layout
struct VkPhysicalDeviceFloatControlsPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkShaderFloatControlsIndependence denormBehaviorIndependence;
(int) VkShaderFloatControlsIndependence roundingModeIndependence;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat16;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat32;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat64;
(uint32_t) VkBool32 shaderDenormPreserveFloat16;
(uint32_t) VkBool32 shaderDenormPreserveFloat32;
(uint32_t) VkBool32 shaderDenormPreserveFloat64;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat16;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat32;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat64;
};
Layout
struct VkPhysicalDeviceFormatPackFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 formatPack;
};
Layout
struct VkPhysicalDeviceFragmentDensityMap2FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentDensityMapDeferred;
};
Layout
struct VkPhysicalDeviceFragmentDensityMap2PropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 subsampledLoads;
(uint32_t) VkBool32 subsampledCoarseReconstructionEarlyAccess;
uint32_t maxSubsampledArrayLayers;
uint32_t maxDescriptorSetSubsampledSamplers;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentDensityMap;
(uint32_t) VkBool32 fragmentDensityMapDynamic;
(uint32_t) VkBool32 fragmentDensityMapNonSubsampledImages;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapLayeredFeaturesVALVE {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentDensityMapLayered;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapLayeredPropertiesVALVE {
(int) VkStructureType sType;
void* pNext;
uint32_t maxFragmentDensityMapLayers;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentDensityMapOffset;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapOffsetFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentDensityMapOffset;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D fragmentDensityOffsetGranularity;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapOffsetPropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D fragmentDensityOffsetGranularity;
};
Layout
struct VkPhysicalDeviceFragmentDensityMapPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D minFragmentDensityTexelSize;
(struct VkExtent2D) VkExtent2D maxFragmentDensityTexelSize;
(uint32_t) VkBool32 fragmentDensityInvocations;
};
Layout
struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentShaderBarycentric;
};
Layout
struct VkPhysicalDeviceFragmentShaderBarycentricFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentShaderBarycentric;
};
Layout
struct VkPhysicalDeviceFragmentShaderBarycentricPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 triStripVertexOrderIndependentOfProvokingVertex;
};
Layout
struct VkPhysicalDeviceFragmentShaderInterlockFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentShaderSampleInterlock;
(uint32_t) VkBool32 fragmentShaderPixelInterlock;
(uint32_t) VkBool32 fragmentShaderShadingRateInterlock;
};
Layout
struct VkPhysicalDeviceFragmentShadingRateEnumsFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fragmentShadingRateEnums;
(uint32_t) VkBool32 supersampleFragmentShadingRates;
(uint32_t) VkBool32 noInvocationFragmentShadingRates;
};
Layout
struct VkPhysicalDeviceFragmentShadingRateEnumsPropertiesNV {
(int) VkStructureType sType;
void* pNext;
(int) VkSampleCountFlagBits maxFragmentShadingRateInvocationCount;
};
Layout
struct VkPhysicalDeviceFragmentShadingRateFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineFragmentShadingRate;
(uint32_t) VkBool32 primitiveFragmentShadingRate;
(uint32_t) VkBool32 attachmentFragmentShadingRate;
};
Layout
struct VkPhysicalDeviceFragmentShadingRateKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkSampleCountFlags sampleCounts;
(struct VkExtent2D) VkExtent2D fragmentSize;
};
Layout
struct VkPhysicalDeviceFragmentShadingRatePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D minFragmentShadingRateAttachmentTexelSize;
(struct VkExtent2D) VkExtent2D maxFragmentShadingRateAttachmentTexelSize;
uint32_t maxFragmentShadingRateAttachmentTexelSizeAspectRatio;
(uint32_t) VkBool32 primitiveFragmentShadingRateWithMultipleViewports;
(uint32_t) VkBool32 layeredShadingRateAttachments;
(uint32_t) VkBool32 fragmentShadingRateNonTrivialCombinerOps;
(struct VkExtent2D) VkExtent2D maxFragmentSize;
uint32_t maxFragmentSizeAspectRatio;
uint32_t maxFragmentShadingRateCoverageSamples;
(int) VkSampleCountFlagBits maxFragmentShadingRateRasterizationSamples;
(uint32_t) VkBool32 fragmentShadingRateWithShaderDepthStencilWrites;
(uint32_t) VkBool32 fragmentShadingRateWithSampleMask;
(uint32_t) VkBool32 fragmentShadingRateWithShaderSampleMask;
(uint32_t) VkBool32 fragmentShadingRateWithConservativeRasterization;
(uint32_t) VkBool32 fragmentShadingRateWithFragmentShaderInterlock;
(uint32_t) VkBool32 fragmentShadingRateWithCustomSampleLocations;
(uint32_t) VkBool32 fragmentShadingRateStrictMultiplyCombiner;
};
Layout
struct VkPhysicalDeviceFrameBoundaryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 frameBoundary;
};
Layout
struct VkPhysicalDeviceGlobalPriorityQueryFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 globalPriorityQuery;
};
Layout
struct VkPhysicalDeviceGlobalPriorityQueryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 globalPriorityQuery;
};
Layout
struct VkPhysicalDeviceGlobalPriorityQueryFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 globalPriorityQuery;
};
Layout
struct VkPhysicalDeviceGraphicsPipelineLibraryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 graphicsPipelineLibrary;
};
Layout
struct VkPhysicalDeviceGraphicsPipelineLibraryPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 graphicsPipelineLibraryFastLinking;
(uint32_t) VkBool32 graphicsPipelineLibraryIndependentInterpolationDecoration;
};
Layout
struct VkPhysicalDeviceGroupProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t physicalDeviceCount;
(struct VkPhysicalDevice*) VkPhysicalDevice physicalDevices[32];
(uint32_t) VkBool32 subsetAllocation;
};
Layout
struct VkPhysicalDeviceGroupPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t physicalDeviceCount;
(struct VkPhysicalDevice*) VkPhysicalDevice physicalDevices[32];
(uint32_t) VkBool32 subsetAllocation;
};
Layout
struct VkPhysicalDeviceHdrVividFeaturesHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hdrVivid;
};
Layout
struct VkPhysicalDeviceHostImageCopyFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hostImageCopy;
};
Layout
struct VkPhysicalDeviceHostImageCopyFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hostImageCopy;
};
Layout
struct VkPhysicalDeviceHostImageCopyProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t copySrcLayoutCount;
VkImageLayout* pCopySrcLayouts;
uint32_t copyDstLayoutCount;
VkImageLayout* pCopyDstLayouts;
uint8_t optimalTilingLayoutUUID[16];
(uint32_t) VkBool32 identicalMemoryTypeRequirements;
};
Layout
struct VkPhysicalDeviceHostImageCopyPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t copySrcLayoutCount;
VkImageLayout* pCopySrcLayouts;
uint32_t copyDstLayoutCount;
VkImageLayout* pCopyDstLayouts;
uint8_t optimalTilingLayoutUUID[16];
(uint32_t) VkBool32 identicalMemoryTypeRequirements;
};
Layout
struct VkPhysicalDeviceHostQueryResetFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hostQueryReset;
};
Layout
struct VkPhysicalDeviceHostQueryResetFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hostQueryReset;
};
Layout
struct VkPhysicalDeviceIDProperties {
(int) VkStructureType sType;
void* pNext;
uint8_t deviceUUID[16];
uint8_t driverUUID[16];
uint8_t deviceLUID[8];
uint32_t deviceNodeMask;
(uint32_t) VkBool32 deviceLUIDValid;
};
Layout
struct VkPhysicalDeviceIDPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint8_t deviceUUID[16];
uint8_t driverUUID[16];
uint8_t deviceLUID[8];
uint32_t deviceNodeMask;
(uint32_t) VkBool32 deviceLUIDValid;
};
Layout
struct VkPhysicalDeviceImage2DViewOf3DFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 image2DViewOf3D;
(uint32_t) VkBool32 sampler2DViewOf3D;
};
Layout
struct VkPhysicalDeviceImageAlignmentControlFeaturesMESA {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imageAlignmentControl;
};
Layout
struct VkPhysicalDeviceImageAlignmentControlPropertiesMESA {
(int) VkStructureType sType;
void* pNext;
uint32_t supportedImageAlignmentMask;
};
Layout
struct VkPhysicalDeviceImageCompressionControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imageCompressionControl;
};
Layout
struct VkPhysicalDeviceImageCompressionControlSwapchainFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imageCompressionControlSwapchain;
};
Layout
struct VkPhysicalDeviceImageDrmFormatModifierInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint64_t drmFormatModifier;
(int) VkSharingMode sharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
};
Layout
struct VkPhysicalDeviceImageFormatInfo2 {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkImageType type;
(int) VkImageTiling tiling;
((uint32_t) VkFlags) VkImageUsageFlags usage;
((uint32_t) VkFlags) VkImageCreateFlags flags;
};
Layout
struct VkPhysicalDeviceImageFormatInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkImageType type;
(int) VkImageTiling tiling;
((uint32_t) VkFlags) VkImageUsageFlags usage;
((uint32_t) VkFlags) VkImageCreateFlags flags;
};
Layout
struct VkPhysicalDeviceImagelessFramebufferFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imagelessFramebuffer;
};
Layout
struct VkPhysicalDeviceImagelessFramebufferFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imagelessFramebuffer;
};
Layout
struct VkPhysicalDeviceImageProcessing2FeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 textureBlockMatch2;
};
Layout
struct VkPhysicalDeviceImageProcessing2PropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D maxBlockMatchWindow;
};
Layout
struct VkPhysicalDeviceImageProcessingFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 textureSampleWeighted;
(uint32_t) VkBool32 textureBoxFilter;
(uint32_t) VkBool32 textureBlockMatch;
};
Layout
struct VkPhysicalDeviceImageProcessingPropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
uint32_t maxWeightFilterPhases;
(struct VkExtent2D) VkExtent2D maxWeightFilterDimension;
(struct VkExtent2D) VkExtent2D maxBlockMatchRegion;
(struct VkExtent2D) VkExtent2D maxBoxFilterBlockSize;
};
Layout
struct VkPhysicalDeviceImageRobustnessFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustImageAccess;
};
Layout
struct VkPhysicalDeviceImageRobustnessFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustImageAccess;
};
Layout
struct VkPhysicalDeviceImageSlicedViewOf3DFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imageSlicedViewOf3D;
};
Layout
struct VkPhysicalDeviceImageViewImageFormatInfoEXT {
(int) VkStructureType sType;
void* pNext;
(int) VkImageViewType imageViewType;
};
Layout
struct VkPhysicalDeviceImageViewMinLodFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 minLod;
};
Layout
struct VkPhysicalDeviceIndexTypeUint8Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 indexTypeUint8;
};
Layout
struct VkPhysicalDeviceIndexTypeUint8FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 indexTypeUint8;
};
Layout
struct VkPhysicalDeviceIndexTypeUint8FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 indexTypeUint8;
};
Layout
struct VkPhysicalDeviceInheritedViewportScissorFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 inheritedViewportScissor2D;
};
Layout
struct VkPhysicalDeviceInlineUniformBlockFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 inlineUniformBlock;
(uint32_t) VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
};
Layout
struct VkPhysicalDeviceInlineUniformBlockFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 inlineUniformBlock;
(uint32_t) VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
};
Layout
struct VkPhysicalDeviceInlineUniformBlockProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxInlineUniformBlockSize;
uint32_t maxPerStageDescriptorInlineUniformBlocks;
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
uint32_t maxDescriptorSetInlineUniformBlocks;
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
};
Layout
struct VkPhysicalDeviceInlineUniformBlockPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxInlineUniformBlockSize;
uint32_t maxPerStageDescriptorInlineUniformBlocks;
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
uint32_t maxDescriptorSetInlineUniformBlocks;
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
};
Layout
struct VkPhysicalDeviceInvocationMaskFeaturesHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 invocationMask;
};
Layout
struct VkPhysicalDeviceLayeredApiPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t vendorID;
uint32_t deviceID;
(int) VkPhysicalDeviceLayeredApiKHR layeredAPI;
char deviceName[256];
};
Layout
struct VkPhysicalDeviceLayeredApiPropertiesListKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t layeredApiCount;
VkPhysicalDeviceLayeredApiPropertiesKHR* pLayeredApis;
};
Layout
struct VkPhysicalDeviceLayeredApiVulkanPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceProperties2) VkPhysicalDeviceProperties2 properties;
};
Layout
struct VkPhysicalDeviceLayeredDriverPropertiesMSFT {
(int) VkStructureType sType;
void* pNext;
(int) VkLayeredDriverUnderlyingApiMSFT underlyingAPI;
};
Layout
struct VkPhysicalDeviceLegacyDitheringFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 legacyDithering;
};
Layout
struct VkPhysicalDeviceLegacyVertexAttributesFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 legacyVertexAttributes;
};
Layout
struct VkPhysicalDeviceLegacyVertexAttributesPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 nativeUnalignedPerformance;
};
Layout
struct VkPhysicalDeviceLimits {
uint32_t maxImageDimension1D;
uint32_t maxImageDimension2D;
uint32_t maxImageDimension3D;
uint32_t maxImageDimensionCube;
uint32_t maxImageArrayLayers;
uint32_t maxTexelBufferElements;
uint32_t maxUniformBufferRange;
uint32_t maxStorageBufferRange;
uint32_t maxPushConstantsSize;
uint32_t maxMemoryAllocationCount;
uint32_t maxSamplerAllocationCount;
(uint64_t) VkDeviceSize bufferImageGranularity;
(uint64_t) VkDeviceSize sparseAddressSpaceSize;
uint32_t maxBoundDescriptorSets;
uint32_t maxPerStageDescriptorSamplers;
uint32_t maxPerStageDescriptorUniformBuffers;
uint32_t maxPerStageDescriptorStorageBuffers;
uint32_t maxPerStageDescriptorSampledImages;
uint32_t maxPerStageDescriptorStorageImages;
uint32_t maxPerStageDescriptorInputAttachments;
uint32_t maxPerStageResources;
uint32_t maxDescriptorSetSamplers;
uint32_t maxDescriptorSetUniformBuffers;
uint32_t maxDescriptorSetUniformBuffersDynamic;
uint32_t maxDescriptorSetStorageBuffers;
uint32_t maxDescriptorSetStorageBuffersDynamic;
uint32_t maxDescriptorSetSampledImages;
uint32_t maxDescriptorSetStorageImages;
uint32_t maxDescriptorSetInputAttachments;
uint32_t maxVertexInputAttributes;
uint32_t maxVertexInputBindings;
uint32_t maxVertexInputAttributeOffset;
uint32_t maxVertexInputBindingStride;
uint32_t maxVertexOutputComponents;
uint32_t maxTessellationGenerationLevel;
uint32_t maxTessellationPatchSize;
uint32_t maxTessellationControlPerVertexInputComponents;
uint32_t maxTessellationControlPerVertexOutputComponents;
uint32_t maxTessellationControlPerPatchOutputComponents;
uint32_t maxTessellationControlTotalOutputComponents;
uint32_t maxTessellationEvaluationInputComponents;
uint32_t maxTessellationEvaluationOutputComponents;
uint32_t maxGeometryShaderInvocations;
uint32_t maxGeometryInputComponents;
uint32_t maxGeometryOutputComponents;
uint32_t maxGeometryOutputVertices;
uint32_t maxGeometryTotalOutputComponents;
uint32_t maxFragmentInputComponents;
uint32_t maxFragmentOutputAttachments;
uint32_t maxFragmentDualSrcAttachments;
uint32_t maxFragmentCombinedOutputResources;
uint32_t maxComputeSharedMemorySize;
uint32_t maxComputeWorkGroupCount[3];
uint32_t maxComputeWorkGroupInvocations;
uint32_t maxComputeWorkGroupSize[3];
uint32_t subPixelPrecisionBits;
uint32_t subTexelPrecisionBits;
uint32_t mipmapPrecisionBits;
uint32_t maxDrawIndexedIndexValue;
uint32_t maxDrawIndirectCount;
float maxSamplerLodBias;
float maxSamplerAnisotropy;
uint32_t maxViewports;
uint32_t maxViewportDimensions[2];
float viewportBoundsRange[2];
uint32_t viewportSubPixelBits;
size_t minMemoryMapAlignment;
(uint64_t) VkDeviceSize minTexelBufferOffsetAlignment;
(uint64_t) VkDeviceSize minUniformBufferOffsetAlignment;
(uint64_t) VkDeviceSize minStorageBufferOffsetAlignment;
int32_t minTexelOffset;
uint32_t maxTexelOffset;
int32_t minTexelGatherOffset;
uint32_t maxTexelGatherOffset;
float minInterpolationOffset;
float maxInterpolationOffset;
uint32_t subPixelInterpolationOffsetBits;
uint32_t maxFramebufferWidth;
uint32_t maxFramebufferHeight;
uint32_t maxFramebufferLayers;
((uint32_t) VkFlags) VkSampleCountFlags framebufferColorSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags framebufferDepthSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags framebufferStencilSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags framebufferNoAttachmentsSampleCounts;
uint32_t maxColorAttachments;
((uint32_t) VkFlags) VkSampleCountFlags sampledImageColorSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags sampledImageIntegerSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags sampledImageDepthSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags sampledImageStencilSampleCounts;
((uint32_t) VkFlags) VkSampleCountFlags storageImageSampleCounts;
uint32_t maxSampleMaskWords;
(uint32_t) VkBool32 timestampComputeAndGraphics;
float timestampPeriod;
uint32_t maxClipDistances;
uint32_t maxCullDistances;
uint32_t maxCombinedClipAndCullDistances;
uint32_t discreteQueuePriorities;
float pointSizeRange[2];
float lineWidthRange[2];
float pointSizeGranularity;
float lineWidthGranularity;
(uint32_t) VkBool32 strictLines;
(uint32_t) VkBool32 standardSampleLocations;
(uint64_t) VkDeviceSize optimalBufferCopyOffsetAlignment;
(uint64_t) VkDeviceSize optimalBufferCopyRowPitchAlignment;
(uint64_t) VkDeviceSize nonCoherentAtomSize;
};
Layout
struct VkPhysicalDeviceLinearColorAttachmentFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 linearColorAttachment;
};
Layout
struct VkPhysicalDeviceLineRasterizationFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rectangularLines;
(uint32_t) VkBool32 bresenhamLines;
(uint32_t) VkBool32 smoothLines;
(uint32_t) VkBool32 stippledRectangularLines;
(uint32_t) VkBool32 stippledBresenhamLines;
(uint32_t) VkBool32 stippledSmoothLines;
};
Layout
struct VkPhysicalDeviceLineRasterizationFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rectangularLines;
(uint32_t) VkBool32 bresenhamLines;
(uint32_t) VkBool32 smoothLines;
(uint32_t) VkBool32 stippledRectangularLines;
(uint32_t) VkBool32 stippledBresenhamLines;
(uint32_t) VkBool32 stippledSmoothLines;
};
Layout
struct VkPhysicalDeviceLineRasterizationFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rectangularLines;
(uint32_t) VkBool32 bresenhamLines;
(uint32_t) VkBool32 smoothLines;
(uint32_t) VkBool32 stippledRectangularLines;
(uint32_t) VkBool32 stippledBresenhamLines;
(uint32_t) VkBool32 stippledSmoothLines;
};
Layout
struct VkPhysicalDeviceLineRasterizationProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t lineSubPixelPrecisionBits;
};
Layout
struct VkPhysicalDeviceLineRasterizationPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t lineSubPixelPrecisionBits;
};
Layout
struct VkPhysicalDeviceLineRasterizationPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t lineSubPixelPrecisionBits;
};
Layout
struct VkPhysicalDeviceMaintenance3Properties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxPerSetDescriptors;
(uint64_t) VkDeviceSize maxMemoryAllocationSize;
};
Layout
struct VkPhysicalDeviceMaintenance3PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t maxPerSetDescriptors;
(uint64_t) VkDeviceSize maxMemoryAllocationSize;
};
Layout
struct VkPhysicalDeviceMaintenance4Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance4;
};
Layout
struct VkPhysicalDeviceMaintenance4FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance4;
};
Layout
struct VkPhysicalDeviceMaintenance4Properties {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize maxBufferSize;
};
Layout
struct VkPhysicalDeviceMaintenance4PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize maxBufferSize;
};
Layout
struct VkPhysicalDeviceMaintenance5Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance5;
};
Layout
struct VkPhysicalDeviceMaintenance5FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance5;
};
Layout
struct VkPhysicalDeviceMaintenance5Properties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting;
(uint32_t) VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting;
(uint32_t) VkBool32 depthStencilSwizzleOneSupport;
(uint32_t) VkBool32 polygonModePointSize;
(uint32_t) VkBool32 nonStrictSinglePixelWideLinesUseParallelogram;
(uint32_t) VkBool32 nonStrictWideLinesUseParallelogram;
};
Layout
struct VkPhysicalDeviceMaintenance5PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting;
(uint32_t) VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting;
(uint32_t) VkBool32 depthStencilSwizzleOneSupport;
(uint32_t) VkBool32 polygonModePointSize;
(uint32_t) VkBool32 nonStrictSinglePixelWideLinesUseParallelogram;
(uint32_t) VkBool32 nonStrictWideLinesUseParallelogram;
};
Layout
struct VkPhysicalDeviceMaintenance6Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance6;
};
Layout
struct VkPhysicalDeviceMaintenance6FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance6;
};
Layout
struct VkPhysicalDeviceMaintenance6Properties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 blockTexelViewCompatibleMultipleLayers;
uint32_t maxCombinedImageSamplerDescriptorCount;
(uint32_t) VkBool32 fragmentShadingRateClampCombinerInputs;
};
Layout
struct VkPhysicalDeviceMaintenance6PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 blockTexelViewCompatibleMultipleLayers;
uint32_t maxCombinedImageSamplerDescriptorCount;
(uint32_t) VkBool32 fragmentShadingRateClampCombinerInputs;
};
Layout
struct VkPhysicalDeviceMaintenance7FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance7;
};
Layout
struct VkPhysicalDeviceMaintenance7PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustFragmentShadingRateAttachmentAccess;
(uint32_t) VkBool32 separateDepthStencilAttachmentAccess;
uint32_t maxDescriptorSetTotalUniformBuffersDynamic;
uint32_t maxDescriptorSetTotalStorageBuffersDynamic;
uint32_t maxDescriptorSetTotalBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindTotalUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindTotalStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindTotalBuffersDynamic;
};
Layout
struct VkPhysicalDeviceMaintenance8FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance8;
};
Layout
struct VkPhysicalDeviceMaintenance9FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 maintenance9;
};
Layout
struct VkPhysicalDeviceMaintenance9PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 image2DViewOf3DSparse;
(int) VkDefaultVertexAttributeValueKHR defaultVertexAttributeValue;
};
Layout
struct VkPhysicalDeviceMapMemoryPlacedFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 memoryMapPlaced;
(uint32_t) VkBool32 memoryMapRangePlaced;
(uint32_t) VkBool32 memoryUnmapReserve;
};
Layout
struct VkPhysicalDeviceMapMemoryPlacedPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize minPlacedMemoryMapAlignment;
};
Layout
struct VkPhysicalDeviceMemoryBudgetPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize heapBudget[16];
(uint64_t) VkDeviceSize heapUsage[16];
};
Layout
struct VkPhysicalDeviceMemoryDecompressionFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 memoryDecompression;
};
Layout
struct VkPhysicalDeviceMemoryDecompressionPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkMemoryDecompressionMethodFlagsNV decompressionMethods;
uint64_t maxDecompressionIndirectCount;
};
Layout
struct VkPhysicalDeviceMemoryPriorityFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 memoryPriority;
};
Layout
struct VkPhysicalDeviceMemoryProperties {
uint32_t memoryTypeCount;
(struct VkMemoryType) VkMemoryType memoryTypes[32];
uint32_t memoryHeapCount;
(struct VkMemoryHeap) VkMemoryHeap memoryHeaps[16];
};
Layout
struct VkPhysicalDeviceMemoryProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceMemoryProperties) VkPhysicalDeviceMemoryProperties memoryProperties;
};
Layout
struct VkPhysicalDeviceMemoryProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceMemoryProperties) VkPhysicalDeviceMemoryProperties memoryProperties;
};
Layout
struct VkPhysicalDeviceMeshShaderFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 taskShader;
(uint32_t) VkBool32 meshShader;
(uint32_t) VkBool32 multiviewMeshShader;
(uint32_t) VkBool32 primitiveFragmentShadingRateMeshShader;
(uint32_t) VkBool32 meshShaderQueries;
};
Layout
struct VkPhysicalDeviceMeshShaderFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 taskShader;
(uint32_t) VkBool32 meshShader;
};
Layout
struct VkPhysicalDeviceMeshShaderPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxTaskWorkGroupTotalCount;
uint32_t maxTaskWorkGroupCount[3];
uint32_t maxTaskWorkGroupInvocations;
uint32_t maxTaskWorkGroupSize[3];
uint32_t maxTaskPayloadSize;
uint32_t maxTaskSharedMemorySize;
uint32_t maxTaskPayloadAndSharedMemorySize;
uint32_t maxMeshWorkGroupTotalCount;
uint32_t maxMeshWorkGroupCount[3];
uint32_t maxMeshWorkGroupInvocations;
uint32_t maxMeshWorkGroupSize[3];
uint32_t maxMeshSharedMemorySize;
uint32_t maxMeshPayloadAndSharedMemorySize;
uint32_t maxMeshOutputMemorySize;
uint32_t maxMeshPayloadAndOutputMemorySize;
uint32_t maxMeshOutputComponents;
uint32_t maxMeshOutputVertices;
uint32_t maxMeshOutputPrimitives;
uint32_t maxMeshOutputLayers;
uint32_t maxMeshMultiviewViewCount;
uint32_t meshOutputPerVertexGranularity;
uint32_t meshOutputPerPrimitiveGranularity;
uint32_t maxPreferredTaskWorkGroupInvocations;
uint32_t maxPreferredMeshWorkGroupInvocations;
(uint32_t) VkBool32 prefersLocalInvocationVertexOutput;
(uint32_t) VkBool32 prefersLocalInvocationPrimitiveOutput;
(uint32_t) VkBool32 prefersCompactVertexOutput;
(uint32_t) VkBool32 prefersCompactPrimitiveOutput;
};
Layout
struct VkPhysicalDeviceMeshShaderPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxDrawMeshTasksCount;
uint32_t maxTaskWorkGroupInvocations;
uint32_t maxTaskWorkGroupSize[3];
uint32_t maxTaskTotalMemorySize;
uint32_t maxTaskOutputCount;
uint32_t maxMeshWorkGroupInvocations;
uint32_t maxMeshWorkGroupSize[3];
uint32_t maxMeshTotalMemorySize;
uint32_t maxMeshOutputVertices;
uint32_t maxMeshOutputPrimitives;
uint32_t maxMeshMultiviewViewCount;
uint32_t meshOutputPerVertexGranularity;
uint32_t meshOutputPerPrimitiveGranularity;
};
Layout
struct VkPhysicalDeviceMultiDrawFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multiDraw;
};
Layout
struct VkPhysicalDeviceMultiDrawPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxMultiDrawCount;
};
Layout
struct VkPhysicalDeviceMultisampledRenderToSingleSampledFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multisampledRenderToSingleSampled;
};
Layout
struct VkPhysicalDeviceMultiviewFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multiview;
(uint32_t) VkBool32 multiviewGeometryShader;
(uint32_t) VkBool32 multiviewTessellationShader;
};
Layout
struct VkPhysicalDeviceMultiviewFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multiview;
(uint32_t) VkBool32 multiviewGeometryShader;
(uint32_t) VkBool32 multiviewTessellationShader;
};
Layout
struct VkPhysicalDeviceMultiviewPerViewAttributesPropertiesNVX {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 perViewPositionAllComponents;
};
Layout
struct VkPhysicalDeviceMultiviewPerViewRenderAreasFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multiviewPerViewRenderAreas;
};
Layout
struct VkPhysicalDeviceMultiviewPerViewViewportsFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 multiviewPerViewViewports;
};
Layout
struct VkPhysicalDeviceMultiviewProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxMultiviewViewCount;
uint32_t maxMultiviewInstanceIndex;
};
Layout
struct VkPhysicalDeviceMultiviewPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t maxMultiviewViewCount;
uint32_t maxMultiviewInstanceIndex;
};
Layout
struct VkPhysicalDeviceMutableDescriptorTypeFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 mutableDescriptorType;
};
Layout
struct VkPhysicalDeviceMutableDescriptorTypeFeaturesVALVE {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 mutableDescriptorType;
};
Layout
struct VkPhysicalDeviceNestedCommandBufferFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 nestedCommandBuffer;
(uint32_t) VkBool32 nestedCommandBufferRendering;
(uint32_t) VkBool32 nestedCommandBufferSimultaneousUse;
};
Layout
struct VkPhysicalDeviceNestedCommandBufferPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxCommandBufferNestingLevel;
};
Layout
struct VkPhysicalDeviceNonSeamlessCubeMapFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 nonSeamlessCubeMap;
};
Layout
struct VkPhysicalDeviceOpacityMicromapFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 micromap;
(uint32_t) VkBool32 micromapCaptureReplay;
(uint32_t) VkBool32 micromapHostCommands;
};
Layout
struct VkPhysicalDeviceOpacityMicromapPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxOpacity2StateSubdivisionLevel;
uint32_t maxOpacity4StateSubdivisionLevel;
};
Layout
struct VkPhysicalDeviceOpticalFlowFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 opticalFlow;
};
Layout
struct VkPhysicalDeviceOpticalFlowPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkOpticalFlowGridSizeFlagsNV supportedOutputGridSizes;
((uint32_t) VkFlags) VkOpticalFlowGridSizeFlagsNV supportedHintGridSizes;
(uint32_t) VkBool32 hintSupported;
(uint32_t) VkBool32 costSupported;
(uint32_t) VkBool32 bidirectionalFlowSupported;
(uint32_t) VkBool32 globalFlowSupported;
uint32_t minWidth;
uint32_t minHeight;
uint32_t maxWidth;
uint32_t maxHeight;
uint32_t maxNumRegionsOfInterest;
};
Layout
struct VkPhysicalDevicePageableDeviceLocalMemoryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pageableDeviceLocalMemory;
};
Layout
struct VkPhysicalDevicePartitionedAccelerationStructureFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 partitionedAccelerationStructure;
};
Layout
struct VkPhysicalDevicePartitionedAccelerationStructurePropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t maxPartitionCount;
};
Layout
struct VkPhysicalDevicePCIBusInfoPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t pciDomain;
uint32_t pciBus;
uint32_t pciDevice;
uint32_t pciFunction;
};
Layout
struct VkPhysicalDevicePerformanceQueryFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 performanceCounterQueryPools;
(uint32_t) VkBool32 performanceCounterMultipleQueryPools;
};
Layout
struct VkPhysicalDevicePerformanceQueryPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 allowCommandBufferQueryCopies;
};
Layout
struct VkPhysicalDevicePerStageDescriptorSetFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 perStageDescriptorSet;
(uint32_t) VkBool32 dynamicPipelineLayout;
};
Layout
struct VkPhysicalDevicePipelineBinaryFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineBinaries;
};
Layout
struct VkPhysicalDevicePipelineBinaryPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineBinaryInternalCache;
(uint32_t) VkBool32 pipelineBinaryInternalCacheControl;
(uint32_t) VkBool32 pipelineBinaryPrefersInternalCache;
(uint32_t) VkBool32 pipelineBinaryPrecompiledInternalCache;
(uint32_t) VkBool32 pipelineBinaryCompressedData;
};
Layout
struct VkPhysicalDevicePipelineCacheIncrementalModeFeaturesSEC {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineCacheIncrementalMode;
};
Layout
struct VkPhysicalDevicePipelineCreationCacheControlFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineCreationCacheControl;
};
Layout
struct VkPhysicalDevicePipelineCreationCacheControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineCreationCacheControl;
};
Layout
struct VkPhysicalDevicePipelineExecutablePropertiesFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineExecutableInfo;
};
Layout
struct VkPhysicalDevicePipelineLibraryGroupHandlesFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineLibraryGroupHandles;
};
Layout
struct VkPhysicalDevicePipelineOpacityMicromapFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineOpacityMicromap;
};
Layout
struct VkPhysicalDevicePipelinePropertiesFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelinePropertiesIdentifier;
};
Layout
struct VkPhysicalDevicePipelineProtectedAccessFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineProtectedAccess;
};
Layout
struct VkPhysicalDevicePipelineProtectedAccessFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineProtectedAccess;
};
Layout
struct VkPhysicalDevicePipelineRobustnessFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineRobustness;
};
Layout
struct VkPhysicalDevicePipelineRobustnessFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 pipelineRobustness;
};
Layout
struct VkPhysicalDevicePipelineRobustnessProperties {
(int) VkStructureType sType;
void* pNext;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs;
(int) VkPipelineRobustnessImageBehavior defaultRobustnessImages;
};
Layout
struct VkPhysicalDevicePipelineRobustnessPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs;
(int) VkPipelineRobustnessImageBehavior defaultRobustnessImages;
};
Layout
struct VkPhysicalDevicePointClippingProperties {
(int) VkStructureType sType;
void* pNext;
(int) VkPointClippingBehavior pointClippingBehavior;
};
Layout
struct VkPhysicalDevicePointClippingPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkPointClippingBehavior pointClippingBehavior;
};
Layout
struct VkPhysicalDevicePortabilitySubsetFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 constantAlphaColorBlendFactors;
(uint32_t) VkBool32 events;
(uint32_t) VkBool32 imageViewFormatReinterpretation;
(uint32_t) VkBool32 imageViewFormatSwizzle;
(uint32_t) VkBool32 imageView2DOn3DImage;
(uint32_t) VkBool32 multisampleArrayImage;
(uint32_t) VkBool32 mutableComparisonSamplers;
(uint32_t) VkBool32 pointPolygons;
(uint32_t) VkBool32 samplerMipLodBias;
(uint32_t) VkBool32 separateStencilMaskRef;
(uint32_t) VkBool32 shaderSampleRateInterpolationFunctions;
(uint32_t) VkBool32 tessellationIsolines;
(uint32_t) VkBool32 tessellationPointMode;
(uint32_t) VkBool32 triangleFans;
(uint32_t) VkBool32 vertexAttributeAccessBeyondStride;
};
Layout
struct VkPhysicalDevicePortabilitySubsetPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t minVertexInputBindingStrideAlignment;
};
Layout
struct VkPhysicalDevicePresentationPropertiesANDROID {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 sharedImage;
};
Layout
struct VkPhysicalDevicePresentBarrierFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentBarrier;
};
Layout
struct VkPhysicalDevicePresentId2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentId2;
};
Layout
struct VkPhysicalDevicePresentIdFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentId;
};
Layout
struct VkPhysicalDevicePresentMeteringFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentMetering;
};
Layout
struct VkPhysicalDevicePresentModeFifoLatestReadyFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentModeFifoLatestReady;
};
Layout
struct VkPhysicalDevicePresentModeFifoLatestReadyFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentModeFifoLatestReady;
};
Layout
struct VkPhysicalDevicePresentWait2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentWait2;
};
Layout
struct VkPhysicalDevicePresentWaitFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentWait;
};
Layout
struct VkPhysicalDevicePrimitivesGeneratedQueryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 primitivesGeneratedQuery;
(uint32_t) VkBool32 primitivesGeneratedQueryWithRasterizerDiscard;
(uint32_t) VkBool32 primitivesGeneratedQueryWithNonZeroStreams;
};
Layout
struct VkPhysicalDevicePrimitiveTopologyListRestartFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 primitiveTopologyListRestart;
(uint32_t) VkBool32 primitiveTopologyPatchListRestart;
};
Layout
struct VkPhysicalDevicePrivateDataFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 privateData;
};
Layout
struct VkPhysicalDevicePrivateDataFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 privateData;
};
Layout
struct VkPhysicalDeviceProperties {
uint32_t apiVersion;
uint32_t driverVersion;
uint32_t vendorID;
uint32_t deviceID;
(int) VkPhysicalDeviceType deviceType;
char deviceName[256];
uint8_t pipelineCacheUUID[16];
(struct VkPhysicalDeviceLimits) VkPhysicalDeviceLimits limits;
(struct VkPhysicalDeviceSparseProperties) VkPhysicalDeviceSparseProperties sparseProperties;
};
Layout
struct VkPhysicalDeviceProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceProperties) VkPhysicalDeviceProperties properties;
};
Layout
struct VkPhysicalDeviceProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkPhysicalDeviceProperties) VkPhysicalDeviceProperties properties;
};
Layout
struct VkPhysicalDeviceProtectedMemoryFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 protectedMemory;
};
Layout
struct VkPhysicalDeviceProtectedMemoryProperties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 protectedNoFault;
};
Layout
struct VkPhysicalDeviceProvokingVertexFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 provokingVertexLast;
(uint32_t) VkBool32 transformFeedbackPreservesProvokingVertex;
};
Layout
struct VkPhysicalDeviceProvokingVertexPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 provokingVertexModePerPipeline;
(uint32_t) VkBool32 transformFeedbackPreservesTriangleFanProvokingVertex;
};
Layout
struct VkPhysicalDevicePushDescriptorProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxPushDescriptors;
};
Layout
struct VkPhysicalDevicePushDescriptorPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t maxPushDescriptors;
};
Layout
struct VkPhysicalDeviceQueueFamilyDataGraphProcessingEngineInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t queueFamilyIndex;
(int) VkPhysicalDeviceDataGraphProcessingEngineTypeARM engineType;
};
Layout
struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rasterizationOrderColorAttachmentAccess;
(uint32_t) VkBool32 rasterizationOrderDepthAttachmentAccess;
(uint32_t) VkBool32 rasterizationOrderStencilAttachmentAccess;
};
Layout
struct VkPhysicalDeviceRasterizationOrderAttachmentAccessFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rasterizationOrderColorAttachmentAccess;
(uint32_t) VkBool32 rasterizationOrderDepthAttachmentAccess;
(uint32_t) VkBool32 rasterizationOrderStencilAttachmentAccess;
};
Layout
struct VkPhysicalDeviceRawAccessChainsFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderRawAccessChains;
};
Layout
struct VkPhysicalDeviceRayQueryFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayQuery;
};
Layout
struct VkPhysicalDeviceRayTracingInvocationReorderFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingInvocationReorder;
};
Layout
struct VkPhysicalDeviceRayTracingInvocationReorderPropertiesNV {
(int) VkStructureType sType;
void* pNext;
(int) VkRayTracingInvocationReorderModeNV rayTracingInvocationReorderReorderingHint;
};
Layout
struct VkPhysicalDeviceRayTracingLinearSweptSpheresFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 spheres;
(uint32_t) VkBool32 linearSweptSpheres;
};
Layout
struct VkPhysicalDeviceRayTracingMaintenance1FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingMaintenance1;
(uint32_t) VkBool32 rayTracingPipelineTraceRaysIndirect2;
};
Layout
struct VkPhysicalDeviceRayTracingMotionBlurFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingMotionBlur;
(uint32_t) VkBool32 rayTracingMotionBlurPipelineTraceRaysIndirect;
};
Layout
struct VkPhysicalDeviceRayTracingPipelineFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingPipeline;
(uint32_t) VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplay;
(uint32_t) VkBool32 rayTracingPipelineShaderGroupHandleCaptureReplayMixed;
(uint32_t) VkBool32 rayTracingPipelineTraceRaysIndirect;
(uint32_t) VkBool32 rayTraversalPrimitiveCulling;
};
Layout
struct VkPhysicalDeviceRayTracingPipelinePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderGroupHandleSize;
uint32_t maxRayRecursionDepth;
uint32_t maxShaderGroupStride;
uint32_t shaderGroupBaseAlignment;
uint32_t shaderGroupHandleCaptureReplaySize;
uint32_t maxRayDispatchInvocationCount;
uint32_t shaderGroupHandleAlignment;
uint32_t maxRayHitAttributeSize;
};
Layout
struct VkPhysicalDeviceRayTracingPositionFetchFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingPositionFetch;
};
Layout
struct VkPhysicalDeviceRayTracingPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderGroupHandleSize;
uint32_t maxRecursionDepth;
uint32_t maxShaderGroupStride;
uint32_t shaderGroupBaseAlignment;
uint64_t maxGeometryCount;
uint64_t maxInstanceCount;
uint64_t maxTriangleCount;
uint32_t maxDescriptorSetAccelerationStructures;
};
Layout
struct VkPhysicalDeviceRayTracingValidationFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 rayTracingValidation;
};
Layout
struct VkPhysicalDeviceRelaxedLineRasterizationFeaturesIMG {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 relaxedLineRasterization;
};
Layout
struct VkPhysicalDeviceRenderPassStripedFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 renderPassStriped;
};
Layout
struct VkPhysicalDeviceRenderPassStripedPropertiesARM {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D renderPassStripeGranularity;
uint32_t maxRenderPassStripes;
};
Layout
struct VkPhysicalDeviceRepresentativeFragmentTestFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 representativeFragmentTest;
};
Layout
struct VkPhysicalDeviceRGBA10X6FormatsFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 formatRgba10x6WithoutYCbCrSampler;
};
Layout
struct VkPhysicalDeviceRobustness2FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustBufferAccess2;
(uint32_t) VkBool32 robustImageAccess2;
(uint32_t) VkBool32 nullDescriptor;
};
Layout
struct VkPhysicalDeviceRobustness2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustBufferAccess2;
(uint32_t) VkBool32 robustImageAccess2;
(uint32_t) VkBool32 nullDescriptor;
};
Layout
struct VkPhysicalDeviceRobustness2PropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize robustStorageBufferAccessSizeAlignment;
(uint64_t) VkDeviceSize robustUniformBufferAccessSizeAlignment;
};
Layout
struct VkPhysicalDeviceRobustness2PropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize robustStorageBufferAccessSizeAlignment;
(uint64_t) VkDeviceSize robustUniformBufferAccessSizeAlignment;
};
Layout
struct VkPhysicalDeviceSampleLocationsPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkSampleCountFlags sampleLocationSampleCounts;
(struct VkExtent2D) VkExtent2D maxSampleLocationGridSize;
float sampleLocationCoordinateRange[2];
uint32_t sampleLocationSubPixelBits;
(uint32_t) VkBool32 variableSampleLocations;
};
Layout
struct VkPhysicalDeviceSamplerFilterMinmaxProperties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 filterMinmaxSingleComponentFormats;
(uint32_t) VkBool32 filterMinmaxImageComponentMapping;
};
Layout
struct VkPhysicalDeviceSamplerFilterMinmaxPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 filterMinmaxSingleComponentFormats;
(uint32_t) VkBool32 filterMinmaxImageComponentMapping;
};
Layout
struct VkPhysicalDeviceSamplerYcbcrConversionFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 samplerYcbcrConversion;
};
Layout
struct VkPhysicalDeviceSamplerYcbcrConversionFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 samplerYcbcrConversion;
};
Layout
struct VkPhysicalDeviceScalarBlockLayoutFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 scalarBlockLayout;
};
Layout
struct VkPhysicalDeviceScalarBlockLayoutFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 scalarBlockLayout;
};
Layout
struct VkPhysicalDeviceSchedulingControlsFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 schedulingControls;
};
Layout
struct VkPhysicalDeviceSchedulingControlsPropertiesARM {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkPhysicalDeviceSchedulingControlsFlagsARM schedulingControlsFlags;
};
Layout
struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 separateDepthStencilLayouts;
};
Layout
struct VkPhysicalDeviceSeparateDepthStencilLayoutsFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 separateDepthStencilLayouts;
};
Layout
struct VkPhysicalDeviceShaderAtomicFloat16VectorFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloat16VectorAtomics;
};
Layout
struct VkPhysicalDeviceShaderAtomicFloat2FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderBufferFloat16Atomics;
(uint32_t) VkBool32 shaderBufferFloat16AtomicAdd;
(uint32_t) VkBool32 shaderBufferFloat16AtomicMinMax;
(uint32_t) VkBool32 shaderBufferFloat32AtomicMinMax;
(uint32_t) VkBool32 shaderBufferFloat64AtomicMinMax;
(uint32_t) VkBool32 shaderSharedFloat16Atomics;
(uint32_t) VkBool32 shaderSharedFloat16AtomicAdd;
(uint32_t) VkBool32 shaderSharedFloat16AtomicMinMax;
(uint32_t) VkBool32 shaderSharedFloat32AtomicMinMax;
(uint32_t) VkBool32 shaderSharedFloat64AtomicMinMax;
(uint32_t) VkBool32 shaderImageFloat32AtomicMinMax;
(uint32_t) VkBool32 sparseImageFloat32AtomicMinMax;
};
Layout
struct VkPhysicalDeviceShaderAtomicFloatFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderBufferFloat32Atomics;
(uint32_t) VkBool32 shaderBufferFloat32AtomicAdd;
(uint32_t) VkBool32 shaderBufferFloat64Atomics;
(uint32_t) VkBool32 shaderBufferFloat64AtomicAdd;
(uint32_t) VkBool32 shaderSharedFloat32Atomics;
(uint32_t) VkBool32 shaderSharedFloat32AtomicAdd;
(uint32_t) VkBool32 shaderSharedFloat64Atomics;
(uint32_t) VkBool32 shaderSharedFloat64AtomicAdd;
(uint32_t) VkBool32 shaderImageFloat32Atomics;
(uint32_t) VkBool32 shaderImageFloat32AtomicAdd;
(uint32_t) VkBool32 sparseImageFloat32Atomics;
(uint32_t) VkBool32 sparseImageFloat32AtomicAdd;
};
Layout
struct VkPhysicalDeviceShaderAtomicInt64Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderBufferInt64Atomics;
(uint32_t) VkBool32 shaderSharedInt64Atomics;
};
Layout
struct VkPhysicalDeviceShaderAtomicInt64FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderBufferInt64Atomics;
(uint32_t) VkBool32 shaderSharedInt64Atomics;
};
Layout
struct VkPhysicalDeviceShaderBfloat16FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderBFloat16Type;
(uint32_t) VkBool32 shaderBFloat16DotProduct;
(uint32_t) VkBool32 shaderBFloat16CooperativeMatrix;
};
Layout
struct VkPhysicalDeviceShaderClockFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupClock;
(uint32_t) VkBool32 shaderDeviceClock;
};
Layout
struct VkPhysicalDeviceShaderCoreBuiltinsFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderCoreBuiltins;
};
Layout
struct VkPhysicalDeviceShaderCoreBuiltinsPropertiesARM {
(int) VkStructureType sType;
void* pNext;
uint64_t shaderCoreMask;
uint32_t shaderCoreCount;
uint32_t shaderWarpsPerCore;
};
Layout
struct VkPhysicalDeviceShaderCoreProperties2AMD {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkShaderCorePropertiesFlagsAMD shaderCoreFeatures;
uint32_t activeComputeUnitCount;
};
Layout
struct VkPhysicalDeviceShaderCorePropertiesAMD {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderEngineCount;
uint32_t shaderArraysPerEngineCount;
uint32_t computeUnitsPerShaderArray;
uint32_t simdPerComputeUnit;
uint32_t wavefrontsPerSimd;
uint32_t wavefrontSize;
uint32_t sgprsPerSimd;
uint32_t minSgprAllocation;
uint32_t maxSgprAllocation;
uint32_t sgprAllocationGranularity;
uint32_t vgprsPerSimd;
uint32_t minVgprAllocation;
uint32_t maxVgprAllocation;
uint32_t vgprAllocationGranularity;
};
Layout
struct VkPhysicalDeviceShaderCorePropertiesARM {
(int) VkStructureType sType;
void* pNext;
uint32_t pixelRate;
uint32_t texelRate;
uint32_t fmaRate;
};
Layout
struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderDemoteToHelperInvocation;
};
Layout
struct VkPhysicalDeviceShaderDemoteToHelperInvocationFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderDemoteToHelperInvocation;
};
Layout
struct VkPhysicalDeviceShaderDrawParameterFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderDrawParameters;
};
Layout
struct VkPhysicalDeviceShaderDrawParametersFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderDrawParameters;
};
Layout
struct VkPhysicalDeviceShaderEarlyAndLateFragmentTestsFeaturesAMD {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderEarlyAndLateFragmentTests;
};
Layout
struct VkPhysicalDeviceShaderEnqueueFeaturesAMDX {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderEnqueue;
(uint32_t) VkBool32 shaderMeshEnqueue;
};
Layout
struct VkPhysicalDeviceShaderEnqueuePropertiesAMDX {
(int) VkStructureType sType;
void* pNext;
uint32_t maxExecutionGraphDepth;
uint32_t maxExecutionGraphShaderOutputNodes;
uint32_t maxExecutionGraphShaderPayloadSize;
uint32_t maxExecutionGraphShaderPayloadCount;
uint32_t executionGraphDispatchAddressAlignment;
uint32_t maxExecutionGraphWorkgroupCount[3];
uint32_t maxExecutionGraphWorkgroups;
};
Layout
struct VkPhysicalDeviceShaderExpectAssumeFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderExpectAssume;
};
Layout
struct VkPhysicalDeviceShaderExpectAssumeFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderExpectAssume;
};
Layout
struct VkPhysicalDeviceShaderFloat16Int8Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloat16;
(uint32_t) VkBool32 shaderInt8;
};
Layout
struct VkPhysicalDeviceShaderFloat16Int8FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloat16;
(uint32_t) VkBool32 shaderInt8;
};
Layout
struct VkPhysicalDeviceShaderFloat8FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloat8;
(uint32_t) VkBool32 shaderFloat8CooperativeMatrix;
};
Layout
struct VkPhysicalDeviceShaderFloatControls2Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloatControls2;
};
Layout
struct VkPhysicalDeviceShaderFloatControls2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderFloatControls2;
};
Layout
struct VkPhysicalDeviceShaderImageAtomicInt64FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderImageInt64Atomics;
(uint32_t) VkBool32 sparseImageInt64Atomics;
};
Layout
struct VkPhysicalDeviceShaderImageFootprintFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 imageFootprint;
};
Layout
struct VkPhysicalDeviceShaderIntegerDotProductFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderIntegerDotProduct;
};
Layout
struct VkPhysicalDeviceShaderIntegerDotProductFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderIntegerDotProduct;
};
Layout
struct VkPhysicalDeviceShaderIntegerDotProductProperties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 integerDotProduct8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
};
Layout
struct VkPhysicalDeviceShaderIntegerDotProductPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 integerDotProduct8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
};
Layout
struct VkPhysicalDeviceShaderIntegerFunctions2FeaturesINTEL {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderIntegerFunctions2;
};
Layout
struct VkPhysicalDeviceShaderMaximalReconvergenceFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderMaximalReconvergence;
};
Layout
struct VkPhysicalDeviceShaderModuleIdentifierFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderModuleIdentifier;
};
Layout
struct VkPhysicalDeviceShaderModuleIdentifierPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint8_t shaderModuleIdentifierAlgorithmUUID[16];
};
Layout
struct VkPhysicalDeviceShaderObjectFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderObject;
};
Layout
struct VkPhysicalDeviceShaderObjectPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint8_t shaderBinaryUUID[16];
uint32_t shaderBinaryVersion;
};
Layout
struct VkPhysicalDeviceShaderQuadControlFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderQuadControl;
};
Layout
struct VkPhysicalDeviceShaderRelaxedExtendedInstructionFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderRelaxedExtendedInstruction;
};
Layout
struct VkPhysicalDeviceShaderReplicatedCompositesFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderReplicatedComposites;
};
Layout
struct VkPhysicalDeviceShaderSMBuiltinsFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSMBuiltins;
};
Layout
struct VkPhysicalDeviceShaderSMBuiltinsPropertiesNV {
(int) VkStructureType sType;
void* pNext;
uint32_t shaderSMCount;
uint32_t shaderWarpsPerSM;
};
Layout
struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupExtendedTypes;
};
Layout
struct VkPhysicalDeviceShaderSubgroupExtendedTypesFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupExtendedTypes;
};
Layout
struct VkPhysicalDeviceShaderSubgroupRotateFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupRotate;
(uint32_t) VkBool32 shaderSubgroupRotateClustered;
};
Layout
struct VkPhysicalDeviceShaderSubgroupRotateFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupRotate;
(uint32_t) VkBool32 shaderSubgroupRotateClustered;
};
Layout
struct VkPhysicalDeviceShaderSubgroupUniformControlFlowFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderSubgroupUniformControlFlow;
};
Layout
struct VkPhysicalDeviceShaderTerminateInvocationFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderTerminateInvocation;
};
Layout
struct VkPhysicalDeviceShaderTerminateInvocationFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderTerminateInvocation;
};
Layout
struct VkPhysicalDeviceShaderTileImageFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderTileImageColorReadAccess;
(uint32_t) VkBool32 shaderTileImageDepthReadAccess;
(uint32_t) VkBool32 shaderTileImageStencilReadAccess;
};
Layout
struct VkPhysicalDeviceShaderTileImagePropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderTileImageCoherentReadAccelerated;
(uint32_t) VkBool32 shaderTileImageReadSampleFromPixelRateInvocation;
(uint32_t) VkBool32 shaderTileImageReadFromHelperInvocation;
};
Layout
struct VkPhysicalDeviceShadingRateImageFeaturesNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shadingRateImage;
(uint32_t) VkBool32 shadingRateCoarseSampleOrder;
};
Layout
struct VkPhysicalDeviceShadingRateImagePropertiesNV {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D shadingRateTexelSize;
uint32_t shadingRatePaletteSize;
uint32_t shadingRateMaxCoarseSamples;
};
Layout
struct VkPhysicalDeviceSparseImageFormatInfo2 {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkImageType type;
(int) VkSampleCountFlagBits samples;
((uint32_t) VkFlags) VkImageUsageFlags usage;
(int) VkImageTiling tiling;
};
Layout
struct VkPhysicalDeviceSparseImageFormatInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkImageType type;
(int) VkSampleCountFlagBits samples;
((uint32_t) VkFlags) VkImageUsageFlags usage;
(int) VkImageTiling tiling;
};
Layout
struct VkPhysicalDeviceSparseProperties {
(uint32_t) VkBool32 residencyStandard2DBlockShape;
(uint32_t) VkBool32 residencyStandard2DMultisampleBlockShape;
(uint32_t) VkBool32 residencyStandard3DBlockShape;
(uint32_t) VkBool32 residencyAlignedMipSize;
(uint32_t) VkBool32 residencyNonResidentStrict;
};
Layout
struct VkPhysicalDeviceSubgroupProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t subgroupSize;
((uint32_t) VkFlags) VkShaderStageFlags supportedStages;
((uint32_t) VkFlags) VkSubgroupFeatureFlags supportedOperations;
(uint32_t) VkBool32 quadOperationsInAllStages;
};
Layout
struct VkPhysicalDeviceSubgroupSizeControlFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 subgroupSizeControl;
(uint32_t) VkBool32 computeFullSubgroups;
};
Layout
struct VkPhysicalDeviceSubgroupSizeControlFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 subgroupSizeControl;
(uint32_t) VkBool32 computeFullSubgroups;
};
Layout
struct VkPhysicalDeviceSubgroupSizeControlProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t minSubgroupSize;
uint32_t maxSubgroupSize;
uint32_t maxComputeWorkgroupSubgroups;
((uint32_t) VkFlags) VkShaderStageFlags requiredSubgroupSizeStages;
};
Layout
struct VkPhysicalDeviceSubgroupSizeControlPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t minSubgroupSize;
uint32_t maxSubgroupSize;
uint32_t maxComputeWorkgroupSubgroups;
((uint32_t) VkFlags) VkShaderStageFlags requiredSubgroupSizeStages;
};
Layout
struct VkPhysicalDeviceSubpassMergeFeedbackFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 subpassMergeFeedback;
};
Layout
struct VkPhysicalDeviceSubpassShadingFeaturesHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 subpassShading;
};
Layout
struct VkPhysicalDeviceSubpassShadingPropertiesHUAWEI {
(int) VkStructureType sType;
void* pNext;
uint32_t maxSubpassShadingWorkgroupSizeAspectRatio;
};
Layout
struct VkPhysicalDeviceSurfaceInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSurfaceKHR surface;
};
Layout
struct VkPhysicalDeviceSwapchainMaintenance1FeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 swapchainMaintenance1;
};
Layout
struct VkPhysicalDeviceSwapchainMaintenance1FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 swapchainMaintenance1;
};
Layout
struct VkPhysicalDeviceSynchronization2Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 synchronization2;
};
Layout
struct VkPhysicalDeviceSynchronization2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 synchronization2;
};
Layout
struct VkPhysicalDeviceTensorFeaturesARM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 tensorNonPacked;
(uint32_t) VkBool32 shaderTensorAccess;
(uint32_t) VkBool32 shaderStorageTensorArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageTensorArrayNonUniformIndexing;
(uint32_t) VkBool32 descriptorBindingStorageTensorUpdateAfterBind;
(uint32_t) VkBool32 tensors;
};
Layout
struct VkPhysicalDeviceTensorPropertiesARM {
(int) VkStructureType sType;
void* pNext;
uint32_t maxTensorDimensionCount;
uint64_t maxTensorElements;
uint64_t maxPerDimensionTensorElements;
int64_t maxTensorStride;
uint64_t maxTensorSize;
uint32_t maxTensorShaderAccessArrayLength;
uint32_t maxTensorShaderAccessSize;
uint32_t maxDescriptorSetStorageTensors;
uint32_t maxPerStageDescriptorSetStorageTensors;
uint32_t maxDescriptorSetUpdateAfterBindStorageTensors;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageTensors;
(uint32_t) VkBool32 shaderStorageTensorArrayNonUniformIndexingNative;
((uint32_t) VkFlags) VkShaderStageFlags shaderTensorSupportedStages;
};
Layout
struct VkPhysicalDeviceTexelBufferAlignmentFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 texelBufferAlignment;
};
Layout
struct VkPhysicalDeviceTexelBufferAlignmentProperties {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
(uint64_t) VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
};
Layout
struct VkPhysicalDeviceTexelBufferAlignmentPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
(uint64_t) VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
};
Layout
struct VkPhysicalDeviceTextureCompressionASTCHDRFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 textureCompressionASTC_HDR;
};
Layout
struct VkPhysicalDeviceTextureCompressionASTCHDRFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 textureCompressionASTC_HDR;
};
Layout
struct VkPhysicalDeviceTileMemoryHeapFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 tileMemoryHeap;
};
Layout
struct VkPhysicalDeviceTileMemoryHeapPropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 queueSubmitBoundary;
(uint32_t) VkBool32 tileBufferTransfers;
};
Layout
struct VkPhysicalDeviceTilePropertiesFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 tileProperties;
};
Layout
struct VkPhysicalDeviceTileShadingFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 tileShading;
(uint32_t) VkBool32 tileShadingFragmentStage;
(uint32_t) VkBool32 tileShadingColorAttachments;
(uint32_t) VkBool32 tileShadingDepthAttachments;
(uint32_t) VkBool32 tileShadingStencilAttachments;
(uint32_t) VkBool32 tileShadingInputAttachments;
(uint32_t) VkBool32 tileShadingSampledAttachments;
(uint32_t) VkBool32 tileShadingPerTileDraw;
(uint32_t) VkBool32 tileShadingPerTileDispatch;
(uint32_t) VkBool32 tileShadingDispatchTile;
(uint32_t) VkBool32 tileShadingApron;
(uint32_t) VkBool32 tileShadingAnisotropicApron;
(uint32_t) VkBool32 tileShadingAtomicOps;
(uint32_t) VkBool32 tileShadingImageProcessing;
};
Layout
struct VkPhysicalDeviceTileShadingPropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
uint32_t maxApronSize;
(uint32_t) VkBool32 preferNonCoherent;
(struct VkExtent2D) VkExtent2D tileGranularity;
(struct VkExtent2D) VkExtent2D maxTileShadingRate;
};
Layout
struct VkPhysicalDeviceTimelineSemaphoreFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 timelineSemaphore;
};
Layout
struct VkPhysicalDeviceTimelineSemaphoreFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 timelineSemaphore;
};
Layout
struct VkPhysicalDeviceTimelineSemaphoreProperties {
(int) VkStructureType sType;
void* pNext;
uint64_t maxTimelineSemaphoreValueDifference;
};
Layout
struct VkPhysicalDeviceTimelineSemaphorePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint64_t maxTimelineSemaphoreValueDifference;
};
Layout
struct VkPhysicalDeviceToolProperties {
(int) VkStructureType sType;
void* pNext;
char name[256];
char version[256];
((uint32_t) VkFlags) VkToolPurposeFlags purposes;
char description[256];
char layer[256];
};
Layout
struct VkPhysicalDeviceToolPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
char name[256];
char version[256];
((uint32_t) VkFlags) VkToolPurposeFlags purposes;
char description[256];
char layer[256];
};
Layout
struct VkPhysicalDeviceTransformFeedbackFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 transformFeedback;
(uint32_t) VkBool32 geometryStreams;
};
Layout
struct VkPhysicalDeviceTransformFeedbackPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxTransformFeedbackStreams;
uint32_t maxTransformFeedbackBuffers;
(uint64_t) VkDeviceSize maxTransformFeedbackBufferSize;
uint32_t maxTransformFeedbackStreamDataSize;
uint32_t maxTransformFeedbackBufferDataSize;
uint32_t maxTransformFeedbackBufferDataStride;
(uint32_t) VkBool32 transformFeedbackQueries;
(uint32_t) VkBool32 transformFeedbackStreamsLinesTriangles;
(uint32_t) VkBool32 transformFeedbackRasterizationStreamSelect;
(uint32_t) VkBool32 transformFeedbackDraw;
};
Layout
struct VkPhysicalDeviceUnifiedImageLayoutsFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 unifiedImageLayouts;
(uint32_t) VkBool32 unifiedImageLayoutsVideo;
};
Layout
struct VkPhysicalDeviceUniformBufferStandardLayoutFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 uniformBufferStandardLayout;
};
Layout
struct VkPhysicalDeviceUniformBufferStandardLayoutFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 uniformBufferStandardLayout;
};
Layout
struct VkPhysicalDeviceVariablePointerFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 variablePointersStorageBuffer;
(uint32_t) VkBool32 variablePointers;
};
Layout
struct VkPhysicalDeviceVariablePointerFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 variablePointersStorageBuffer;
(uint32_t) VkBool32 variablePointers;
};
Layout
struct VkPhysicalDeviceVariablePointersFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 variablePointersStorageBuffer;
(uint32_t) VkBool32 variablePointers;
};
Layout
struct VkPhysicalDeviceVariablePointersFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 variablePointersStorageBuffer;
(uint32_t) VkBool32 variablePointers;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vertexAttributeInstanceRateDivisor;
(uint32_t) VkBool32 vertexAttributeInstanceRateZeroDivisor;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vertexAttributeInstanceRateDivisor;
(uint32_t) VkBool32 vertexAttributeInstanceRateZeroDivisor;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vertexAttributeInstanceRateDivisor;
(uint32_t) VkBool32 vertexAttributeInstanceRateZeroDivisor;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVertexAttribDivisor;
(uint32_t) VkBool32 supportsNonZeroFirstInstance;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVertexAttribDivisor;
};
Layout
struct VkPhysicalDeviceVertexAttributeDivisorPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t maxVertexAttribDivisor;
(uint32_t) VkBool32 supportsNonZeroFirstInstance;
};
Layout
struct VkPhysicalDeviceVertexAttributeRobustnessFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vertexAttributeRobustness;
};
Layout
struct VkPhysicalDeviceVertexInputDynamicStateFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vertexInputDynamicState;
};
Layout
struct VkPhysicalDeviceVideoDecodeVP9FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoDecodeVP9;
};
Layout
struct VkPhysicalDeviceVideoEncodeAV1FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoEncodeAV1;
};
Layout
struct VkPhysicalDeviceVideoEncodeIntraRefreshFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoEncodeIntraRefresh;
};
Layout
struct VkPhysicalDeviceVideoEncodeQualityLevelInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const VkVideoProfileInfoKHR* pVideoProfile;
uint32_t qualityLevel;
};
Layout
struct VkPhysicalDeviceVideoEncodeQuantizationMapFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoEncodeQuantizationMap;
};
Layout
struct VkPhysicalDeviceVideoFormatInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags imageUsage;
};
Layout
struct VkPhysicalDeviceVideoMaintenance1FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoMaintenance1;
};
Layout
struct VkPhysicalDeviceVideoMaintenance2FeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 videoMaintenance2;
};
Layout
struct VkPhysicalDeviceVulkan11Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 storageBuffer16BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer16BitAccess;
(uint32_t) VkBool32 storagePushConstant16;
(uint32_t) VkBool32 storageInputOutput16;
(uint32_t) VkBool32 multiview;
(uint32_t) VkBool32 multiviewGeometryShader;
(uint32_t) VkBool32 multiviewTessellationShader;
(uint32_t) VkBool32 variablePointersStorageBuffer;
(uint32_t) VkBool32 variablePointers;
(uint32_t) VkBool32 protectedMemory;
(uint32_t) VkBool32 samplerYcbcrConversion;
(uint32_t) VkBool32 shaderDrawParameters;
};
Layout
struct VkPhysicalDeviceVulkan11Properties {
(int) VkStructureType sType;
void* pNext;
uint8_t deviceUUID[16];
uint8_t driverUUID[16];
uint8_t deviceLUID[8];
uint32_t deviceNodeMask;
(uint32_t) VkBool32 deviceLUIDValid;
uint32_t subgroupSize;
((uint32_t) VkFlags) VkShaderStageFlags subgroupSupportedStages;
((uint32_t) VkFlags) VkSubgroupFeatureFlags subgroupSupportedOperations;
(uint32_t) VkBool32 subgroupQuadOperationsInAllStages;
(int) VkPointClippingBehavior pointClippingBehavior;
uint32_t maxMultiviewViewCount;
uint32_t maxMultiviewInstanceIndex;
(uint32_t) VkBool32 protectedNoFault;
uint32_t maxPerSetDescriptors;
(uint64_t) VkDeviceSize maxMemoryAllocationSize;
};
Layout
struct VkPhysicalDeviceVulkan12Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 samplerMirrorClampToEdge;
(uint32_t) VkBool32 drawIndirectCount;
(uint32_t) VkBool32 storageBuffer8BitAccess;
(uint32_t) VkBool32 uniformAndStorageBuffer8BitAccess;
(uint32_t) VkBool32 storagePushConstant8;
(uint32_t) VkBool32 shaderBufferInt64Atomics;
(uint32_t) VkBool32 shaderSharedInt64Atomics;
(uint32_t) VkBool32 shaderFloat16;
(uint32_t) VkBool32 shaderInt8;
(uint32_t) VkBool32 descriptorIndexing;
(uint32_t) VkBool32 shaderInputAttachmentArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayDynamicIndexing;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderUniformTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 shaderStorageTexelBufferArrayNonUniformIndexing;
(uint32_t) VkBool32 descriptorBindingUniformBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingSampledImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageImageUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUniformTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingStorageTexelBufferUpdateAfterBind;
(uint32_t) VkBool32 descriptorBindingUpdateUnusedWhilePending;
(uint32_t) VkBool32 descriptorBindingPartiallyBound;
(uint32_t) VkBool32 descriptorBindingVariableDescriptorCount;
(uint32_t) VkBool32 runtimeDescriptorArray;
(uint32_t) VkBool32 samplerFilterMinmax;
(uint32_t) VkBool32 scalarBlockLayout;
(uint32_t) VkBool32 imagelessFramebuffer;
(uint32_t) VkBool32 uniformBufferStandardLayout;
(uint32_t) VkBool32 shaderSubgroupExtendedTypes;
(uint32_t) VkBool32 separateDepthStencilLayouts;
(uint32_t) VkBool32 hostQueryReset;
(uint32_t) VkBool32 timelineSemaphore;
(uint32_t) VkBool32 bufferDeviceAddress;
(uint32_t) VkBool32 bufferDeviceAddressCaptureReplay;
(uint32_t) VkBool32 bufferDeviceAddressMultiDevice;
(uint32_t) VkBool32 vulkanMemoryModel;
(uint32_t) VkBool32 vulkanMemoryModelDeviceScope;
(uint32_t) VkBool32 vulkanMemoryModelAvailabilityVisibilityChains;
(uint32_t) VkBool32 shaderOutputViewportIndex;
(uint32_t) VkBool32 shaderOutputLayer;
(uint32_t) VkBool32 subgroupBroadcastDynamicId;
};
Layout
struct VkPhysicalDeviceVulkan12Properties {
(int) VkStructureType sType;
void* pNext;
(int) VkDriverId driverID;
char driverName[256];
char driverInfo[256];
(struct VkConformanceVersion) VkConformanceVersion conformanceVersion;
(int) VkShaderFloatControlsIndependence denormBehaviorIndependence;
(int) VkShaderFloatControlsIndependence roundingModeIndependence;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat16;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat32;
(uint32_t) VkBool32 shaderSignedZeroInfNanPreserveFloat64;
(uint32_t) VkBool32 shaderDenormPreserveFloat16;
(uint32_t) VkBool32 shaderDenormPreserveFloat32;
(uint32_t) VkBool32 shaderDenormPreserveFloat64;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat16;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat32;
(uint32_t) VkBool32 shaderDenormFlushToZeroFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTEFloat64;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat16;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat32;
(uint32_t) VkBool32 shaderRoundingModeRTZFloat64;
uint32_t maxUpdateAfterBindDescriptorsInAllPools;
(uint32_t) VkBool32 shaderUniformBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderSampledImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageBufferArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderStorageImageArrayNonUniformIndexingNative;
(uint32_t) VkBool32 shaderInputAttachmentArrayNonUniformIndexingNative;
(uint32_t) VkBool32 robustBufferAccessUpdateAfterBind;
(uint32_t) VkBool32 quadDivergentImplicitLod;
uint32_t maxPerStageDescriptorUpdateAfterBindSamplers;
uint32_t maxPerStageDescriptorUpdateAfterBindUniformBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageBuffers;
uint32_t maxPerStageDescriptorUpdateAfterBindSampledImages;
uint32_t maxPerStageDescriptorUpdateAfterBindStorageImages;
uint32_t maxPerStageDescriptorUpdateAfterBindInputAttachments;
uint32_t maxPerStageUpdateAfterBindResources;
uint32_t maxDescriptorSetUpdateAfterBindSamplers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffers;
uint32_t maxDescriptorSetUpdateAfterBindUniformBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffers;
uint32_t maxDescriptorSetUpdateAfterBindStorageBuffersDynamic;
uint32_t maxDescriptorSetUpdateAfterBindSampledImages;
uint32_t maxDescriptorSetUpdateAfterBindStorageImages;
uint32_t maxDescriptorSetUpdateAfterBindInputAttachments;
((uint32_t) VkFlags) VkResolveModeFlags supportedDepthResolveModes;
((uint32_t) VkFlags) VkResolveModeFlags supportedStencilResolveModes;
(uint32_t) VkBool32 independentResolveNone;
(uint32_t) VkBool32 independentResolve;
(uint32_t) VkBool32 filterMinmaxSingleComponentFormats;
(uint32_t) VkBool32 filterMinmaxImageComponentMapping;
uint64_t maxTimelineSemaphoreValueDifference;
((uint32_t) VkFlags) VkSampleCountFlags framebufferIntegerColorSampleCounts;
};
Layout
struct VkPhysicalDeviceVulkan13Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 robustImageAccess;
(uint32_t) VkBool32 inlineUniformBlock;
(uint32_t) VkBool32 descriptorBindingInlineUniformBlockUpdateAfterBind;
(uint32_t) VkBool32 pipelineCreationCacheControl;
(uint32_t) VkBool32 privateData;
(uint32_t) VkBool32 shaderDemoteToHelperInvocation;
(uint32_t) VkBool32 shaderTerminateInvocation;
(uint32_t) VkBool32 subgroupSizeControl;
(uint32_t) VkBool32 computeFullSubgroups;
(uint32_t) VkBool32 synchronization2;
(uint32_t) VkBool32 textureCompressionASTC_HDR;
(uint32_t) VkBool32 shaderZeroInitializeWorkgroupMemory;
(uint32_t) VkBool32 dynamicRendering;
(uint32_t) VkBool32 shaderIntegerDotProduct;
(uint32_t) VkBool32 maintenance4;
};
Layout
struct VkPhysicalDeviceVulkan13Properties {
(int) VkStructureType sType;
void* pNext;
uint32_t minSubgroupSize;
uint32_t maxSubgroupSize;
uint32_t maxComputeWorkgroupSubgroups;
((uint32_t) VkFlags) VkShaderStageFlags requiredSubgroupSizeStages;
uint32_t maxInlineUniformBlockSize;
uint32_t maxPerStageDescriptorInlineUniformBlocks;
uint32_t maxPerStageDescriptorUpdateAfterBindInlineUniformBlocks;
uint32_t maxDescriptorSetInlineUniformBlocks;
uint32_t maxDescriptorSetUpdateAfterBindInlineUniformBlocks;
uint32_t maxInlineUniformTotalSize;
(uint32_t) VkBool32 integerDotProduct8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProduct64BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating8BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating4x8BitPackedMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating16BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating32BitMixedSignednessAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitUnsignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitSignedAccelerated;
(uint32_t) VkBool32 integerDotProductAccumulatingSaturating64BitMixedSignednessAccelerated;
(uint64_t) VkDeviceSize storageTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 storageTexelBufferOffsetSingleTexelAlignment;
(uint64_t) VkDeviceSize uniformTexelBufferOffsetAlignmentBytes;
(uint32_t) VkBool32 uniformTexelBufferOffsetSingleTexelAlignment;
(uint64_t) VkDeviceSize maxBufferSize;
};
Layout
struct VkPhysicalDeviceVulkan14Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 globalPriorityQuery;
(uint32_t) VkBool32 shaderSubgroupRotate;
(uint32_t) VkBool32 shaderSubgroupRotateClustered;
(uint32_t) VkBool32 shaderFloatControls2;
(uint32_t) VkBool32 shaderExpectAssume;
(uint32_t) VkBool32 rectangularLines;
(uint32_t) VkBool32 bresenhamLines;
(uint32_t) VkBool32 smoothLines;
(uint32_t) VkBool32 stippledRectangularLines;
(uint32_t) VkBool32 stippledBresenhamLines;
(uint32_t) VkBool32 stippledSmoothLines;
(uint32_t) VkBool32 vertexAttributeInstanceRateDivisor;
(uint32_t) VkBool32 vertexAttributeInstanceRateZeroDivisor;
(uint32_t) VkBool32 indexTypeUint8;
(uint32_t) VkBool32 dynamicRenderingLocalRead;
(uint32_t) VkBool32 maintenance5;
(uint32_t) VkBool32 maintenance6;
(uint32_t) VkBool32 pipelineProtectedAccess;
(uint32_t) VkBool32 pipelineRobustness;
(uint32_t) VkBool32 hostImageCopy;
(uint32_t) VkBool32 pushDescriptor;
};
Layout
struct VkPhysicalDeviceVulkan14Properties {
(int) VkStructureType sType;
void* pNext;
uint32_t lineSubPixelPrecisionBits;
uint32_t maxVertexAttribDivisor;
(uint32_t) VkBool32 supportsNonZeroFirstInstance;
uint32_t maxPushDescriptors;
(uint32_t) VkBool32 dynamicRenderingLocalReadDepthStencilAttachments;
(uint32_t) VkBool32 dynamicRenderingLocalReadMultisampledAttachments;
(uint32_t) VkBool32 earlyFragmentMultisampleCoverageAfterSampleCounting;
(uint32_t) VkBool32 earlyFragmentSampleMaskTestBeforeSampleCounting;
(uint32_t) VkBool32 depthStencilSwizzleOneSupport;
(uint32_t) VkBool32 polygonModePointSize;
(uint32_t) VkBool32 nonStrictSinglePixelWideLinesUseParallelogram;
(uint32_t) VkBool32 nonStrictWideLinesUseParallelogram;
(uint32_t) VkBool32 blockTexelViewCompatibleMultipleLayers;
uint32_t maxCombinedImageSamplerDescriptorCount;
(uint32_t) VkBool32 fragmentShadingRateClampCombinerInputs;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessStorageBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessUniformBuffers;
(int) VkPipelineRobustnessBufferBehavior defaultRobustnessVertexInputs;
(int) VkPipelineRobustnessImageBehavior defaultRobustnessImages;
uint32_t copySrcLayoutCount;
VkImageLayout* pCopySrcLayouts;
uint32_t copyDstLayoutCount;
VkImageLayout* pCopyDstLayouts;
uint8_t optimalTilingLayoutUUID[16];
(uint32_t) VkBool32 identicalMemoryTypeRequirements;
};
Layout
struct VkPhysicalDeviceVulkanMemoryModelFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vulkanMemoryModel;
(uint32_t) VkBool32 vulkanMemoryModelDeviceScope;
(uint32_t) VkBool32 vulkanMemoryModelAvailabilityVisibilityChains;
};
Layout
struct VkPhysicalDeviceVulkanMemoryModelFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 vulkanMemoryModel;
(uint32_t) VkBool32 vulkanMemoryModelDeviceScope;
(uint32_t) VkBool32 vulkanMemoryModelAvailabilityVisibilityChains;
};
Layout
struct VkPhysicalDeviceVulkanSC10Features {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderAtomicInstructions;
};
Layout
struct VkPhysicalDeviceVulkanSC10Properties {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 deviceNoDynamicHostAllocations;
(uint32_t) VkBool32 deviceDestroyFreesMemory;
(uint32_t) VkBool32 commandPoolMultipleCommandBuffersRecording;
(uint32_t) VkBool32 commandPoolResetCommandBuffer;
(uint32_t) VkBool32 commandBufferSimultaneousUse;
(uint32_t) VkBool32 secondaryCommandBufferNullOrImagelessFramebuffer;
(uint32_t) VkBool32 recycleDescriptorSetMemory;
(uint32_t) VkBool32 recyclePipelineMemory;
uint32_t maxRenderPassSubpasses;
uint32_t maxRenderPassDependencies;
uint32_t maxSubpassInputAttachments;
uint32_t maxSubpassPreserveAttachments;
uint32_t maxFramebufferAttachments;
uint32_t maxDescriptorSetLayoutBindings;
uint32_t maxQueryFaultCount;
uint32_t maxCallbackFaultCount;
uint32_t maxCommandPoolCommandBuffers;
(uint64_t) VkDeviceSize maxCommandBufferSize;
};
Layout
struct VkPhysicalDeviceWorkgroupMemoryExplicitLayoutFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 workgroupMemoryExplicitLayout;
(uint32_t) VkBool32 workgroupMemoryExplicitLayoutScalarBlockLayout;
(uint32_t) VkBool32 workgroupMemoryExplicitLayout8BitAccess;
(uint32_t) VkBool32 workgroupMemoryExplicitLayout16BitAccess;
};
Layout
struct VkPhysicalDeviceYcbcr2Plane444FormatsFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 ycbcr2plane444Formats;
};
Layout
struct VkPhysicalDeviceYcbcrDegammaFeaturesQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 ycbcrDegamma;
};
Layout
struct VkPhysicalDeviceYcbcrImageArraysFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 ycbcrImageArrays;
};
Layout
struct VkPhysicalDeviceZeroInitializeDeviceMemoryFeaturesEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 zeroInitializeDeviceMemory;
};
Layout
struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeatures {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderZeroInitializeWorkgroupMemory;
};
Layout
struct VkPhysicalDeviceZeroInitializeWorkgroupMemoryFeaturesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 shaderZeroInitializeWorkgroupMemory;
};
Layout
struct VkPipelineBinaryCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const VkPipelineBinaryKeysAndDataKHR* pKeysAndDataInfo;
(uint64_t) VkPipeline pipeline;
const VkPipelineCreateInfoKHR* pPipelineCreateInfo;
};
Layout
struct VkPipelineBinaryDataInfoKHR {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkPipelineBinaryKHR pipelineBinary;
};
Layout
struct VkPipelineBinaryDataKHR {
size_t dataSize;
void* pData;
};
Layout
struct VkPipelineBinaryHandlesInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t pipelineBinaryCount;
VkPipelineBinaryKHR* pPipelineBinaries;
};
Layout
struct VkPipelineBinaryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t binaryCount;
const VkPipelineBinaryKHR* pPipelineBinaries;
};
Layout
struct VkPipelineBinaryKeyKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t keySize;
uint8_t key[32];
};
Layout
struct VkPipelineBinaryKeysAndDataKHR {
uint32_t binaryCount;
const VkPipelineBinaryKeyKHR* pPipelineBinaryKeys;
const VkPipelineBinaryDataKHR* pPipelineBinaryData;
};
Layout
struct VkPipelineCacheCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCacheCreateFlags flags;
size_t initialDataSize;
const void* pInitialData;
};
Layout
struct VkPipelineCacheHeaderVersionOne {
uint32_t headerSize;
(int) VkPipelineCacheHeaderVersion headerVersion;
uint32_t vendorID;
uint32_t deviceID;
uint8_t pipelineCacheUUID[16];
};
Layout
struct VkPipelineCacheHeaderVersionSafetyCriticalOne {
(struct VkPipelineCacheHeaderVersionOne) VkPipelineCacheHeaderVersionOne headerVersionOne;
(int) VkPipelineCacheValidationVersion validationVersion;
uint32_t implementationData;
uint32_t pipelineIndexCount;
uint32_t pipelineIndexStride;
uint64_t pipelineIndexOffset;
};
Layout
struct VkPipelineCacheSafetyCriticalIndexEntry {
uint8_t pipelineIdentifier[16];
uint64_t pipelineMemorySize;
uint64_t jsonSize;
uint64_t jsonOffset;
uint32_t stageIndexCount;
uint32_t stageIndexStride;
uint64_t stageIndexOffset;
};
Layout
struct VkPipelineCacheStageValidationIndexEntry {
uint64_t codeSize;
uint64_t codeOffset;
};
Layout
struct VkPipelineColorBlendAdvancedStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 srcPremultiplied;
(uint32_t) VkBool32 dstPremultiplied;
(int) VkBlendOverlapEXT blendOverlap;
};
Layout
struct VkPipelineColorBlendAttachmentState {
(uint32_t) VkBool32 blendEnable;
(int) VkBlendFactor srcColorBlendFactor;
(int) VkBlendFactor dstColorBlendFactor;
(int) VkBlendOp colorBlendOp;
(int) VkBlendFactor srcAlphaBlendFactor;
(int) VkBlendFactor dstAlphaBlendFactor;
(int) VkBlendOp alphaBlendOp;
((uint32_t) VkFlags) VkColorComponentFlags colorWriteMask;
};
Layout
struct VkPipelineColorBlendStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineColorBlendStateCreateFlags flags;
(uint32_t) VkBool32 logicOpEnable;
(int) VkLogicOp logicOp;
uint32_t attachmentCount;
const VkPipelineColorBlendAttachmentState* pAttachments;
float blendConstants[4];
};
Layout
struct VkPipelineColorWriteCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentCount;
const VkBool32* pColorWriteEnables;
};
Layout
struct VkPipelineCompilerControlCreateInfoAMD {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCompilerControlFlagsAMD compilerControlFlags;
};
Layout
struct VkPipelineCoverageModulationStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCoverageModulationStateCreateFlagsNV flags;
(int) VkCoverageModulationModeNV coverageModulationMode;
(uint32_t) VkBool32 coverageModulationTableEnable;
uint32_t coverageModulationTableCount;
const float* pCoverageModulationTable;
};
Layout
struct VkPipelineCoverageReductionStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCoverageReductionStateCreateFlagsNV flags;
(int) VkCoverageReductionModeNV coverageReductionMode;
};
Layout
struct VkPipelineCoverageToColorStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCoverageToColorStateCreateFlagsNV flags;
(uint32_t) VkBool32 coverageToColorEnable;
uint32_t coverageToColorLocation;
};
Layout
struct VkPipelineCreateFlags2CreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineCreateFlags2 flags;
};
Layout
struct VkPipelineCreateFlags2CreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineCreateFlags2 flags;
};
Layout
struct VkPipelineCreateInfoKHR {
(int) VkStructureType sType;
void* pNext;
};
Layout
struct VkPipelineCreationFeedback {
((uint32_t) VkFlags) VkPipelineCreationFeedbackFlags flags;
uint64_t duration;
};
Layout
struct VkPipelineCreationFeedbackCreateInfo {
(int) VkStructureType sType;
const void* pNext;
VkPipelineCreationFeedback* pPipelineCreationFeedback;
uint32_t pipelineStageCreationFeedbackCount;
VkPipelineCreationFeedback* pPipelineStageCreationFeedbacks;
};
Layout
struct VkPipelineCreationFeedbackCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
VkPipelineCreationFeedback* pPipelineCreationFeedback;
uint32_t pipelineStageCreationFeedbackCount;
VkPipelineCreationFeedback* pPipelineStageCreationFeedbacks;
};
Layout
struct VkPipelineCreationFeedbackEXT {
((uint32_t) VkFlags) VkPipelineCreationFeedbackFlags flags;
uint64_t duration;
};
Layout
struct VkPipelineDepthStencilStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineDepthStencilStateCreateFlags flags;
(uint32_t) VkBool32 depthTestEnable;
(uint32_t) VkBool32 depthWriteEnable;
(int) VkCompareOp depthCompareOp;
(uint32_t) VkBool32 depthBoundsTestEnable;
(uint32_t) VkBool32 stencilTestEnable;
(struct VkStencilOpState) VkStencilOpState front;
(struct VkStencilOpState) VkStencilOpState back;
float minDepthBounds;
float maxDepthBounds;
};
Layout
struct VkPipelineDiscardRectangleStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineDiscardRectangleStateCreateFlagsEXT flags;
(int) VkDiscardRectangleModeEXT discardRectangleMode;
uint32_t discardRectangleCount;
const VkRect2D* pDiscardRectangles;
};
Layout
struct VkPipelineDynamicStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineDynamicStateCreateFlags flags;
uint32_t dynamicStateCount;
const VkDynamicState* pDynamicStates;
};
Layout
struct VkPipelineExecutableInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipeline pipeline;
uint32_t executableIndex;
};
Layout
struct VkPipelineExecutableInternalRepresentationKHR {
(int) VkStructureType sType;
void* pNext;
char name[256];
char description[256];
(uint32_t) VkBool32 isText;
size_t dataSize;
void* pData;
};
Layout
struct VkPipelineExecutablePropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stages;
char name[256];
char description[256];
uint32_t subgroupSize;
};
Layout
struct VkPipelineExecutableStatisticKHR {
(int) VkStructureType sType;
void* pNext;
char name[256];
char description[256];
(int) VkPipelineExecutableStatisticFormatKHR format;
(union VkPipelineExecutableStatisticValueKHR) VkPipelineExecutableStatisticValueKHR value;
};
Layout
union VkPipelineExecutableStatisticValueKHR {
(uint32_t) VkBool32 b32;
int64_t i64;
uint64_t u64;
double f64;
};
Layout
struct VkPipelineFragmentDensityMapLayeredCreateInfoVALVE {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxFragmentDensityMapLayers;
};
Layout
struct VkPipelineFragmentShadingRateEnumStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkFragmentShadingRateTypeNV shadingRateType;
(int) VkFragmentShadingRateNV shadingRate;
(int) VkFragmentShadingRateCombinerOpKHR combinerOps[2];
};
Layout
struct VkPipelineFragmentShadingRateStateCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkExtent2D) VkExtent2D fragmentSize;
(int) VkFragmentShadingRateCombinerOpKHR combinerOps[2];
};
Layout
struct VkPipelineIndirectDeviceAddressInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkPipelineBindPoint pipelineBindPoint;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkPipelineInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkPipelineInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkPipelineInputAssemblyStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineInputAssemblyStateCreateFlags flags;
(int) VkPrimitiveTopology topology;
(uint32_t) VkBool32 primitiveRestartEnable;
};
Layout
struct VkPipelineLayoutCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineLayoutCreateFlags flags;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
};
Layout
struct VkPipelineLibraryCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t libraryCount;
const VkPipeline* pLibraries;
};
Layout
struct VkPipelineMultisampleStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineMultisampleStateCreateFlags flags;
(int) VkSampleCountFlagBits rasterizationSamples;
(uint32_t) VkBool32 sampleShadingEnable;
float minSampleShading;
const VkSampleMask* pSampleMask;
(uint32_t) VkBool32 alphaToCoverageEnable;
(uint32_t) VkBool32 alphaToOneEnable;
};
Layout
struct VkPipelineOfflineCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint8_t pipelineIdentifier[16];
(int) VkPipelineMatchControl matchControl;
(uint64_t) VkDeviceSize poolEntrySize;
};
Layout
struct VkPipelinePoolSize {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize poolEntrySize;
uint32_t poolEntryCount;
};
Layout
struct VkPipelinePropertiesIdentifierEXT {
(int) VkStructureType sType;
void* pNext;
uint8_t pipelineIdentifier[16];
};
Layout
struct VkPipelineRasterizationConservativeStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineRasterizationConservativeStateCreateFlagsEXT flags;
(int) VkConservativeRasterizationModeEXT conservativeRasterizationMode;
float extraPrimitiveOverestimationSize;
};
Layout
struct VkPipelineRasterizationDepthClipStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineRasterizationDepthClipStateCreateFlagsEXT flags;
(uint32_t) VkBool32 depthClipEnable;
};
Layout
struct VkPipelineRasterizationLineStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkLineRasterizationMode lineRasterizationMode;
(uint32_t) VkBool32 stippledLineEnable;
uint32_t lineStippleFactor;
uint16_t lineStipplePattern;
};
Layout
struct VkPipelineRasterizationLineStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkLineRasterizationMode lineRasterizationMode;
(uint32_t) VkBool32 stippledLineEnable;
uint32_t lineStippleFactor;
uint16_t lineStipplePattern;
};
Layout
struct VkPipelineRasterizationLineStateCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkLineRasterizationMode lineRasterizationMode;
(uint32_t) VkBool32 stippledLineEnable;
uint32_t lineStippleFactor;
uint16_t lineStipplePattern;
};
Layout
struct VkPipelineRasterizationProvokingVertexStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkProvokingVertexModeEXT provokingVertexMode;
};
Layout
struct VkPipelineRasterizationStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineRasterizationStateCreateFlags flags;
(uint32_t) VkBool32 depthClampEnable;
(uint32_t) VkBool32 rasterizerDiscardEnable;
(int) VkPolygonMode polygonMode;
((uint32_t) VkFlags) VkCullModeFlags cullMode;
(int) VkFrontFace frontFace;
(uint32_t) VkBool32 depthBiasEnable;
float depthBiasConstantFactor;
float depthBiasClamp;
float depthBiasSlopeFactor;
float lineWidth;
};
Layout
struct VkPipelineRasterizationStateRasterizationOrderAMD {
(int) VkStructureType sType;
const void* pNext;
(int) VkRasterizationOrderAMD rasterizationOrder;
};
Layout
struct VkPipelineRasterizationStateStreamCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineRasterizationStateStreamCreateFlagsEXT flags;
uint32_t rasterizationStream;
};
Layout
struct VkPipelineRenderingCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
};
Layout
struct VkPipelineRenderingCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
};
Layout
struct VkPipelineRepresentativeFragmentTestStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 representativeFragmentTestEnable;
};
Layout
struct VkPipelineRobustnessCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkPipelineRobustnessBufferBehavior storageBuffers;
(int) VkPipelineRobustnessBufferBehavior uniformBuffers;
(int) VkPipelineRobustnessBufferBehavior vertexInputs;
(int) VkPipelineRobustnessImageBehavior images;
};
Layout
struct VkPipelineRobustnessCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkPipelineRobustnessBufferBehavior storageBuffers;
(int) VkPipelineRobustnessBufferBehavior uniformBuffers;
(int) VkPipelineRobustnessBufferBehavior vertexInputs;
(int) VkPipelineRobustnessImageBehavior images;
};
Layout
struct VkPipelineSampleLocationsStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 sampleLocationsEnable;
(struct VkSampleLocationsInfoEXT) VkSampleLocationsInfoEXT sampleLocationsInfo;
};
Layout
struct VkPipelineShaderStageCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineShaderStageCreateFlags flags;
(int) VkShaderStageFlagBits stage;
(uint64_t) VkShaderModule module;
const char* pName;
const VkSpecializationInfo* pSpecializationInfo;
};
Layout
struct VkPipelineShaderStageModuleIdentifierCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t identifierSize;
const uint8_t* pIdentifier;
};
Layout
struct VkPipelineShaderStageNodeCreateInfoAMDX {
(int) VkStructureType sType;
const void* pNext;
const char* pName;
uint32_t index;
};
Layout
struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfo {
(int) VkStructureType sType;
void* pNext;
uint32_t requiredSubgroupSize;
};
Layout
struct VkPipelineShaderStageRequiredSubgroupSizeCreateInfoEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t requiredSubgroupSize;
};
Layout
struct VkPipelineTessellationDomainOriginStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkTessellationDomainOrigin domainOrigin;
};
Layout
struct VkPipelineTessellationDomainOriginStateCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkTessellationDomainOrigin domainOrigin;
};
Layout
struct VkPipelineTessellationStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineTessellationStateCreateFlags flags;
uint32_t patchControlPoints;
};
Layout
struct VkPipelineVertexInputDivisorStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t vertexBindingDivisorCount;
const VkVertexInputBindingDivisorDescription* pVertexBindingDivisors;
};
Layout
struct VkPipelineVertexInputDivisorStateCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t vertexBindingDivisorCount;
const VkVertexInputBindingDivisorDescription* pVertexBindingDivisors;
};
Layout
struct VkPipelineVertexInputDivisorStateCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t vertexBindingDivisorCount;
const VkVertexInputBindingDivisorDescription* pVertexBindingDivisors;
};
Layout
struct VkPipelineVertexInputStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineVertexInputStateCreateFlags flags;
uint32_t vertexBindingDescriptionCount;
const VkVertexInputBindingDescription* pVertexBindingDescriptions;
uint32_t vertexAttributeDescriptionCount;
const VkVertexInputAttributeDescription* pVertexAttributeDescriptions;
};
Layout
struct VkPipelineViewportCoarseSampleOrderStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkCoarseSampleOrderTypeNV sampleOrderType;
uint32_t customSampleOrderCount;
const VkCoarseSampleOrderCustomNV* pCustomSampleOrders;
};
Layout
struct VkPipelineViewportDepthClampControlCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkDepthClampModeEXT depthClampMode;
const VkDepthClampRangeEXT* pDepthClampRange;
};
Layout
struct VkPipelineViewportDepthClipControlCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 negativeOneToOne;
};
Layout
struct VkPipelineViewportExclusiveScissorStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t exclusiveScissorCount;
const VkRect2D* pExclusiveScissors;
};
Layout
struct VkPipelineViewportShadingRateImageStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 shadingRateImageEnable;
uint32_t viewportCount;
const VkShadingRatePaletteNV* pShadingRatePalettes;
};
Layout
struct VkPipelineViewportStateCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineViewportStateCreateFlags flags;
uint32_t viewportCount;
const VkViewport* pViewports;
uint32_t scissorCount;
const VkRect2D* pScissors;
};
Layout
struct VkPipelineViewportSwizzleStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineViewportSwizzleStateCreateFlagsNV flags;
uint32_t viewportCount;
const VkViewportSwizzleNV* pViewportSwizzles;
};
Layout
struct VkPipelineViewportWScalingStateCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 viewportWScalingEnable;
uint32_t viewportCount;
const VkViewportWScalingNV* pViewportWScalings;
};
Layout
struct VkPresentFrameTokenGGP {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) GgpFrameToken frameToken;
};
Layout
struct VkPresentId2KHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const uint64_t* pPresentIds;
};
Layout
struct VkPresentIdKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const uint64_t* pPresentIds;
};
Layout
struct VkPresentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreCount;
const VkSemaphore* pWaitSemaphores;
uint32_t swapchainCount;
const VkSwapchainKHR* pSwapchains;
const uint32_t* pImageIndices;
VkResult* pResults;
};
Layout
struct VkPresentRegionKHR {
uint32_t rectangleCount;
const VkRectLayerKHR* pRectangles;
};
Layout
struct VkPresentRegionsKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentRegionKHR* pRegions;
};
Layout
struct VkPresentTimeGOOGLE {
uint32_t presentID;
uint64_t desiredPresentTime;
};
Layout
struct VkPresentTimesInfoGOOGLE {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentTimeGOOGLE* pTimes;
};
Layout
struct VkPresentWait2InfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint64_t presentId;
uint64_t timeout;
};
Layout
struct VkPrivateDataSlotCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPrivateDataSlotCreateFlags flags;
};
Layout
struct VkPrivateDataSlotCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPrivateDataSlotCreateFlags flags;
};
Layout
struct VkProtectedSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 protectedSubmit;
};
Layout
struct VkPushConstantRange {
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
uint32_t offset;
uint32_t size;
};
Layout
struct VkPushConstantsInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipelineLayout layout;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
uint32_t offset;
uint32_t size;
const void* pValues;
};
Layout
struct VkPushConstantsInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkPipelineLayout layout;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
uint32_t offset;
uint32_t size;
const void* pValues;
};
Layout
struct VkPushDescriptorSetInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t set;
uint32_t descriptorWriteCount;
const VkWriteDescriptorSet* pDescriptorWrites;
};
Layout
struct VkPushDescriptorSetInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t set;
uint32_t descriptorWriteCount;
const VkWriteDescriptorSet* pDescriptorWrites;
};
Layout
struct VkPushDescriptorSetWithTemplateInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorUpdateTemplate descriptorUpdateTemplate;
(uint64_t) VkPipelineLayout layout;
uint32_t set;
const void* pData;
};
Layout
struct VkPushDescriptorSetWithTemplateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorUpdateTemplate descriptorUpdateTemplate;
(uint64_t) VkPipelineLayout layout;
uint32_t set;
const void* pData;
};
Layout
struct VkQueryLowLatencySupportNV {
(int) VkStructureType sType;
const void* pNext;
void* pQueriedLowLatencyData;
};
Layout
struct VkQueryPoolCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkQueryPoolCreateFlags flags;
(int) VkQueryType queryType;
uint32_t queryCount;
((uint32_t) VkFlags) VkQueryPipelineStatisticFlags pipelineStatistics;
};
Layout
struct VkQueryPoolCreateInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
(int) VkQueryPoolSamplingModeINTEL performanceCountersSampling;
};
Layout
struct VkQueryPoolPerformanceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t queueFamilyIndex;
uint32_t counterIndexCount;
const uint32_t* pCounterIndices;
};
Layout
struct VkQueryPoolPerformanceQueryCreateInfoINTEL {
(int) VkStructureType sType;
const void* pNext;
(int) VkQueryPoolSamplingModeINTEL performanceCountersSampling;
};
Layout
struct VkQueryPoolVideoEncodeFeedbackCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeFeedbackFlagsKHR encodeFeedbackFlags;
};
Wraps a Vulkan queue handle.
Layout
struct VkQueueFamilyCheckpointProperties2NV {
(int) VkStructureType sType;
void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 checkpointExecutionStageMask;
};
Layout
struct VkQueueFamilyCheckpointPropertiesNV {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkPipelineStageFlags checkpointExecutionStageMask;
};
Layout
struct VkQueueFamilyDataGraphProcessingEnginePropertiesARM {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkExternalSemaphoreHandleTypeFlags foreignSemaphoreHandleTypes;
((uint32_t) VkFlags) VkExternalMemoryHandleTypeFlags foreignMemoryHandleTypes;
};
Layout
struct VkQueueFamilyDataGraphPropertiesARM {
(int) VkStructureType sType;
const void* pNext;
(struct VkPhysicalDeviceDataGraphProcessingEngineARM) VkPhysicalDeviceDataGraphProcessingEngineARM engine;
(struct VkPhysicalDeviceDataGraphOperationSupportARM) VkPhysicalDeviceDataGraphOperationSupportARM operation;
};
Layout
struct VkQueueFamilyGlobalPriorityProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t priorityCount;
(int) VkQueueGlobalPriority priorities[16];
};
Layout
struct VkQueueFamilyGlobalPriorityPropertiesEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t priorityCount;
(int) VkQueueGlobalPriority priorities[16];
};
Layout
struct VkQueueFamilyGlobalPriorityPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t priorityCount;
(int) VkQueueGlobalPriority priorities[16];
};
Layout
struct VkQueueFamilyOwnershipTransferPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t optimalImageTransferToQueueFamilies;
};
Layout
struct VkQueueFamilyProperties {
((uint32_t) VkFlags) VkQueueFlags queueFlags;
uint32_t queueCount;
uint32_t timestampValidBits;
(struct VkExtent3D) VkExtent3D minImageTransferGranularity;
};
Layout
struct VkQueueFamilyProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkQueueFamilyProperties) VkQueueFamilyProperties queueFamilyProperties;
};
Layout
struct VkQueueFamilyProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkQueueFamilyProperties) VkQueueFamilyProperties queueFamilyProperties;
};
Layout
struct VkQueueFamilyQueryResultStatusPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 queryResultStatusSupport;
};
Layout
struct VkQueueFamilyVideoPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoCodecOperationFlagsKHR videoCodecOperations;
};
Layout
struct VkRayTracingPipelineClusterAccelerationStructureCreateInfoNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 allowClusterAccelerationStructure;
};
Layout
struct VkRayTracingPipelineCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCreateFlags flags;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo* pStages;
uint32_t groupCount;
const VkRayTracingShaderGroupCreateInfoKHR* pGroups;
uint32_t maxPipelineRayRecursionDepth;
const VkPipelineLibraryCreateInfoKHR* pLibraryInfo;
const VkRayTracingPipelineInterfaceCreateInfoKHR* pLibraryInterface;
const VkPipelineDynamicStateCreateInfo* pDynamicState;
(uint64_t) VkPipelineLayout layout;
(uint64_t) VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
};
Layout
struct VkRayTracingPipelineCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPipelineCreateFlags flags;
uint32_t stageCount;
const VkPipelineShaderStageCreateInfo* pStages;
uint32_t groupCount;
const VkRayTracingShaderGroupCreateInfoNV* pGroups;
uint32_t maxRecursionDepth;
(uint64_t) VkPipelineLayout layout;
(uint64_t) VkPipeline basePipelineHandle;
int32_t basePipelineIndex;
};
Layout
struct VkRayTracingPipelineInterfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxPipelineRayPayloadSize;
uint32_t maxPipelineRayHitAttributeSize;
};
Layout
struct VkRayTracingShaderGroupCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkRayTracingShaderGroupTypeKHR type;
uint32_t generalShader;
uint32_t closestHitShader;
uint32_t anyHitShader;
uint32_t intersectionShader;
const void* pShaderGroupCaptureReplayHandle;
};
Layout
struct VkRayTracingShaderGroupCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkRayTracingShaderGroupTypeKHR type;
uint32_t generalShader;
uint32_t closestHitShader;
uint32_t anyHitShader;
uint32_t intersectionShader;
};
typedef void* (*VkReallocationFunction)(void* pUserData, void* pOriginal, size_t size, size_t alignment, (int) VkSystemAllocationScope allocationScope);
Layout
struct VkRect2D {
(struct VkOffset2D) VkOffset2D offset;
(struct VkExtent2D) VkExtent2D extent;
};
Layout
struct VkRectLayerKHR {
(struct VkOffset2D) VkOffset2D offset;
(struct VkExtent2D) VkExtent2D extent;
uint32_t layer;
};
Layout
struct VkRefreshCycleDurationGOOGLE {
uint64_t refreshDuration;
};
Layout
struct VkRefreshObjectKHR {
(int) VkObjectType objectType;
uint64_t objectHandle;
((uint32_t) VkFlags) VkRefreshObjectFlagsKHR flags;
};
Layout
struct VkRefreshObjectListKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t objectCount;
const VkRefreshObjectKHR* pObjects;
};
Layout
struct VkReleaseCapturedPipelineDataInfoKHR {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkReleaseSwapchainImagesInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSwapchainKHR swapchain;
uint32_t imageIndexCount;
const uint32_t* pImageIndices;
};
Layout
struct VkReleaseSwapchainImagesInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSwapchainKHR swapchain;
uint32_t imageIndexCount;
const uint32_t* pImageIndices;
};
Layout
struct VkRenderingAreaInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
};
Layout
struct VkRenderingAreaInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkFormat* pColorAttachmentFormats;
(int) VkFormat depthAttachmentFormat;
(int) VkFormat stencilAttachmentFormat;
};
Layout
struct VkRenderingAttachmentInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
(int) VkImageLayout imageLayout;
(int) VkResolveModeFlagBits resolveMode;
(uint64_t) VkImageView resolveImageView;
(int) VkImageLayout resolveImageLayout;
(int) VkAttachmentLoadOp loadOp;
(int) VkAttachmentStoreOp storeOp;
(union VkClearValue) VkClearValue clearValue;
};
Layout
struct VkRenderingAttachmentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
(int) VkImageLayout imageLayout;
(int) VkResolveModeFlagBits resolveMode;
(uint64_t) VkImageView resolveImageView;
(int) VkImageLayout resolveImageLayout;
(int) VkAttachmentLoadOp loadOp;
(int) VkAttachmentStoreOp storeOp;
(union VkClearValue) VkClearValue clearValue;
};
Layout
struct VkRenderingAttachmentLocationInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const uint32_t* pColorAttachmentLocations;
};
Layout
struct VkRenderingAttachmentLocationInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const uint32_t* pColorAttachmentLocations;
};
Layout
struct VkRenderingEndInfoEXT {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkRenderingFragmentDensityMapAttachmentInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
(int) VkImageLayout imageLayout;
};
Layout
struct VkRenderingFragmentShadingRateAttachmentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView imageView;
(int) VkImageLayout imageLayout;
(struct VkExtent2D) VkExtent2D shadingRateAttachmentTexelSize;
};
Layout
struct VkRenderingInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderingFlags flags;
(struct VkRect2D) VkRect2D renderArea;
uint32_t layerCount;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkRenderingAttachmentInfo* pColorAttachments;
const VkRenderingAttachmentInfo* pDepthAttachment;
const VkRenderingAttachmentInfo* pStencilAttachment;
};
Layout
struct VkRenderingInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderingFlags flags;
(struct VkRect2D) VkRect2D renderArea;
uint32_t layerCount;
uint32_t viewMask;
uint32_t colorAttachmentCount;
const VkRenderingAttachmentInfo* pColorAttachments;
const VkRenderingAttachmentInfo* pDepthAttachment;
const VkRenderingAttachmentInfo* pStencilAttachment;
};
Layout
struct VkRenderingInputAttachmentIndexInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const uint32_t* pColorAttachmentInputIndices;
const uint32_t* pDepthInputAttachmentIndex;
const uint32_t* pStencilInputAttachmentIndex;
};
Layout
struct VkRenderingInputAttachmentIndexInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorAttachmentCount;
const uint32_t* pColorAttachmentInputIndices;
const uint32_t* pDepthInputAttachmentIndex;
const uint32_t* pStencilInputAttachmentIndex;
};
Layout
struct VkRenderPassAttachmentBeginInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentCount;
const VkImageView* pAttachments;
};
Layout
struct VkRenderPassAttachmentBeginInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentCount;
const VkImageView* pAttachments;
};
Layout
struct VkRenderPassBeginInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkRenderPass renderPass;
(uint64_t) VkFramebuffer framebuffer;
(struct VkRect2D) VkRect2D renderArea;
uint32_t clearValueCount;
const VkClearValue* pClearValues;
};
Layout
struct VkRenderPassCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderPassCreateFlags flags;
uint32_t attachmentCount;
const VkAttachmentDescription* pAttachments;
uint32_t subpassCount;
const VkSubpassDescription* pSubpasses;
uint32_t dependencyCount;
const VkSubpassDependency* pDependencies;
};
Layout
struct VkRenderPassCreateInfo2 {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderPassCreateFlags flags;
uint32_t attachmentCount;
const VkAttachmentDescription2* pAttachments;
uint32_t subpassCount;
const VkSubpassDescription2* pSubpasses;
uint32_t dependencyCount;
const VkSubpassDependency2* pDependencies;
uint32_t correlatedViewMaskCount;
const uint32_t* pCorrelatedViewMasks;
};
Layout
struct VkRenderPassCreateInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkRenderPassCreateFlags flags;
uint32_t attachmentCount;
const VkAttachmentDescription2* pAttachments;
uint32_t subpassCount;
const VkSubpassDescription2* pSubpasses;
uint32_t dependencyCount;
const VkSubpassDependency2* pDependencies;
uint32_t correlatedViewMaskCount;
const uint32_t* pCorrelatedViewMasks;
};
Layout
struct VkRenderPassCreationControlEXT {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 disallowMerging;
};
Layout
struct VkRenderPassCreationFeedbackCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
VkRenderPassCreationFeedbackInfoEXT* pRenderPassFeedback;
};
Layout
struct VkRenderPassCreationFeedbackInfoEXT {
uint32_t postMergeSubpassCount;
};
Layout
struct VkRenderPassFragmentDensityMapCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(struct VkAttachmentReference) VkAttachmentReference fragmentDensityMapAttachment;
};
Layout
struct VkRenderPassFragmentDensityMapOffsetEndInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t fragmentDensityOffsetCount;
const VkOffset2D* pFragmentDensityOffsets;
};
Layout
struct VkRenderPassInputAttachmentAspectCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t aspectReferenceCount;
const VkInputAttachmentAspectReference* pAspectReferences;
};
Layout
struct VkRenderPassInputAttachmentAspectCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t aspectReferenceCount;
const VkInputAttachmentAspectReference* pAspectReferences;
};
Layout
struct VkRenderPassMultiviewCreateInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t subpassCount;
const uint32_t* pViewMasks;
uint32_t dependencyCount;
const int32_t* pViewOffsets;
uint32_t correlationMaskCount;
const uint32_t* pCorrelationMasks;
};
Layout
struct VkRenderPassMultiviewCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t subpassCount;
const uint32_t* pViewMasks;
uint32_t dependencyCount;
const int32_t* pViewOffsets;
uint32_t correlationMaskCount;
const uint32_t* pCorrelationMasks;
};
Layout
struct VkRenderPassSampleLocationsBeginInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t attachmentInitialSampleLocationsCount;
const VkAttachmentSampleLocationsEXT* pAttachmentInitialSampleLocations;
uint32_t postSubpassSampleLocationsCount;
const VkSubpassSampleLocationsEXT* pPostSubpassSampleLocations;
};
Layout
struct VkRenderPassStripeBeginInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t stripeInfoCount;
const VkRenderPassStripeInfoARM* pStripeInfos;
};
Layout
struct VkRenderPassStripeInfoARM {
(int) VkStructureType sType;
const void* pNext;
(struct VkRect2D) VkRect2D stripeArea;
};
Layout
struct VkRenderPassStripeSubmitInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t stripeSemaphoreInfoCount;
const VkSemaphoreSubmitInfo* pStripeSemaphoreInfos;
};
Layout
struct VkRenderPassSubpassFeedbackCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
VkRenderPassSubpassFeedbackInfoEXT* pSubpassFeedback;
};
Layout
struct VkRenderPassSubpassFeedbackInfoEXT {
(int) VkSubpassMergeStatusEXT subpassMergeStatus;
char description[256];
uint32_t postMergeIndex;
};
Layout
struct VkRenderPassTileShadingCreateInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkTileShadingRenderPassFlagsQCOM flags;
(struct VkExtent2D) VkExtent2D tileApronSize;
};
Layout
struct VkRenderPassTransformBeginInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(int) VkSurfaceTransformFlagBitsKHR transform;
};
Layout
struct VkResolveImageInfo2 {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageResolve2* pRegions;
};
Layout
struct VkResolveImageInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImage srcImage;
(int) VkImageLayout srcImageLayout;
(uint64_t) VkImage dstImage;
(int) VkImageLayout dstImageLayout;
uint32_t regionCount;
const VkImageResolve2* pRegions;
};
Layout
struct VkSampleLocationEXT {
float x;
float y;
};
Layout
struct VkSampleLocationsInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkSampleCountFlagBits sampleLocationsPerPixel;
(struct VkExtent2D) VkExtent2D sampleLocationGridSize;
uint32_t sampleLocationsCount;
const VkSampleLocationEXT* pSampleLocations;
};
Layout
struct VkSamplerBlockMatchWindowCreateInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(struct VkExtent2D) VkExtent2D windowExtent;
(int) VkBlockMatchWindowCompareModeQCOM windowCompareMode;
};
Layout
struct VkSamplerBorderColorComponentMappingCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(struct VkComponentMapping) VkComponentMapping components;
(uint32_t) VkBool32 srgb;
};
Layout
struct VkSamplerCaptureDescriptorDataInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSampler sampler;
};
Layout
struct VkSamplerCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSamplerCreateFlags flags;
(int) VkFilter magFilter;
(int) VkFilter minFilter;
(int) VkSamplerMipmapMode mipmapMode;
(int) VkSamplerAddressMode addressModeU;
(int) VkSamplerAddressMode addressModeV;
(int) VkSamplerAddressMode addressModeW;
float mipLodBias;
(uint32_t) VkBool32 anisotropyEnable;
float maxAnisotropy;
(uint32_t) VkBool32 compareEnable;
(int) VkCompareOp compareOp;
float minLod;
float maxLod;
(int) VkBorderColor borderColor;
(uint32_t) VkBool32 unnormalizedCoordinates;
};
Layout
struct VkSamplerCubicWeightsCreateInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(int) VkCubicFilterWeightsQCOM cubicWeights;
};
Layout
struct VkSamplerCustomBorderColorCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(union VkClearColorValue) VkClearColorValue customBorderColor;
(int) VkFormat format;
};
Layout
struct VkSamplerReductionModeCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkSamplerReductionMode reductionMode;
};
Layout
struct VkSamplerReductionModeCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(int) VkSamplerReductionMode reductionMode;
};
Layout
struct VkSamplerYcbcrConversionCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkSamplerYcbcrModelConversion ycbcrModel;
(int) VkSamplerYcbcrRange ycbcrRange;
(struct VkComponentMapping) VkComponentMapping components;
(int) VkChromaLocation xChromaOffset;
(int) VkChromaLocation yChromaOffset;
(int) VkFilter chromaFilter;
(uint32_t) VkBool32 forceExplicitReconstruction;
};
Layout
struct VkSamplerYcbcrConversionCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkFormat format;
(int) VkSamplerYcbcrModelConversion ycbcrModel;
(int) VkSamplerYcbcrRange ycbcrRange;
(struct VkComponentMapping) VkComponentMapping components;
(int) VkChromaLocation xChromaOffset;
(int) VkChromaLocation yChromaOffset;
(int) VkFilter chromaFilter;
(uint32_t) VkBool32 forceExplicitReconstruction;
};
Layout
struct VkSamplerYcbcrConversionImageFormatProperties {
(int) VkStructureType sType;
void* pNext;
uint32_t combinedImageSamplerDescriptorCount;
};
Layout
struct VkSamplerYcbcrConversionImageFormatPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t combinedImageSamplerDescriptorCount;
};
Layout
struct VkSamplerYcbcrConversionInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSamplerYcbcrConversion conversion;
};
Layout
struct VkSamplerYcbcrConversionInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSamplerYcbcrConversion conversion;
};
Layout
struct VkSamplerYcbcrConversionYcbcrDegammaCreateInfoQCOM {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 enableYDegamma;
(uint32_t) VkBool32 enableCbCrDegamma;
};
Layout
struct VkSciSyncAttributesInfoNV {
(int) VkStructureType sType;
const void* pNext;
(int) VkSciSyncClientTypeNV clientType;
(int) VkSciSyncPrimitiveTypeNV primitiveType;
};
Layout
struct VkScreenBufferFormatPropertiesQNX {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat format;
uint64_t externalFormat;
uint64_t screenUsage;
((uint32_t) VkFlags) VkFormatFeatureFlags formatFeatures;
(struct VkComponentMapping) VkComponentMapping samplerYcbcrConversionComponents;
(int) VkSamplerYcbcrModelConversion suggestedYcbcrModel;
(int) VkSamplerYcbcrRange suggestedYcbcrRange;
(int) VkChromaLocation suggestedXChromaOffset;
(int) VkChromaLocation suggestedYChromaOffset;
};
Layout
struct VkScreenBufferPropertiesQNX {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize allocationSize;
uint32_t memoryTypeBits;
};
Layout
struct VkScreenSurfaceCreateInfoQNX {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkScreenSurfaceCreateFlagsQNX flags;
struct _screen_context * context;
struct _screen_window * window;
};
Layout
struct VkSemaphoreCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSemaphoreCreateFlags flags;
};
Layout
struct VkSemaphoreGetFdInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkSemaphoreGetSciSyncInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkSemaphoreGetWin32HandleInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkSemaphoreGetZirconHandleInfoFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
(int) VkExternalSemaphoreHandleTypeFlagBits handleType;
};
Layout
struct VkSemaphoreSciSyncCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphoreSciSyncPoolNV semaphorePool;
const NvSciSyncFence* pFence;
};
Layout
struct VkSemaphoreSciSyncPoolCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(struct NvSciSyncObjRec *) NvSciSyncObj handle;
};
Layout
struct VkSemaphoreSignalInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
uint64_t value;
};
Layout
struct VkSemaphoreSignalInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
uint64_t value;
};
Layout
struct VkSemaphoreSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
uint64_t value;
((uint64_t) VkFlags64) VkPipelineStageFlags2 stageMask;
uint32_t deviceIndex;
};
Layout
struct VkSemaphoreSubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkSemaphore semaphore;
uint64_t value;
((uint64_t) VkFlags64) VkPipelineStageFlags2 stageMask;
uint32_t deviceIndex;
};
Layout
struct VkSemaphoreTypeCreateInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkSemaphoreType semaphoreType;
uint64_t initialValue;
};
Layout
struct VkSemaphoreTypeCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkSemaphoreType semaphoreType;
uint64_t initialValue;
};
Layout
struct VkSemaphoreWaitInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSemaphoreWaitFlags flags;
uint32_t semaphoreCount;
const VkSemaphore* pSemaphores;
const uint64_t* pValues;
};
Layout
struct VkSemaphoreWaitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSemaphoreWaitFlags flags;
uint32_t semaphoreCount;
const VkSemaphore* pSemaphores;
const uint64_t* pValues;
};
Layout
struct VkSetDescriptorBufferOffsetsInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderStageFlags stageFlags;
(uint64_t) VkPipelineLayout layout;
uint32_t firstSet;
uint32_t setCount;
const uint32_t* pBufferIndices;
const VkDeviceSize* pOffsets;
};
Layout
struct VkSetLatencyMarkerInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint64_t presentID;
(int) VkLatencyMarkerNV marker;
};
Layout
struct VkSetPresentConfigNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t numFramesPerBatch;
uint32_t presentConfigFeedback;
};
Layout
struct VkSetStateFlagsIndirectCommandNV {
uint32_t data;
};
Layout
struct VkShaderCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderCreateFlagsEXT flags;
(int) VkShaderStageFlagBits stage;
((uint32_t) VkFlags) VkShaderStageFlags nextStage;
(int) VkShaderCodeTypeEXT codeType;
size_t codeSize;
const void* pCode;
const char* pName;
uint32_t setLayoutCount;
const VkDescriptorSetLayout* pSetLayouts;
uint32_t pushConstantRangeCount;
const VkPushConstantRange* pPushConstantRanges;
const VkSpecializationInfo* pSpecializationInfo;
};
Layout
struct VkShaderModuleCreateInfo {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkShaderModuleCreateFlags flags;
size_t codeSize;
const uint32_t* pCode;
};
Layout
struct VkShaderModuleIdentifierEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t identifierSize;
uint8_t identifier[32];
};
Layout
struct VkShaderModuleValidationCacheCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkValidationCacheEXT validationCache;
};
Layout
struct VkShaderRequiredSubgroupSizeCreateInfoEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t requiredSubgroupSize;
};
Layout
struct VkShaderResourceUsageAMD {
uint32_t numUsedVgprs;
uint32_t numUsedSgprs;
uint32_t ldsSizePerLocalWorkGroup;
size_t ldsUsageSizeInBytes;
size_t scratchMemUsageInBytes;
};
Layout
struct VkShaderStatisticsInfoAMD {
((uint32_t) VkFlags) VkShaderStageFlags shaderStageMask;
(struct VkShaderResourceUsageAMD) VkShaderResourceUsageAMD resourceUsage;
uint32_t numPhysicalVgprs;
uint32_t numPhysicalSgprs;
uint32_t numAvailableVgprs;
uint32_t numAvailableSgprs;
uint32_t computeWorkGroupSize[3];
};
Layout
struct VkShadingRatePaletteNV {
uint32_t shadingRatePaletteEntryCount;
const VkShadingRatePaletteEntryNV* pShadingRatePaletteEntries;
};
Layout
struct VkSharedPresentSurfaceCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkImageUsageFlags sharedPresentSupportedUsageFlags;
};
Layout
struct VkSparseBufferMemoryBindInfo {
(uint64_t) VkBuffer buffer;
uint32_t bindCount;
const VkSparseMemoryBind* pBinds;
};
Layout
struct VkSparseImageFormatProperties {
((uint32_t) VkFlags) VkImageAspectFlags aspectMask;
(struct VkExtent3D) VkExtent3D imageGranularity;
((uint32_t) VkFlags) VkSparseImageFormatFlags flags;
};
Layout
struct VkSparseImageFormatProperties2 {
(int) VkStructureType sType;
void* pNext;
(struct VkSparseImageFormatProperties) VkSparseImageFormatProperties properties;
};
Layout
struct VkSparseImageFormatProperties2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkSparseImageFormatProperties) VkSparseImageFormatProperties properties;
};
Layout
struct VkSparseImageMemoryBind {
(struct VkImageSubresource) VkImageSubresource subresource;
(struct VkOffset3D) VkOffset3D offset;
(struct VkExtent3D) VkExtent3D extent;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
((uint32_t) VkFlags) VkSparseMemoryBindFlags flags;
};
Layout
struct VkSparseImageMemoryBindInfo {
(uint64_t) VkImage image;
uint32_t bindCount;
const VkSparseImageMemoryBind* pBinds;
};
Layout
struct VkSparseImageMemoryRequirements {
(struct VkSparseImageFormatProperties) VkSparseImageFormatProperties formatProperties;
uint32_t imageMipTailFirstLod;
(uint64_t) VkDeviceSize imageMipTailSize;
(uint64_t) VkDeviceSize imageMipTailOffset;
(uint64_t) VkDeviceSize imageMipTailStride;
};
Layout
struct VkSparseImageMemoryRequirements2 {
(int) VkStructureType sType;
void* pNext;
(struct VkSparseImageMemoryRequirements) VkSparseImageMemoryRequirements memoryRequirements;
};
Layout
struct VkSparseImageMemoryRequirements2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkSparseImageMemoryRequirements) VkSparseImageMemoryRequirements memoryRequirements;
};
Layout
struct VkSparseImageOpaqueMemoryBindInfo {
(uint64_t) VkImage image;
uint32_t bindCount;
const VkSparseMemoryBind* pBinds;
};
Layout
struct VkSparseMemoryBind {
(uint64_t) VkDeviceSize resourceOffset;
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceMemory memory;
(uint64_t) VkDeviceSize memoryOffset;
((uint32_t) VkFlags) VkSparseMemoryBindFlags flags;
};
Layout
struct VkSpecializationInfo {
uint32_t mapEntryCount;
const VkSpecializationMapEntry* pMapEntries;
size_t dataSize;
const void* pData;
};
Layout
struct VkSpecializationMapEntry {
uint32_t constantID;
uint32_t offset;
size_t size;
};
Layout
struct VkSRTDataNV {
float 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;
};
Layout
struct VkStencilOpState {
(int) VkStencilOp failOp;
(int) VkStencilOp passOp;
(int) VkStencilOp depthFailOp;
(int) VkCompareOp compareOp;
uint32_t compareMask;
uint32_t writeMask;
uint32_t reference;
};
Layout
struct VkStreamDescriptorSurfaceCreateInfoGGP {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkStreamDescriptorSurfaceCreateFlagsGGP flags;
(uint32_t) GgpStreamDescriptor streamDescriptor;
};
Layout
struct VkStridedDeviceAddressNV {
(uint64_t) VkDeviceAddress startAddress;
(uint64_t) VkDeviceSize strideInBytes;
};
Layout
struct VkStridedDeviceAddressRegionKHR {
(uint64_t) VkDeviceAddress deviceAddress;
(uint64_t) VkDeviceSize stride;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreCount;
const VkSemaphore* pWaitSemaphores;
const VkPipelineStageFlags* pWaitDstStageMask;
uint32_t commandBufferCount;
const VkCommandBuffer* pCommandBuffers;
uint32_t signalSemaphoreCount;
const VkSemaphore* pSignalSemaphores;
};
Layout
struct VkSubmitInfo2 {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSubmitFlags flags;
uint32_t waitSemaphoreInfoCount;
const VkSemaphoreSubmitInfo* pWaitSemaphoreInfos;
uint32_t commandBufferInfoCount;
const VkCommandBufferSubmitInfo* pCommandBufferInfos;
uint32_t signalSemaphoreInfoCount;
const VkSemaphoreSubmitInfo* pSignalSemaphoreInfos;
};
Layout
struct VkSubmitInfo2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSubmitFlags flags;
uint32_t waitSemaphoreInfoCount;
const VkSemaphoreSubmitInfo* pWaitSemaphoreInfos;
uint32_t commandBufferInfoCount;
const VkCommandBufferSubmitInfo* pCommandBufferInfos;
uint32_t signalSemaphoreInfoCount;
const VkSemaphoreSubmitInfo* pSignalSemaphoreInfos;
};
Layout
struct VkSubpassBeginInfo {
(int) VkStructureType sType;
const void* pNext;
(int) VkSubpassContents contents;
};
Layout
struct VkSubpassBeginInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkSubpassContents contents;
};
Layout
struct VkSubpassDependency {
uint32_t srcSubpass;
uint32_t dstSubpass;
((uint32_t) VkFlags) VkPipelineStageFlags srcStageMask;
((uint32_t) VkFlags) VkPipelineStageFlags dstStageMask;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
((uint32_t) VkFlags) VkDependencyFlags dependencyFlags;
};
Layout
struct VkSubpassDependency2 {
(int) VkStructureType sType;
const void* pNext;
uint32_t srcSubpass;
uint32_t dstSubpass;
((uint32_t) VkFlags) VkPipelineStageFlags srcStageMask;
((uint32_t) VkFlags) VkPipelineStageFlags dstStageMask;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
((uint32_t) VkFlags) VkDependencyFlags dependencyFlags;
int32_t viewOffset;
};
Layout
struct VkSubpassDependency2KHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t srcSubpass;
uint32_t dstSubpass;
((uint32_t) VkFlags) VkPipelineStageFlags srcStageMask;
((uint32_t) VkFlags) VkPipelineStageFlags dstStageMask;
((uint32_t) VkFlags) VkAccessFlags srcAccessMask;
((uint32_t) VkFlags) VkAccessFlags dstAccessMask;
((uint32_t) VkFlags) VkDependencyFlags dependencyFlags;
int32_t viewOffset;
};
Layout
struct VkSubpassDescription {
((uint32_t) VkFlags) VkSubpassDescriptionFlags flags;
(int) VkPipelineBindPoint pipelineBindPoint;
uint32_t inputAttachmentCount;
const VkAttachmentReference* pInputAttachments;
uint32_t colorAttachmentCount;
const VkAttachmentReference* pColorAttachments;
const VkAttachmentReference* pResolveAttachments;
const VkAttachmentReference* pDepthStencilAttachment;
uint32_t preserveAttachmentCount;
const uint32_t* pPreserveAttachments;
};
Layout
struct VkSubpassDescription2 {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSubpassDescriptionFlags flags;
(int) VkPipelineBindPoint pipelineBindPoint;
uint32_t viewMask;
uint32_t inputAttachmentCount;
const VkAttachmentReference2* pInputAttachments;
uint32_t colorAttachmentCount;
const VkAttachmentReference2* pColorAttachments;
const VkAttachmentReference2* pResolveAttachments;
const VkAttachmentReference2* pDepthStencilAttachment;
uint32_t preserveAttachmentCount;
const uint32_t* pPreserveAttachments;
};
Layout
struct VkSubpassDescription2KHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSubpassDescriptionFlags flags;
(int) VkPipelineBindPoint pipelineBindPoint;
uint32_t viewMask;
uint32_t inputAttachmentCount;
const VkAttachmentReference2* pInputAttachments;
uint32_t colorAttachmentCount;
const VkAttachmentReference2* pColorAttachments;
const VkAttachmentReference2* pResolveAttachments;
const VkAttachmentReference2* pDepthStencilAttachment;
uint32_t preserveAttachmentCount;
const uint32_t* pPreserveAttachments;
};
Layout
struct VkSubpassDescriptionDepthStencilResolve {
(int) VkStructureType sType;
const void* pNext;
(int) VkResolveModeFlagBits depthResolveMode;
(int) VkResolveModeFlagBits stencilResolveMode;
const VkAttachmentReference2* pDepthStencilResolveAttachment;
};
Layout
struct VkSubpassDescriptionDepthStencilResolveKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkResolveModeFlagBits depthResolveMode;
(int) VkResolveModeFlagBits stencilResolveMode;
const VkAttachmentReference2* pDepthStencilResolveAttachment;
};
Layout
struct VkSubpassEndInfo {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkSubpassEndInfoKHR {
(int) VkStructureType sType;
const void* pNext;
};
Layout
struct VkSubpassFragmentDensityMapOffsetEndInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
uint32_t fragmentDensityOffsetCount;
const VkOffset2D* pFragmentDensityOffsets;
};
Layout
struct VkSubpassResolvePerformanceQueryEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 optimal;
};
Layout
struct VkSubpassSampleLocationsEXT {
uint32_t subpassIndex;
(struct VkSampleLocationsInfoEXT) VkSampleLocationsInfoEXT sampleLocationsInfo;
};
Layout
struct VkSubpassShadingPipelineCreateInfoHUAWEI {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkRenderPass renderPass;
uint32_t subpass;
};
Layout
struct VkSubresourceHostMemcpySize {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkSubresourceHostMemcpySizeEXT {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkSubresourceLayout {
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceSize rowPitch;
(uint64_t) VkDeviceSize arrayPitch;
(uint64_t) VkDeviceSize depthPitch;
};
Layout
struct VkSubresourceLayout2 {
(int) VkStructureType sType;
void* pNext;
(struct VkSubresourceLayout) VkSubresourceLayout subresourceLayout;
};
Layout
struct VkSubresourceLayout2EXT {
(int) VkStructureType sType;
void* pNext;
(struct VkSubresourceLayout) VkSubresourceLayout subresourceLayout;
};
Layout
struct VkSubresourceLayout2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkSubresourceLayout) VkSubresourceLayout subresourceLayout;
};
Layout
struct VkSurfaceCapabilities2EXT {
(int) VkStructureType sType;
void* pNext;
uint32_t minImageCount;
uint32_t maxImageCount;
(struct VkExtent2D) VkExtent2D currentExtent;
(struct VkExtent2D) VkExtent2D minImageExtent;
(struct VkExtent2D) VkExtent2D maxImageExtent;
uint32_t maxImageArrayLayers;
((uint32_t) VkFlags) VkSurfaceTransformFlagsKHR supportedTransforms;
(int) VkSurfaceTransformFlagBitsKHR currentTransform;
((uint32_t) VkFlags) VkCompositeAlphaFlagsKHR supportedCompositeAlpha;
((uint32_t) VkFlags) VkImageUsageFlags supportedUsageFlags;
((uint32_t) VkFlags) VkSurfaceCounterFlagsEXT supportedSurfaceCounters;
};
Layout
struct VkSurfaceCapabilities2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkSurfaceCapabilitiesKHR) VkSurfaceCapabilitiesKHR surfaceCapabilities;
};
Layout
struct VkSurfaceCapabilitiesFullScreenExclusiveEXT {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 fullScreenExclusiveSupported;
};
Layout
struct VkSurfaceCapabilitiesKHR {
uint32_t minImageCount;
uint32_t maxImageCount;
(struct VkExtent2D) VkExtent2D currentExtent;
(struct VkExtent2D) VkExtent2D minImageExtent;
(struct VkExtent2D) VkExtent2D maxImageExtent;
uint32_t maxImageArrayLayers;
((uint32_t) VkFlags) VkSurfaceTransformFlagsKHR supportedTransforms;
(int) VkSurfaceTransformFlagBitsKHR currentTransform;
((uint32_t) VkFlags) VkCompositeAlphaFlagsKHR supportedCompositeAlpha;
((uint32_t) VkFlags) VkImageUsageFlags supportedUsageFlags;
};
Layout
struct VkSurfaceCapabilitiesPresentBarrierNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentBarrierSupported;
};
Layout
struct VkSurfaceCapabilitiesPresentId2KHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentId2Supported;
};
Layout
struct VkSurfaceCapabilitiesPresentWait2KHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentWait2Supported;
};
Layout
struct VkSurfaceCreateInfoOHOS {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSurfaceCreateFlagsOHOS flags;
OHNativeWindow* window;
};
Layout
struct VkSurfaceFormat2KHR {
(int) VkStructureType sType;
void* pNext;
(struct VkSurfaceFormatKHR) VkSurfaceFormatKHR surfaceFormat;
};
Layout
struct VkSurfaceFormatKHR {
(int) VkFormat format;
(int) VkColorSpaceKHR colorSpace;
};
Layout
struct VkSurfaceFullScreenExclusiveInfoEXT {
(int) VkStructureType sType;
void* pNext;
(int) VkFullScreenExclusiveEXT fullScreenExclusive;
};
Layout
struct VkSurfaceFullScreenExclusiveWin32InfoEXT {
(int) VkStructureType sType;
const void* pNext;
(void*) HMONITOR hmonitor;
};
Layout
struct VkSurfacePresentModeCompatibilityEXT {
(int) VkStructureType sType;
void* pNext;
uint32_t presentModeCount;
VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSurfacePresentModeCompatibilityKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t presentModeCount;
VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSurfacePresentModeEXT {
(int) VkStructureType sType;
void* pNext;
(int) VkPresentModeKHR presentMode;
};
Layout
struct VkSurfacePresentModeKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkPresentModeKHR presentMode;
};
Layout
struct VkSurfacePresentScalingCapabilitiesEXT {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkPresentScalingFlagsKHR supportedPresentScaling;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR supportedPresentGravityX;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR supportedPresentGravityY;
(struct VkExtent2D) VkExtent2D minScaledImageExtent;
(struct VkExtent2D) VkExtent2D maxScaledImageExtent;
};
Layout
struct VkSurfacePresentScalingCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkPresentScalingFlagsKHR supportedPresentScaling;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR supportedPresentGravityX;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR supportedPresentGravityY;
(struct VkExtent2D) VkExtent2D minScaledImageExtent;
(struct VkExtent2D) VkExtent2D maxScaledImageExtent;
};
Layout
struct VkSurfaceProtectedCapabilitiesKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 supportsProtected;
};
Layout
struct VkSwapchainCounterCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSurfaceCounterFlagsEXT surfaceCounters;
};
Layout
struct VkSwapchainCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSwapchainCreateFlagsKHR flags;
(uint64_t) VkSurfaceKHR surface;
uint32_t minImageCount;
(int) VkFormat imageFormat;
(int) VkColorSpaceKHR imageColorSpace;
(struct VkExtent2D) VkExtent2D imageExtent;
uint32_t imageArrayLayers;
((uint32_t) VkFlags) VkImageUsageFlags imageUsage;
(int) VkSharingMode imageSharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
(int) VkSurfaceTransformFlagBitsKHR preTransform;
(int) VkCompositeAlphaFlagBitsKHR compositeAlpha;
(int) VkPresentModeKHR presentMode;
(uint32_t) VkBool32 clipped;
(uint64_t) VkSwapchainKHR oldSwapchain;
};
Layout
struct VkSwapchainDisplayNativeHdrCreateInfoAMD {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 localDimmingEnable;
};
Layout
struct VkSwapchainImageCreateInfoANDROID {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkSwapchainImageUsageFlagsANDROID usage;
};
Layout
struct VkSwapchainLatencyCreateInfoNV {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 latencyModeEnable;
};
Layout
struct VkSwapchainPresentBarrierCreateInfoNV {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 presentBarrierEnable;
};
Layout
struct VkSwapchainPresentFenceInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkFence* pFences;
};
Layout
struct VkSwapchainPresentFenceInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkFence* pFences;
};
Layout
struct VkSwapchainPresentModeInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSwapchainPresentModeInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t swapchainCount;
const VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSwapchainPresentModesCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t presentModeCount;
const VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSwapchainPresentModesCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t presentModeCount;
const VkPresentModeKHR* pPresentModes;
};
Layout
struct VkSwapchainPresentScalingCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPresentScalingFlagsKHR scalingBehavior;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR presentGravityX;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR presentGravityY;
};
Layout
struct VkSwapchainPresentScalingCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkPresentScalingFlagsKHR scalingBehavior;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR presentGravityX;
((uint32_t) VkFlags) VkPresentGravityFlagsKHR presentGravityY;
};
Similar to
SymbolNotFoundError
, but prints a helpful message.Layout
struct VkSysmemColorSpaceFUCHSIA {
(int) VkStructureType sType;
const void* pNext;
uint32_t colorSpace;
};
Layout
struct VkTensorCaptureDescriptorDataInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorARM tensor;
};
Layout
struct VkTensorCopyARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t dimensionCount;
const uint64_t* pSrcOffset;
const uint64_t* pDstOffset;
const uint64_t* pExtent;
};
Layout
struct VkTensorCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkTensorCreateFlagsARM flags;
const VkTensorDescriptionARM* pDescription;
(int) VkSharingMode sharingMode;
uint32_t queueFamilyIndexCount;
const uint32_t* pQueueFamilyIndices;
};
Layout
struct VkTensorDependencyInfoARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t tensorMemoryBarrierCount;
const VkTensorMemoryBarrierARM* pTensorMemoryBarriers;
};
Layout
struct VkTensorDescriptionARM {
(int) VkStructureType sType;
const void* pNext;
(int) VkTensorTilingARM tiling;
(int) VkFormat format;
uint32_t dimensionCount;
const int64_t* pDimensions;
const int64_t* pStrides;
((uint64_t) VkFlags64) VkTensorUsageFlagsARM usage;
};
Layout
struct VkTensorFormatPropertiesARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 optimalTilingTensorFeatures;
((uint64_t) VkFlags64) VkFormatFeatureFlags2 linearTilingTensorFeatures;
};
Layout
struct VkTensorMemoryBarrierARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkPipelineStageFlags2 srcStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 srcAccessMask;
((uint64_t) VkFlags64) VkPipelineStageFlags2 dstStageMask;
((uint64_t) VkFlags64) VkAccessFlags2 dstAccessMask;
uint32_t srcQueueFamilyIndex;
uint32_t dstQueueFamilyIndex;
(uint64_t) VkTensorARM tensor;
};
Layout
struct VkTensorMemoryRequirementsInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorARM tensor;
};
Layout
struct VkTensorViewCaptureDescriptorDataInfoARM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkTensorViewARM tensorView;
};
Layout
struct VkTensorViewCreateInfoARM {
(int) VkStructureType sType;
const void* pNext;
((uint64_t) VkFlags64) VkTensorViewCreateFlagsARM flags;
(uint64_t) VkTensorARM tensor;
(int) VkFormat format;
};
Layout
struct VkTextureLODGatherFormatPropertiesAMD {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 supportsTextureGatherLODBiasAMD;
};
Layout
struct VkTileMemoryBindInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceMemory memory;
};
Layout
struct VkTileMemoryRequirementsQCOM {
(int) VkStructureType sType;
void* pNext;
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceSize alignment;
};
Layout
struct VkTileMemorySizeInfoQCOM {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDeviceSize size;
};
Layout
struct VkTilePropertiesQCOM {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent3D) VkExtent3D tileSize;
(struct VkExtent2D) VkExtent2D apronSize;
(struct VkOffset2D) VkOffset2D origin;
};
Layout
struct VkTimelineSemaphoreSubmitInfo {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreValueCount;
const uint64_t* pWaitSemaphoreValues;
uint32_t signalSemaphoreValueCount;
const uint64_t* pSignalSemaphoreValues;
};
Layout
struct VkTimelineSemaphoreSubmitInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t waitSemaphoreValueCount;
const uint64_t* pWaitSemaphoreValues;
uint32_t signalSemaphoreValueCount;
const uint64_t* pSignalSemaphoreValues;
};
Layout
struct VkTraceRaysIndirectCommand2KHR {
(uint64_t) VkDeviceAddress raygenShaderRecordAddress;
(uint64_t) VkDeviceSize raygenShaderRecordSize;
(uint64_t) VkDeviceAddress missShaderBindingTableAddress;
(uint64_t) VkDeviceSize missShaderBindingTableSize;
(uint64_t) VkDeviceSize missShaderBindingTableStride;
(uint64_t) VkDeviceAddress hitShaderBindingTableAddress;
(uint64_t) VkDeviceSize hitShaderBindingTableSize;
(uint64_t) VkDeviceSize hitShaderBindingTableStride;
(uint64_t) VkDeviceAddress callableShaderBindingTableAddress;
(uint64_t) VkDeviceSize callableShaderBindingTableSize;
(uint64_t) VkDeviceSize callableShaderBindingTableStride;
uint32_t width;
uint32_t height;
uint32_t depth;
};
Layout
struct VkTraceRaysIndirectCommandKHR {
uint32_t width;
uint32_t height;
uint32_t depth;
};
Layout
struct VkTransformMatrixKHR {
float matrix[3][4];
};
Layout
struct VkTransformMatrixNV {
float matrix[3][4];
};
This class provides methods to convert Vulkan enum to string.
Layout
struct VkValidationCacheCreateInfoEXT {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkValidationCacheCreateFlagsEXT flags;
size_t initialDataSize;
const void* pInitialData;
};
Layout
struct VkValidationFeaturesEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t enabledValidationFeatureCount;
const VkValidationFeatureEnableEXT* pEnabledValidationFeatures;
uint32_t disabledValidationFeatureCount;
const VkValidationFeatureDisableEXT* pDisabledValidationFeatures;
};
Layout
struct VkValidationFlagsEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t disabledValidationCheckCount;
const VkValidationCheckEXT* pDisabledValidationChecks;
};
Layout
struct VkVertexInputAttributeDescription {
uint32_t location;
uint32_t binding;
(int) VkFormat format;
uint32_t offset;
};
Layout
struct VkVertexInputAttributeDescription2EXT {
(int) VkStructureType sType;
void* pNext;
uint32_t location;
uint32_t binding;
(int) VkFormat format;
uint32_t offset;
};
Layout
struct VkVertexInputBindingDescription {
uint32_t binding;
uint32_t stride;
(int) VkVertexInputRate inputRate;
};
Layout
struct VkVertexInputBindingDescription2EXT {
(int) VkStructureType sType;
void* pNext;
uint32_t binding;
uint32_t stride;
(int) VkVertexInputRate inputRate;
uint32_t divisor;
};
Layout
struct VkVertexInputBindingDivisorDescription {
uint32_t binding;
uint32_t divisor;
};
Layout
struct VkVertexInputBindingDivisorDescriptionEXT {
uint32_t binding;
uint32_t divisor;
};
Layout
struct VkVertexInputBindingDivisorDescriptionKHR {
uint32_t binding;
uint32_t divisor;
};
Layout
struct VkVideoBeginCodingInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoBeginCodingFlagsKHR flags;
(uint64_t) VkVideoSessionKHR videoSession;
(uint64_t) VkVideoSessionParametersKHR videoSessionParameters;
uint32_t referenceSlotCount;
const VkVideoReferenceSlotInfoKHR* pReferenceSlots;
};
Layout
struct VkVideoCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoCapabilityFlagsKHR flags;
(uint64_t) VkDeviceSize minBitstreamBufferOffsetAlignment;
(uint64_t) VkDeviceSize minBitstreamBufferSizeAlignment;
(struct VkExtent2D) VkExtent2D pictureAccessGranularity;
(struct VkExtent2D) VkExtent2D minCodedExtent;
(struct VkExtent2D) VkExtent2D maxCodedExtent;
uint32_t maxDpbSlots;
uint32_t maxActiveReferencePictures;
(struct VkExtensionProperties) VkExtensionProperties stdHeaderVersion;
};
Layout
struct VkVideoCodingControlInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoCodingControlFlagsKHR flags;
};
Layout
struct VkVideoDecodeAV1CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) StdVideoAV1Level maxLevel;
};
Layout
struct VkVideoDecodeAV1DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeAV1ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoDecodeAV1InlineSessionParametersInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoAV1SequenceHeader* pStdSequenceHeader;
};
Layout
struct VkVideoDecodeAV1PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeAV1PictureInfo* pStdPictureInfo;
int32_t referenceNameSlotIndices[7];
uint32_t frameHeaderOffset;
uint32_t tileCount;
const uint32_t* pTileOffsets;
const uint32_t* pTileSizes;
};
Layout
struct VkVideoDecodeAV1ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoAV1Profile stdProfile;
(uint32_t) VkBool32 filmGrainSupport;
};
Layout
struct VkVideoDecodeAV1SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoAV1SequenceHeader* pStdSequenceHeader;
};
Layout
struct VkVideoDecodeCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoDecodeCapabilityFlagsKHR flags;
};
Layout
struct VkVideoDecodeH264CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) StdVideoH264LevelIdc maxLevelIdc;
(struct VkOffset2D) VkOffset2D fieldOffsetGranularity;
};
Layout
struct VkVideoDecodeH264DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeH264ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoDecodeH264InlineSessionParametersInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoH264SequenceParameterSet* pStdSPS;
const StdVideoH264PictureParameterSet* pStdPPS;
};
Layout
struct VkVideoDecodeH264PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeH264PictureInfo* pStdPictureInfo;
uint32_t sliceCount;
const uint32_t* pSliceOffsets;
};
Layout
struct VkVideoDecodeH264ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoH264ProfileIdc stdProfileIdc;
(int) VkVideoDecodeH264PictureLayoutFlagBitsKHR pictureLayout;
};
Layout
struct VkVideoDecodeH264SessionParametersAddInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t stdSPSCount;
const StdVideoH264SequenceParameterSet* pStdSPSs;
uint32_t stdPPSCount;
const StdVideoH264PictureParameterSet* pStdPPSs;
};
Layout
struct VkVideoDecodeH264SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxStdSPSCount;
uint32_t maxStdPPSCount;
const VkVideoDecodeH264SessionParametersAddInfoKHR* pParametersAddInfo;
};
Layout
struct VkVideoDecodeH265CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) StdVideoH265LevelIdc maxLevelIdc;
};
Layout
struct VkVideoDecodeH265DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeH265ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoDecodeH265InlineSessionParametersInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoH265VideoParameterSet* pStdVPS;
const StdVideoH265SequenceParameterSet* pStdSPS;
const StdVideoH265PictureParameterSet* pStdPPS;
};
Layout
struct VkVideoDecodeH265PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeH265PictureInfo* pStdPictureInfo;
uint32_t sliceSegmentCount;
const uint32_t* pSliceSegmentOffsets;
};
Layout
struct VkVideoDecodeH265ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoH265ProfileIdc stdProfileIdc;
};
Layout
struct VkVideoDecodeH265SessionParametersAddInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t stdVPSCount;
const StdVideoH265VideoParameterSet* pStdVPSs;
uint32_t stdSPSCount;
const StdVideoH265SequenceParameterSet* pStdSPSs;
uint32_t stdPPSCount;
const StdVideoH265PictureParameterSet* pStdPPSs;
};
Layout
struct VkVideoDecodeH265SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxStdVPSCount;
uint32_t maxStdSPSCount;
uint32_t maxStdPPSCount;
const VkVideoDecodeH265SessionParametersAddInfoKHR* pParametersAddInfo;
};
Layout
struct VkVideoDecodeInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoDecodeFlagsKHR flags;
(uint64_t) VkBuffer srcBuffer;
(uint64_t) VkDeviceSize srcBufferOffset;
(uint64_t) VkDeviceSize srcBufferRange;
(struct VkVideoPictureResourceInfoKHR) VkVideoPictureResourceInfoKHR dstPictureResource;
const VkVideoReferenceSlotInfoKHR* pSetupReferenceSlot;
uint32_t referenceSlotCount;
const VkVideoReferenceSlotInfoKHR* pReferenceSlots;
};
Layout
struct VkVideoDecodeUsageInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoDecodeUsageFlagsKHR videoUsageHints;
};
Layout
struct VkVideoDecodeVP9CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) StdVideoVP9Level maxLevel;
};
Layout
struct VkVideoDecodeVP9PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoDecodeVP9PictureInfo* pStdPictureInfo;
int32_t referenceNameSlotIndices[3];
uint32_t uncompressedHeaderOffset;
uint32_t compressedHeaderOffset;
uint32_t tilesOffset;
};
Layout
struct VkVideoDecodeVP9ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoVP9Profile stdProfile;
};
Layout
struct VkVideoEncodeAV1CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeAV1CapabilityFlagsKHR flags;
(int) StdVideoAV1Level maxLevel;
(struct VkExtent2D) VkExtent2D codedPictureAlignment;
(struct VkExtent2D) VkExtent2D maxTiles;
(struct VkExtent2D) VkExtent2D minTileSize;
(struct VkExtent2D) VkExtent2D maxTileSize;
((uint32_t) VkFlags) VkVideoEncodeAV1SuperblockSizeFlagsKHR superblockSizes;
uint32_t maxSingleReferenceCount;
uint32_t singleReferenceNameMask;
uint32_t maxUnidirectionalCompoundReferenceCount;
uint32_t maxUnidirectionalCompoundGroup1ReferenceCount;
uint32_t unidirectionalCompoundReferenceNameMask;
uint32_t maxBidirectionalCompoundReferenceCount;
uint32_t maxBidirectionalCompoundGroup1ReferenceCount;
uint32_t maxBidirectionalCompoundGroup2ReferenceCount;
uint32_t bidirectionalCompoundReferenceNameMask;
uint32_t maxTemporalLayerCount;
uint32_t maxSpatialLayerCount;
uint32_t maxOperatingPoints;
uint32_t minQIndex;
uint32_t maxQIndex;
(uint32_t) VkBool32 prefersGopRemainingFrames;
(uint32_t) VkBool32 requiresGopRemainingFrames;
((uint32_t) VkFlags) VkVideoEncodeAV1StdFlagsKHR stdSyntaxFlags;
};
Layout
struct VkVideoEncodeAV1DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoEncodeAV1ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoEncodeAV1FrameSizeKHR {
uint32_t intraFrameSize;
uint32_t predictiveFrameSize;
uint32_t bipredictiveFrameSize;
};
Layout
struct VkVideoEncodeAV1GopRemainingFrameInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useGopRemainingFrames;
uint32_t gopRemainingIntra;
uint32_t gopRemainingPredictive;
uint32_t gopRemainingBipredictive;
};
Layout
struct VkVideoEncodeAV1PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkVideoEncodeAV1PredictionModeKHR predictionMode;
(int) VkVideoEncodeAV1RateControlGroupKHR rateControlGroup;
uint32_t constantQIndex;
const StdVideoEncodeAV1PictureInfo* pStdPictureInfo;
int32_t referenceNameSlotIndices[7];
(uint32_t) VkBool32 primaryReferenceCdfOnly;
(uint32_t) VkBool32 generateObuExtensionHeader;
};
Layout
struct VkVideoEncodeAV1ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoAV1Profile stdProfile;
};
Layout
struct VkVideoEncodeAV1QIndexKHR {
uint32_t intraQIndex;
uint32_t predictiveQIndex;
uint32_t bipredictiveQIndex;
};
Layout
struct VkVideoEncodeAV1QualityLevelPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeAV1RateControlFlagsKHR preferredRateControlFlags;
uint32_t preferredGopFrameCount;
uint32_t preferredKeyFramePeriod;
uint32_t preferredConsecutiveBipredictiveFrameCount;
uint32_t preferredTemporalLayerCount;
(struct VkVideoEncodeAV1QIndexKHR) VkVideoEncodeAV1QIndexKHR preferredConstantQIndex;
uint32_t preferredMaxSingleReferenceCount;
uint32_t preferredSingleReferenceNameMask;
uint32_t preferredMaxUnidirectionalCompoundReferenceCount;
uint32_t preferredMaxUnidirectionalCompoundGroup1ReferenceCount;
uint32_t preferredUnidirectionalCompoundReferenceNameMask;
uint32_t preferredMaxBidirectionalCompoundReferenceCount;
uint32_t preferredMaxBidirectionalCompoundGroup1ReferenceCount;
uint32_t preferredMaxBidirectionalCompoundGroup2ReferenceCount;
uint32_t preferredBidirectionalCompoundReferenceNameMask;
};
Layout
struct VkVideoEncodeAV1QuantizationMapCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
int32_t minQIndexDelta;
int32_t maxQIndexDelta;
};
Layout
struct VkVideoEncodeAV1RateControlInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeAV1RateControlFlagsKHR flags;
uint32_t gopFrameCount;
uint32_t keyFramePeriod;
uint32_t consecutiveBipredictiveFrameCount;
uint32_t temporalLayerCount;
};
Layout
struct VkVideoEncodeAV1RateControlLayerInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMinQIndex;
(struct VkVideoEncodeAV1QIndexKHR) VkVideoEncodeAV1QIndexKHR minQIndex;
(uint32_t) VkBool32 useMaxQIndex;
(struct VkVideoEncodeAV1QIndexKHR) VkVideoEncodeAV1QIndexKHR maxQIndex;
(uint32_t) VkBool32 useMaxFrameSize;
(struct VkVideoEncodeAV1FrameSizeKHR) VkVideoEncodeAV1FrameSizeKHR maxFrameSize;
};
Layout
struct VkVideoEncodeAV1SessionCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMaxLevel;
(int) StdVideoAV1Level maxLevel;
};
Layout
struct VkVideoEncodeAV1SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoAV1SequenceHeader* pStdSequenceHeader;
const StdVideoEncodeAV1DecoderModelInfo* pStdDecoderModelInfo;
uint32_t stdOperatingPointCount;
const StdVideoEncodeAV1OperatingPointInfo* pStdOperatingPoints;
};
Layout
struct VkVideoEncodeCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeCapabilityFlagsKHR flags;
((uint32_t) VkFlags) VkVideoEncodeRateControlModeFlagsKHR rateControlModes;
uint32_t maxRateControlLayers;
uint64_t maxBitrate;
uint32_t maxQualityLevels;
(struct VkExtent2D) VkExtent2D encodeInputPictureGranularity;
((uint32_t) VkFlags) VkVideoEncodeFeedbackFlagsKHR supportedEncodeFeedbackFlags;
};
Layout
struct VkVideoEncodeH264CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH264CapabilityFlagsKHR flags;
(int) StdVideoH264LevelIdc maxLevelIdc;
uint32_t maxSliceCount;
uint32_t maxPPictureL0ReferenceCount;
uint32_t maxBPictureL0ReferenceCount;
uint32_t maxL1ReferenceCount;
uint32_t maxTemporalLayerCount;
(uint32_t) VkBool32 expectDyadicTemporalLayerPattern;
int32_t minQp;
int32_t maxQp;
(uint32_t) VkBool32 prefersGopRemainingFrames;
(uint32_t) VkBool32 requiresGopRemainingFrames;
((uint32_t) VkFlags) VkVideoEncodeH264StdFlagsKHR stdSyntaxFlags;
};
Layout
struct VkVideoEncodeH264DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoEncodeH264ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoEncodeH264FrameSizeKHR {
uint32_t frameISize;
uint32_t framePSize;
uint32_t frameBSize;
};
Layout
struct VkVideoEncodeH264GopRemainingFrameInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useGopRemainingFrames;
uint32_t gopRemainingI;
uint32_t gopRemainingP;
uint32_t gopRemainingB;
};
Layout
struct VkVideoEncodeH264NaluSliceInfoKHR {
(int) VkStructureType sType;
const void* pNext;
int32_t constantQp;
const StdVideoEncodeH264SliceHeader* pStdSliceHeader;
};
Layout
struct VkVideoEncodeH264PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t naluSliceEntryCount;
const VkVideoEncodeH264NaluSliceInfoKHR* pNaluSliceEntries;
const StdVideoEncodeH264PictureInfo* pStdPictureInfo;
(uint32_t) VkBool32 generatePrefixNalu;
};
Layout
struct VkVideoEncodeH264ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoH264ProfileIdc stdProfileIdc;
};
Layout
struct VkVideoEncodeH264QpKHR {
int32_t qpI;
int32_t qpP;
int32_t qpB;
};
Layout
struct VkVideoEncodeH264QualityLevelPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH264RateControlFlagsKHR preferredRateControlFlags;
uint32_t preferredGopFrameCount;
uint32_t preferredIdrPeriod;
uint32_t preferredConsecutiveBFrameCount;
uint32_t preferredTemporalLayerCount;
(struct VkVideoEncodeH264QpKHR) VkVideoEncodeH264QpKHR preferredConstantQp;
uint32_t preferredMaxL0ReferenceCount;
uint32_t preferredMaxL1ReferenceCount;
(uint32_t) VkBool32 preferredStdEntropyCodingModeFlag;
};
Layout
struct VkVideoEncodeH264QuantizationMapCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
int32_t minQpDelta;
int32_t maxQpDelta;
};
Layout
struct VkVideoEncodeH264RateControlInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH264RateControlFlagsKHR flags;
uint32_t gopFrameCount;
uint32_t idrPeriod;
uint32_t consecutiveBFrameCount;
uint32_t temporalLayerCount;
};
Layout
struct VkVideoEncodeH264RateControlLayerInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMinQp;
(struct VkVideoEncodeH264QpKHR) VkVideoEncodeH264QpKHR minQp;
(uint32_t) VkBool32 useMaxQp;
(struct VkVideoEncodeH264QpKHR) VkVideoEncodeH264QpKHR maxQp;
(uint32_t) VkBool32 useMaxFrameSize;
(struct VkVideoEncodeH264FrameSizeKHR) VkVideoEncodeH264FrameSizeKHR maxFrameSize;
};
Layout
struct VkVideoEncodeH264SessionCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMaxLevelIdc;
(int) StdVideoH264LevelIdc maxLevelIdc;
};
Layout
struct VkVideoEncodeH264SessionParametersAddInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t stdSPSCount;
const StdVideoH264SequenceParameterSet* pStdSPSs;
uint32_t stdPPSCount;
const StdVideoH264PictureParameterSet* pStdPPSs;
};
Layout
struct VkVideoEncodeH264SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxStdSPSCount;
uint32_t maxStdPPSCount;
const VkVideoEncodeH264SessionParametersAddInfoKHR* pParametersAddInfo;
};
Layout
struct VkVideoEncodeH264SessionParametersFeedbackInfoKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hasStdSPSOverrides;
(uint32_t) VkBool32 hasStdPPSOverrides;
};
Layout
struct VkVideoEncodeH264SessionParametersGetInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 writeStdSPS;
(uint32_t) VkBool32 writeStdPPS;
uint32_t stdSPSId;
uint32_t stdPPSId;
};
Layout
struct VkVideoEncodeH265CapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH265CapabilityFlagsKHR flags;
(int) StdVideoH265LevelIdc maxLevelIdc;
uint32_t maxSliceSegmentCount;
(struct VkExtent2D) VkExtent2D maxTiles;
((uint32_t) VkFlags) VkVideoEncodeH265CtbSizeFlagsKHR ctbSizes;
((uint32_t) VkFlags) VkVideoEncodeH265TransformBlockSizeFlagsKHR transformBlockSizes;
uint32_t maxPPictureL0ReferenceCount;
uint32_t maxBPictureL0ReferenceCount;
uint32_t maxL1ReferenceCount;
uint32_t maxSubLayerCount;
(uint32_t) VkBool32 expectDyadicTemporalSubLayerPattern;
int32_t minQp;
int32_t maxQp;
(uint32_t) VkBool32 prefersGopRemainingFrames;
(uint32_t) VkBool32 requiresGopRemainingFrames;
((uint32_t) VkFlags) VkVideoEncodeH265StdFlagsKHR stdSyntaxFlags;
};
Layout
struct VkVideoEncodeH265DpbSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
const StdVideoEncodeH265ReferenceInfo* pStdReferenceInfo;
};
Layout
struct VkVideoEncodeH265FrameSizeKHR {
uint32_t frameISize;
uint32_t framePSize;
uint32_t frameBSize;
};
Layout
struct VkVideoEncodeH265GopRemainingFrameInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useGopRemainingFrames;
uint32_t gopRemainingI;
uint32_t gopRemainingP;
uint32_t gopRemainingB;
};
Layout
struct VkVideoEncodeH265NaluSliceSegmentInfoKHR {
(int) VkStructureType sType;
const void* pNext;
int32_t constantQp;
const StdVideoEncodeH265SliceSegmentHeader* pStdSliceSegmentHeader;
};
Layout
struct VkVideoEncodeH265PictureInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t naluSliceSegmentEntryCount;
const VkVideoEncodeH265NaluSliceSegmentInfoKHR* pNaluSliceSegmentEntries;
const StdVideoEncodeH265PictureInfo* pStdPictureInfo;
};
Layout
struct VkVideoEncodeH265ProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) StdVideoH265ProfileIdc stdProfileIdc;
};
Layout
struct VkVideoEncodeH265QpKHR {
int32_t qpI;
int32_t qpP;
int32_t qpB;
};
Layout
struct VkVideoEncodeH265QualityLevelPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH265RateControlFlagsKHR preferredRateControlFlags;
uint32_t preferredGopFrameCount;
uint32_t preferredIdrPeriod;
uint32_t preferredConsecutiveBFrameCount;
uint32_t preferredSubLayerCount;
(struct VkVideoEncodeH265QpKHR) VkVideoEncodeH265QpKHR preferredConstantQp;
uint32_t preferredMaxL0ReferenceCount;
uint32_t preferredMaxL1ReferenceCount;
};
Layout
struct VkVideoEncodeH265QuantizationMapCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
int32_t minQpDelta;
int32_t maxQpDelta;
};
Layout
struct VkVideoEncodeH265RateControlInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH265RateControlFlagsKHR flags;
uint32_t gopFrameCount;
uint32_t idrPeriod;
uint32_t consecutiveBFrameCount;
uint32_t subLayerCount;
};
Layout
struct VkVideoEncodeH265RateControlLayerInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMinQp;
(struct VkVideoEncodeH265QpKHR) VkVideoEncodeH265QpKHR minQp;
(uint32_t) VkBool32 useMaxQp;
(struct VkVideoEncodeH265QpKHR) VkVideoEncodeH265QpKHR maxQp;
(uint32_t) VkBool32 useMaxFrameSize;
(struct VkVideoEncodeH265FrameSizeKHR) VkVideoEncodeH265FrameSizeKHR maxFrameSize;
};
Layout
struct VkVideoEncodeH265SessionCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 useMaxLevelIdc;
(int) StdVideoH265LevelIdc maxLevelIdc;
};
Layout
struct VkVideoEncodeH265SessionParametersAddInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t stdVPSCount;
const StdVideoH265VideoParameterSet* pStdVPSs;
uint32_t stdSPSCount;
const StdVideoH265SequenceParameterSet* pStdSPSs;
uint32_t stdPPSCount;
const StdVideoH265PictureParameterSet* pStdPPSs;
};
Layout
struct VkVideoEncodeH265SessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t maxStdVPSCount;
uint32_t maxStdSPSCount;
uint32_t maxStdPPSCount;
const VkVideoEncodeH265SessionParametersAddInfoKHR* pParametersAddInfo;
};
Layout
struct VkVideoEncodeH265SessionParametersFeedbackInfoKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hasStdVPSOverrides;
(uint32_t) VkBool32 hasStdSPSOverrides;
(uint32_t) VkBool32 hasStdPPSOverrides;
};
Layout
struct VkVideoEncodeH265SessionParametersGetInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint32_t) VkBool32 writeStdVPS;
(uint32_t) VkBool32 writeStdSPS;
(uint32_t) VkBool32 writeStdPPS;
uint32_t stdVPSId;
uint32_t stdSPSId;
uint32_t stdPPSId;
};
Layout
struct VkVideoEncodeInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeFlagsKHR flags;
(uint64_t) VkBuffer dstBuffer;
(uint64_t) VkDeviceSize dstBufferOffset;
(uint64_t) VkDeviceSize dstBufferRange;
(struct VkVideoPictureResourceInfoKHR) VkVideoPictureResourceInfoKHR srcPictureResource;
const VkVideoReferenceSlotInfoKHR* pSetupReferenceSlot;
uint32_t referenceSlotCount;
const VkVideoReferenceSlotInfoKHR* pReferenceSlots;
uint32_t precedingExternallyEncodedBytes;
};
Layout
struct VkVideoEncodeIntraRefreshCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeIntraRefreshModeFlagsKHR intraRefreshModes;
uint32_t maxIntraRefreshCycleDuration;
uint32_t maxIntraRefreshActiveReferencePictures;
(uint32_t) VkBool32 partitionIndependentIntraRefreshRegions;
(uint32_t) VkBool32 nonRectangularIntraRefreshRegions;
};
Layout
struct VkVideoEncodeIntraRefreshInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t intraRefreshCycleDuration;
uint32_t intraRefreshIndex;
};
Layout
struct VkVideoEncodeQualityLevelInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t qualityLevel;
};
Layout
struct VkVideoEncodeQualityLevelPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkVideoEncodeRateControlModeFlagBitsKHR preferredRateControlMode;
uint32_t preferredRateControlLayerCount;
};
Layout
struct VkVideoEncodeQuantizationMapCapabilitiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D maxQuantizationMapExtent;
};
Layout
struct VkVideoEncodeQuantizationMapInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkImageView quantizationMap;
(struct VkExtent2D) VkExtent2D quantizationMapExtent;
};
Layout
struct VkVideoEncodeQuantizationMapSessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkExtent2D) VkExtent2D quantizationMapTexelSize;
};
Layout
struct VkVideoEncodeRateControlInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeRateControlFlagsKHR flags;
(int) VkVideoEncodeRateControlModeFlagBitsKHR rateControlMode;
uint32_t layerCount;
const VkVideoEncodeRateControlLayerInfoKHR* pLayers;
uint32_t virtualBufferSizeInMs;
uint32_t initialVirtualBufferSizeInMs;
};
Layout
struct VkVideoEncodeRateControlLayerInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint64_t averageBitrate;
uint64_t maxBitrate;
uint32_t frameRateNumerator;
uint32_t frameRateDenominator;
};
Layout
struct VkVideoEncodeSessionIntraRefreshCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkVideoEncodeIntraRefreshModeFlagBitsKHR intraRefreshMode;
};
Layout
struct VkVideoEncodeSessionParametersFeedbackInfoKHR {
(int) VkStructureType sType;
void* pNext;
(uint32_t) VkBool32 hasOverrides;
};
Layout
struct VkVideoEncodeSessionParametersGetInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkVideoSessionParametersKHR videoSessionParameters;
};
Layout
struct VkVideoEncodeUsageInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEncodeUsageFlagsKHR videoUsageHints;
((uint32_t) VkFlags) VkVideoEncodeContentFlagsKHR videoContentHints;
(int) VkVideoEncodeTuningModeKHR tuningMode;
};
Layout
struct VkVideoEndCodingInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoEndCodingFlagsKHR flags;
};
Layout
struct VkVideoFormatAV1QuantizationMapPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeAV1SuperblockSizeFlagsKHR compatibleSuperblockSizes;
};
Layout
struct VkVideoFormatH265QuantizationMapPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
((uint32_t) VkFlags) VkVideoEncodeH265CtbSizeFlagsKHR compatibleCtbSizes;
};
Layout
struct VkVideoFormatPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(int) VkFormat format;
(struct VkComponentMapping) VkComponentMapping componentMapping;
((uint32_t) VkFlags) VkImageCreateFlags imageCreateFlags;
(int) VkImageType imageType;
(int) VkImageTiling imageTiling;
((uint32_t) VkFlags) VkImageUsageFlags imageUsageFlags;
};
Layout
struct VkVideoFormatQuantizationMapPropertiesKHR {
(int) VkStructureType sType;
void* pNext;
(struct VkExtent2D) VkExtent2D quantizationMapTexelSize;
};
Layout
struct VkVideoInlineQueryInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkQueryPool queryPool;
uint32_t firstQuery;
uint32_t queryCount;
};
Layout
struct VkVideoPictureResourceInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(struct VkOffset2D) VkOffset2D codedOffset;
(struct VkExtent2D) VkExtent2D codedExtent;
uint32_t baseArrayLayer;
(uint64_t) VkImageView imageViewBinding;
};
Layout
struct VkVideoProfileInfoKHR {
(int) VkStructureType sType;
const void* pNext;
(int) VkVideoCodecOperationFlagBitsKHR videoCodecOperation;
((uint32_t) VkFlags) VkVideoChromaSubsamplingFlagsKHR chromaSubsampling;
((uint32_t) VkFlags) VkVideoComponentBitDepthFlagsKHR lumaBitDepth;
((uint32_t) VkFlags) VkVideoComponentBitDepthFlagsKHR chromaBitDepth;
};
Layout
struct VkVideoProfileListInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t profileCount;
const VkVideoProfileInfoKHR* pProfiles;
};
Layout
struct VkVideoReferenceIntraRefreshInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t dirtyIntraRefreshRegions;
};
Layout
struct VkVideoReferenceSlotInfoKHR {
(int) VkStructureType sType;
const void* pNext;
int32_t slotIndex;
const VkVideoPictureResourceInfoKHR* pPictureResource;
};
Layout
struct VkVideoSessionCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t queueFamilyIndex;
((uint32_t) VkFlags) VkVideoSessionCreateFlagsKHR flags;
const VkVideoProfileInfoKHR* pVideoProfile;
(int) VkFormat pictureFormat;
(struct VkExtent2D) VkExtent2D maxCodedExtent;
(int) VkFormat referencePictureFormat;
uint32_t maxDpbSlots;
uint32_t maxActiveReferencePictures;
const VkExtensionProperties* pStdHeaderVersion;
};
Layout
struct VkVideoSessionMemoryRequirementsKHR {
(int) VkStructureType sType;
void* pNext;
uint32_t memoryBindIndex;
(struct VkMemoryRequirements) VkMemoryRequirements memoryRequirements;
};
Layout
struct VkVideoSessionParametersCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkVideoSessionParametersCreateFlagsKHR flags;
(uint64_t) VkVideoSessionParametersKHR videoSessionParametersTemplate;
(uint64_t) VkVideoSessionKHR videoSession;
};
Layout
struct VkVideoSessionParametersUpdateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t updateSequenceCount;
};
Layout
struct VkViewport {
float x;
float y;
float width;
float height;
float minDepth;
float maxDepth;
};
Layout
struct VkViewportSwizzleNV {
(int) VkViewportCoordinateSwizzleNV x;
(int) VkViewportCoordinateSwizzleNV y;
(int) VkViewportCoordinateSwizzleNV z;
(int) VkViewportCoordinateSwizzleNV w;
};
Layout
struct VkViewportWScalingNV {
float xcoeff;
float ycoeff;
};
Layout
struct VkViSurfaceCreateInfoNN {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkViSurfaceCreateFlagsNN flags;
void* window;
};
typedef void (*VkVoidFunction)();
Layout
struct VkWaylandSurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkWaylandSurfaceCreateFlagsKHR flags;
struct wl_display * display;
struct wl_surface * surface;
};
Layout
struct VkWin32KeyedMutexAcquireReleaseInfoKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t acquireCount;
const VkDeviceMemory* pAcquireSyncs;
const uint64_t* pAcquireKeys;
const uint32_t* pAcquireTimeouts;
uint32_t releaseCount;
const VkDeviceMemory* pReleaseSyncs;
const uint64_t* pReleaseKeys;
};
Layout
struct VkWin32KeyedMutexAcquireReleaseInfoNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t acquireCount;
const VkDeviceMemory* pAcquireSyncs;
const uint64_t* pAcquireKeys;
const uint32_t* pAcquireTimeoutMilliseconds;
uint32_t releaseCount;
const VkDeviceMemory* pReleaseSyncs;
const uint64_t* pReleaseKeys;
};
Layout
struct VkWin32SurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkWin32SurfaceCreateFlagsKHR flags;
(void*) HINSTANCE hinstance;
(void*) HWND hwnd;
};
Layout
struct VkWriteDescriptorSet {
(int) VkStructureType sType;
const void* pNext;
(uint64_t) VkDescriptorSet dstSet;
uint32_t dstBinding;
uint32_t dstArrayElement;
uint32_t descriptorCount;
(int) VkDescriptorType descriptorType;
const VkDescriptorImageInfo* pImageInfo;
const VkDescriptorBufferInfo* pBufferInfo;
const VkBufferView* pTexelBufferView;
};
Layout
struct VkWriteDescriptorSetAccelerationStructureKHR {
(int) VkStructureType sType;
const void* pNext;
uint32_t accelerationStructureCount;
const VkAccelerationStructureKHR* pAccelerationStructures;
};
Layout
struct VkWriteDescriptorSetAccelerationStructureNV {
(int) VkStructureType sType;
const void* pNext;
uint32_t accelerationStructureCount;
const VkAccelerationStructureNV* pAccelerationStructures;
};
Layout
struct VkWriteDescriptorSetInlineUniformBlock {
(int) VkStructureType sType;
const void* pNext;
uint32_t dataSize;
const void* pData;
};
Layout
struct VkWriteDescriptorSetInlineUniformBlockEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t dataSize;
const void* pData;
};
Layout
struct VkWriteDescriptorSetPartitionedAccelerationStructureNV {
(int) VkStructureType sType;
void* pNext;
uint32_t accelerationStructureCount;
const VkDeviceAddress* pAccelerationStructures;
};
Layout
struct VkWriteDescriptorSetTensorARM {
(int) VkStructureType sType;
const void* pNext;
uint32_t tensorViewCount;
const VkTensorViewARM* pTensorViews;
};
Layout
struct VkWriteIndirectExecutionSetPipelineEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t index;
(uint64_t) VkPipeline pipeline;
};
Layout
struct VkWriteIndirectExecutionSetShaderEXT {
(int) VkStructureType sType;
const void* pNext;
uint32_t index;
(uint64_t) VkShaderEXT shader;
};
Layout
struct VkXcbSurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkXcbSurfaceCreateFlagsKHR flags;
xcb_connection_t* connection;
(uint32_t) xcb_window_t window;
};
Layout
struct VkXlibSurfaceCreateInfoKHR {
(int) VkStructureType sType;
const void* pNext;
((uint32_t) VkFlags) VkXlibSurfaceCreateFlagsKHR flags;
Display* dpy;
((unsigned long) XID) Window window;
};
Layout
struct VkXYColorEXT {
float x;
float y;
};
typedef void (*VmaAllocateDeviceMemoryFunction)((struct VmaAllocator *) VmaAllocator allocator, uint32_t memoryType, (uint64_t) VkDeviceMemory memory, (uint64_t) VkDeviceSize size, void* pUserData);
Layout
struct VmaAllocationCreateInfo {
((uint32_t) VkFlags) VmaAllocationCreateFlags flags;
(int) VmaMemoryUsage usage;
((uint32_t) VkFlags) VkMemoryPropertyFlags requiredFlags;
((uint32_t) VkFlags) VkMemoryPropertyFlags preferredFlags;
uint32_t memoryTypeBits;
(struct VmaPool *) VmaPool pool;
void* pUserData;
float priority;
};
Layout
struct VmaAllocationInfo {
uint32_t memoryType;
(uint64_t) VkDeviceMemory deviceMemory;
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
void* pMappedData;
void* pUserData;
const char* pName;
};
Layout
struct VmaAllocationInfo2 {
(struct VmaAllocationInfo) VmaAllocationInfo allocationInfo;
(uint64_t) VkDeviceSize blockSize;
(uint32_t) VkBool32 dedicatedMemory;
};
Layout
struct VmaAllocatorCreateInfo {
((uint32_t) VkFlags) VmaAllocatorCreateFlags flags;
(struct VkPhysicalDevice *) VkPhysicalDevice physicalDevice;
(struct VkDevice *) VkDevice device;
(uint64_t) VkDeviceSize preferredLargeHeapBlockSize;
const VkAllocationCallbacks* pAllocationCallbacks;
const VmaDeviceMemoryCallbacks* pDeviceMemoryCallbacks;
const VkDeviceSize* pHeapSizeLimit;
const VmaVulkanFunctions* pVulkanFunctions;
(struct VkInstance *) VkInstance instance;
uint32_t vulkanApiVersion;
const VkExternalMemoryHandleTypeFlagsKHR* pTypeExternalMemoryHandleTypes;
};
Layout
struct VmaAllocatorInfo {
(struct VkInstance *) VkInstance instance;
(struct VkPhysicalDevice *) VkPhysicalDevice physicalDevice;
(struct VkDevice *) VkDevice device;
};
Layout
struct VmaBudget {
(struct VmaStatistics) VmaStatistics statistics;
(uint64_t) VkDeviceSize usage;
(uint64_t) VkDeviceSize budget;
};
typedef (uint32_t) VkBool32 (*VmaCheckDefragmentationBreakFunction)(void* pUserData);
Layout
struct VmaDefragmentationInfo {
((uint32_t) VkFlags) VmaDefragmentationFlags flags;
(struct VmaPool *) VmaPool pool;
(uint64_t) VkDeviceSize maxBytesPerPass;
uint32_t maxAllocationsPerPass;
((uint32_t) VkBool32 (*VmaCheckDefragmentationBreakFunction)(void* pUserData)) PFN_vmaCheckDefragmentationBreakFunction pfnBreakCallback;
void* pBreakCallbackUserData;
};
Layout
struct VmaDefragmentationMove {
(int) VmaDefragmentationMoveOperation operation;
(struct VmaAllocation *) VmaAllocation srcAllocation;
(struct VmaAllocation *) VmaAllocation dstTmpAllocation;
};
Layout
struct VmaDefragmentationPassMoveInfo {
uint32_t moveCount;
VmaDefragmentationMove* pMoves;
};
Layout
struct VmaDefragmentationStats {
(uint64_t) VkDeviceSize bytesMoved;
(uint64_t) VkDeviceSize bytesFreed;
uint32_t allocationsMoved;
uint32_t deviceMemoryBlocksFreed;
};
Layout
struct VmaDetailedStatistics {
(struct VmaStatistics) VmaStatistics statistics;
uint32_t unusedRangeCount;
(uint64_t) VkDeviceSize allocationSizeMin;
(uint64_t) VkDeviceSize allocationSizeMax;
(uint64_t) VkDeviceSize unusedRangeSizeMin;
(uint64_t) VkDeviceSize unusedRangeSizeMax;
};
Layout
struct VmaDeviceMemoryCallbacks {
(void (*VmaAllocateDeviceMemoryFunction)((struct VmaAllocator *) VmaAllocator allocator, uint32_t memoryType, (uint64_t) VkDeviceMemory memory, (uint64_t) VkDeviceSize size, void* pUserData)) PFN_vmaAllocateDeviceMemoryFunction pfnAllocate;
(void (*VmaFreeDeviceMemoryFunction)((struct VmaAllocator *) VmaAllocator allocator, uint32_t memoryType, (uint64_t) VkDeviceMemory memory, (uint64_t) VkDeviceSize size, void* pUserData)) PFN_vmaFreeDeviceMemoryFunction pfnFree;
void* pUserData;
};
typedef void (*VmaFreeDeviceMemoryFunction)((struct VmaAllocator *) VmaAllocator allocator, uint32_t memoryType, (uint64_t) VkDeviceMemory memory, (uint64_t) VkDeviceSize size, void* pUserData);
Layout
struct VmaPoolCreateInfo {
uint32_t memoryTypeIndex;
((uint32_t) VkFlags) VmaPoolCreateFlags flags;
(uint64_t) VkDeviceSize blockSize;
size_t minBlockCount;
size_t maxBlockCount;
float priority;
(uint64_t) VkDeviceSize minAllocationAlignment;
void* pMemoryAllocateNext;
};
Layout
struct VmaStatistics {
uint32_t blockCount;
uint32_t allocationCount;
(uint64_t) VkDeviceSize blockBytes;
(uint64_t) VkDeviceSize allocationBytes;
};
Layout
struct VmaTotalStatistics {
(struct VmaDetailedStatistics) VmaDetailedStatistics memoryType[VK_MAX_MEMORY_TYPES];
(struct VmaDetailedStatistics) VmaDetailedStatistics memoryHeap[VK_MAX_MEMORY_HEAPS];
(struct VmaDetailedStatistics) VmaDetailedStatistics total;
};
Useful utilities when creating memory allocator.
Layout
struct VmaVirtualAllocationCreateInfo {
(uint64_t) VkDeviceSize size;
(uint64_t) VkDeviceSize alignment;
((uint32_t) VkFlags) VmaVirtualAllocationCreateFlags flags;
void* pUserData;
};
Layout
struct VmaVirtualAllocationInfo {
(uint64_t) VkDeviceSize offset;
(uint64_t) VkDeviceSize size;
void* pUserData;
};
Layout
struct VmaVirtualBlockCreateInfo {
(uint64_t) VkDeviceSize size;
((uint32_t) VkFlags) VmaVirtualBlockCreateFlags flags;
const VkAllocationCallbacks* pAllocationCallbacks;
};
Layout
struct VmaVulkanFunctions {
(void*) PFN_vkGetInstanceProcAddr vkGetInstanceProcAddr;
(void*) PFN_vkGetDeviceProcAddr vkGetDeviceProcAddr;
(void*) PFN_vkGetPhysicalDeviceProperties vkGetPhysicalDeviceProperties;
(void*) PFN_vkGetPhysicalDeviceMemoryProperties vkGetPhysicalDeviceMemoryProperties;
(void*) PFN_vkAllocateMemory vkAllocateMemory;
(void*) PFN_vkFreeMemory vkFreeMemory;
(void*) PFN_vkMapMemory vkMapMemory;
(void*) PFN_vkUnmapMemory vkUnmapMemory;
(void*) PFN_vkFlushMappedMemoryRanges vkFlushMappedMemoryRanges;
(void*) PFN_vkInvalidateMappedMemoryRanges vkInvalidateMappedMemoryRanges;
(void*) PFN_vkBindBufferMemory vkBindBufferMemory;
(void*) PFN_vkBindImageMemory vkBindImageMemory;
(void*) PFN_vkGetBufferMemoryRequirements vkGetBufferMemoryRequirements;
(void*) PFN_vkGetImageMemoryRequirements vkGetImageMemoryRequirements;
(void*) PFN_vkCreateBuffer vkCreateBuffer;
(void*) PFN_vkDestroyBuffer vkDestroyBuffer;
(void*) PFN_vkCreateImage vkCreateImage;
(void*) PFN_vkDestroyImage vkDestroyImage;
(void*) PFN_vkCmdCopyBuffer vkCmdCopyBuffer;
(void*) PFN_vkGetBufferMemoryRequirements2KHR vkGetBufferMemoryRequirements2KHR;
(void*) PFN_vkGetImageMemoryRequirements2KHR vkGetImageMemoryRequirements2KHR;
(void*) PFN_vkBindBufferMemory2KHR vkBindBufferMemory2KHR;
(void*) PFN_vkBindImageMemory2KHR vkBindImageMemory2KHR;
(void*) PFN_vkGetPhysicalDeviceMemoryProperties2KHR vkGetPhysicalDeviceMemoryProperties2KHR;
(void*) PFN_vkGetDeviceBufferMemoryRequirementsKHR vkGetDeviceBufferMemoryRequirements;
(void*) PFN_vkGetDeviceImageMemoryRequirementsKHR vkGetDeviceImageMemoryRequirements;
(void*) PFN_vkGetMemoryWin32HandleKHR vkGetMemoryWin32HandleKHR;
};
Layout
struct VoidPtr {
void* value;
};
Accessor of symbol lookup of module
vma
.