CD3DX12_PIPELINE_STATE_STREAM_PARSE_HELPER structure

Builds an internal CD3DX12_PIPELINE_STATE_STREAM object from subobject details passed into the corresponding member functions. This struct implements the ID3DX12PipelineParserCallbacks interface.

Syntax

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);
};

Members

PipelineStream

The internal CD3DX12_PIPELINE_STATE_STREAM1. Its current state represents the cumulative effect of callback methods that have been called on this object.

FlagsCb(D3D12_PIPELINE_STATE_FLAGS Flags)

Initializes the Flags member of PipelineStream using the value of the Flags parameter.

NodeMaskCb(UINT NodeMask)

Initializes the NodeMask member of PipelineStream using the value of the Nodemask parameter.

RootSignatureCb(ID3D12RootSignature* pRootSignature)

Initializes the pRootSignature member of PipelineStream using the value of the pRootSignature parameter.

InputLayoutCb(const D3D12_INPUT_LAYOUT_DESC& InputLayout)

Initializes the InputLayout member of PipelineStream using the value of the InputLayout parameter.

IBStripCutValueCb(D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue)

Initializes the IBStripCutValue member of PipelineStream using the value of the IBStripCutValue parameter.

PrimitiveTopologyTypeCb(D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType)

Initializes the PrimitiveTopologyType member of PipelineStream using the value of the PrimitiveTopologyType parameter.

VSCb(const D3D12_SHADER_BYTECODE& VS)

Initializes the VS (vertex shader) member of PipelineStream using the value of the VS parameter.

GSCb(const D3D12_SHADER_BYTECODE& GS)

Initializes the GS (geometry shader) member of PipelineStream using the value of the GS parameter.

StreamOutputCb(const D3D12_STREAM_OUTPUT_DESC& StreamOutput)

Initializes the StreamOutput member of PipelineStream using the value of the StreamOutput parameter.

HSCb(const D3D12_SHADER_BYTECODE& HS)

Initializes the HS (hull shader) member of PipelineStream using the value of the HS parameter.

DSCb(const D3D12_SHADER_BYTECODE& DS)

Initializes the DS (domain shader) member of PipelineStream using the value of the DS parameter.

PSCb(const D3D12_SHADER_BYTECODE& PS)

Initializes the PS (pixel shader) member of PipelineStream using the value of the PS parameter.

CSCb(const D3D12_SHADER_BYTECODE& CS)

Initializes the CS member of PipelineStream using the value of the CS parameter.

BlendStateCb(const D3D12_BLEND_DESC& BlendState)

Initializes the BlendState member of PipelineStream using the value of the BlendState parameter.

DepthStencilStateCb(const D3D12_DEPTH_STENCIL_DESC& DepthStencilState)

Initializes the DepthStencilState member of PipelineStream using the value of the DepthStencilState parameter, a D3D12_DEPTH_STENCIL_DESC.

DepthStencilState1Cb(const D3D12_DEPTH_STENCIL_DESC1& DepthStencilState)

Initializes the DepthStencilState member of PipelineStream using the value of the DepthStencilState parameter, a D3D12_DEPTH_STENCIL_DESC1.

DSVFormatCb(DXGI_FORMAT DSVFormat)

Initializes the DSVFormat member of PipelineStream using the value of the DSVFormat parameter.

RasterizerStateCb(const D3D12_RASTERIZER_DESC& RasterizerState)

Initializes the RasterizerState member of PipelineStream using the value of the RasterizerState parameter.

RTVFormatsCb(const D3D12_RT_FORMAT_ARRAY& RTVFormats)

Initializes the RTVFormats member of PipelineStream using the value of the RTVFormats parameter.

SampleDescCb(const DXGI_SAMPLE_DESC& SampleDesc)

Initializes the SampleDesc member of PipelineStream using the value of the SampleDesc parameter.

SampleMaskCb(UINT SampleMask)

Initializes the SampleMask member of PipelineStream using the value of the SampleMask parameter.

ViewInstancingCb(const D3D12_VIEW_INSTANCING_DESC& ViewInstancingDesc)

Initializes the ViewInstancingDesc member of PipelineStream using the value of the ViewInstancingDesc parameter.

CachedPSOCb(const D3D12_CACHED_PIPELINE_STATE& CachedPSO)

Initializes the CachedPSO member of PipelineStream using the value of the CachedPSO parameter.

ErrorBadInputParameter(UINT)

Does nothing.

ErrorDuplicateSubobject(D3D12_PIPELINE_STATE_SUBOBJECT_TYPE)

Does nothing.

ErrorUnknownSubobject(UINT)

Does nothing.

Remarks

When passed as the second parameter to the D3DX12ParsePipelineStream function, the details of the internal CD3DX12_PIPELINE_STATE_STREAM1 object are cloned from the D3D12_PIPELINE_STATE_STREAM_DESC passed as the first parameter. This process validates the source stream description. If D3DX12ParsePipelineStream returns S_OK, then both the source stream description and the resulting CD3DX12_PIPELINE_STATE_STREAM1PipelineStream are valid; otherwise both are invalid. Invalid streams and other errors are reported only through the return value of D3DX12ParsePipelineStream; this structure implements the error callbacks to do nothing.

Requirements

Requirement Value
Header
D3dx12.h

See also

Helper Structures for Direct3D 12

ID3DX12PipelineParserCallbacks