NAME

cgD3D11GetIASignatureByPass - Gets the compiled vertex shader signature as a ID3DBlob from a pass of a validated technique.

SYNOPSIS

  #include <Cg/cgD3D11.h>

  ID3DBlob * cgD3D11GetIASignatureByPass( CGpass pass );

PARAMETERS

pass

The pass handle after validation of a CgFX technique.

RETURN VALUES

Returns a pointer to a ID3DBlob object containing the vertex shader signature.

Returns NULL if the program was not loaded.

DESCRIPTION

cgD3D11GetIASignatureByPass allows the user to get back the vertex shader signature of a pass of a validated CgFX technique.

EXAMPLES

myCgEffect = cgCreateEffectFromFile( myCgContext, "effect.cgfx", NULL ); myCgTechnique = cgGetFirstTechnique( myCgEffect );

if( cgValidateTechnique( myCgTechnique ) != CG_FALSE ) { const D3D11_INPUT_ELEMENT_DESC layout[] = { { "POSITION", 0, DXGI_FORMAT_R32G32B32_FLOAT, 0, 0, D3D11_INPUT_PER_VERTEX_DATA, 0 }, };

    CGpass myPass = cgGetFirstPass( myCgTechnique );

    ID3DBlob * pVSBuf = cgD3D11GetIASignatureByPass( myPass );

    hr = pDevice->CreateInputLayout( layout, 1, pVSBuf->GetBufferPointer(), 
               pVSBuf->GetBufferSize(), &g_pVertexLayout );
}
        

ERRORS

CG_INVALID_PASS_HANDLE_ERROR is generated if the pass is invalid.

HISTORY

cgD3D11GetIASignatureByPass was introduced in Cg 3.0.

SEE ALSO

cgD3D11GetCompiledProgram