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 参数的值初始化 PipelineStream 的 Flags 成员。
-
NodeMaskCb (UINT NodeMask)
-
使用 Nodemask 参数的值初始化 PipelineStream 的 NodeMask 成员。
-
RootSignatureCb (ID3D12RootSignature* pRootSignature)
-
使用 pRootSignature 参数的值初始化 PipelineStream 的 pRootSignature 成员。
-
InputLayoutCb (const D3D12_INPUT_LAYOUT_DESC& InputLayout)
-
使用 InputLayout 参数的值初始化 PipelineStream 的 InputLayout 成员。
-
IBStripCutValueCb (D3D12_INDEX_BUFFER_STRIP_CUT_VALUE IBStripCutValue)
-
使用 IBStripCutValue 参数的值初始化 PipelineStream 的 IBStripCutValue 成员 。
-
PrimitiveTopologyTypeCb (D3D12_PRIMITIVE_TOPOLOGY_TYPE PrimitiveTopologyType)
-
使用 PrimitiveTopologyType 参数的值初始化 PipelineStream 的 PrimitiveTopologyType 成员。
-
VSCb (const D3D12_SHADER_BYTECODE& VS)
-
使用 VS 参数的值) PipelineStream 的成员初始化 VS (顶点着色器。
-
GSCb (const D3D12_SHADER_BYTECODE& GS)
-
使用 GS 参数的值) PipelineStream 的成员初始化 GS (几何着色器。
-
StreamOutputCb (const D3D12_STREAM_OUTPUT_DESC& StreamOutput)
-
使用 StreamOutput 参数的值初始化 PipelineStream 的 StreamOutput 成员。
-
HSCb (const D3D12_SHADER_BYTECODE& HS)
-
使用 HS 参数的值) PipelineStream 的成员初始化 HS (外壳着色器。
-
DSCb (const D3D12_SHADER_BYTECODE& DS)
-
使用 DS 参数的值) PipelineStream 的成员初始化 DS (域着色器。
-
PSCb (const D3D12_SHADER_BYTECODE& PS)
-
使用 PS 参数的值) PipelineStream 的成员初始化 PS (像素着色器。
-
CSCb (const D3D12_SHADER_BYTECODE& CS)
-
使用 CS 参数的值初始化 PipelineStream 的 CS 成员。
-
BlendStateCb (const D3D12_BLEND_DESC& BlendState)
-
使用 BlendState 参数的值初始化 PipelineStream 的 BlendState 成员。
-
DepthStencilStateCb (const D3D12_DEPTH_STENCIL_DESC& DepthStencilState)
-
使用 DepthStencilState 参数的值初始化 PipelineStream 的 DepthStencilState 成员, D3D12_DEPTH_STENCIL_DESC。
-
DepthStencilState1Cb (const D3D12_DEPTH_STENCIL_DESC1& DepthStencilState)
-
使用 DepthStencilState 参数的值(D3D12_DEPTH_STENCIL_DESC1)初始化 PipelineStream 的 DepthStencilState 成员。
-
DSVFormatCb (DXGI_FORMAT DSVFormat)
-
使用 DSVFormat 参数的值初始化 PipelineStream 的 DSVFormat 成员。
-
RasterizerStateCb (const D3D12_RASTERIZER_DESC& RasterizerState)
-
使用 RasterizerState 参数的值初始化 PipelineStream 的 RasterizerState 成员。
-
RTVFormatsCb (const D3D12_RT_FORMAT_ARRAY& RTVFormats)
-
使用 RTVFormats 参数的值初始化 PipelineStream的 RTVFormats 成员。
-
SampleDescCb (const DXGI_SAMPLE_DESC& SampleDesc)
-
使用 SampleDesc 参数的值初始化 PipelineStream 的 SampleDesc 成员。
-
SampleMaskCb (UINT SampleMask)
-
使用 SampleMask 参数的值初始化 PipelineStream 的 SampleMask 成员。
-
ViewInstancingCb (const D3D12_VIEW_INSTANCING_DESC& ViewInstancingDesc)
-
使用 ViewInstancingDesc 参数 的值初始化 PipelineStream 的 ViewInstancingDesc 成员。
-
CachedPSOCb (const D3D12_CACHED_PIPELINE_STATE& CachedPSO)
-
使用 CachedPSO 参数的值初始化 PipelineStream 的 CachedPSO 成员。
-
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 的返回值报告无效流和其他错误;此结构实现错误回调以不执行任何操作。
要求
要求 | 值 |
---|---|
标头 |
|