Table of Contents

Class SpirvNative

Namespace
Pie.Spirv.Cross.Native
Assembly
Pie.Spirv.Cross.dll
public static class SpirvNative
Inheritance
SpirvNative
Inherited Members

Fields

SPVC_COMPILER_OPTION_COMMON_BIT

public const int SPVC_COMPILER_OPTION_COMMON_BIT = 16777216

Field Value

int

SPVC_COMPILER_OPTION_ENUM_BITS

public const int SPVC_COMPILER_OPTION_ENUM_BITS = 16777215

Field Value

int

SPVC_COMPILER_OPTION_GLSL_BIT

public const int SPVC_COMPILER_OPTION_GLSL_BIT = 33554432

Field Value

int

SPVC_COMPILER_OPTION_HLSL_BIT

public const int SPVC_COMPILER_OPTION_HLSL_BIT = 67108864

Field Value

int

SPVC_COMPILER_OPTION_LANG_BITS

public const int SPVC_COMPILER_OPTION_LANG_BITS = 251658240

Field Value

int

SPVC_COMPILER_OPTION_MSL_BIT

public const int SPVC_COMPILER_OPTION_MSL_BIT = 134217728

Field Value

int

SPVC_C_API_VERSION_MAJOR

public const int SPVC_C_API_VERSION_MAJOR = 0

Field Value

int

SPVC_C_API_VERSION_MINOR

public const int SPVC_C_API_VERSION_MINOR = 59

Field Value

int

SPVC_C_API_VERSION_PATCH

public const int SPVC_C_API_VERSION_PATCH = 0

Field Value

int

SPVC_FALSE

public const byte SPVC_FALSE = 0

Field Value

byte

SPVC_HLSL_PUSH_CONSTANT_BINDING

public const int SPVC_HLSL_PUSH_CONSTANT_BINDING = 0

Field Value

int

SPVC_HLSL_PUSH_CONSTANT_DESC_SET

public const uint SPVC_HLSL_PUSH_CONSTANT_DESC_SET = 4294967295

Field Value

uint

SPVC_MSL_ARGUMENT_BUFFER_BINDING

public const uint SPVC_MSL_ARGUMENT_BUFFER_BINDING = 4294967292

Field Value

uint

SPVC_MSL_AUX_BUFFER_STRUCT_VERSION

public const int SPVC_MSL_AUX_BUFFER_STRUCT_VERSION = 1

Field Value

int

SPVC_MSL_BUFFER_SIZE_BUFFER_BINDING

public const uint SPVC_MSL_BUFFER_SIZE_BUFFER_BINDING = 4294967293

Field Value

uint

SPVC_MSL_PUSH_CONSTANT_BINDING

public const int SPVC_MSL_PUSH_CONSTANT_BINDING = 0

Field Value

int

SPVC_MSL_PUSH_CONSTANT_DESC_SET

public const uint SPVC_MSL_PUSH_CONSTANT_DESC_SET = 4294967295

Field Value

uint

SPVC_MSL_SWIZZLE_BUFFER_BINDING

public const uint SPVC_MSL_SWIZZLE_BUFFER_BINDING = 4294967294

Field Value

uint

SPVC_TRUE

public const byte SPVC_TRUE = 1

Field Value

byte

SPV_REVISION

public const int SPV_REVISION = 1

Field Value

int

SPV_VERSION

public const int SPV_VERSION = 67072

Field Value

int

SpvMagicNumber

public const uint SpvMagicNumber = 119734787

Field Value

uint

SpvOpCodeMask

public const uint SpvOpCodeMask = 65535

Field Value

uint

SpvRevision

public const uint SpvRevision = 1

Field Value

uint

SpvVersion

public const uint SpvVersion = 67072

Field Value

uint

SpvWordCountShift

public const uint SpvWordCountShift = 16

Field Value

uint

Methods

spvc_compiler_add_header_line(spvc_compiler_s*, sbyte*)

public static extern spvc_result spvc_compiler_add_header_line(spvc_compiler_s* compiler, sbyte* line)

Parameters

compiler spvc_compiler_s*
line sbyte*

Returns

spvc_result

spvc_compiler_buffer_get_hlsl_counter_buffer(spvc_compiler_s*, uint, uint*)

public static extern byte spvc_compiler_buffer_get_hlsl_counter_buffer(spvc_compiler_s* compiler, uint id, uint* counter_id)

Parameters

compiler spvc_compiler_s*
id uint
counter_id uint*

Returns

byte

spvc_compiler_buffer_is_hlsl_counter_buffer(spvc_compiler_s*, uint)

public static extern byte spvc_compiler_buffer_is_hlsl_counter_buffer(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

byte

spvc_compiler_build_combined_image_samplers(spvc_compiler_s*)

public static extern spvc_result spvc_compiler_build_combined_image_samplers(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

spvc_result

spvc_compiler_build_dummy_sampler_for_combined_images(spvc_compiler_s*, uint*)

public static extern spvc_result spvc_compiler_build_dummy_sampler_for_combined_images(spvc_compiler_s* compiler, uint* id)

Parameters

compiler spvc_compiler_s*
id uint*

Returns

spvc_result

spvc_compiler_compile(spvc_compiler_s*, sbyte**)

public static extern spvc_result spvc_compiler_compile(spvc_compiler_s* compiler, sbyte** source)

Parameters

compiler spvc_compiler_s*
source sbyte**

Returns

spvc_result

spvc_compiler_create_compiler_options(spvc_compiler_s*, spvc_compiler_options_s**)

public static extern spvc_result spvc_compiler_create_compiler_options(spvc_compiler_s* compiler, spvc_compiler_options_s** options)

Parameters

compiler spvc_compiler_s*
options spvc_compiler_options_s**

Returns

spvc_result

spvc_compiler_create_shader_resources(spvc_compiler_s*, spvc_resources_s**)

public static extern spvc_result spvc_compiler_create_shader_resources(spvc_compiler_s* compiler, spvc_resources_s** resources)

Parameters

compiler spvc_compiler_s*
resources spvc_resources_s**

Returns

spvc_result

spvc_compiler_create_shader_resources_for_active_variables(spvc_compiler_s*, spvc_resources_s**, spvc_set_s*)

public static extern spvc_result spvc_compiler_create_shader_resources_for_active_variables(spvc_compiler_s* compiler, spvc_resources_s** resources, spvc_set_s* active)

Parameters

compiler spvc_compiler_s*
resources spvc_resources_s**
active spvc_set_s*

Returns

spvc_result

spvc_compiler_flatten_buffer_block(spvc_compiler_s*, uint)

public static extern spvc_result spvc_compiler_flatten_buffer_block(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

spvc_result

spvc_compiler_get_active_buffer_ranges(spvc_compiler_s*, uint, spvc_buffer_range**, nuint*)

public static extern spvc_result spvc_compiler_get_active_buffer_ranges(spvc_compiler_s* compiler, uint id, spvc_buffer_range** ranges, nuint* num_ranges)

Parameters

compiler spvc_compiler_s*
id uint
ranges spvc_buffer_range**
num_ranges nuint*

Returns

spvc_result

spvc_compiler_get_active_interface_variables(spvc_compiler_s*, spvc_set_s**)

public static extern spvc_result spvc_compiler_get_active_interface_variables(spvc_compiler_s* compiler, spvc_set_s** set)

Parameters

compiler spvc_compiler_s*
set spvc_set_s**

Returns

spvc_result

spvc_compiler_get_binary_offset_for_decoration(spvc_compiler_s*, uint, SpvDecoration_, uint*)

public static extern byte spvc_compiler_get_binary_offset_for_decoration(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration, uint* word_offset)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_
word_offset uint*

Returns

byte

spvc_compiler_get_buffer_block_decorations(spvc_compiler_s*, uint, SpvDecoration_**, nuint*)

public static extern spvc_result spvc_compiler_get_buffer_block_decorations(spvc_compiler_s* compiler, uint id, SpvDecoration_** decorations, nuint* num_decorations)

Parameters

compiler spvc_compiler_s*
id uint
decorations SpvDecoration_**
num_decorations nuint*

Returns

spvc_result

spvc_compiler_get_cleansed_entry_point_name(spvc_compiler_s*, sbyte*, SpvExecutionModel_)

public static extern sbyte* spvc_compiler_get_cleansed_entry_point_name(spvc_compiler_s* compiler, sbyte* name, SpvExecutionModel_ model)

Parameters

compiler spvc_compiler_s*
name sbyte*
model SpvExecutionModel_

Returns

sbyte*

spvc_compiler_get_combined_image_samplers(spvc_compiler_s*, spvc_combined_image_sampler**, nuint*)

public static extern spvc_result spvc_compiler_get_combined_image_samplers(spvc_compiler_s* compiler, spvc_combined_image_sampler** samplers, nuint* num_samplers)

Parameters

compiler spvc_compiler_s*
samplers spvc_combined_image_sampler**
num_samplers nuint*

Returns

spvc_result

spvc_compiler_get_constant_handle(spvc_compiler_s*, uint)

public static extern spvc_constant_s* spvc_compiler_get_constant_handle(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

spvc_constant_s*

spvc_compiler_get_current_id_bound(spvc_compiler_s*)

public static extern uint spvc_compiler_get_current_id_bound(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

uint

spvc_compiler_get_declared_capabilities(spvc_compiler_s*, SpvCapability_**, nuint*)

public static extern spvc_result spvc_compiler_get_declared_capabilities(spvc_compiler_s* compiler, SpvCapability_** capabilities, nuint* num_capabilities)

Parameters

compiler spvc_compiler_s*
capabilities SpvCapability_**
num_capabilities nuint*

Returns

spvc_result

spvc_compiler_get_declared_extensions(spvc_compiler_s*, sbyte***, nuint*)

public static extern spvc_result spvc_compiler_get_declared_extensions(spvc_compiler_s* compiler, sbyte*** extensions, nuint* num_extensions)

Parameters

compiler spvc_compiler_s*
extensions sbyte***
num_extensions nuint*

Returns

spvc_result

spvc_compiler_get_declared_struct_member_size(spvc_compiler_s*, spvc_type_s*, uint, nuint*)

public static extern spvc_result spvc_compiler_get_declared_struct_member_size(spvc_compiler_s* compiler, spvc_type_s* type, uint index, nuint* size)

Parameters

compiler spvc_compiler_s*
type spvc_type_s*
index uint
size nuint*

Returns

spvc_result

spvc_compiler_get_declared_struct_size(spvc_compiler_s*, spvc_type_s*, nuint*)

public static extern spvc_result spvc_compiler_get_declared_struct_size(spvc_compiler_s* compiler, spvc_type_s* struct_type, nuint* size)

Parameters

compiler spvc_compiler_s*
struct_type spvc_type_s*
size nuint*

Returns

spvc_result

spvc_compiler_get_declared_struct_size_runtime_array(spvc_compiler_s*, spvc_type_s*, nuint, nuint*)

public static extern spvc_result spvc_compiler_get_declared_struct_size_runtime_array(spvc_compiler_s* compiler, spvc_type_s* struct_type, nuint array_size, nuint* size)

Parameters

compiler spvc_compiler_s*
struct_type spvc_type_s*
array_size nuint
size nuint*

Returns

spvc_result

spvc_compiler_get_decoration(spvc_compiler_s*, uint, SpvDecoration_)

public static extern uint spvc_compiler_get_decoration(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_

Returns

uint

spvc_compiler_get_decoration_string(spvc_compiler_s*, uint, SpvDecoration_)

public static extern sbyte* spvc_compiler_get_decoration_string(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_

Returns

sbyte*

spvc_compiler_get_entry_points(spvc_compiler_s*, spvc_entry_point**, nuint*)

public static extern spvc_result spvc_compiler_get_entry_points(spvc_compiler_s* compiler, spvc_entry_point** entry_points, nuint* num_entry_points)

Parameters

compiler spvc_compiler_s*
entry_points spvc_entry_point**
num_entry_points nuint*

Returns

spvc_result

spvc_compiler_get_execution_mode_argument(spvc_compiler_s*, SpvExecutionMode_)

public static extern uint spvc_compiler_get_execution_mode_argument(spvc_compiler_s* compiler, SpvExecutionMode_ mode)

Parameters

compiler spvc_compiler_s*
mode SpvExecutionMode_

Returns

uint

spvc_compiler_get_execution_mode_argument_by_index(spvc_compiler_s*, SpvExecutionMode_, uint)

public static extern uint spvc_compiler_get_execution_mode_argument_by_index(spvc_compiler_s* compiler, SpvExecutionMode_ mode, uint index)

Parameters

compiler spvc_compiler_s*
mode SpvExecutionMode_
index uint

Returns

uint

spvc_compiler_get_execution_model(spvc_compiler_s*)

public static extern SpvExecutionModel_ spvc_compiler_get_execution_model(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

SpvExecutionModel_

spvc_compiler_get_execution_modes(spvc_compiler_s*, SpvExecutionMode_**, nuint*)

public static extern spvc_result spvc_compiler_get_execution_modes(spvc_compiler_s* compiler, SpvExecutionMode_** modes, nuint* num_modes)

Parameters

compiler spvc_compiler_s*
modes SpvExecutionMode_**
num_modes nuint*

Returns

spvc_result

spvc_compiler_get_member_decoration(spvc_compiler_s*, uint, uint, SpvDecoration_)

public static extern uint spvc_compiler_get_member_decoration(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_

Returns

uint

spvc_compiler_get_member_decoration_string(spvc_compiler_s*, uint, uint, SpvDecoration_)

public static extern sbyte* spvc_compiler_get_member_decoration_string(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_

Returns

sbyte*

spvc_compiler_get_member_name(spvc_compiler_s*, uint, uint)

public static extern sbyte* spvc_compiler_get_member_name(spvc_compiler_s* compiler, uint id, uint member_index)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint

Returns

sbyte*

spvc_compiler_get_name(spvc_compiler_s*, uint)

public static extern sbyte* spvc_compiler_get_name(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

sbyte*

spvc_compiler_get_num_required_extensions(spvc_compiler_s*)

public static extern nuint spvc_compiler_get_num_required_extensions(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

nuint

spvc_compiler_get_remapped_declared_block_name(spvc_compiler_s*, uint)

public static extern sbyte* spvc_compiler_get_remapped_declared_block_name(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

sbyte*

spvc_compiler_get_required_extension(spvc_compiler_s*, nuint)

public static extern sbyte* spvc_compiler_get_required_extension(spvc_compiler_s* compiler, nuint index)

Parameters

compiler spvc_compiler_s*
index nuint

Returns

sbyte*

spvc_compiler_get_specialization_constants(spvc_compiler_s*, spvc_specialization_constant**, nuint*)

public static extern spvc_result spvc_compiler_get_specialization_constants(spvc_compiler_s* compiler, spvc_specialization_constant** constants, nuint* num_constants)

Parameters

compiler spvc_compiler_s*
constants spvc_specialization_constant**
num_constants nuint*

Returns

spvc_result

spvc_compiler_get_type_handle(spvc_compiler_s*, uint)

public static extern spvc_type_s* spvc_compiler_get_type_handle(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

spvc_type_s*

spvc_compiler_get_work_group_size_specialization_constants(spvc_compiler_s*, spvc_specialization_constant*, spvc_specialization_constant*, spvc_specialization_constant*)

public static extern uint spvc_compiler_get_work_group_size_specialization_constants(spvc_compiler_s* compiler, spvc_specialization_constant* x, spvc_specialization_constant* y, spvc_specialization_constant* z)

Parameters

compiler spvc_compiler_s*
x spvc_specialization_constant*
y spvc_specialization_constant*
z spvc_specialization_constant*

Returns

uint

spvc_compiler_has_active_builtin(spvc_compiler_s*, SpvBuiltIn_, SpvStorageClass_)

public static extern byte spvc_compiler_has_active_builtin(spvc_compiler_s* compiler, SpvBuiltIn_ builtin, SpvStorageClass_ storage)

Parameters

compiler spvc_compiler_s*
builtin SpvBuiltIn_
storage SpvStorageClass_

Returns

byte

spvc_compiler_has_decoration(spvc_compiler_s*, uint, SpvDecoration_)

public static extern byte spvc_compiler_has_decoration(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_

Returns

byte

spvc_compiler_has_member_decoration(spvc_compiler_s*, uint, uint, SpvDecoration_)

public static extern byte spvc_compiler_has_member_decoration(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_

Returns

byte

spvc_compiler_hlsl_add_resource_binding(spvc_compiler_s*, spvc_hlsl_resource_binding*)

public static extern spvc_result spvc_compiler_hlsl_add_resource_binding(spvc_compiler_s* compiler, spvc_hlsl_resource_binding* binding)

Parameters

compiler spvc_compiler_s*
binding spvc_hlsl_resource_binding*

Returns

spvc_result

spvc_compiler_hlsl_add_vertex_attribute_remap(spvc_compiler_s*, spvc_hlsl_vertex_attribute_remap*, nuint)

public static extern spvc_result spvc_compiler_hlsl_add_vertex_attribute_remap(spvc_compiler_s* compiler, spvc_hlsl_vertex_attribute_remap* remap, nuint remaps)

Parameters

compiler spvc_compiler_s*
remap spvc_hlsl_vertex_attribute_remap*
remaps nuint

Returns

spvc_result

spvc_compiler_hlsl_is_resource_used(spvc_compiler_s*, SpvExecutionModel_, uint, uint)

public static extern byte spvc_compiler_hlsl_is_resource_used(spvc_compiler_s* compiler, SpvExecutionModel_ model, uint set, uint binding)

Parameters

compiler spvc_compiler_s*
model SpvExecutionModel_
set uint
binding uint

Returns

byte

spvc_compiler_hlsl_remap_num_workgroups_builtin(spvc_compiler_s*)

public static extern uint spvc_compiler_hlsl_remap_num_workgroups_builtin(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

uint

spvc_compiler_hlsl_set_resource_binding_flags(spvc_compiler_s*, uint)

public static extern spvc_result spvc_compiler_hlsl_set_resource_binding_flags(spvc_compiler_s* compiler, uint flags)

Parameters

compiler spvc_compiler_s*
flags uint

Returns

spvc_result

spvc_compiler_hlsl_set_root_constants_layout(spvc_compiler_s*, spvc_hlsl_root_constants*, nuint)

public static extern spvc_result spvc_compiler_hlsl_set_root_constants_layout(spvc_compiler_s* compiler, spvc_hlsl_root_constants* constant_info, nuint count)

Parameters

compiler spvc_compiler_s*
constant_info spvc_hlsl_root_constants*
count nuint

Returns

spvc_result

spvc_compiler_install_compiler_options(spvc_compiler_s*, spvc_compiler_options_s*)

public static extern spvc_result spvc_compiler_install_compiler_options(spvc_compiler_s* compiler, spvc_compiler_options_s* options)

Parameters

compiler spvc_compiler_s*
options spvc_compiler_options_s*

Returns

spvc_result

spvc_compiler_mask_stage_output_by_builtin(spvc_compiler_s*, SpvBuiltIn_)

public static extern spvc_result spvc_compiler_mask_stage_output_by_builtin(spvc_compiler_s* compiler, SpvBuiltIn_ builtin)

Parameters

compiler spvc_compiler_s*
builtin SpvBuiltIn_

Returns

spvc_result

spvc_compiler_mask_stage_output_by_location(spvc_compiler_s*, uint, uint)

public static extern spvc_result spvc_compiler_mask_stage_output_by_location(spvc_compiler_s* compiler, uint location, uint component)

Parameters

compiler spvc_compiler_s*
location uint
component uint

Returns

spvc_result

spvc_compiler_msl_add_discrete_descriptor_set(spvc_compiler_s*, uint)

public static extern spvc_result spvc_compiler_msl_add_discrete_descriptor_set(spvc_compiler_s* compiler, uint desc_set)

Parameters

compiler spvc_compiler_s*
desc_set uint

Returns

spvc_result

spvc_compiler_msl_add_dynamic_buffer(spvc_compiler_s*, uint, uint, uint)

public static extern spvc_result spvc_compiler_msl_add_dynamic_buffer(spvc_compiler_s* compiler, uint desc_set, uint binding, uint index)

Parameters

compiler spvc_compiler_s*
desc_set uint
binding uint
index uint

Returns

spvc_result

spvc_compiler_msl_add_inline_uniform_block(spvc_compiler_s*, uint, uint)

public static extern spvc_result spvc_compiler_msl_add_inline_uniform_block(spvc_compiler_s* compiler, uint desc_set, uint binding)

Parameters

compiler spvc_compiler_s*
desc_set uint
binding uint

Returns

spvc_result

spvc_compiler_msl_add_resource_binding(spvc_compiler_s*, spvc_msl_resource_binding*)

public static extern spvc_result spvc_compiler_msl_add_resource_binding(spvc_compiler_s* compiler, spvc_msl_resource_binding* binding)

Parameters

compiler spvc_compiler_s*
binding spvc_msl_resource_binding*

Returns

spvc_result

spvc_compiler_msl_add_shader_input(spvc_compiler_s*, spvc_msl_shader_interface_var*)

public static extern spvc_result spvc_compiler_msl_add_shader_input(spvc_compiler_s* compiler, spvc_msl_shader_interface_var* input)

Parameters

compiler spvc_compiler_s*
input spvc_msl_shader_interface_var*

Returns

spvc_result

spvc_compiler_msl_add_shader_input_2(spvc_compiler_s*, spvc_msl_shader_interface_var_2*)

public static extern spvc_result spvc_compiler_msl_add_shader_input_2(spvc_compiler_s* compiler, spvc_msl_shader_interface_var_2* input)

Parameters

compiler spvc_compiler_s*
input spvc_msl_shader_interface_var_2*

Returns

spvc_result

spvc_compiler_msl_add_shader_output(spvc_compiler_s*, spvc_msl_shader_interface_var*)

public static extern spvc_result spvc_compiler_msl_add_shader_output(spvc_compiler_s* compiler, spvc_msl_shader_interface_var* output)

Parameters

compiler spvc_compiler_s*
output spvc_msl_shader_interface_var*

Returns

spvc_result

spvc_compiler_msl_add_shader_output_2(spvc_compiler_s*, spvc_msl_shader_interface_var_2*)

public static extern spvc_result spvc_compiler_msl_add_shader_output_2(spvc_compiler_s* compiler, spvc_msl_shader_interface_var_2* output)

Parameters

compiler spvc_compiler_s*
output spvc_msl_shader_interface_var_2*

Returns

spvc_result

spvc_compiler_msl_add_vertex_attribute(spvc_compiler_s*, spvc_msl_vertex_attribute*)

public static extern spvc_result spvc_compiler_msl_add_vertex_attribute(spvc_compiler_s* compiler, spvc_msl_vertex_attribute* attrs)

Parameters

compiler spvc_compiler_s*
attrs spvc_msl_vertex_attribute*

Returns

spvc_result

spvc_compiler_msl_get_automatic_resource_binding(spvc_compiler_s*, uint)

public static extern uint spvc_compiler_msl_get_automatic_resource_binding(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

uint

spvc_compiler_msl_get_automatic_resource_binding_secondary(spvc_compiler_s*, uint)

public static extern uint spvc_compiler_msl_get_automatic_resource_binding_secondary(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

uint

spvc_compiler_msl_get_combined_sampler_suffix(spvc_compiler_s*)

public static extern sbyte* spvc_compiler_msl_get_combined_sampler_suffix(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

sbyte*

spvc_compiler_msl_is_rasterization_disabled(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_is_rasterization_disabled(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_is_resource_used(spvc_compiler_s*, SpvExecutionModel_, uint, uint)

public static extern byte spvc_compiler_msl_is_resource_used(spvc_compiler_s* compiler, SpvExecutionModel_ model, uint set, uint binding)

Parameters

compiler spvc_compiler_s*
model SpvExecutionModel_
set uint
binding uint

Returns

byte

spvc_compiler_msl_is_shader_input_used(spvc_compiler_s*, uint)

public static extern byte spvc_compiler_msl_is_shader_input_used(spvc_compiler_s* compiler, uint location)

Parameters

compiler spvc_compiler_s*
location uint

Returns

byte

spvc_compiler_msl_is_shader_output_used(spvc_compiler_s*, uint)

public static extern byte spvc_compiler_msl_is_shader_output_used(spvc_compiler_s* compiler, uint location)

Parameters

compiler spvc_compiler_s*
location uint

Returns

byte

spvc_compiler_msl_is_vertex_attribute_used(spvc_compiler_s*, uint)

public static extern byte spvc_compiler_msl_is_vertex_attribute_used(spvc_compiler_s* compiler, uint location)

Parameters

compiler spvc_compiler_s*
location uint

Returns

byte

spvc_compiler_msl_needs_aux_buffer(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_aux_buffer(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_needs_buffer_size_buffer(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_buffer_size_buffer(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_needs_input_threadgroup_mem(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_input_threadgroup_mem(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_needs_output_buffer(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_output_buffer(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_needs_patch_output_buffer(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_patch_output_buffer(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_needs_swizzle_buffer(spvc_compiler_s*)

public static extern byte spvc_compiler_msl_needs_swizzle_buffer(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

Returns

byte

spvc_compiler_msl_remap_constexpr_sampler(spvc_compiler_s*, uint, spvc_msl_constexpr_sampler*)

public static extern spvc_result spvc_compiler_msl_remap_constexpr_sampler(spvc_compiler_s* compiler, uint id, spvc_msl_constexpr_sampler* sampler)

Parameters

compiler spvc_compiler_s*
id uint
sampler spvc_msl_constexpr_sampler*

Returns

spvc_result

spvc_compiler_msl_remap_constexpr_sampler_by_binding(spvc_compiler_s*, uint, uint, spvc_msl_constexpr_sampler*)

public static extern spvc_result spvc_compiler_msl_remap_constexpr_sampler_by_binding(spvc_compiler_s* compiler, uint desc_set, uint binding, spvc_msl_constexpr_sampler* sampler)

Parameters

compiler spvc_compiler_s*
desc_set uint
binding uint
sampler spvc_msl_constexpr_sampler*

Returns

spvc_result

spvc_compiler_msl_remap_constexpr_sampler_by_binding_ycbcr(spvc_compiler_s*, uint, uint, spvc_msl_constexpr_sampler*, spvc_msl_sampler_ycbcr_conversion*)

public static extern spvc_result spvc_compiler_msl_remap_constexpr_sampler_by_binding_ycbcr(spvc_compiler_s* compiler, uint desc_set, uint binding, spvc_msl_constexpr_sampler* sampler, spvc_msl_sampler_ycbcr_conversion* conv)

Parameters

compiler spvc_compiler_s*
desc_set uint
binding uint
sampler spvc_msl_constexpr_sampler*
conv spvc_msl_sampler_ycbcr_conversion*

Returns

spvc_result

spvc_compiler_msl_remap_constexpr_sampler_ycbcr(spvc_compiler_s*, uint, spvc_msl_constexpr_sampler*, spvc_msl_sampler_ycbcr_conversion*)

public static extern spvc_result spvc_compiler_msl_remap_constexpr_sampler_ycbcr(spvc_compiler_s* compiler, uint id, spvc_msl_constexpr_sampler* sampler, spvc_msl_sampler_ycbcr_conversion* conv)

Parameters

compiler spvc_compiler_s*
id uint
sampler spvc_msl_constexpr_sampler*
conv spvc_msl_sampler_ycbcr_conversion*

Returns

spvc_result

spvc_compiler_msl_set_argument_buffer_device_address_space(spvc_compiler_s*, uint, byte)

public static extern spvc_result spvc_compiler_msl_set_argument_buffer_device_address_space(spvc_compiler_s* compiler, uint desc_set, byte device_address)

Parameters

compiler spvc_compiler_s*
desc_set uint
device_address byte

Returns

spvc_result

spvc_compiler_msl_set_combined_sampler_suffix(spvc_compiler_s*, sbyte*)

public static extern spvc_result spvc_compiler_msl_set_combined_sampler_suffix(spvc_compiler_s* compiler, sbyte* suffix)

Parameters

compiler spvc_compiler_s*
suffix sbyte*

Returns

spvc_result

spvc_compiler_msl_set_fragment_output_components(spvc_compiler_s*, uint, uint)

public static extern spvc_result spvc_compiler_msl_set_fragment_output_components(spvc_compiler_s* compiler, uint location, uint components)

Parameters

compiler spvc_compiler_s*
location uint
components uint

Returns

spvc_result

spvc_compiler_options_set_bool(spvc_compiler_options_s*, spvc_compiler_option, byte)

public static extern spvc_result spvc_compiler_options_set_bool(spvc_compiler_options_s* options, spvc_compiler_option option, byte value)

Parameters

options spvc_compiler_options_s*
option spvc_compiler_option
value byte

Returns

spvc_result

spvc_compiler_options_set_uint(spvc_compiler_options_s*, spvc_compiler_option, uint)

public static extern spvc_result spvc_compiler_options_set_uint(spvc_compiler_options_s* options, spvc_compiler_option option, uint value)

Parameters

options spvc_compiler_options_s*
option spvc_compiler_option
value uint

Returns

spvc_result

spvc_compiler_rename_entry_point(spvc_compiler_s*, sbyte*, sbyte*, SpvExecutionModel_)

public static extern spvc_result spvc_compiler_rename_entry_point(spvc_compiler_s* compiler, sbyte* old_name, sbyte* new_name, SpvExecutionModel_ model)

Parameters

compiler spvc_compiler_s*
old_name sbyte*
new_name sbyte*
model SpvExecutionModel_

Returns

spvc_result

spvc_compiler_require_extension(spvc_compiler_s*, sbyte*)

public static extern spvc_result spvc_compiler_require_extension(spvc_compiler_s* compiler, sbyte* ext)

Parameters

compiler spvc_compiler_s*
ext sbyte*

Returns

spvc_result

spvc_compiler_set_decoration(spvc_compiler_s*, uint, SpvDecoration_, uint)

public static extern void spvc_compiler_set_decoration(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration, uint argument)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_
argument uint

spvc_compiler_set_decoration_string(spvc_compiler_s*, uint, SpvDecoration_, sbyte*)

public static extern void spvc_compiler_set_decoration_string(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration, sbyte* argument)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_
argument sbyte*

spvc_compiler_set_enabled_interface_variables(spvc_compiler_s*, spvc_set_s*)

public static extern spvc_result spvc_compiler_set_enabled_interface_variables(spvc_compiler_s* compiler, spvc_set_s* set)

Parameters

compiler spvc_compiler_s*
set spvc_set_s*

Returns

spvc_result

spvc_compiler_set_entry_point(spvc_compiler_s*, sbyte*, SpvExecutionModel_)

public static extern spvc_result spvc_compiler_set_entry_point(spvc_compiler_s* compiler, sbyte* name, SpvExecutionModel_ model)

Parameters

compiler spvc_compiler_s*
name sbyte*
model SpvExecutionModel_

Returns

spvc_result

spvc_compiler_set_execution_mode(spvc_compiler_s*, SpvExecutionMode_)

public static extern void spvc_compiler_set_execution_mode(spvc_compiler_s* compiler, SpvExecutionMode_ mode)

Parameters

compiler spvc_compiler_s*
mode SpvExecutionMode_

spvc_compiler_set_execution_mode_with_arguments(spvc_compiler_s*, SpvExecutionMode_, uint, uint, uint)

public static extern void spvc_compiler_set_execution_mode_with_arguments(spvc_compiler_s* compiler, SpvExecutionMode_ mode, uint arg0, uint arg1, uint arg2)

Parameters

compiler spvc_compiler_s*
mode SpvExecutionMode_
arg0 uint
arg1 uint
arg2 uint

spvc_compiler_set_member_decoration(spvc_compiler_s*, uint, uint, SpvDecoration_, uint)

public static extern void spvc_compiler_set_member_decoration(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration, uint argument)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_
argument uint

spvc_compiler_set_member_decoration_string(spvc_compiler_s*, uint, uint, SpvDecoration_, sbyte*)

public static extern void spvc_compiler_set_member_decoration_string(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration, sbyte* argument)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_
argument sbyte*

spvc_compiler_set_member_name(spvc_compiler_s*, uint, uint, sbyte*)

public static extern void spvc_compiler_set_member_name(spvc_compiler_s* compiler, uint id, uint member_index, sbyte* argument)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
argument sbyte*

spvc_compiler_set_name(spvc_compiler_s*, uint, sbyte*)

public static extern void spvc_compiler_set_name(spvc_compiler_s* compiler, uint id, sbyte* argument)

Parameters

compiler spvc_compiler_s*
id uint
argument sbyte*

spvc_compiler_type_struct_member_array_stride(spvc_compiler_s*, spvc_type_s*, uint, uint*)

public static extern spvc_result spvc_compiler_type_struct_member_array_stride(spvc_compiler_s* compiler, spvc_type_s* type, uint index, uint* stride)

Parameters

compiler spvc_compiler_s*
type spvc_type_s*
index uint
stride uint*

Returns

spvc_result

spvc_compiler_type_struct_member_matrix_stride(spvc_compiler_s*, spvc_type_s*, uint, uint*)

public static extern spvc_result spvc_compiler_type_struct_member_matrix_stride(spvc_compiler_s* compiler, spvc_type_s* type, uint index, uint* stride)

Parameters

compiler spvc_compiler_s*
type spvc_type_s*
index uint
stride uint*

Returns

spvc_result

spvc_compiler_type_struct_member_offset(spvc_compiler_s*, spvc_type_s*, uint, uint*)

public static extern spvc_result spvc_compiler_type_struct_member_offset(spvc_compiler_s* compiler, spvc_type_s* type, uint index, uint* offset)

Parameters

compiler spvc_compiler_s*
type spvc_type_s*
index uint
offset uint*

Returns

spvc_result

spvc_compiler_unset_decoration(spvc_compiler_s*, uint, SpvDecoration_)

public static extern void spvc_compiler_unset_decoration(spvc_compiler_s* compiler, uint id, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
decoration SpvDecoration_

spvc_compiler_unset_execution_mode(spvc_compiler_s*, SpvExecutionMode_)

public static extern void spvc_compiler_unset_execution_mode(spvc_compiler_s* compiler, SpvExecutionMode_ mode)

Parameters

compiler spvc_compiler_s*
mode SpvExecutionMode_

spvc_compiler_unset_member_decoration(spvc_compiler_s*, uint, uint, SpvDecoration_)

public static extern void spvc_compiler_unset_member_decoration(spvc_compiler_s* compiler, uint id, uint member_index, SpvDecoration_ decoration)

Parameters

compiler spvc_compiler_s*
id uint
member_index uint
decoration SpvDecoration_

spvc_compiler_update_active_builtins(spvc_compiler_s*)

public static extern void spvc_compiler_update_active_builtins(spvc_compiler_s* compiler)

Parameters

compiler spvc_compiler_s*

spvc_compiler_variable_is_depth_or_compare(spvc_compiler_s*, uint)

public static extern byte spvc_compiler_variable_is_depth_or_compare(spvc_compiler_s* compiler, uint id)

Parameters

compiler spvc_compiler_s*
id uint

Returns

byte

spvc_constant_get_scalar_fp16(spvc_constant_s*, uint, uint)

public static extern float spvc_constant_get_scalar_fp16(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

float

spvc_constant_get_scalar_fp32(spvc_constant_s*, uint, uint)

public static extern float spvc_constant_get_scalar_fp32(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

float

spvc_constant_get_scalar_fp64(spvc_constant_s*, uint, uint)

public static extern double spvc_constant_get_scalar_fp64(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

double

spvc_constant_get_scalar_i16(spvc_constant_s*, uint, uint)

public static extern int spvc_constant_get_scalar_i16(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

int

spvc_constant_get_scalar_i32(spvc_constant_s*, uint, uint)

public static extern int spvc_constant_get_scalar_i32(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

int

spvc_constant_get_scalar_i64(spvc_constant_s*, uint, uint)

public static extern long spvc_constant_get_scalar_i64(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

long

spvc_constant_get_scalar_i8(spvc_constant_s*, uint, uint)

public static extern int spvc_constant_get_scalar_i8(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

int

spvc_constant_get_scalar_u16(spvc_constant_s*, uint, uint)

public static extern uint spvc_constant_get_scalar_u16(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

uint

spvc_constant_get_scalar_u32(spvc_constant_s*, uint, uint)

public static extern uint spvc_constant_get_scalar_u32(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

uint

spvc_constant_get_scalar_u64(spvc_constant_s*, uint, uint)

public static extern ulong spvc_constant_get_scalar_u64(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

ulong

spvc_constant_get_scalar_u8(spvc_constant_s*, uint, uint)

public static extern uint spvc_constant_get_scalar_u8(spvc_constant_s* constant, uint column, uint row)

Parameters

constant spvc_constant_s*
column uint
row uint

Returns

uint

spvc_constant_get_subconstants(spvc_constant_s*, uint**, nuint*)

public static extern void spvc_constant_get_subconstants(spvc_constant_s* constant, uint** constituents, nuint* count)

Parameters

constant spvc_constant_s*
constituents uint**
count nuint*

spvc_constant_get_type(spvc_constant_s*)

public static extern uint spvc_constant_get_type(spvc_constant_s* constant)

Parameters

constant spvc_constant_s*

Returns

uint

spvc_constant_set_scalar_fp16(spvc_constant_s*, uint, uint, ushort)

public static extern void spvc_constant_set_scalar_fp16(spvc_constant_s* constant, uint column, uint row, ushort value)

Parameters

constant spvc_constant_s*
column uint
row uint
value ushort

spvc_constant_set_scalar_fp32(spvc_constant_s*, uint, uint, float)

public static extern void spvc_constant_set_scalar_fp32(spvc_constant_s* constant, uint column, uint row, float value)

Parameters

constant spvc_constant_s*
column uint
row uint
value float

spvc_constant_set_scalar_fp64(spvc_constant_s*, uint, uint, double)

public static extern void spvc_constant_set_scalar_fp64(spvc_constant_s* constant, uint column, uint row, double value)

Parameters

constant spvc_constant_s*
column uint
row uint
value double

spvc_constant_set_scalar_i16(spvc_constant_s*, uint, uint, short)

public static extern void spvc_constant_set_scalar_i16(spvc_constant_s* constant, uint column, uint row, short value)

Parameters

constant spvc_constant_s*
column uint
row uint
value short

spvc_constant_set_scalar_i32(spvc_constant_s*, uint, uint, int)

public static extern void spvc_constant_set_scalar_i32(spvc_constant_s* constant, uint column, uint row, int value)

Parameters

constant spvc_constant_s*
column uint
row uint
value int

spvc_constant_set_scalar_i64(spvc_constant_s*, uint, uint, long)

public static extern void spvc_constant_set_scalar_i64(spvc_constant_s* constant, uint column, uint row, long value)

Parameters

constant spvc_constant_s*
column uint
row uint
value long

spvc_constant_set_scalar_i8(spvc_constant_s*, uint, uint, sbyte)

public static extern void spvc_constant_set_scalar_i8(spvc_constant_s* constant, uint column, uint row, sbyte value)

Parameters

constant spvc_constant_s*
column uint
row uint
value sbyte

spvc_constant_set_scalar_u16(spvc_constant_s*, uint, uint, ushort)

public static extern void spvc_constant_set_scalar_u16(spvc_constant_s* constant, uint column, uint row, ushort value)

Parameters

constant spvc_constant_s*
column uint
row uint
value ushort

spvc_constant_set_scalar_u32(spvc_constant_s*, uint, uint, uint)

public static extern void spvc_constant_set_scalar_u32(spvc_constant_s* constant, uint column, uint row, uint value)

Parameters

constant spvc_constant_s*
column uint
row uint
value uint

spvc_constant_set_scalar_u64(spvc_constant_s*, uint, uint, ulong)

public static extern void spvc_constant_set_scalar_u64(spvc_constant_s* constant, uint column, uint row, ulong value)

Parameters

constant spvc_constant_s*
column uint
row uint
value ulong

spvc_constant_set_scalar_u8(spvc_constant_s*, uint, uint, byte)

public static extern void spvc_constant_set_scalar_u8(spvc_constant_s* constant, uint column, uint row, byte value)

Parameters

constant spvc_constant_s*
column uint
row uint
value byte

spvc_context_create(spvc_context_s**)

public static extern spvc_result spvc_context_create(spvc_context_s** context)

Parameters

context spvc_context_s**

Returns

spvc_result

spvc_context_create_compiler(spvc_context_s*, spvc_backend, spvc_parsed_ir_s*, spvc_capture_mode, spvc_compiler_s**)

public static extern spvc_result spvc_context_create_compiler(spvc_context_s* context, spvc_backend backend, spvc_parsed_ir_s* parsed_ir, spvc_capture_mode mode, spvc_compiler_s** compiler)

Parameters

context spvc_context_s*
backend spvc_backend
parsed_ir spvc_parsed_ir_s*
mode spvc_capture_mode
compiler spvc_compiler_s**

Returns

spvc_result

spvc_context_destroy(spvc_context_s*)

public static extern void spvc_context_destroy(spvc_context_s* context)

Parameters

context spvc_context_s*

spvc_context_get_last_error_string(spvc_context_s*)

public static extern sbyte* spvc_context_get_last_error_string(spvc_context_s* context)

Parameters

context spvc_context_s*

Returns

sbyte*

spvc_context_parse_spirv(spvc_context_s*, uint*, nuint, spvc_parsed_ir_s**)

public static extern spvc_result spvc_context_parse_spirv(spvc_context_s* context, uint* spirv, nuint word_count, spvc_parsed_ir_s** parsed_ir)

Parameters

context spvc_context_s*
spirv uint*
word_count nuint
parsed_ir spvc_parsed_ir_s**

Returns

spvc_result

spvc_context_release_allocations(spvc_context_s*)

public static extern void spvc_context_release_allocations(spvc_context_s* context)

Parameters

context spvc_context_s*

spvc_context_set_error_callback(spvc_context_s*, delegate* unmanaged[Cdecl]<void*, sbyte*, void>, void*)

public static extern void spvc_context_set_error_callback(spvc_context_s* context, delegate* unmanaged[Cdecl]<void*, sbyte*, void> cb, void* userdata)

Parameters

context spvc_context_s*
cb delegate* unmanaged[Cdecl]<void*, sbyte*, void>
userdata void*

spvc_get_commit_revision_and_timestamp()

public static extern sbyte* spvc_get_commit_revision_and_timestamp()

Returns

sbyte*

spvc_get_version(uint*, uint*, uint*)

public static extern void spvc_get_version(uint* major, uint* minor, uint* patch)

Parameters

major uint*
minor uint*
patch uint*

spvc_hlsl_resource_binding_init(spvc_hlsl_resource_binding*)

public static extern void spvc_hlsl_resource_binding_init(spvc_hlsl_resource_binding* binding)

Parameters

binding spvc_hlsl_resource_binding*

spvc_msl_constexpr_sampler_init(spvc_msl_constexpr_sampler*)

public static extern void spvc_msl_constexpr_sampler_init(spvc_msl_constexpr_sampler* sampler)

Parameters

sampler spvc_msl_constexpr_sampler*

spvc_msl_get_aux_buffer_struct_version()

public static extern uint spvc_msl_get_aux_buffer_struct_version()

Returns

uint

spvc_msl_resource_binding_init(spvc_msl_resource_binding*)

public static extern void spvc_msl_resource_binding_init(spvc_msl_resource_binding* binding)

Parameters

binding spvc_msl_resource_binding*

spvc_msl_sampler_ycbcr_conversion_init(spvc_msl_sampler_ycbcr_conversion*)

public static extern void spvc_msl_sampler_ycbcr_conversion_init(spvc_msl_sampler_ycbcr_conversion* conv)

Parameters

conv spvc_msl_sampler_ycbcr_conversion*

spvc_msl_shader_input_init(spvc_msl_shader_interface_var*)

public static extern void spvc_msl_shader_input_init(spvc_msl_shader_interface_var* input)

Parameters

input spvc_msl_shader_interface_var*

spvc_msl_shader_interface_var_init(spvc_msl_shader_interface_var*)

public static extern void spvc_msl_shader_interface_var_init(spvc_msl_shader_interface_var* var)

Parameters

var spvc_msl_shader_interface_var*

spvc_msl_shader_interface_var_init_2(spvc_msl_shader_interface_var_2*)

public static extern void spvc_msl_shader_interface_var_init_2(spvc_msl_shader_interface_var_2* var)

Parameters

var spvc_msl_shader_interface_var_2*

spvc_msl_vertex_attribute_init(spvc_msl_vertex_attribute*)

public static extern void spvc_msl_vertex_attribute_init(spvc_msl_vertex_attribute* attr)

Parameters

attr spvc_msl_vertex_attribute*

spvc_resources_get_builtin_resource_list_for_type(spvc_resources_s*, spvc_builtin_resource_type, spvc_reflected_builtin_resource**, nuint*)

public static extern spvc_result spvc_resources_get_builtin_resource_list_for_type(spvc_resources_s* resources, spvc_builtin_resource_type type, spvc_reflected_builtin_resource** resource_list, nuint* resource_size)

Parameters

resources spvc_resources_s*
type spvc_builtin_resource_type
resource_list spvc_reflected_builtin_resource**
resource_size nuint*

Returns

spvc_result

spvc_resources_get_resource_list_for_type(spvc_resources_s*, spvc_resource_type, spvc_reflected_resource**, nuint*)

public static extern spvc_result spvc_resources_get_resource_list_for_type(spvc_resources_s* resources, spvc_resource_type type, spvc_reflected_resource** resource_list, nuint* resource_size)

Parameters

resources spvc_resources_s*
type spvc_resource_type
resource_list spvc_reflected_resource**
resource_size nuint*

Returns

spvc_result

spvc_type_array_dimension_is_literal(spvc_type_s*, uint)

public static extern byte spvc_type_array_dimension_is_literal(spvc_type_s* type, uint dimension)

Parameters

type spvc_type_s*
dimension uint

Returns

byte

spvc_type_get_array_dimension(spvc_type_s*, uint)

public static extern uint spvc_type_get_array_dimension(spvc_type_s* type, uint dimension)

Parameters

type spvc_type_s*
dimension uint

Returns

uint

spvc_type_get_base_type_id(spvc_type_s*)

public static extern uint spvc_type_get_base_type_id(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_basetype(spvc_type_s*)

public static extern spvc_basetype spvc_type_get_basetype(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

spvc_basetype

spvc_type_get_bit_width(spvc_type_s*)

public static extern uint spvc_type_get_bit_width(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_columns(spvc_type_s*)

public static extern uint spvc_type_get_columns(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_image_access_qualifier(spvc_type_s*)

public static extern SpvAccessQualifier_ spvc_type_get_image_access_qualifier(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

SpvAccessQualifier_

spvc_type_get_image_arrayed(spvc_type_s*)

public static extern byte spvc_type_get_image_arrayed(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

byte

spvc_type_get_image_dimension(spvc_type_s*)

public static extern SpvDim_ spvc_type_get_image_dimension(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

SpvDim_

spvc_type_get_image_is_depth(spvc_type_s*)

public static extern byte spvc_type_get_image_is_depth(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

byte

spvc_type_get_image_is_storage(spvc_type_s*)

public static extern byte spvc_type_get_image_is_storage(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

byte

spvc_type_get_image_multisampled(spvc_type_s*)

public static extern byte spvc_type_get_image_multisampled(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

byte

spvc_type_get_image_sampled_type(spvc_type_s*)

public static extern uint spvc_type_get_image_sampled_type(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_image_storage_format(spvc_type_s*)

public static extern SpvImageFormat_ spvc_type_get_image_storage_format(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

SpvImageFormat_

spvc_type_get_member_type(spvc_type_s*, uint)

public static extern uint spvc_type_get_member_type(spvc_type_s* type, uint index)

Parameters

type spvc_type_s*
index uint

Returns

uint

spvc_type_get_num_array_dimensions(spvc_type_s*)

public static extern uint spvc_type_get_num_array_dimensions(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_num_member_types(spvc_type_s*)

public static extern uint spvc_type_get_num_member_types(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint

spvc_type_get_storage_class(spvc_type_s*)

public static extern SpvStorageClass_ spvc_type_get_storage_class(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

SpvStorageClass_

spvc_type_get_vector_size(spvc_type_s*)

public static extern uint spvc_type_get_vector_size(spvc_type_s* type)

Parameters

type spvc_type_s*

Returns

uint