Enumerations

enum 
Name Value
EBhMissing 0
EBhRequire 1
EBhEnable 2
EBhWarn 3
EBhDisable 4
EBhDisablePartial 5

The behaviors from the GLSL "#extension extension_name : behavior"

Defined at line 101 of file ../../third_party/glslang/src/glslang/Public/../MachineIndependent/Versions.h

enum 
Name Value
EShSourceNone 0
EShSourceGlsl 1
EShSourceHlsl 2
EShSourceCount 3

Defined at line 133 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum 
Name Value
EShClientNone 0
EShClientVulkan 1
EShClientOpenGL 2
EShClientCount 3

Defined at line 140 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum 
Name Value
EShTargetNone 0
EShTargetSpv 1
EshTargetSpv EShTargetSpv
EShTargetCount 2

Defined at line 147 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum 
Name Value
EShTargetVulkan_1_0 (1 << 22)
EShTargetVulkan_1_1 (1 << 22) | (1 << 12)
EShTargetVulkan_1_2 (1 << 22) | (2 << 12)
EShTargetVulkan_1_3 (1 << 22) | (3 << 12)
EShTargetVulkan_1_4 (1 << 22) | (4 << 12)
EShTargetOpenGL_450 450
EShTargetClientVersionCount 6

Defined at line 154 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum 
Name Value
EShTargetSpv_1_0 (1 << 16)
EShTargetSpv_1_1 (1 << 16) | (1 << 8)
EShTargetSpv_1_2 (1 << 16) | (2 << 8)
EShTargetSpv_1_3 (1 << 16) | (3 << 8)
EShTargetSpv_1_4 (1 << 16) | (4 << 8)
EShTargetSpv_1_5 (1 << 16) | (5 << 8)
EShTargetSpv_1_6 (1 << 16) | (6 << 8)
EShTargetLanguageVersionCount 7

Defined at line 166 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum TLayoutPacking
Name Value
ElpNone 0
ElpShared 1
ElpStd140 2
ElpStd430 3
ElpPacked 4
ElpScalar 5
ElpCount 6

Following are a series of helper enums for managing layouts and qualifiers,

used for TPublicType, TType, others.

Defined at line 182 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum TResourceType
Name Value
EResSampler 0
EResTexture 1
EResImage 2
EResUbo 3
EResSsbo 4
EResUav 5
EResCount 6

Resource type for IO resolver

Defined at line 429 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

enum TBlockStorageClass
Name Value
EbsUniform 0
EbsStorageBuffer 1
EbsPushConstant 2
EbsNone 3
EbsCount 4

Defined at line 439 of file ../../third_party/glslang/src/glslang/Public/ShaderLang.h

Records

Functions

  • const char * ProfileName (EProfile profile)

    Map from profile enum to externally readable text name.

    Defined at line 70 of file ../../third_party/glslang/src/glslang/Public/../MachineIndependent/Versions.h

  • const char * StageName (EShLanguage )
  • Version GetVersion ()
  • const char * GetEsslVersionString ()
  • const char * GetGlslVersionString ()
  • int GetKhronosToolId ()
  • bool InitializeProcess ()

    Call this exactly once per process before using anything else

  • void FinalizeProcess ()

    Call once per process to tear down everything

  • TIoMapper * GetGlslIoMapper ()

    Get the default GLSL IO mapper