wren
Vulkan-based game engine
Loading...
Searching...
No Matches
spirv_reflect.cpp File Reference
#include "wren/reflect/spirv_reflect.h"
#include <assert.h>
#include <stdbool.h>
#include <string.h>
#include <stdlib.h>
Include dependency graph for spirv_reflect.cpp:

Classes

struct  SpvReflectPrvArrayTraits
 
struct  SpvReflectPrvImageTraits
 
struct  SpvReflectPrvNumberDecoration
 
struct  SpvReflectPrvStringDecoration
 
struct  SpvReflectPrvDecorations
 
struct  SpvReflectPrvNode
 
struct  SpvReflectPrvString
 
struct  SpvReflectPrvAccessedVariable
 
struct  SpvReflectPrvFunction
 
struct  SpvReflectPrvAccessChain
 
struct  SpvReflectPrvPhysicalPointerStruct
 
struct  SpvReflectPrvParser
 

Macros

#define FALLTHROUGH
 
#define SPV_REFLECT_ASSERT(COND)
 
#define IsNull(ptr)   (ptr == NULL)
 
#define IsNotNull(ptr)   (ptr != NULL)
 
#define SafeFree(ptr)
 
#define UNCHECKED_READU32(parser, word_offset, value)    { (void)ReadU32(parser, word_offset, (uint32_t*)&(value)); }
 
#define CHECKED_READU32(parser, word_offset, value)
 
#define CHECKED_READU32_CAST(parser, word_offset, cast_to_type, value)
 
#define IF_READU32(result, parser, word_offset, value)
 
#define IF_READU32_CAST(result, parser, word_offset, cast_to_type, value)
 

Typedefs

typedef struct SpvReflectPrvArrayTraits SpvReflectPrvArrayTraits
 
typedef struct SpvReflectPrvImageTraits SpvReflectPrvImageTraits
 
typedef struct SpvReflectPrvNumberDecoration SpvReflectPrvNumberDecoration
 
typedef struct SpvReflectPrvStringDecoration SpvReflectPrvStringDecoration
 
typedef struct SpvReflectPrvDecorations SpvReflectPrvDecorations
 
typedef struct SpvReflectPrvNode SpvReflectPrvNode
 
typedef struct SpvReflectPrvString SpvReflectPrvString
 
typedef struct SpvReflectPrvAccessedVariable SpvReflectPrvAccessedVariable
 
typedef struct SpvReflectPrvFunction SpvReflectPrvFunction
 
typedef struct SpvReflectPrvAccessChain SpvReflectPrvAccessChain
 
typedef struct SpvReflectPrvPhysicalPointerStruct SpvReflectPrvPhysicalPointerStruct
 
typedef struct SpvReflectPrvParser SpvReflectPrvParser
 

Enumerations

enum  {
  SPIRV_STARTING_WORD_INDEX = 5 , SPIRV_WORD_SIZE = sizeof(uint32_t) , SPIRV_BYTE_WIDTH = 8 , SPIRV_MINIMUM_FILE_SIZE = SPIRV_STARTING_WORD_INDEX * SPIRV_WORD_SIZE ,
  SPIRV_DATA_ALIGNMENT = 4 * SPIRV_WORD_SIZE , SPIRV_ACCESS_CHAIN_INDEX_OFFSET = 4
}
 
enum  { INVALID_VALUE = 0xFFFFFFFF }
 
enum  { MAX_NODE_NAME_LENGTH = 1024 , MAX_RECURSIVE_PHYSICAL_POINTER_CHECK = 128 }
 
enum  { IMAGE_SAMPLED = 1 , IMAGE_STORAGE = 2 }
 

Functions

static uint32_t Max (uint32_t a, uint32_t b)
 
static uint32_t Min (uint32_t a, uint32_t b)
 
static uint32_t RoundUp (uint32_t value, uint32_t multiple)
 
static int SortCompareUint32 (void const *a, void const *b)
 
static int SortCompareAccessedVariable (void const *a, void const *b)
 
static size_t DedupSortedUint32 (uint32_t *arr, size_t size)
 
static bool SearchSortedUint32 (uint32_t const *arr, size_t size, uint32_t target)
 
static SpvReflectResult IntersectSortedAccessedVariable (SpvReflectPrvAccessedVariable const *p_arr0, size_t arr0_size, uint32_t const *p_arr1, size_t arr1_size, uint32_t **pp_res, size_t *res_size)
 
static bool InRange (SpvReflectPrvParser const *p_parser, uint32_t index)
 
static SpvReflectResult ReadU32 (SpvReflectPrvParser *p_parser, uint32_t word_offset, uint32_t *p_value)
 
static SpvReflectResult ReadStr (SpvReflectPrvParser *p_parser, uint32_t word_offset, uint32_t word_index, uint32_t word_count, uint32_t *p_buf_size, char *p_buf)
 
static SpvReflectDecorationFlags ApplyDecorations (SpvReflectPrvDecorations const *p_decoration_fields)
 
static void ApplyNumericTraits (SpvReflectTypeDescription const *p_type, SpvReflectNumericTraits *p_numeric_traits)
 
static void ApplyArrayTraits (SpvReflectTypeDescription const *p_type, SpvReflectArrayTraits *p_array_traits)
 
static bool IsSpecConstant (SpvReflectPrvNode const *p_node)
 
static SpvReflectPrvNodeFindNode (SpvReflectPrvParser *p_parser, uint32_t result_id)
 
static SpvReflectTypeDescriptionFindType (SpvReflectShaderModule *p_module, uint32_t type_id)
 
static SpvReflectPrvAccessChainFindAccessChain (SpvReflectPrvParser *p_parser, uint32_t id)
 
static uint32_t FindBaseId (SpvReflectPrvParser *p_parser, SpvReflectPrvAccessChain *ac)
 
static SpvReflectBlockVariableGetRefBlkVar (SpvReflectPrvParser *p_parser, SpvReflectPrvAccessChain *ac)
 
bool IsPointerToPointer (SpvReflectPrvParser *p_parser, uint32_t type_id)
 
static SpvReflectResult CreateParser (size_t size, void *p_code, SpvReflectPrvParser *p_parser)
 
static void DestroyParser (SpvReflectPrvParser *p_parser)
 
static SpvReflectResult ParseNodes (SpvReflectPrvParser *p_parser)
 
static SpvReflectResult ParseStrings (SpvReflectPrvParser *p_parser)
 
static SpvReflectResult ParseSource (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseFunction (SpvReflectPrvParser *p_parser, SpvReflectPrvNode *p_func_node, SpvReflectPrvFunction *p_func, size_t first_label_index)
 
static int SortCompareFunctions (void const *a, void const *b)
 
static SpvReflectResult ParseFunctions (SpvReflectPrvParser *p_parser)
 
static SpvReflectResult ParseMemberCounts (SpvReflectPrvParser *p_parser)
 
static SpvReflectResult ParseNames (SpvReflectPrvParser *p_parser)
 
static bool UserTypeMatches (char const *user_type, char const *pattern)
 
static SpvReflectResult ParseDecorations (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult EnumerateAllUniforms (SpvReflectShaderModule *p_module, size_t *p_uniform_count, uint32_t **pp_uniforms)
 
static SpvReflectResult ParseType (SpvReflectPrvParser *p_parser, SpvReflectPrvNode *p_node, SpvReflectPrvDecorations *p_struct_member_decorations, SpvReflectShaderModule *p_module, SpvReflectTypeDescription *p_type)
 
static SpvReflectResult ParseTypes (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseCapabilities (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static int SortCompareDescriptorBinding (void const *a, void const *b)
 
static SpvReflectResult ParseDescriptorBindings (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseDescriptorType (SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseUAVCounterBindings (SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseDescriptorBlockVariable (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module, SpvReflectTypeDescription *p_type, SpvReflectBlockVariable *p_var)
 
static uint32_t GetPhysicalPointerStructSize (SpvReflectPrvParser *p_parser, uint32_t id)
 
static SpvReflectResult ParseDescriptorBlockVariableSizes (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module, bool is_parent_root, bool is_parent_aos, bool is_parent_rta, SpvReflectBlockVariable *p_var)
 
static void MarkSelfAndAllMemberVarsAsUsed (SpvReflectBlockVariable *p_var)
 
static SpvReflectResult ParseDescriptorBlockVariableUsage (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module, SpvReflectPrvAccessChain *p_access_chain, uint32_t index_index, SpvOp override_op_type, SpvReflectBlockVariable *p_var)
 
static SpvReflectResult ParseDescriptorBlocks (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseFormat (SpvReflectTypeDescription const *p_type, SpvReflectFormat *p_format)
 
static SpvReflectResult ParseInterfaceVariable (SpvReflectPrvParser *p_parser, SpvReflectPrvDecorations const *p_var_node_decorations, SpvReflectPrvDecorations const *p_type_node_decorations, SpvReflectShaderModule *p_module, SpvReflectTypeDescription *p_type, SpvReflectInterfaceVariable *p_var, bool *p_has_built_in)
 
static SpvReflectResult ParseInterfaceVariables (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module, SpvReflectEntryPoint *p_entry, uint32_t interface_variable_count, uint32_t *p_interface_variable_ids)
 
static SpvReflectResult EnumerateAllPushConstants (SpvReflectShaderModule *p_module, size_t *p_push_constant_count, uint32_t **p_push_constants)
 
static SpvReflectResult TraverseCallGraph (SpvReflectPrvParser *p_parser, SpvReflectPrvFunction *p_func, size_t *p_func_count, uint32_t *p_func_ids, uint32_t depth)
 
static uint32_t GetUint32Constant (SpvReflectPrvParser *p_parser, uint32_t id)
 
static bool HasByteAddressBufferOffset (SpvReflectPrvNode *p_node, SpvReflectDescriptorBinding *p_binding)
 
static SpvReflectResult ParseByteAddressBuffer (SpvReflectPrvParser *p_parser, SpvReflectPrvNode *p_node, SpvReflectDescriptorBinding *p_binding)
 
static SpvReflectResult ParseStaticallyUsedResources (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module, SpvReflectEntryPoint *p_entry, size_t uniform_count, uint32_t *uniforms, size_t push_constant_count, uint32_t *push_constants)
 
static SpvReflectResult ParseEntryPoints (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseExecutionModes (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParsePushConstantBlocks (SpvReflectPrvParser *p_parser, SpvReflectShaderModule *p_module)
 
static int SortCompareDescriptorSet (void const *a, void const *b)
 
static SpvReflectResult ParseEntrypointDescriptorSets (SpvReflectShaderModule *p_module)
 
static SpvReflectResult ParseDescriptorSets (SpvReflectShaderModule *p_module)
 
static SpvReflectResult DisambiguateStorageBufferSrvUav (SpvReflectShaderModule *p_module)
 
static SpvReflectResult SynchronizeDescriptorSets (SpvReflectShaderModule *p_module)
 
static SpvReflectResult CreateShaderModule (uint32_t flags, size_t size, void const *p_code, SpvReflectShaderModule *p_module)
 
SpvReflectResult spvReflectCreateShaderModule (size_t size, void const *p_code, SpvReflectShaderModule *p_module)
 
SpvReflectResult spvReflectCreateShaderModule2 (uint32_t flags, size_t size, void const *p_code, SpvReflectShaderModule *p_module)
 
SpvReflectResult spvReflectGetShaderModule (size_t size, void const *p_code, SpvReflectShaderModule *p_module)
 
static void SafeFreeTypes (SpvReflectTypeDescription *p_type)
 
static void SafeFreeBlockVariables (SpvReflectBlockVariable *p_block)
 
static void SafeFreeInterfaceVariable (SpvReflectInterfaceVariable *p_interface)
 
void spvReflectDestroyShaderModule (SpvReflectShaderModule *p_module)
 
uint32_t spvReflectGetCodeSize (SpvReflectShaderModule const *p_module)
 
uint32_t const * spvReflectGetCode (SpvReflectShaderModule const *p_module)
 
SpvReflectEntryPoint const * spvReflectGetEntryPoint (SpvReflectShaderModule const *p_module, char const *entry_point)
 
SpvReflectResult spvReflectEnumerateDescriptorBindings (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectDescriptorBinding **pp_bindings)
 
SpvReflectResult spvReflectEnumerateEntryPointDescriptorBindings (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectDescriptorBinding **pp_bindings)
 
SpvReflectResult spvReflectEnumerateDescriptorSets (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectDescriptorSet **pp_sets)
 
SpvReflectResult spvReflectEnumerateEntryPointDescriptorSets (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectDescriptorSet **pp_sets)
 
SpvReflectResult spvReflectEnumerateInterfaceVariables (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumerateEntryPointInterfaceVariables (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumerateInputVariables (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumerateEntryPointInputVariables (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumerateOutputVariables (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumerateEntryPointOutputVariables (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectInterfaceVariable **pp_variables)
 
SpvReflectResult spvReflectEnumeratePushConstantBlocks (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectBlockVariable **pp_blocks)
 
SpvReflectResult spvReflectEnumeratePushConstants (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectBlockVariable **pp_blocks)
 
SpvReflectResult spvReflectEnumerateEntryPointPushConstantBlocks (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t *p_count, SpvReflectBlockVariable **pp_blocks)
 
SpvReflectResult spvReflectEnumerateSpecializationConstants (SpvReflectShaderModule const *p_module, uint32_t *p_count, SpvReflectSpecializationConstant **pp_constants)
 
SpvReflectDescriptorBinding const * spvReflectGetDescriptorBinding (SpvReflectShaderModule const *p_module, uint32_t binding_number, uint32_t set_number, SpvReflectResult *p_result)
 
SpvReflectDescriptorBinding const * spvReflectGetEntryPointDescriptorBinding (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t binding_number, uint32_t set_number, SpvReflectResult *p_result)
 
SpvReflectDescriptorSet const * spvReflectGetDescriptorSet (SpvReflectShaderModule const *p_module, uint32_t set_number, SpvReflectResult *p_result)
 
SpvReflectDescriptorSet const * spvReflectGetEntryPointDescriptorSet (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t set_number, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetInputVariableByLocation (SpvReflectShaderModule const *p_module, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetInputVariable (SpvReflectShaderModule const *p_module, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetEntryPointInputVariableByLocation (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetInputVariableBySemantic (SpvReflectShaderModule const *p_module, char const *semantic, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetEntryPointInputVariableBySemantic (SpvReflectShaderModule const *p_module, char const *entry_point, char const *semantic, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetOutputVariableByLocation (SpvReflectShaderModule const *p_module, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetOutputVariable (SpvReflectShaderModule const *p_module, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetEntryPointOutputVariableByLocation (SpvReflectShaderModule const *p_module, char const *entry_point, uint32_t location, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetOutputVariableBySemantic (SpvReflectShaderModule const *p_module, char const *semantic, SpvReflectResult *p_result)
 
SpvReflectInterfaceVariable const * spvReflectGetEntryPointOutputVariableBySemantic (SpvReflectShaderModule const *p_module, char const *entry_point, char const *semantic, SpvReflectResult *p_result)
 
SpvReflectBlockVariable const * spvReflectGetPushConstantBlock (SpvReflectShaderModule const *p_module, uint32_t index, SpvReflectResult *p_result)
 
SpvReflectBlockVariable const * spvReflectGetPushConstant (SpvReflectShaderModule const *p_module, uint32_t index, SpvReflectResult *p_result)
 
SpvReflectBlockVariable const * spvReflectGetEntryPointPushConstantBlock (SpvReflectShaderModule const *p_module, char const *entry_point, SpvReflectResult *p_result)
 
SpvReflectResult spvReflectChangeDescriptorBindingNumbers (SpvReflectShaderModule *p_module, SpvReflectDescriptorBinding const *p_binding, uint32_t new_binding_number, uint32_t new_set_binding)
 
SpvReflectResult spvReflectChangeDescriptorBindingNumber (SpvReflectShaderModule *p_module, SpvReflectDescriptorBinding const *p_descriptor_binding, uint32_t new_binding_number, uint32_t optional_new_set_number)
 
SpvReflectResult spvReflectChangeDescriptorSetNumber (SpvReflectShaderModule *p_module, SpvReflectDescriptorSet const *p_set, uint32_t new_set_number)
 
static SpvReflectResult ChangeVariableLocation (SpvReflectShaderModule *p_module, SpvReflectInterfaceVariable *p_variable, uint32_t new_location)
 
SpvReflectResult spvReflectChangeInputVariableLocation (SpvReflectShaderModule *p_module, SpvReflectInterfaceVariable const *p_input_variable, uint32_t new_location)
 
SpvReflectResult spvReflectChangeOutputVariableLocation (SpvReflectShaderModule *p_module, SpvReflectInterfaceVariable const *p_output_variable, uint32_t new_location)
 
char const * spvReflectSourceLanguage (SpvSourceLanguage source_lang)
 
char const * spvReflectBlockVariableTypeName (SpvReflectBlockVariable const *p_var)
 

Macro Definition Documentation

◆ CHECKED_READU32

#define CHECKED_READU32 ( parser,
word_offset,
value )
Value:
{ \
SpvReflectResult checked_readu32_result = \
ReadU32(parser, word_offset, (uint32_t*)&(value)); \
if (checked_readu32_result != SPV_REFLECT_RESULT_SUCCESS) { \
return checked_readu32_result; \
} \
}
SpvReflectResult
Definition spirv_reflect.h:56
@ SPV_REFLECT_RESULT_SUCCESS
Definition spirv_reflect.h:57

◆ CHECKED_READU32_CAST

#define CHECKED_READU32_CAST ( parser,
word_offset,
cast_to_type,
value )
Value:
{ \
uint32_t checked_readu32_cast_u32 = UINT32_MAX; \
SpvReflectResult checked_readu32_cast_result = \
ReadU32(parser, word_offset, \
(uint32_t*)&(checked_readu32_cast_u32)); \
if (checked_readu32_cast_result != SPV_REFLECT_RESULT_SUCCESS) { \
return checked_readu32_cast_result; \
} \
value = (cast_to_type)checked_readu32_cast_u32; \
}

◆ FALLTHROUGH

#define FALLTHROUGH

◆ IF_READU32

#define IF_READU32 ( result,
parser,
word_offset,
value )
Value:
if ((result) == SPV_REFLECT_RESULT_SUCCESS) { \
result = ReadU32(parser, word_offset, (uint32_t*)&(value)); \
}
static SpvReflectResult ReadU32(SpvReflectPrvParser *p_parser, uint32_t word_offset, uint32_t *p_value)
Definition spirv_reflect.cpp:364

◆ IF_READU32_CAST

#define IF_READU32_CAST ( result,
parser,
word_offset,
cast_to_type,
value )
Value:
if ((result) == SPV_REFLECT_RESULT_SUCCESS) { \
uint32_t if_readu32_cast_u32 = UINT32_MAX; \
result = ReadU32(parser, word_offset, &if_readu32_cast_u32); \
if ((result) == SPV_REFLECT_RESULT_SUCCESS) { \
value = (cast_to_type)if_readu32_cast_u32; \
} \
}

◆ IsNotNull

#define IsNotNull ( ptr)    (ptr != NULL)

◆ IsNull

#define IsNull ( ptr)    (ptr == NULL)

◆ SafeFree

#define SafeFree ( ptr)
Value:
{ \
free((void*)ptr); \
ptr = NULL; \
}

◆ SPV_REFLECT_ASSERT

#define SPV_REFLECT_ASSERT ( COND)

◆ UNCHECKED_READU32

#define UNCHECKED_READU32 ( parser,
word_offset,
value )    { (void)ReadU32(parser, word_offset, (uint32_t*)&(value)); }

Typedef Documentation

◆ SpvReflectPrvAccessChain

typedef struct SpvReflectPrvAccessChain SpvReflectPrvAccessChain

◆ SpvReflectPrvAccessedVariable

typedef struct SpvReflectPrvAccessedVariable SpvReflectPrvAccessedVariable

◆ SpvReflectPrvArrayTraits

typedef struct SpvReflectPrvArrayTraits SpvReflectPrvArrayTraits

◆ SpvReflectPrvDecorations

typedef struct SpvReflectPrvDecorations SpvReflectPrvDecorations

◆ SpvReflectPrvFunction

typedef struct SpvReflectPrvFunction SpvReflectPrvFunction

◆ SpvReflectPrvImageTraits

typedef struct SpvReflectPrvImageTraits SpvReflectPrvImageTraits

◆ SpvReflectPrvNode

typedef struct SpvReflectPrvNode SpvReflectPrvNode

◆ SpvReflectPrvNumberDecoration

typedef struct SpvReflectPrvNumberDecoration SpvReflectPrvNumberDecoration

◆ SpvReflectPrvParser

typedef struct SpvReflectPrvParser SpvReflectPrvParser

◆ SpvReflectPrvPhysicalPointerStruct

typedef struct SpvReflectPrvPhysicalPointerStruct SpvReflectPrvPhysicalPointerStruct

◆ SpvReflectPrvString

typedef struct SpvReflectPrvString SpvReflectPrvString

◆ SpvReflectPrvStringDecoration

typedef struct SpvReflectPrvStringDecoration SpvReflectPrvStringDecoration

Enumeration Type Documentation

◆ anonymous enum

anonymous enum
Enumerator
SPIRV_STARTING_WORD_INDEX 
SPIRV_WORD_SIZE 
SPIRV_BYTE_WIDTH 
SPIRV_MINIMUM_FILE_SIZE 
SPIRV_DATA_ALIGNMENT 
SPIRV_ACCESS_CHAIN_INDEX_OFFSET 

◆ anonymous enum

anonymous enum
Enumerator
INVALID_VALUE 

◆ anonymous enum

anonymous enum
Enumerator
MAX_NODE_NAME_LENGTH 
MAX_RECURSIVE_PHYSICAL_POINTER_CHECK 

◆ anonymous enum

anonymous enum
Enumerator
IMAGE_SAMPLED 
IMAGE_STORAGE 

Function Documentation

◆ ApplyArrayTraits()

static void ApplyArrayTraits ( SpvReflectTypeDescription const * p_type,
SpvReflectArrayTraits * p_array_traits )
static
Here is the caller graph for this function:

◆ ApplyDecorations()

static SpvReflectDecorationFlags ApplyDecorations ( SpvReflectPrvDecorations const * p_decoration_fields)
static
Here is the caller graph for this function:

◆ ApplyNumericTraits()

static void ApplyNumericTraits ( SpvReflectTypeDescription const * p_type,
SpvReflectNumericTraits * p_numeric_traits )
static
Here is the caller graph for this function:

◆ ChangeVariableLocation()

static SpvReflectResult ChangeVariableLocation ( SpvReflectShaderModule * p_module,
SpvReflectInterfaceVariable * p_variable,
uint32_t new_location )
static
Here is the caller graph for this function:

◆ CreateParser()

static SpvReflectResult CreateParser ( size_t size,
void * p_code,
SpvReflectPrvParser * p_parser )
static
Here is the caller graph for this function:

◆ CreateShaderModule()

static SpvReflectResult CreateShaderModule ( uint32_t flags,
size_t size,
void const * p_code,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ DedupSortedUint32()

static size_t DedupSortedUint32 ( uint32_t * arr,
size_t size )
static
Here is the caller graph for this function:

◆ DestroyParser()

static void DestroyParser ( SpvReflectPrvParser * p_parser)
static
Here is the caller graph for this function:

◆ DisambiguateStorageBufferSrvUav()

static SpvReflectResult DisambiguateStorageBufferSrvUav ( SpvReflectShaderModule * p_module)
static
Here is the caller graph for this function:

◆ EnumerateAllPushConstants()

static SpvReflectResult EnumerateAllPushConstants ( SpvReflectShaderModule * p_module,
size_t * p_push_constant_count,
uint32_t ** p_push_constants )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ EnumerateAllUniforms()

static SpvReflectResult EnumerateAllUniforms ( SpvReflectShaderModule * p_module,
size_t * p_uniform_count,
uint32_t ** pp_uniforms )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindAccessChain()

static SpvReflectPrvAccessChain * FindAccessChain ( SpvReflectPrvParser * p_parser,
uint32_t id )
static
Here is the caller graph for this function:

◆ FindBaseId()

static uint32_t FindBaseId ( SpvReflectPrvParser * p_parser,
SpvReflectPrvAccessChain * ac )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ FindNode()

static SpvReflectPrvNode * FindNode ( SpvReflectPrvParser * p_parser,
uint32_t result_id )
static
Here is the caller graph for this function:

◆ FindType()

static SpvReflectTypeDescription * FindType ( SpvReflectShaderModule * p_module,
uint32_t type_id )
static
Here is the caller graph for this function:

◆ GetPhysicalPointerStructSize()

static uint32_t GetPhysicalPointerStructSize ( SpvReflectPrvParser * p_parser,
uint32_t id )
static
Here is the caller graph for this function:

◆ GetRefBlkVar()

static SpvReflectBlockVariable * GetRefBlkVar ( SpvReflectPrvParser * p_parser,
SpvReflectPrvAccessChain * ac )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ GetUint32Constant()

static uint32_t GetUint32Constant ( SpvReflectPrvParser * p_parser,
uint32_t id )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ HasByteAddressBufferOffset()

static bool HasByteAddressBufferOffset ( SpvReflectPrvNode * p_node,
SpvReflectDescriptorBinding * p_binding )
static
Here is the caller graph for this function:

◆ InRange()

static bool InRange ( SpvReflectPrvParser const * p_parser,
uint32_t index )
static
Here is the caller graph for this function:

◆ IntersectSortedAccessedVariable()

static SpvReflectResult IntersectSortedAccessedVariable ( SpvReflectPrvAccessedVariable const * p_arr0,
size_t arr0_size,
uint32_t const * p_arr1,
size_t arr1_size,
uint32_t ** pp_res,
size_t * res_size )
static
Here is the caller graph for this function:

◆ IsPointerToPointer()

bool IsPointerToPointer ( SpvReflectPrvParser * p_parser,
uint32_t type_id )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ IsSpecConstant()

static bool IsSpecConstant ( SpvReflectPrvNode const * p_node)
static
Here is the caller graph for this function:

◆ MarkSelfAndAllMemberVarsAsUsed()

static void MarkSelfAndAllMemberVarsAsUsed ( SpvReflectBlockVariable * p_var)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ Max()

static uint32_t Max ( uint32_t a,
uint32_t b )
static
Here is the caller graph for this function:

◆ Min()

static uint32_t Min ( uint32_t a,
uint32_t b )
static
Here is the caller graph for this function:

◆ ParseByteAddressBuffer()

static SpvReflectResult ParseByteAddressBuffer ( SpvReflectPrvParser * p_parser,
SpvReflectPrvNode * p_node,
SpvReflectDescriptorBinding * p_binding )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseCapabilities()

static SpvReflectResult ParseCapabilities ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the caller graph for this function:

◆ ParseDecorations()

static SpvReflectResult ParseDecorations ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorBindings()

static SpvReflectResult ParseDescriptorBindings ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorBlocks()

static SpvReflectResult ParseDescriptorBlocks ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorBlockVariable()

static SpvReflectResult ParseDescriptorBlockVariable ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module,
SpvReflectTypeDescription * p_type,
SpvReflectBlockVariable * p_var )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorBlockVariableSizes()

static SpvReflectResult ParseDescriptorBlockVariableSizes ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module,
bool is_parent_root,
bool is_parent_aos,
bool is_parent_rta,
SpvReflectBlockVariable * p_var )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorBlockVariableUsage()

static SpvReflectResult ParseDescriptorBlockVariableUsage ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module,
SpvReflectPrvAccessChain * p_access_chain,
uint32_t index_index,
SpvOp override_op_type,
SpvReflectBlockVariable * p_var )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorSets()

static SpvReflectResult ParseDescriptorSets ( SpvReflectShaderModule * p_module)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseDescriptorType()

static SpvReflectResult ParseDescriptorType ( SpvReflectShaderModule * p_module)
static
Here is the caller graph for this function:

◆ ParseEntrypointDescriptorSets()

static SpvReflectResult ParseEntrypointDescriptorSets ( SpvReflectShaderModule * p_module)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseEntryPoints()

static SpvReflectResult ParseEntryPoints ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseExecutionModes()

static SpvReflectResult ParseExecutionModes ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseFormat()

static SpvReflectResult ParseFormat ( SpvReflectTypeDescription const * p_type,
SpvReflectFormat * p_format )
static
Here is the caller graph for this function:

◆ ParseFunction()

static SpvReflectResult ParseFunction ( SpvReflectPrvParser * p_parser,
SpvReflectPrvNode * p_func_node,
SpvReflectPrvFunction * p_func,
size_t first_label_index )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseFunctions()

static SpvReflectResult ParseFunctions ( SpvReflectPrvParser * p_parser)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseInterfaceVariable()

static SpvReflectResult ParseInterfaceVariable ( SpvReflectPrvParser * p_parser,
SpvReflectPrvDecorations const * p_var_node_decorations,
SpvReflectPrvDecorations const * p_type_node_decorations,
SpvReflectShaderModule * p_module,
SpvReflectTypeDescription * p_type,
SpvReflectInterfaceVariable * p_var,
bool * p_has_built_in )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseInterfaceVariables()

static SpvReflectResult ParseInterfaceVariables ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module,
SpvReflectEntryPoint * p_entry,
uint32_t interface_variable_count,
uint32_t * p_interface_variable_ids )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseMemberCounts()

static SpvReflectResult ParseMemberCounts ( SpvReflectPrvParser * p_parser)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseNames()

static SpvReflectResult ParseNames ( SpvReflectPrvParser * p_parser)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseNodes()

static SpvReflectResult ParseNodes ( SpvReflectPrvParser * p_parser)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParsePushConstantBlocks()

static SpvReflectResult ParsePushConstantBlocks ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseSource()

static SpvReflectResult ParseSource ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the caller graph for this function:

◆ ParseStaticallyUsedResources()

static SpvReflectResult ParseStaticallyUsedResources ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module,
SpvReflectEntryPoint * p_entry,
size_t uniform_count,
uint32_t * uniforms,
size_t push_constant_count,
uint32_t * push_constants )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseStrings()

static SpvReflectResult ParseStrings ( SpvReflectPrvParser * p_parser)
static
Here is the caller graph for this function:

◆ ParseType()

static SpvReflectResult ParseType ( SpvReflectPrvParser * p_parser,
SpvReflectPrvNode * p_node,
SpvReflectPrvDecorations * p_struct_member_decorations,
SpvReflectShaderModule * p_module,
SpvReflectTypeDescription * p_type )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseTypes()

static SpvReflectResult ParseTypes ( SpvReflectPrvParser * p_parser,
SpvReflectShaderModule * p_module )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseUAVCounterBindings()

static SpvReflectResult ParseUAVCounterBindings ( SpvReflectShaderModule * p_module)
static
Here is the caller graph for this function:

◆ ReadStr()

static SpvReflectResult ReadStr ( SpvReflectPrvParser * p_parser,
uint32_t word_offset,
uint32_t word_index,
uint32_t word_count,
uint32_t * p_buf_size,
char * p_buf )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadU32()

static SpvReflectResult ReadU32 ( SpvReflectPrvParser * p_parser,
uint32_t word_offset,
uint32_t * p_value )
static
Here is the call graph for this function:

◆ RoundUp()

static uint32_t RoundUp ( uint32_t value,
uint32_t multiple )
static
Here is the caller graph for this function:

◆ SafeFreeBlockVariables()

static void SafeFreeBlockVariables ( SpvReflectBlockVariable * p_block)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SafeFreeInterfaceVariable()

static void SafeFreeInterfaceVariable ( SpvReflectInterfaceVariable * p_interface)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SafeFreeTypes()

static void SafeFreeTypes ( SpvReflectTypeDescription * p_type)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ SearchSortedUint32()

static bool SearchSortedUint32 ( uint32_t const * arr,
size_t size,
uint32_t target )
static
Here is the caller graph for this function:

◆ SortCompareAccessedVariable()

static int SortCompareAccessedVariable ( void const * a,
void const * b )
static
Here is the caller graph for this function:

◆ SortCompareDescriptorBinding()

static int SortCompareDescriptorBinding ( void const * a,
void const * b )
static
Here is the caller graph for this function:

◆ SortCompareDescriptorSet()

static int SortCompareDescriptorSet ( void const * a,
void const * b )
static
Here is the caller graph for this function:

◆ SortCompareFunctions()

static int SortCompareFunctions ( void const * a,
void const * b )
static
Here is the caller graph for this function:

◆ SortCompareUint32()

static int SortCompareUint32 ( void const * a,
void const * b )
static
Here is the caller graph for this function:

◆ spvReflectBlockVariableTypeName()

char const * spvReflectBlockVariableTypeName ( SpvReflectBlockVariable const * p_var)

◆ spvReflectChangeDescriptorBindingNumber()

SpvReflectResult spvReflectChangeDescriptorBindingNumber ( SpvReflectShaderModule * p_module,
SpvReflectDescriptorBinding const * p_descriptor_binding,
uint32_t new_binding_number,
uint32_t optional_new_set_number )
Here is the call graph for this function:

◆ spvReflectChangeDescriptorBindingNumbers()

SpvReflectResult spvReflectChangeDescriptorBindingNumbers ( SpvReflectShaderModule * p_module,
SpvReflectDescriptorBinding const * p_binding,
uint32_t new_binding_number,
uint32_t new_set_binding )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ spvReflectChangeDescriptorSetNumber()

SpvReflectResult spvReflectChangeDescriptorSetNumber ( SpvReflectShaderModule * p_module,
SpvReflectDescriptorSet const * p_set,
uint32_t new_set_number )
Here is the call graph for this function:

◆ spvReflectChangeInputVariableLocation()

SpvReflectResult spvReflectChangeInputVariableLocation ( SpvReflectShaderModule * p_module,
SpvReflectInterfaceVariable const * p_input_variable,
uint32_t new_location )
Here is the call graph for this function:

◆ spvReflectChangeOutputVariableLocation()

SpvReflectResult spvReflectChangeOutputVariableLocation ( SpvReflectShaderModule * p_module,
SpvReflectInterfaceVariable const * p_output_variable,
uint32_t new_location )
Here is the call graph for this function:

◆ spvReflectCreateShaderModule()

SpvReflectResult spvReflectCreateShaderModule ( size_t size,
void const * p_code,
SpvReflectShaderModule * p_module )
Here is the call graph for this function:
Here is the caller graph for this function:

◆ spvReflectCreateShaderModule2()

SpvReflectResult spvReflectCreateShaderModule2 ( uint32_t flags,
size_t size,
void const * p_code,
SpvReflectShaderModule * p_module )
Here is the call graph for this function:

◆ spvReflectDestroyShaderModule()

void spvReflectDestroyShaderModule ( SpvReflectShaderModule * p_module)
Here is the call graph for this function:
Here is the caller graph for this function:

◆ spvReflectEnumerateDescriptorBindings()

SpvReflectResult spvReflectEnumerateDescriptorBindings ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectDescriptorBinding ** pp_bindings )

◆ spvReflectEnumerateDescriptorSets()

SpvReflectResult spvReflectEnumerateDescriptorSets ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectDescriptorSet ** pp_sets )

◆ spvReflectEnumerateEntryPointDescriptorBindings()

SpvReflectResult spvReflectEnumerateEntryPointDescriptorBindings ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectDescriptorBinding ** pp_bindings )
Here is the call graph for this function:

◆ spvReflectEnumerateEntryPointDescriptorSets()

SpvReflectResult spvReflectEnumerateEntryPointDescriptorSets ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectDescriptorSet ** pp_sets )
Here is the call graph for this function:

◆ spvReflectEnumerateEntryPointInputVariables()

SpvReflectResult spvReflectEnumerateEntryPointInputVariables ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )
Here is the call graph for this function:

◆ spvReflectEnumerateEntryPointInterfaceVariables()

SpvReflectResult spvReflectEnumerateEntryPointInterfaceVariables ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )
Here is the call graph for this function:

◆ spvReflectEnumerateEntryPointOutputVariables()

SpvReflectResult spvReflectEnumerateEntryPointOutputVariables ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )
Here is the call graph for this function:

◆ spvReflectEnumerateEntryPointPushConstantBlocks()

SpvReflectResult spvReflectEnumerateEntryPointPushConstantBlocks ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t * p_count,
SpvReflectBlockVariable ** pp_blocks )
Here is the call graph for this function:

◆ spvReflectEnumerateInputVariables()

SpvReflectResult spvReflectEnumerateInputVariables ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )

◆ spvReflectEnumerateInterfaceVariables()

SpvReflectResult spvReflectEnumerateInterfaceVariables ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )

◆ spvReflectEnumerateOutputVariables()

SpvReflectResult spvReflectEnumerateOutputVariables ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectInterfaceVariable ** pp_variables )

◆ spvReflectEnumeratePushConstantBlocks()

SpvReflectResult spvReflectEnumeratePushConstantBlocks ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectBlockVariable ** pp_blocks )
Here is the caller graph for this function:

◆ spvReflectEnumeratePushConstants()

SpvReflectResult spvReflectEnumeratePushConstants ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectBlockVariable ** pp_blocks )
Here is the call graph for this function:

◆ spvReflectEnumerateSpecializationConstants()

SpvReflectResult spvReflectEnumerateSpecializationConstants ( SpvReflectShaderModule const * p_module,
uint32_t * p_count,
SpvReflectSpecializationConstant ** pp_constants )

◆ spvReflectGetCode()

uint32_t const * spvReflectGetCode ( SpvReflectShaderModule const * p_module)

◆ spvReflectGetCodeSize()

uint32_t spvReflectGetCodeSize ( SpvReflectShaderModule const * p_module)

◆ spvReflectGetDescriptorBinding()

SpvReflectDescriptorBinding const * spvReflectGetDescriptorBinding ( SpvReflectShaderModule const * p_module,
uint32_t binding_number,
uint32_t set_number,
SpvReflectResult * p_result )

◆ spvReflectGetDescriptorSet()

SpvReflectDescriptorSet const * spvReflectGetDescriptorSet ( SpvReflectShaderModule const * p_module,
uint32_t set_number,
SpvReflectResult * p_result )

◆ spvReflectGetEntryPoint()

SpvReflectEntryPoint const * spvReflectGetEntryPoint ( SpvReflectShaderModule const * p_module,
char const * entry_point )
Here is the caller graph for this function:

◆ spvReflectGetEntryPointDescriptorBinding()

SpvReflectDescriptorBinding const * spvReflectGetEntryPointDescriptorBinding ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t binding_number,
uint32_t set_number,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointDescriptorSet()

SpvReflectDescriptorSet const * spvReflectGetEntryPointDescriptorSet ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t set_number,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointInputVariableByLocation()

SpvReflectInterfaceVariable const * spvReflectGetEntryPointInputVariableByLocation ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t location,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointInputVariableBySemantic()

SpvReflectInterfaceVariable const * spvReflectGetEntryPointInputVariableBySemantic ( SpvReflectShaderModule const * p_module,
char const * entry_point,
char const * semantic,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointOutputVariableByLocation()

SpvReflectInterfaceVariable const * spvReflectGetEntryPointOutputVariableByLocation ( SpvReflectShaderModule const * p_module,
char const * entry_point,
uint32_t location,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointOutputVariableBySemantic()

SpvReflectInterfaceVariable const * spvReflectGetEntryPointOutputVariableBySemantic ( SpvReflectShaderModule const * p_module,
char const * entry_point,
char const * semantic,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetEntryPointPushConstantBlock()

SpvReflectBlockVariable const * spvReflectGetEntryPointPushConstantBlock ( SpvReflectShaderModule const * p_module,
char const * entry_point,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetInputVariable()

SpvReflectInterfaceVariable const * spvReflectGetInputVariable ( SpvReflectShaderModule const * p_module,
uint32_t location,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetInputVariableByLocation()

SpvReflectInterfaceVariable const * spvReflectGetInputVariableByLocation ( SpvReflectShaderModule const * p_module,
uint32_t location,
SpvReflectResult * p_result )
Here is the caller graph for this function:

◆ spvReflectGetInputVariableBySemantic()

SpvReflectInterfaceVariable const * spvReflectGetInputVariableBySemantic ( SpvReflectShaderModule const * p_module,
char const * semantic,
SpvReflectResult * p_result )

◆ spvReflectGetOutputVariable()

SpvReflectInterfaceVariable const * spvReflectGetOutputVariable ( SpvReflectShaderModule const * p_module,
uint32_t location,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetOutputVariableByLocation()

SpvReflectInterfaceVariable const * spvReflectGetOutputVariableByLocation ( SpvReflectShaderModule const * p_module,
uint32_t location,
SpvReflectResult * p_result )
Here is the caller graph for this function:

◆ spvReflectGetOutputVariableBySemantic()

SpvReflectInterfaceVariable const * spvReflectGetOutputVariableBySemantic ( SpvReflectShaderModule const * p_module,
char const * semantic,
SpvReflectResult * p_result )

◆ spvReflectGetPushConstant()

SpvReflectBlockVariable const * spvReflectGetPushConstant ( SpvReflectShaderModule const * p_module,
uint32_t index,
SpvReflectResult * p_result )
Here is the call graph for this function:

◆ spvReflectGetPushConstantBlock()

SpvReflectBlockVariable const * spvReflectGetPushConstantBlock ( SpvReflectShaderModule const * p_module,
uint32_t index,
SpvReflectResult * p_result )
Here is the caller graph for this function:

◆ spvReflectGetShaderModule()

SpvReflectResult spvReflectGetShaderModule ( size_t size,
void const * p_code,
SpvReflectShaderModule * p_module )
Here is the call graph for this function:

◆ spvReflectSourceLanguage()

char const * spvReflectSourceLanguage ( SpvSourceLanguage source_lang)

◆ SynchronizeDescriptorSets()

static SpvReflectResult SynchronizeDescriptorSets ( SpvReflectShaderModule * p_module)
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ TraverseCallGraph()

static SpvReflectResult TraverseCallGraph ( SpvReflectPrvParser * p_parser,
SpvReflectPrvFunction * p_func,
size_t * p_func_count,
uint32_t * p_func_ids,
uint32_t depth )
static
Here is the call graph for this function:
Here is the caller graph for this function:

◆ UserTypeMatches()

static bool UserTypeMatches ( char const * user_type,
char const * pattern )
static
Here is the caller graph for this function: