|
|
|
|
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ffi` mod in crate `spirv_reflect`."><meta name="keywords" content="rust, rustlang, rust-lang, ffi"><title>spirv_reflect::ffi - Rust</title><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../dark.css"><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script src="../../storage.js"></script><noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="shortcut icon" href="../../favicon.ico"><style type="text/css">#crate-search{background-image:url("../../down-arrow.svg");}</style></head><body class="rustdoc mod"><!--[if lte IE 8]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu">☰</div><a href='../../spirv_reflect/index.html'><div class='logo-container'><img src='../../rust-logo.png' alt='logo'></div></a><p class='location'>Module ffi</p><div class="sidebar-elems"><div class="block items"><ul><li><a href="#reexports">Re-exports</a></li><li><a href="#structs">Structs</a></li><li><a href="#constants">Constants</a></li><li><a href="#functions">Functions</a></li><li><a href="#types">Type Definitions</a></li></ul></div><p class='location'><a href='../index.html'>spirv_reflect</a></p><script>window.sidebarCurrent = {name: 'ffi', ty: 'mod', relpath: '../'};</script><script defer src="../sidebar-items.js"></script></div></nav><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!"><img src="../../brush.svg" width="18" alt="Pick another theme!"></button><div id="theme-choices"></div></div><script src="../../theme.js"></script><nav class="sub"><form class="search-form js-only"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press ‘S’ to search, ‘?’ for more options…" type="search"></div><a id="settings-menu" href="../../settings.html"><img src="../../wheel.svg" width="18" alt="Change settings"></a></div></form></nav><section id="main" class="content"><h1 class='fqn'><span class='out-of-band'><span id='render-detail'><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class='inner'>−</span>]</a></span><a class='srclink' href='../../src/spirv_reflect/ffi.rs.html#1-6' title='goto source code'>[src]</a></span><span class='in-band'>Module <a href='../index.html'>spirv_reflect</a>::<wbr><a class="mod" href=''>ffi</a></span></h1><h2 id='reexports' class='section-header'><a href="#reexports">Re-exports</a></h2>
|
|
|
|
|
<table><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvSourceLanguage_.html" title="type spirv_reflect::ffi::SpvSourceLanguage_">SpvSourceLanguage_</a> as SpvSourceLanguage;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvExecutionModel_.html" title="type spirv_reflect::ffi::SpvExecutionModel_">SpvExecutionModel_</a> as SpvExecutionModel;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvAddressingModel_.html" title="type spirv_reflect::ffi::SpvAddressingModel_">SpvAddressingModel_</a> as SpvAddressingModel;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvMemoryModel_.html" title="type spirv_reflect::ffi::SpvMemoryModel_">SpvMemoryModel_</a> as SpvMemoryModel;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvExecutionMode_.html" title="type spirv_reflect::ffi::SpvExecutionMode_">SpvExecutionMode_</a> as SpvExecutionMode;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvStorageClass_.html" title="type spirv_reflect::ffi::SpvStorageClass_">SpvStorageClass_</a> as SpvStorageClass;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvDim_.html" title="type spirv_reflect::ffi::SpvDim_">SpvDim_</a> as SpvDim;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvSamplerAddressingMode_.html" title="type spirv_reflect::ffi::SpvSamplerAddressingMode_">SpvSamplerAddressingMode_</a> as SpvSamplerAddressingMode;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvSamplerFilterMode_.html" title="type spirv_reflect::ffi::SpvSamplerFilterMode_">SpvSamplerFilterMode_</a> as SpvSamplerFilterMode;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvImageFormat_.html" title="type spirv_reflect::ffi::SpvImageFormat_">SpvImageFormat_</a> as SpvImageFormat;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvImageChannelOrder_.html" title="type spirv_reflect::ffi::SpvImageChannelOrder_">SpvImageChannelOrder_</a> as SpvImageChannelOrder;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvImageChannelDataType_.html" title="type spirv_reflect::ffi::SpvImageChannelDataType_">SpvImageChannelDataType_</a> as SpvImageChannelDataType;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvImageOperandsShift_.html" title="type spirv_reflect::ffi::SpvImageOperandsShift_">SpvImageOperandsShift_</a> as SpvImageOperandsShift;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvImageOperandsMask_.html" title="type spirv_reflect::ffi::SpvImageOperandsMask_">SpvImageOperandsMask_</a> as SpvImageOperandsMask;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvFPFastMathModeShift_.html" title="type spirv_reflect::ffi::SpvFPFastMathModeShift_">SpvFPFastMathModeShift_</a> as SpvFPFastMathModeShift;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvFPFastMathModeMask_.html" title="type spirv_reflect::ffi::SpvFPFastMathModeMask_">SpvFPFastMathModeMask_</a> as SpvFPFastMathModeMask;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvFPRoundingMode_.html" title="type spirv_reflect::ffi::SpvFPRoundingMode_">SpvFPRoundingMode_</a> as SpvFPRoundingMode;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvLinkageType_.html" title="type spirv_reflect::ffi::SpvLinkageType_">SpvLinkageType_</a> as SpvLinkageType;</code></td></tr><tr><td><code>pub use self::<a class="type" href="../../spirv_reflect/ffi/type.SpvAccessQualifier_.html" title="type spirv_reflect
|
|
|
|
|
<table><tr class='module-item'><td><a class="struct" href="struct.SpvReflectArrayTraits.html" title='spirv_reflect::ffi::SpvReflectArrayTraits struct'>SpvReflectArrayTraits</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectBindingArrayTraits.html" title='spirv_reflect::ffi::SpvReflectBindingArrayTraits struct'>SpvReflectBindingArrayTraits</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectBlockVariable.html" title='spirv_reflect::ffi::SpvReflectBlockVariable struct'>SpvReflectBlockVariable</a></td><td class='docblock-short'><p>@struct SpvReflectBlockVariable</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectDescriptorBinding.html" title='spirv_reflect::ffi::SpvReflectDescriptorBinding struct'>SpvReflectDescriptorBinding</a></td><td class='docblock-short'><p>@struct SpvReflectDescriptorBinding</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectDescriptorBinding__bindgen_ty_1.html" title='spirv_reflect::ffi::SpvReflectDescriptorBinding__bindgen_ty_1 struct'>SpvReflectDescriptorBinding__bindgen_ty_1</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectDescriptorSet.html" title='spirv_reflect::ffi::SpvReflectDescriptorSet struct'>SpvReflectDescriptorSet</a></td><td class='docblock-short'><p>@struct SpvReflectDescriptorSet</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectEntryPoint.html" title='spirv_reflect::ffi::SpvReflectEntryPoint struct'>SpvReflectEntryPoint</a></td><td class='docblock-short'><p>@struct SpvReflectEntryPoint</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectImageTraits.html" title='spirv_reflect::ffi::SpvReflectImageTraits struct'>SpvReflectImageTraits</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectInterfaceVariable.html" title='spirv_reflect::ffi::SpvReflectInterfaceVariable struct'>SpvReflectInterfaceVariable</a></td><td class='docblock-short'><p>@struct SpvReflectInterfaceVariable</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectInterfaceVariable__bindgen_ty_1.html" title='spirv_reflect::ffi::SpvReflectInterfaceVariable__bindgen_ty_1 struct'>SpvReflectInterfaceVariable__bindgen_ty_1</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectNumericTraits.html" title='spirv_reflect::ffi::SpvReflectNumericTraits struct'>SpvReflectNumericTraits</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectNumericTraits_Matrix.html" title='spirv_reflect::ffi::SpvReflectNumericTraits_Matrix struct'>SpvReflectNumericTraits_Matrix</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectNumericTraits_Scalar.html" title='spirv_reflect::ffi::SpvReflectNumericTraits_Scalar struct'>SpvReflectNumericTraits_Scalar</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectNumericTraits_Vector.html" title='spirv_reflect::ffi::SpvReflectNumericTraits_Vector struct'>SpvReflectNumericTraits_Vector</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectShaderModule.html" title='spirv_reflect::ffi::SpvReflectShaderModule struct'>SpvReflectShaderModule</a></td><td class='docblock-short'><p>@struct SpvReflectShaderModule</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectShaderModule_Internal.html" title='spirv_reflect::ffi::SpvReflectShaderModule_Internal struct'>SpvReflectShaderModule_Internal</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectTypeDescription.html" title='spirv_reflect::ffi::SpvReflectTypeDescription struct'>SpvReflectTypeDescription</a></td><td class='docblock-short'><p>@struct SpvReflectTypeDescription</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="struct" href="struct.SpvReflectTypeDescription_Traits.html" title='spirv_reflect::ffi::SpvReflectTypeDescription_Traits struct'>SpvReflectTypeDescription_Traits</a></td><td class='docblock-short'></td></tr></table><h2 id='constants' class='section-header'><a href="#constants">Constants</a></h2>
|
|
|
|
|
<table><tr class='module-item'><td><a class="constant" href="constant.SPV_REFLECT_BINDING_NUMBER_DONT_CHANGE.html" title='spirv_reflect::ffi::SPV_REFLECT_BINDING_NUMBER_DONT_CHANGE constant'>SPV_REFLECT_BINDING_NUMBER_DONT_CHANGE</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SPV_REFLECT_MAX_ARRAY_DIMS.html" title='spirv_reflect::ffi::SPV_REFLECT_MAX_ARRAY_DIMS constant'>SPV_REFLECT_MAX_ARRAY_DIMS</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SPV_REFLECT_MAX_DESCRIPTOR_SETS.html" title='spirv_reflect::ffi::SPV_REFLECT_MAX_DESCRIPTOR_SETS constant'>SPV_REFLECT_MAX_DESCRIPTOR_SETS</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SPV_REFLECT_SET_NUMBER_DONT_CHANGE.html" title='spirv_reflect::ffi::SPV_REFLECT_SET_NUMBER_DONT_CHANGE constant'>SPV_REFLECT_SET_NUMBER_DONT_CHANGE</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SPV_REVISION.html" title='spirv_reflect::ffi::SPV_REVISION constant'>SPV_REVISION</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SPV_VERSION.html" title='spirv_reflect::ffi::SPV_VERSION constant'>SPV_VERSION</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAccessQualifier__SpvAccessQualifierMax.html" title='spirv_reflect::ffi::SpvAccessQualifier__SpvAccessQualifierMax constant'>SpvAccessQualifier__SpvAccessQualifierMax</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAccessQualifier__SpvAccessQualifierReadOnly.html" title='spirv_reflect::ffi::SpvAccessQualifier__SpvAccessQualifierReadOnly constant'>SpvAccessQualifier__SpvAccessQualifierReadOnly</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAccessQualifier__SpvAccessQualifierReadWrite.html" title='spirv_reflect::ffi::SpvAccessQualifier__SpvAccessQualifierReadWrite constant'>SpvAccessQualifier__SpvAccessQualifierReadWrite</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAccessQualifier__SpvAccessQualifierWriteOnly.html" title='spirv_reflect::ffi::SpvAccessQualifier__SpvAccessQualifierWriteOnly constant'>SpvAccessQualifier__SpvAccessQualifierWriteOnly</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAddressingModel__SpvAddressingModelLogical.html" title='spirv_reflect::ffi::SpvAddressingModel__SpvAddressingModelLogical constant'>SpvAddressingModel__SpvAddressingModelLogical</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAddressingModel__SpvAddressingModelMax.html" title='spirv_reflect::ffi::SpvAddressingModel__SpvAddressingModelMax constant'>SpvAddressingModel__SpvAddressingModelMax</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAddressingModel__SpvAddressingModelPhysical32.html" title='spirv_reflect::ffi::SpvAddressingModel__SpvAddressingModelPhysical32 constant'>SpvAddressingModel__SpvAddressingModelPhysical32</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvAddressingModel__SpvAddressingModelPhysical64.html" title='spirv_reflect::ffi::SpvAddressingModel__SpvAddressingModelPhysical64 constant'>SpvAddressingModel__SpvAddressingModelPhysical64</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvBuiltIn__SpvBuiltInBaryCoordNV.html" title='spirv_reflect::ffi::SpvBuiltIn__SpvBuiltInBaryCoordNV constant'>SpvBuiltIn__SpvBuiltInBaryCoordNV</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="constant" href="constant.SpvBuiltIn__SpvBuiltInBaryCoordNoPerspAMD.html" title='spirv_reflect::f
|
|
|
|
|
<table><tr class='module-item'><td><a class="fn" href="fn.spvReflectChangeDescriptorBindingNumber.html" title='spirv_reflect::ffi::spvReflectChangeDescriptorBindingNumber fn'>spvReflectChangeDescriptorBindingNumber</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectChangeDescriptorBindingNumbers.html" title='spirv_reflect::ffi::spvReflectChangeDescriptorBindingNumbers fn'>spvReflectChangeDescriptorBindingNumbers</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectChangeDescriptorBindingNumbers
|
|
|
|
|
@brief Assign new set and/or binding numbers to a descriptor binding.
|
|
|
|
|
In addition to updating the reflection data, this function modifies
|
|
|
|
|
the underlying SPIR-V bytecode. The updated code can be retrieved
|
|
|
|
|
with spvReflectGetCode(). If the binding is used in multiple
|
|
|
|
|
entry points within the module, it will be changed in all of them.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_binding Pointer to the descriptor binding to modify.
|
|
|
|
|
@param new_binding_number The new binding number to assign to the
|
|
|
|
|
provided descriptor binding.
|
|
|
|
|
To leave the binding number unchanged, pass
|
|
|
|
|
SPV_REFLECT_BINDING_NUMBER_DONT_CHANGE.
|
|
|
|
|
@param new_set_number The new set number to assign to the
|
|
|
|
|
provided descriptor binding. Successfully changing
|
|
|
|
|
a descriptor binding's set number invalidates all
|
|
|
|
|
existing SpvReflectDescriptorBinding and
|
|
|
|
|
SpvReflectDescriptorSet pointers from this module.
|
|
|
|
|
To leave the set number unchanged, pass
|
|
|
|
|
SPV_REFLECT_SET_NUMBER_DONT_CHANGE.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of
|
|
|
|
|
the failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectChangeDescriptorSetNumber.html" title='spirv_reflect::ffi::spvReflectChangeDescriptorSetNumber fn'>spvReflectChangeDescriptorSetNumber</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectChangeDescriptorSetNumber
|
|
|
|
|
@brief Assign a new set number to an entire descriptor set (including
|
|
|
|
|
all descriptor bindings in that set).
|
|
|
|
|
In addition to updating the reflection data, this function modifies
|
|
|
|
|
the underlying SPIR-V bytecode. The updated code can be retrieved
|
|
|
|
|
with spvReflectGetCode(). If the descriptor set is used in
|
|
|
|
|
multiple entry points within the module, it will be modified in all
|
|
|
|
|
of them.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_set Pointer to the descriptor binding to modify.
|
|
|
|
|
@param new_set_number The new set number to assign to the
|
|
|
|
|
provided descriptor set, and all its descriptor
|
|
|
|
|
bindings. Successfully changing a descriptor
|
|
|
|
|
binding's set number invalidates all existing
|
|
|
|
|
SpvReflectDescriptorBinding and
|
|
|
|
|
SpvReflectDescriptorSet pointers from this module.
|
|
|
|
|
To leave the set number unchanged, pass
|
|
|
|
|
SPV_REFLECT_SET_NUMBER_DONT_CHANGE.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of
|
|
|
|
|
the failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectChangeInputVariableLocation.html" title='spirv_reflect::ffi::spvReflectChangeInputVariableLocation fn'>spvReflectChangeInputVariableLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectChangeInputVariableLocation
|
|
|
|
|
@brief Assign a new location to an input interface variable.
|
|
|
|
|
In addition to updating the reflection data, this function modifies
|
|
|
|
|
the underlying SPIR-V bytecode. The updated code can be retrieved
|
|
|
|
|
with spvReflectGetCode().
|
|
|
|
|
It is the caller's responsibility to avoid assigning the same
|
|
|
|
|
location to multiple input variables. If the input variable is used
|
|
|
|
|
by multiple entry points in the module, it will be changed in all of
|
|
|
|
|
them.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_input_variable Pointer to the input variable to update.
|
|
|
|
|
@param new_location The new location to assign to p_input_variable.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of
|
|
|
|
|
the failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectChangeOutputVariableLocation.html" title='spirv_reflect::ffi::spvReflectChangeOutputVariableLocation fn'>spvReflectChangeOutputVariableLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectChangeOutputVariableLocation
|
|
|
|
|
@brief Assign a new location to an output interface variable.
|
|
|
|
|
In addition to updating the reflection data, this function modifies
|
|
|
|
|
the underlying SPIR-V bytecode. The updated code can be retrieved
|
|
|
|
|
with spvReflectGetCode().
|
|
|
|
|
It is the caller's responsibility to avoid assigning the same
|
|
|
|
|
location to multiple output variables. If the output variable is used
|
|
|
|
|
by multiple entry points in the module, it will be changed in all of
|
|
|
|
|
them.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_output_variable Pointer to the output variable to update.
|
|
|
|
|
@param new_location The new location to assign to p_output_variable.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of
|
|
|
|
|
the failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectCreateShaderModule.html" title='spirv_reflect::ffi::spvReflectCreateShaderModule fn'>spvReflectCreateShaderModule</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectCreateShaderModule</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectDestroyShaderModule.html" title='spirv_reflect::ffi::spvReflectDestroyShaderModule fn'>spvReflectDestroyShaderModule</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectDestroyShaderModule</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateDescriptorBindings.html" title='spirv_reflect::ffi::spvReflectEnumerateDescriptorBindings fn'>spvReflectEnumerateDescriptorBindings</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateDescriptorBindings</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateDescriptorSets.html" title='spirv_reflect::ffi::spvReflectEnumerateDescriptorSets fn'>spvReflectEnumerateDescriptorSets</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateDescriptorSets</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateEntryPointDescriptorBindings.html" title='spirv_reflect::ffi::spvReflectEnumerateEntryPointDescriptorBindings fn'>spvReflectEnumerateEntryPointDescriptorBindings</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateEntryPointDescriptorBindings
|
|
|
|
|
@brief Creates a listing of all descriptor bindings that are used in the
|
|
|
|
|
static call tree of the given entry point.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param entry_point The name of the entry point to get the descriptor bindings for.
|
|
|
|
|
@param p_count If pp_bindings is NULL, the entry point's descriptor binding
|
|
|
|
|
count (across all descriptor sets) will be stored here.
|
|
|
|
|
If pp_bindings is not NULL, *p_count must contain the
|
|
|
|
|
entry points's descriptor binding count.
|
|
|
|
|
@param pp_bindings If NULL, the entry point's total descriptor binding count
|
|
|
|
|
will be written to *p_count.
|
|
|
|
|
If non-NULL, pp_bindings must point to an array with
|
|
|
|
|
p_count entries, where pointers to the entry point's
|
|
|
|
|
descriptor bindings will be written. The caller must not
|
|
|
|
|
free the binding pointers written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateEntryPointDescriptorSets.html" title='spirv_reflect::ffi::spvReflectEnumerateEntryPointDescriptorSets fn'>spvReflectEnumerateEntryPointDescriptorSets</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateEntryPointDescriptorSets
|
|
|
|
|
@brief Creates a listing of all descriptor sets and their bindings that are
|
|
|
|
|
used in the static call tree of a given entry point.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param entry_point The name of the entry point to get the descriptor bindings for.
|
|
|
|
|
@param p_count If pp_sets is NULL, the module's descriptor set
|
|
|
|
|
count will be stored here.
|
|
|
|
|
If pp_sets is not NULL, *p_count must contain the
|
|
|
|
|
module's descriptor set count.
|
|
|
|
|
@param pp_sets If NULL, the module's total descriptor set count
|
|
|
|
|
will be written to *p_count.
|
|
|
|
|
If non-NULL, pp_sets must point to an array with
|
|
|
|
|
p_count entries, where pointers to the module's
|
|
|
|
|
descriptor sets will be written. The caller must not
|
|
|
|
|
free the descriptor set pointers written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateEntryPointInputVariables.html" title='spirv_reflect::ffi::spvReflectEnumerateEntryPointInputVariables fn'>spvReflectEnumerateEntryPointInputVariables</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateEntryPointInputVariables
|
|
|
|
|
@brief Enumerate the input variables for a given entry point.
|
|
|
|
|
@param entry_point The name of the entry point to get the input variables for.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_count If pp_variables is NULL, the entry point's input variable
|
|
|
|
|
count will be stored here.
|
|
|
|
|
If pp_variables is not NULL, *p_count must contain
|
|
|
|
|
the entry point's input variable count.
|
|
|
|
|
@param pp_variables If NULL, the entry point's input variable count will be
|
|
|
|
|
written to *p_count.
|
|
|
|
|
If non-NULL, pp_variables must point to an array with
|
|
|
|
|
p_count entries, where pointers to the entry point's
|
|
|
|
|
input variables will be written. The caller must not
|
|
|
|
|
free the interface variables written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateEntryPointOutputVariables.html" title='spirv_reflect::ffi::spvReflectEnumerateEntryPointOutputVariables fn'>spvReflectEnumerateEntryPointOutputVariables</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateEntryPointOutputVariables
|
|
|
|
|
@brief Enumerate the output variables for a given entry point.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param entry_point The name of the entry point to get the output variables for.
|
|
|
|
|
@param p_count If pp_variables is NULL, the entry point's output variable
|
|
|
|
|
count will be stored here.
|
|
|
|
|
If pp_variables is not NULL, *p_count must contain
|
|
|
|
|
the entry point's output variable count.
|
|
|
|
|
@param pp_variables If NULL, the entry point's output variable count will be
|
|
|
|
|
written to *p_count.
|
|
|
|
|
If non-NULL, pp_variables must point to an array with
|
|
|
|
|
p_count entries, where pointers to the entry point's
|
|
|
|
|
output variables will be written. The caller must not
|
|
|
|
|
free the interface variables written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateEntryPointPushConstantBlocks.html" title='spirv_reflect::ffi::spvReflectEnumerateEntryPointPushConstantBlocks fn'>spvReflectEnumerateEntryPointPushConstantBlocks</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateEntryPointPushConstantBlocks
|
|
|
|
|
@brief Enumerate the push constant blocks used in the static call tree of a
|
|
|
|
|
given entry point.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_count If pp_blocks is NULL, the entry point's push constant
|
|
|
|
|
block count will be stored here.
|
|
|
|
|
If pp_blocks is not NULL, *p_count must
|
|
|
|
|
contain the entry point's push constant block count.
|
|
|
|
|
@param pp_blocks If NULL, the entry point's push constant block count
|
|
|
|
|
will be written to *p_count.
|
|
|
|
|
If non-NULL, pp_blocks must point to an
|
|
|
|
|
array with *p_count entries, where pointers to
|
|
|
|
|
the entry point's push constant blocks will be written.
|
|
|
|
|
The caller must not free the block variables written
|
|
|
|
|
to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateInputVariables.html" title='spirv_reflect::ffi::spvReflectEnumerateInputVariables fn'>spvReflectEnumerateInputVariables</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateInputVariables
|
|
|
|
|
@brief If the module contains multiple entry points, this will only get
|
|
|
|
|
the input variables for the first one.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_count If pp_variables is NULL, the module's input variable
|
|
|
|
|
count will be stored here.
|
|
|
|
|
If pp_variables is not NULL, *p_count must contain
|
|
|
|
|
the module's input variable count.
|
|
|
|
|
@param pp_variables If NULL, the module's input variable count will be
|
|
|
|
|
written to *p_count.
|
|
|
|
|
If non-NULL, pp_variables must point to an array with
|
|
|
|
|
p_count entries, where pointers to the module's
|
|
|
|
|
input variables will be written. The caller must not
|
|
|
|
|
free the interface variables written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumerateOutputVariables.html" title='spirv_reflect::ffi::spvReflectEnumerateOutputVariables fn'>spvReflectEnumerateOutputVariables</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumerateOutputVariables
|
|
|
|
|
@brief Note: If the module contains multiple entry points, this will only get
|
|
|
|
|
the output variables for the first one.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_count If pp_variables is NULL, the module's output variable
|
|
|
|
|
count will be stored here.
|
|
|
|
|
If pp_variables is not NULL, *p_count must contain
|
|
|
|
|
the module's output variable count.
|
|
|
|
|
@param pp_variables If NULL, the module's output variable count will be
|
|
|
|
|
written to *p_count.
|
|
|
|
|
If non-NULL, pp_variables must point to an array with
|
|
|
|
|
p_count entries, where pointers to the module's
|
|
|
|
|
output variables will be written. The caller must not
|
|
|
|
|
free the interface variables written to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumeratePushConstantBlocks.html" title='spirv_reflect::ffi::spvReflectEnumeratePushConstantBlocks fn'>spvReflectEnumeratePushConstantBlocks</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectEnumeratePushConstantBlocks
|
|
|
|
|
@brief Note: If the module contains multiple entry points, this will only get
|
|
|
|
|
the push constant blocks for the first one.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param p_count If pp_blocks is NULL, the module's push constant
|
|
|
|
|
block count will be stored here.
|
|
|
|
|
If pp_blocks is not NULL, *p_count must
|
|
|
|
|
contain the module's push constant block count.
|
|
|
|
|
@param pp_blocks If NULL, the module's push constant block count
|
|
|
|
|
will be written to *p_count.
|
|
|
|
|
If non-NULL, pp_blocks must point to an
|
|
|
|
|
array with *p_count entries, where pointers to
|
|
|
|
|
the module's push constant blocks will be written.
|
|
|
|
|
The caller must not free the block variables written
|
|
|
|
|
to this array.
|
|
|
|
|
@return If successful, returns SPV_REFLECT_RESULT_SUCCESS.
|
|
|
|
|
Otherwise, the error code indicates the cause of the
|
|
|
|
|
failure.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectEnumeratePushConstants.html" title='spirv_reflect::ffi::spvReflectEnumeratePushConstants fn'>spvReflectEnumeratePushConstants</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetCode.html" title='spirv_reflect::ffi::spvReflectGetCode fn'>spvReflectGetCode</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetCode</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetCodeSize.html" title='spirv_reflect::ffi::spvReflectGetCodeSize fn'>spvReflectGetCodeSize</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetCodeSize</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetDescriptorBinding.html" title='spirv_reflect::ffi::spvReflectGetDescriptorBinding fn'>spvReflectGetDescriptorBinding</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetDescriptorBinding</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetDescriptorSet.html" title='spirv_reflect::ffi::spvReflectGetDescriptorSet fn'>spvReflectGetDescriptorSet</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetDescriptorSet</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPoint.html" title='spirv_reflect::ffi::spvReflectGetEntryPoint fn'>spvReflectGetEntryPoint</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetEntryPoint</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointDescriptorBinding.html" title='spirv_reflect::ffi::spvReflectGetEntryPointDescriptorBinding fn'>spvReflectGetEntryPointDescriptorBinding</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetEntryPointDescriptorBinding
|
|
|
|
|
@brief Get the descriptor binding with the given binding number and set
|
|
|
|
|
number that is used in the static call tree of a certain entry
|
|
|
|
|
point.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param entry_point The entry point to get the binding from.
|
|
|
|
|
@param binding_number The "binding" value of the requested descriptor
|
|
|
|
|
binding.
|
|
|
|
|
@param set_number The "set" value of the requested descriptor binding.
|
|
|
|
|
@param p_result If successful, SPV_REFLECT_RESULT_SUCCESS will be
|
|
|
|
|
written to *p_result. Otherwise, a error code
|
|
|
|
|
indicating the cause of the failure will be stored
|
|
|
|
|
here.
|
|
|
|
|
@return If the entry point contains a descriptor binding that
|
|
|
|
|
matches the provided [binding_number, set_number]
|
|
|
|
|
values, a pointer to that binding is returned. The
|
|
|
|
|
caller must not free this pointer.
|
|
|
|
|
If no match can be found, or if an unrelated error
|
|
|
|
|
occurs, the return value will be NULL. Detailed
|
|
|
|
|
error results are written to *pResult.
|
|
|
|
|
@note If the entry point contains multiple desriptor bindings
|
|
|
|
|
with the same set and binding numbers, there are
|
|
|
|
|
no guarantees about which binding will be returned.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointDescriptorSet.html" title='spirv_reflect::ffi::spvReflectGetEntryPointDescriptorSet fn'>spvReflectGetEntryPointDescriptorSet</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetEntryPointDescriptorSet</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointInputVariableByLocation.html" title='spirv_reflect::ffi::spvReflectGetEntryPointInputVariableByLocation fn'>spvReflectGetEntryPointInputVariableByLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointInputVariableBySemantic.html" title='spirv_reflect::ffi::spvReflectGetEntryPointInputVariableBySemantic fn'>spvReflectGetEntryPointInputVariableBySemantic</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointOutputVariableByLocation.html" title='spirv_reflect::ffi::spvReflectGetEntryPointOutputVariableByLocation fn'>spvReflectGetEntryPointOutputVariableByLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointOutputVariableBySemantic.html" title='spirv_reflect::ffi::spvReflectGetEntryPointOutputVariableBySemantic fn'>spvReflectGetEntryPointOutputVariableBySemantic</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetEntryPointPushConstantBlock.html" title='spirv_reflect::ffi::spvReflectGetEntryPointPushConstantBlock fn'>spvReflectGetEntryPointPushConstantBlock</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetEntryPointPushConstantBlock
|
|
|
|
|
@brief Get the push constant block corresponding to the given entry point.
|
|
|
|
|
As by the Vulkan specification there can be no more than one push
|
|
|
|
|
constant block used by a given entry point, so if there is one it will
|
|
|
|
|
be returned, otherwise NULL will be returned.
|
|
|
|
|
@param p_module Pointer to an instance of SpvReflectShaderModule.
|
|
|
|
|
@param entry_point The entry point to get the push constant block from.
|
|
|
|
|
@param p_result If successful, SPV_REFLECT_RESULT_SUCCESS will be
|
|
|
|
|
written to *p_result. Otherwise, a error code
|
|
|
|
|
indicating the cause of the failure will be stored
|
|
|
|
|
here.
|
|
|
|
|
@return If the provided index is within range, a pointer to
|
|
|
|
|
the corresponding push constant block is returned.
|
|
|
|
|
The caller must not free this pointer.
|
|
|
|
|
If no match can be found, or if an unrelated error
|
|
|
|
|
occurs, the return value will be NULL. Detailed
|
|
|
|
|
error results are written to *pResult.</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetInputVariable.html" title='spirv_reflect::ffi::spvReflectGetInputVariable fn'>spvReflectGetInputVariable</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetInputVariableByLocation.html" title='spirv_reflect::ffi::spvReflectGetInputVariableByLocation fn'>spvReflectGetInputVariableByLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetInputVariableBySemantic.html" title='spirv_reflect::ffi::spvReflectGetInputVariableBySemantic fn'>spvReflectGetInputVariableBySemantic</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetOutputVariable.html" title='spirv_reflect::ffi::spvReflectGetOutputVariable fn'>spvReflectGetOutputVariable</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetOutputVariableByLocation.html" title='spirv_reflect::ffi::spvReflectGetOutputVariableByLocation fn'>spvReflectGetOutputVariableByLocation</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetOutputVariableBySemantic.html" title='spirv_reflect::ffi::spvReflectGetOutputVariableBySemantic fn'>spvReflectGetOutputVariableBySemantic</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetPushConstant.html" title='spirv_reflect::ffi::spvReflectGetPushConstant fn'>spvReflectGetPushConstant</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetPushConstantBlock.html" title='spirv_reflect::ffi::spvReflectGetPushConstantBlock fn'>spvReflectGetPushConstantBlock</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectGetPushConstantBlock</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectGetShaderModule.html" title='spirv_reflect::ffi::spvReflectGetShaderModule fn'>spvReflectGetShaderModule</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="fn" href="fn.spvReflectSourceLanguage.html" title='spirv_reflect::ffi::spvReflectSourceLanguage fn'>spvReflectSourceLanguage</a><a title='unsafe function' href='#'><sup>⚠</sup></a></td><td class='docblock-short'><p>@fn spvReflectSourceLanguage</p>
|
|
|
|
|
</td></tr></table><h2 id='types' class='section-header'><a href="#types">Type Definitions</a></h2>
|
|
|
|
|
<table><tr class='module-item'><td><a class="type" href="type.SpvAccessQualifier_.html" title='spirv_reflect::ffi::SpvAccessQualifier_ type'>SpvAccessQualifier_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvAddressingModel_.html" title='spirv_reflect::ffi::SpvAddressingModel_ type'>SpvAddressingModel_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvBuiltIn_.html" title='spirv_reflect::ffi::SpvBuiltIn_ type'>SpvBuiltIn_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvCapability_.html" title='spirv_reflect::ffi::SpvCapability_ type'>SpvCapability_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvDecoration_.html" title='spirv_reflect::ffi::SpvDecoration_ type'>SpvDecoration_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvDim_.html" title='spirv_reflect::ffi::SpvDim_ type'>SpvDim_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvExecutionMode_.html" title='spirv_reflect::ffi::SpvExecutionMode_ type'>SpvExecutionMode_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvExecutionModel_.html" title='spirv_reflect::ffi::SpvExecutionModel_ type'>SpvExecutionModel_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFPFastMathModeMask_.html" title='spirv_reflect::ffi::SpvFPFastMathModeMask_ type'>SpvFPFastMathModeMask_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFPFastMathModeShift_.html" title='spirv_reflect::ffi::SpvFPFastMathModeShift_ type'>SpvFPFastMathModeShift_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFPRoundingMode_.html" title='spirv_reflect::ffi::SpvFPRoundingMode_ type'>SpvFPRoundingMode_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFunctionControlMask_.html" title='spirv_reflect::ffi::SpvFunctionControlMask_ type'>SpvFunctionControlMask_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFunctionControlShift_.html" title='spirv_reflect::ffi::SpvFunctionControlShift_ type'>SpvFunctionControlShift_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvFunctionParameterAttribute_.html" title='spirv_reflect::ffi::SpvFunctionParameterAttribute_ type'>SpvFunctionParameterAttribute_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvGroupOperation_.html" title='spirv_reflect::ffi::SpvGroupOperation_ type'>SpvGroupOperation_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvId.html" title='spirv_reflect::ffi::SpvId type'>SpvId</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvImageChannelDataType_.html" title='spirv_reflect::ffi::SpvImageChannelDataType_ type'>SpvImageChannelDataType_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvImageChannelOrder_.html" title='spirv_reflect::ffi::SpvImageChannelOrder_ type'>SpvImageChannelOrder_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvImageFormat_.html" title='spirv_reflect::ffi::SpvImageFormat_ type'>SpvImageFormat_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvImageOperandsMask_.html" title='spirv_reflect::ffi::SpvImageOperandsMask_ type'>SpvImageOperandsMask_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvImageOperandsShift_.html" title='spirv_reflect::ffi::SpvImageOperandsShift_ type'>SpvImageOperandsShi
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectDecorationFlags.html" title='spirv_reflect::ffi::SpvReflectDecorationFlags type'>SpvReflectDecorationFlags</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectDescriptorType.html" title='spirv_reflect::ffi::SpvReflectDescriptorType type'>SpvReflectDescriptorType</a></td><td class='docblock-short'><p>@enum SpvReflectDescriptorType</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectFormat.html" title='spirv_reflect::ffi::SpvReflectFormat type'>SpvReflectFormat</a></td><td class='docblock-short'><p>@enum SpvReflectFormat</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectGenerator.html" title='spirv_reflect::ffi::SpvReflectGenerator type'>SpvReflectGenerator</a></td><td class='docblock-short'><p>@enum SpvReflectGenerator</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectResourceType.html" title='spirv_reflect::ffi::SpvReflectResourceType type'>SpvReflectResourceType</a></td><td class='docblock-short'><p>@enum SpvReflectResourceType</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectResult.html" title='spirv_reflect::ffi::SpvReflectResult type'>SpvReflectResult</a></td><td class='docblock-short'><p>@enum SpvReflectResult</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectShaderStageFlagBits.html" title='spirv_reflect::ffi::SpvReflectShaderStageFlagBits type'>SpvReflectShaderStageFlagBits</a></td><td class='docblock-short'><p>@enum SpvReflectShaderStageFlagBits</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectTypeFlagBits.html" title='spirv_reflect::ffi::SpvReflectTypeFlagBits type'>SpvReflectTypeFlagBits</a></td><td class='docblock-short'><p>@enum SpvReflectTypeFlagBits</p>
|
|
|
|
|
</td></tr><tr class='module-item'><td><a class="type" href="type.SpvReflectTypeFlags.html" title='spirv_reflect::ffi::SpvReflectTypeFlags type'>SpvReflectTypeFlags</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvSamplerAddressingMode_.html" title='spirv_reflect::ffi::SpvSamplerAddressingMode_ type'>SpvSamplerAddressingMode_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvSamplerFilterMode_.html" title='spirv_reflect::ffi::SpvSamplerFilterMode_ type'>SpvSamplerFilterMode_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvScope_.html" title='spirv_reflect::ffi::SpvScope_ type'>SpvScope_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvSelectionControlMask_.html" title='spirv_reflect::ffi::SpvSelectionControlMask_ type'>SpvSelectionControlMask_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvSelectionControlShift_.html" title='spirv_reflect::ffi::SpvSelectionControlShift_ type'>SpvSelectionControlShift_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvSourceLanguage_.html" title='spirv_reflect::ffi::SpvSourceLanguage_ type'>SpvSourceLanguage_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type.SpvStorageClass_.html" title='spirv_reflect::ffi::SpvStorageClass_ type'>SpvStorageClass_</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type._bindgen_ty_1.html" title='spirv_reflect::ffi::_bindgen_ty_1 type'>_bindgen_ty_1</a></td><td class='docblock-short'></td></tr><tr class='module-item'><td><a class="type" href="type._bindgen_ty_2.html" title='spirv_reflect::ffi::_bindgen_ty_2 type'>_bindgen_ty_2</a></td><td class='docblock-short'></td></tr></table></section><section id="search" class="content hidden"></section><section class="footer"></section><aside id="help" class="hidden"><div><h1 class="hidden">Help</h1><div class="shortcuts"><h2>Keyboard Shortcuts</h2><dl><dt><kbd>?</kbd></dt><dd>Show this help dialog</dd><dt><kbd>S</kbd></dt><dd>Focus the search field</dd><dt><kbd>↑</kbd></dt><dd>Move up in search results</dd><dt><kbd>↓</kbd></dt><dd>Move down in search results</dd><dt><kbd>↹</kbd></dt><dd>Switch tab</dd><dt><kbd>⏎</kbd></dt><dd>Go to active search result</dd><dt><kbd>+</kbd></dt><dd>Expand all sections</dd><dt><kbd>-</kbd></dt><dd>Collapse all sections</dd></dl></div><div class="infos"><h2>Search Tricks</h2><p>Prefix searches with a type followed by a colon (e.g., <code>fn:</code>) to restrict the search to a given type.</p><p>Accepted types are: <code>fn</code>, <code>mod</code>, <code>struct</code>, <code>enum</code>, <code>trait</code>, <code>type</code>, <code>macro</code>, and <code>const</code>.</p><p>Search functions by type signature (e.g., <code>vec -> usize</code> or <code>* -> vec</code>)</p><p>Search multiple things at once by splitting your query with comma (e.g., <code>str,u8</code> or <code>String,struct:Vec,test</code>)</p></div></div></aside><script>window.rootPath = "../../";window.currentCrate = "spirv_reflect";</script><script src="../../aliases.js"></script><script src="../../main.js"></script><script defer src="../../search-index.js"></script></body></html>
|