diff options
Diffstat (limited to 'slang.h')
| -rw-r--r-- | slang.h | 39 |
1 files changed, 39 insertions, 0 deletions
@@ -1812,6 +1812,8 @@ extern "C" SLANG_API int spReflectionTypeLayout_getGenericParamIndex(SlangReflectionTypeLayout* type); + SLANG_API SlangReflectionTypeLayout* spReflectionTypeLayout_getPendingDataTypeLayout(SlangReflectionTypeLayout* type); + // Variable Reflection SLANG_API char const* spReflectionVariable_GetName(SlangReflectionVariable* var); @@ -1843,6 +1845,9 @@ extern "C" SLANG_API SlangStage spReflectionVariableLayout_getStage( SlangReflectionVariableLayout* var); + + SLANG_API SlangReflectionVariableLayout* spReflectionVariableLayout_getPendingDataLayout(SlangReflectionVariableLayout* var); + // Shader Parameter Reflection typedef SlangReflectionVariableLayout SlangReflectionParameter; @@ -1897,6 +1902,14 @@ extern "C" SLANG_API SlangUInt spReflection_getGlobalConstantBufferBinding(SlangReflection* reflection); SLANG_API size_t spReflection_getGlobalConstantBufferSize(SlangReflection* reflection); + SLANG_API SlangReflectionType* spReflection_specializeType( + SlangReflection* reflection, + SlangReflectionType* type, + SlangInt specializationArgCount, + SlangReflectionType* const* specializationArgs, + ISlangBlob** outDiagnostics); + + #ifdef __cplusplus } @@ -2232,6 +2245,13 @@ namespace slang return spReflectionTypeLayout_getGenericParamIndex( (SlangReflectionTypeLayout*) this); } + + TypeLayoutReflection* getPendingDataTypeLayout() + { + return (TypeLayoutReflection*) spReflectionTypeLayout_getPendingDataTypeLayout( + (SlangReflectionTypeLayout*) this); + } + }; struct Modifier @@ -2350,6 +2370,11 @@ namespace slang { return spReflectionVariableLayout_getStage((SlangReflectionVariableLayout*) this); } + + VariableLayoutReflection* getPendingDataLayout() + { + return (VariableLayoutReflection*) spReflectionVariableLayout_getPendingDataLayout((SlangReflectionVariableLayout*) this); + } }; struct EntryPointReflection @@ -2487,6 +2512,20 @@ namespace slang (SlangReflection*) this, name); } + + TypeReflection* specializeType( + TypeReflection* type, + SlangInt specializationArgCount, + TypeReflection* const* specializationArgs, + ISlangBlob** outDiagnostics) + { + return (TypeReflection*) spReflection_specializeType( + (SlangReflection*) this, + (SlangReflectionType*) type, + specializationArgCount, + (SlangReflectionType* const*) specializationArgs, + outDiagnostics); + } }; } |
