Freigeben über


ID3D11ShaderReflectionVariable::GetInterfaceSlot-Methode (d3d11shader.h)

Ruft den entsprechenden Schnittstellenslot für eine Variable ab, die einen Schnittstellenzeiger darstellt.

Syntax

UINT GetInterfaceSlot(
  [in] UINT uArrayIndex
);

Parameter

[in] uArrayIndex

Typ: UINT

Index des Arrayelements, für das die Slotnummer abgerufen werden soll. Für eine Nicht-Array-Variable ist dieser Wert null.

Rückgabewert

Typ: UINT

Gibt den Index der Schnittstelle im Schnittstellenarray zurück.

Hinweise

GetInterfaceSlot ruft den entsprechenden Slot in einem dynamischen Verknüpfungsarray für eine Schnittstelle instance ab. Die zurückgegebene Slotnummer wird verwendet, um eine Schnittstelle instance auf eine bestimmte Klassen-instance festzulegen. Weitere Informationen finden Sie in der Übersicht über HLSL-Schnittstellen und -Klassen .

Die Schnittstelle dieser Methode wird im out-of-box DLL-D3DCompiler_xx.dll gehostet.

Beispiele

Abrufen und Verwenden eines Schnittstellenslots


ID3D11ShaderReflectionVariable* pAmbientLightingVar = pReflector->GetVariableByName("g_abstractAmbientLighting");
g_iAmbientLightingOffset = pAmbientLightingVar->GetInterfaceSlot(0);
g_pPSClassLinkage->GetClassInstance( "g_hemiAmbientLight", 0, &g_pHemiAmbientLightClass );
g_dynamicLinkageArray[g_iAmbientLightingOffset] = g_pHemiAmbientLightClass; 
...
pd3dImmediateContext->PSSetShader( g_pPixelShader, g_dynamicLinkageArray, g_iNumPSInterfaces );
      

Anforderungen

Anforderung Wert
Zielplattform Windows
Kopfzeile d3d11shader.h
Bibliothek D3DCompiler.lib
DLL D3DCompiler_47.dll

Weitere Informationen

ID3D11ShaderReflectionVariable-Schnittstelle