D3DSetBlobPart

Sets information in a compilation result.

Syntax

HRESULT D3DSetBlobPart(
         LPCVOID pSrcData,
         SIZE_T SrcDataSize,
         D3D_BLOB_PART Part,
         UINT Flags,
         LPCVOID pPart,
         SIZE_T PartSize,
         ID3DBlob **ppNewShader
)  

Parameters

pSrcData
Type: LPCVOID 

[in] A pointer to compiled shader data.

SrcDataSize
Type: SIZE_T 

[in] The length of the compiled shader data that pSrcData points to.

Part
Type: D3D_BLOB_PART 

[in] A D3D_BLOB_PART-typed value that specifies the part to set. Currently, you can update only private data; that is, D3DSetBlobPart currently only supports the D3D_BLOB_PRIVATE_DATA value.

Flags
Type: UINT 

[in] Flags that indicate how to set the blob part. Currently, no flags are defined; therefore, set to zero.

pPart
Type: LPCVOID 

[in] A pointer to data to set in the compilation result.

PartSize
Type: SIZE_T 

[in] The length of the data that pPart points to.

ppNewShader
Type: ID3DBlob **

[out] A pointer to a buffer that receives the ID3DBlob interface for the new shader in which the new part data is set.

Return value

Type: HRESULT 

Returns one of the Direct3D 11 return codes.

Remarks

D3DSetBlobPart modifies data in a compiled shader. Currently, D3DSetBlobPart can update only the private data in a compiled shader. You can use D3DSetBlobPart to attach arbitrary uninterpreted data to a compiled shader.

Note

The D3dcompiler_44.dll or later version of the file contains the D3DSetBlobPart compiler function.

Requirements

Header: Declared in d3dcompiler.h.

Library: Use d3d11.lib.