ID3D11ShaderReflection Interface
A shader-reflection interface accesses shader information.
Mitglieder
ID3D11ShaderReflectionSchnittstelle erbt von der IUnknown-Schnittstelle. ID3D11ShaderReflection umfasst auch die folgenden Typen von Mitgliedern:
- Methoden
Methoden
ID3D11ShaderReflectionSchnittstelle umfasst die folgenden Methoden.
Methode | Beschreibung |
---|---|
GetBitwiseInstructionCount | Gets the number of bitwise instructions. |
GetConstantBufferByIndex | Get a constant buffer by index. |
GetConstantBufferByName | Get a constant buffer by name. |
GetConversionInstructionCount | Gets the number of conversion instructions. |
GetDesc | Get a shader description. |
GetGSInputPrimitive | Gets the geometry-shader input-primitive description. |
GetInputParameterDesc | Get an input-parameter description for a shader. |
GetMinFeatureLevel | Gets the minimum feature level. |
GetMovcInstructionCount | Gets the number of Movc instructions. |
GetMovInstructionCount | Gets the number of Mov instructions. |
GetNumInterfaceSlots | Gets the number of interface slots in a shader. |
GetOutputParameterDesc | Get an output-parameter description for a shader. |
GetPatchConstantParameterDesc | Get a patch-constant parameter description for a shader. |
GetResourceBindingDesc | Get a description of how a resource is bound to a shader. |
GetResourceBindingDescByName | Get a description of how a resource is bound to a shader. |
GetThreadGroupSize | Retrieves the sizes, in thread groups, of the X, Y, and Z dimensions of the shader's thread-group grid. |
GetVariableByName | Gets a variable by name. |
IsSampleFrequencyShader | Indicates whether a shader is a sample frequency shader. |
Hinweise
An ID3D11ShaderReflection interface can be retrieved for a shader by using D3DReflect. The following code illustrates retrieving a ID3D11ShaderReflection from a shader.
pd3dDevice->CreatePixelShader( pPixelShaderBuffer->GetBufferPointer(),
pPixelShaderBuffer->GetBufferSize(), g_pPSClassLinkage, &g_pPixelShader );
ID3D11ShaderReflection* pReflector = NULL;
D3DReflect( pPixelShaderBuffer->GetBufferPointer(), pPixelShaderBuffer->GetBufferSize(),
IID_ID3D11ShaderReflection, (void**) &pReflector);