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)
-
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(do기본 셰이더) 멤버를 초기화합니다.
-
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)
-
D3D12_DEPTH_STENCIL_DESC DepthStencilState 매개 변수 값을 사용하여 PipelineStream의 DepthStencilState 멤버를 초기화합니다.
-
DepthStencilState1Cb(const D3D12_DEPTH_STENCIL_DESC1& DepthStencilState)
-
D3D12_DEPTH_STENCIL_DESC1 DepthStencilState 매개 변수 값을 사용하여 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 함수에 두 번째 매개 변수로 전달되면 내부 CD3DX12_PIPELINE_STATE_STREAM1 개체의 세부 정보가 첫 번째 매개 변수로 전달된 D3D12_PIPELINE_STATE_STREAM_DESC 복제됩니다. 이 프로세스는 원본 스트림 설명의 유효성을 검사합니다. D3DX12ParsePipelineStream이 S_OK 반환하는 경우 원본 스트림 설명과 결과 CD3DX12_PIPELINE_STATE_STREAM1PipelineStream 모두 유효합니다. 그렇지 않으면 둘 다 유효하지 않습니다. 잘못된 스트림 및 기타 오류는 D3DX12ParsePipelineStream의 반환 값을 통해서만 보고됩니다. 이 구조는 아무 작업도 수행하지 않는 오류 콜백을 구현합니다.
요구 사항
요구 사항 | 값 |
---|---|
헤더 |
|