RetroArch
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
spirv_cross Namespace Reference

Namespaces

 inner
 

Classes

class  Barrier
 
struct  BaseShader
 
class  Bitset
 
struct  BufferRange
 
class  CFG
 
class  ClassicLocale
 
struct  CombinedImageSampler
 
class  Compiler
 
class  CompilerCPP
 
class  CompilerError
 
class  CompilerGLSL
 
class  CompilerHLSL
 
class  CompilerMSL
 
class  CompilerReflection
 
struct  ComputePrivateResources
 
struct  ComputeResources
 
struct  ComputeShader
 
class  DominatorBuilder
 
struct  EntryPoint
 
struct  FragmentResources
 
struct  FragmentShader
 
struct  GeometryResources
 
struct  GeometryShader
 
class  Hasher
 
struct  HLSLVertexAttributeRemap
 
struct  image2DBase
 
struct  Instruction
 
struct  IVariant
 
struct  Meta
 
struct  MSLConstexprSampler
 
struct  MSLResourceBinding
 
struct  MSLVertexAttr
 
struct  PlsRemap
 
struct  Resource
 
struct  RootConstants
 
struct  sampler2DBase
 
struct  ShaderResources
 
struct  SpecializationConstant
 
struct  SPIRAccessChain
 
struct  SPIRBlock
 
struct  SPIRCombinedImageSampler
 
struct  SPIRConstant
 
struct  SPIRConstantOp
 
struct  SPIREntryPoint
 
struct  SPIRExpression
 
struct  SPIRExtension
 
struct  SPIRFunction
 
struct  SPIRFunctionPrototype
 
struct  SPIRType
 
struct  SPIRUndef
 
struct  spirv_cross_sampler_2d
 
struct  SPIRVariable
 
struct  TessControlResources
 
struct  TessControlShader
 
struct  TessEvaluationResources
 
struct  TessEvaluationShader
 
class  ThreadGroup
 
class  Variant
 
struct  VertexResources
 
struct  VertexShader
 

Typedefs

typedef image2DBase< glm::vec4 > image2D
 
typedef image2DBase< glm::ivec4 > iimage2D
 
typedef image2DBase< glm::uvec4 > uimage2D
 
typedef sampler2DBase< glm::vec4 > sampler2D
 
typedef sampler2DBase< glm::ivec4 > isampler2D
 
typedef sampler2DBase< glm::uvec4 > usampler2D
 
using VariableTypeRemapCallback = std::function< void(const SPIRType &type, const std::string &var_name, std::string &name_of_type)>
 
using MSLStructMemberKey = uint64_t
 

Enumerations

enum  Types {
  TypeNone, TypeType, TypeVariable, TypeConstant,
  TypeFunction, TypeFunctionPrototype, TypePointer, TypeBlock,
  TypeExtension, TypeExpression, TypeConstantOp, TypeCombinedImageSampler,
  TypeAccessChain, TypeUndef
}
 
enum  BufferPackingStandard {
  BufferPackingStd140, BufferPackingStd430, BufferPackingStd140EnhancedLayout, BufferPackingStd430EnhancedLayout,
  BufferPackingHLSLCbuffer, BufferPackingHLSLCbufferPackOffset
}
 
enum  PlsFormat {
  PlsNone = 0, PlsR11FG11FB10F, PlsR32F, PlsRG16F,
  PlsRGB10A2, PlsRGBA8, PlsRG16, PlsRGBA8I,
  PlsRG16I, PlsRGB10A2UI, PlsRGBA8UI, PlsRG16UI,
  PlsR32UI
}
 
enum  MSLSamplerCoord { MSL_SAMPLER_COORD_NORMALIZED, MSL_SAMPLER_COORD_PIXEL }
 
enum  MSLSamplerFilter { MSL_SAMPLER_FILTER_NEAREST, MSL_SAMPLER_FILTER_LINEAR }
 
enum  MSLSamplerMipFilter { MSL_SAMPLER_MIP_FILTER_NONE, MSL_SAMPLER_MIP_FILTER_NEAREST, MSL_SAMPLER_MIP_FILTER_LINEAR }
 
enum  MSLSamplerAddress {
  MSL_SAMPLER_ADDRESS_CLAMP_TO_ZERO, MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE, MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER, MSL_SAMPLER_ADDRESS_REPEAT,
  MSL_SAMPLER_ADDRESS_MIRRORED_REPEAT
}
 
enum  MSLSamplerCompareFunc {
  MSL_SAMPLER_COMPARE_FUNC_NEVER, MSL_SAMPLER_COMPARE_FUNC_LESS, MSL_SAMPLER_COMPARE_FUNC_LESS_EQUAL, MSL_SAMPLER_COMPARE_FUNC_GREATER,
  MSL_SAMPLER_COMPARE_FUNC_GREATER_EQUAL, MSL_SAMPLER_COMPARE_FUNC_EQUAL, MSL_SAMPLER_COMPARE_FUNC_NOT_EQUAL, MSL_SAMPLER_COMPARE_FUNC_ALWAYS
}
 
enum  MSLSamplerBorderColor { MSL_SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK, MSL_SAMPLER_BORDER_COLOR_OPAQUE_BLACK, MSL_SAMPLER_BORDER_COLOR_OPAQUE_WHITE }
 

Functions

template<typename T >
T imageLoad (const image2DBase< T > &image, glm::ivec2 coord)
 
template<typename T >
void imageStore (image2DBase< T > &image, glm::ivec2 coord, const T &value)
 
void memoryBarrierShared ()
 
void memoryBarrier ()
 
template<typename T >
T atomicAdd (T &v, T a)
 
template<typename T >
T texture (const sampler2DBase< T > &samp, const glm::vec2 &uv, float bias=0.0f)
 
template<typename... Ts>
std::string join (Ts &&... ts)
 
std::string merge (const std::vector< std::string > &list)
 
template<typename T >
std::string convert_to_string (T &&t)
 
std::string convert_to_string (float t)
 
std::string convert_to_string (double t)
 
template<typename T >
Tvariant_get (Variant &var)
 
template<typename T >
const Tvariant_get (const Variant &var)
 
template<typename T , typename... P>
Tvariant_set (Variant &var, P &&... args)
 
static bool type_is_floating_point (const SPIRType &type)
 

Variables

static const uint32_t kPushConstDescSet = ((uint32_t)-1)
 
static const uint32_t kPushConstBinding = 0
 

Typedef Documentation

◆ iimage2D

typedef image2DBase<glm::ivec4> spirv_cross::iimage2D

◆ image2D

typedef image2DBase<glm::vec4> spirv_cross::image2D

◆ isampler2D

◆ MSLStructMemberKey

◆ sampler2D

◆ uimage2D

typedef image2DBase<glm::uvec4> spirv_cross::uimage2D

◆ usampler2D

◆ VariableTypeRemapCallback

using spirv_cross::VariableTypeRemapCallback = typedef std::function<void(const SPIRType &type, const std::string &var_name, std::string &name_of_type)>

Enumeration Type Documentation

◆ BufferPackingStandard

Enumerator
BufferPackingStd140 
BufferPackingStd430 
BufferPackingStd140EnhancedLayout 
BufferPackingStd430EnhancedLayout 
BufferPackingHLSLCbuffer 
BufferPackingHLSLCbufferPackOffset 

◆ MSLSamplerAddress

Enumerator
MSL_SAMPLER_ADDRESS_CLAMP_TO_ZERO 
MSL_SAMPLER_ADDRESS_CLAMP_TO_EDGE 
MSL_SAMPLER_ADDRESS_CLAMP_TO_BORDER 
MSL_SAMPLER_ADDRESS_REPEAT 
MSL_SAMPLER_ADDRESS_MIRRORED_REPEAT 

◆ MSLSamplerBorderColor

Enumerator
MSL_SAMPLER_BORDER_COLOR_TRANSPARENT_BLACK 
MSL_SAMPLER_BORDER_COLOR_OPAQUE_BLACK 
MSL_SAMPLER_BORDER_COLOR_OPAQUE_WHITE 

◆ MSLSamplerCompareFunc

Enumerator
MSL_SAMPLER_COMPARE_FUNC_NEVER 
MSL_SAMPLER_COMPARE_FUNC_LESS 
MSL_SAMPLER_COMPARE_FUNC_LESS_EQUAL 
MSL_SAMPLER_COMPARE_FUNC_GREATER 
MSL_SAMPLER_COMPARE_FUNC_GREATER_EQUAL 
MSL_SAMPLER_COMPARE_FUNC_EQUAL 
MSL_SAMPLER_COMPARE_FUNC_NOT_EQUAL 
MSL_SAMPLER_COMPARE_FUNC_ALWAYS 

◆ MSLSamplerCoord

Enumerator
MSL_SAMPLER_COORD_NORMALIZED 
MSL_SAMPLER_COORD_PIXEL 

◆ MSLSamplerFilter

Enumerator
MSL_SAMPLER_FILTER_NEAREST 
MSL_SAMPLER_FILTER_LINEAR 

◆ MSLSamplerMipFilter

Enumerator
MSL_SAMPLER_MIP_FILTER_NONE 
MSL_SAMPLER_MIP_FILTER_NEAREST 
MSL_SAMPLER_MIP_FILTER_LINEAR 

◆ PlsFormat

Enumerator
PlsNone 
PlsR11FG11FB10F 
PlsR32F 
PlsRG16F 
PlsRGB10A2 
PlsRGBA8 
PlsRG16 
PlsRGBA8I 
PlsRG16I 
PlsRGB10A2UI 
PlsRGBA8UI 
PlsRG16UI 
PlsR32UI 

◆ Types

Enumerator
TypeNone 
TypeType 
TypeVariable 
TypeConstant 
TypeFunction 
TypeFunctionPrototype 
TypePointer 
TypeBlock 
TypeExtension 
TypeExpression 
TypeConstantOp 
TypeCombinedImageSampler 
TypeAccessChain 
TypeUndef 

Function Documentation

◆ atomicAdd()

template<typename T >
T spirv_cross::atomicAdd ( T v,
T  a 
)
inline

◆ convert_to_string() [1/3]

template<typename T >
std::string spirv_cross::convert_to_string ( T &&  t)
inline
Here is the call graph for this function:
Here is the caller graph for this function:

◆ convert_to_string() [2/3]

std::string spirv_cross::convert_to_string ( float  t)
inline
Here is the call graph for this function:

◆ convert_to_string() [3/3]

std::string spirv_cross::convert_to_string ( double  t)
inline
Here is the call graph for this function:

◆ imageLoad()

template<typename T >
T spirv_cross::imageLoad ( const image2DBase< T > &  image,
glm::ivec2  coord 
)
inline

◆ imageStore()

template<typename T >
void spirv_cross::imageStore ( image2DBase< T > &  image,
glm::ivec2  coord,
const T value 
)

◆ join()

template<typename... Ts>
std::string spirv_cross::join ( Ts &&...  ts)
Here is the call graph for this function:

◆ memoryBarrier()

void spirv_cross::memoryBarrier ( )
inline
Here is the call graph for this function:

◆ memoryBarrierShared()

void spirv_cross::memoryBarrierShared ( )
inline
Here is the call graph for this function:

◆ merge()

std::string spirv_cross::merge ( const std::vector< std::string > &  list)
inline
Here is the caller graph for this function:

◆ texture()

template<typename T >
T spirv_cross::texture ( const sampler2DBase< T > &  samp,
const glm::vec2 &  uv,
float  bias = 0.0f 
)
inline
Here is the call graph for this function:

◆ type_is_floating_point()

static bool spirv_cross::type_is_floating_point ( const SPIRType type)
inlinestatic
Here is the caller graph for this function:

◆ variant_get() [1/2]

template<typename T >
T& spirv_cross::variant_get ( Variant var)
Here is the call graph for this function:

◆ variant_get() [2/2]

template<typename T >
const T& spirv_cross::variant_get ( const Variant var)
Here is the call graph for this function:

◆ variant_set()

template<typename T , typename... P>
T& spirv_cross::variant_set ( Variant var,
P &&...  args 
)
Here is the call graph for this function:

Variable Documentation

◆ kPushConstBinding

const uint32_t spirv_cross::kPushConstBinding = 0
static

◆ kPushConstDescSet

const uint32_t spirv_cross::kPushConstDescSet = ((uint32_t)-1)
static