共用方式為


CD3DX12_PIPELINE_STATE_STREAM_PARSE_HELPER 結構

從傳遞至對應成員函式的子對象詳細數據,建置內部CD3DX12_PIPELINE_STATE_STREAM物件。 此結構會實作 ID3DX12PipelineParserCallbacks 介面。

語法

struct CD3DX12_PIPELINE_STATE_STREAM_PARSE_HELPER  : public ID3DX12PipelineParserCallbacks{
  CD3DX12_PIPELINE_STATE_STREAM1 PipelineStream;
  void                           FlagsCb(D3D12_PIPELINE_STATE_FLAGS Flags);
  void                           NodeMaskCb(UINT NodeMask);
  void                           RootSignatureCb(ID3D12RootSignature* pRootSignature);
  void                           InputLayoutCb(const D3D12_INPUT_LAYOUT_DESC& InputLayout);
  void                           IBStripCutValueCb(D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue);
  void                           PrimitiveTopologyTypeCb(D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType);
  void                           VSCb(const D3D12_SHADER_BYTECODE& VS);
  void                           GSCb(const D3D12_SHADER_BYTECODE& GS);
  void                           StreamOutputCb(const D3D12_STREAM_OUTPUT_DESC& StreamOutput);
  void                           HSCb(const D3D12_SHADER_BYTECODE& HS);
  void                           DSCb(const D3D12_SHADER_BYTECODE& DS);
  void                           PSCb(const D3D12_SHADER_BYTECODE& PS);
  void                           CSCb(const D3D12_SHADER_BYTECODE& CS);
  void                           BlendStateCb(const D3D12_BLEND_DESC& BlendState);
  void                           DepthStencilStateCb(const D3D12_DEPTH_STENCIL_DESC& DepthStencilState);
  void                           DepthStencilState1Cb(const D3D12_DEPTH_STENCIL_DESC1& DepthStencilState);
  void                           DSVFormatCb(DXGI_FORMAT DSVFormat);
  void                           RasterizerStateCb(const D3D12_RASTERIZER_DESC& RasterizerState);
  void                           RTVFormatsCb(const D3D12_RT_FORMAT_ARRAY& RTVFormats);
  void                           SampleDescCb(const DXGI_SAMPLE_DESC& SampleDesc);
  void                           SampleMaskCb(UINT SampleMask);
  void                           ViewInstancingCb(const D3D12_VIEW_INSTANCING_DESC& ViewInstancingDesc);
  void                           CachedPSOCb(const D3D12_CACHED_PIPELINE_STATE& CachedPSO);
  void                           ErrorBadInputParameter(UINT);
  void                           ErrorDuplicateSubobject(D3D12_PIPELINE_STATE_SUBOBJECT_TYPE);
  void                           ErrorUnknownSubobject(UINT);
};

成員

PipelineStream

內部 CD3DX12_PIPELINE_STATE_STREAM1。 其目前狀態代表已在此物件上呼叫之回呼方法的累計效果。

FlagsCb(D3D12_PIPELINE_STATE_FLAGS旗標)

使用 Flags 參數的值,初始化 PipelineStreamFlags 成員。

NodeMaskCb(UINT NodeMask)

使用 Nodemask 參數的值,初始化 PipelineStreamNodeMask 成員。

RootSignatureCb(ID3D12RootSignature* pRootSignature)

使用 pRootSignature 參數的值,初始化 PipelineStreampRootSignature 成員。

InputLayoutCb(const D3D12_INPUT_LAYOUT_DESC& InputLayout)

使用 InputLayout 參數的值,初始化 PipelineStreamInputLayout 成員。

IBStripCutValueCb(D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue)

使用 IBStripCutValue 參數的值,初始化 PipelineStreamIBStripCutValue 成員。

PrimitiveTopologyTypeCb(D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType)

使用 PrimitiveTopologyType 參數的值,初始化 PipelineStreamPrimitiveTopologyType 成員。

VSCb(const D3D12_SHADER_BYTECODE& VS)

使用 VS 參數的值,初始化 PipelineStreamVS (頂點著色器) 成員。

GSCb(const D3D12_SHADER_BYTECODE& GS)

使用 GS 參數的值,初始化 PipelineStreamGS (geometry 著色器) 成員。

StreamOutputCb(const D3D12_STREAM_OUTPUT_DESC& StreamOutput)

使用 StreamOutput 參數的值,初始化 PipelineStreamStreamOutput 成員。

HSCb(const D3D12_SHADER_BYTECODE& HS)

使用 HS 參數的值,初始化 PipelineStreamHS(殼體著色器)成員。

DSCb(const D3D12_SHADER_BYTECODE& DS)

使用 DS 參數的值,初始化 PipelineStreamDS (網域著色器) 成員。

PSCb(const D3D12_SHADER_BYTECODE& PS)

使用 PS 參數的值,初始化 PipelineStreamPS (圖元著色器) 成員。

CSCb(const D3D12_SHADER_BYTECODE& CS)

使用 CS 參數的值,初始化 PipelineStreamCS 成員

BlendStateCb(const D3D12_BLEND_DESC& BlendState)

使用 BlendState 參數的值,初始化 PipelineStreamBlendState 成員。

DepthStencilStateCb(const D3D12_DEPTH_STENCIL_DESC& DepthStencilState)

使用 DepthStencilState 參數的值,初始化 PipelineStreamDepthStencilState 成員,D3D12_DEPTH_STENCIL_DESC

DepthStencilState1Cb(const D3D12_DEPTH_STENCIL_DESC1& DepthStencilState)

使用 DepthStencilState 參數的值,初始化 PipelineStreamDepthStencilState 成員,D3D12_DEPTH_STENCIL_DESC1

DSVFormatCb(DXGI_FORMAT DSVFormat)

使用DSVFormat參數的值,初始化 PipelineStreamDSVFormat 成員。

RasterizerStateCb(const D3D12_RASTERIZER_DESC& RasterizerState)

使用 RasterizerState 參數的值,初始化 PipelineStreamRasterizerState 成員。

RTVFormatsCb(const D3D12_RT_FORMAT_ARRAY& RTVFormats)

使用 RTVFormats 參數的值,初始化 PipelineStreamRTVFormats 成員。

SampleDescCb(const DXGI_SAMPLE_DESC& SampleDesc)

使用 SampleDesc 參數的值,初始化 PipelineStreamSampleDesc 成員。

SampleMaskCb(UINT SampleMask)

使用SampleMask參數的值,初始化 PipelineStreamSampleMask成員。

ViewInstancingCb(const D3D12_VIEW_INSTANCING_DESC& ViewInstancingDesc)

使用 ViewInstancingDesc 參數的值,初始化 PipelineStreamViewInstancingDesc 成員。

CachedPSOCb(const D3D12_CACHED_PIPELINE_STATE& CachedPSO)

使用 CachedPSO 參數的值,初始化 PipelineStreamCachedPSO 成員。

ErrorBadInputParameter(UINT)

不執行任何動作。

ErrorDuplicateSubobject(D3D12_PIPELINE_STATE_SUBOBJECT_TYPE)

不執行任何動作。

ErrorUnknownSubobject(UINT)

不執行任何動作。

備註

噹噹做第二個參數傳遞至 D3DX12ParsePipelineStream 函式時,會從傳遞為第一個參數的D3D12_PIPELINE_STATE_STREAM_DESC複製內部CD3DX12_PIPELINE_STATE_STREAM1對象的詳細數據。 此程式會驗證來源數據流描述。 如果 D3DX12ParsePipelineStream 傳回 S_OK,則來源數據流描述和產生的 CD3DX12_PIPELINE_STATE_STREAM1PipelineStream 都有效;否則兩者都無效。 無效的數據流和其他錯誤只會透過 D3DX12ParsePipelineStream 的傳回值回報;這個結構會實作錯誤回呼以執行任何動作。

需求

需求
頁首
D3dx12.h

另請參閱

Direct3D 12 的協助程序結構

ID3DX12PipelineParserCallbacks