summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorazhirnov <zh1dron@gmail.com>2020-08-19 15:47:11 +0000
committerazhirnov <zh1dron@gmail.com>2020-08-19 15:47:11 +0000
commit30b8276ffe44b5c45fdbf4eb09a3c0d246dbc2f4 (patch)
treee12b858b8c87acafb4575c2174dc510f1b7bbe2b
parentMerge branch 'master' into mesh_shader (diff)
downloadDiligentCore-30b8276ffe44b5c45fdbf4eb09a3c0d246dbc2f4.tar.gz
DiligentCore-30b8276ffe44b5c45fdbf4eb09a3c0d246dbc2f4.zip
Rename ***_PIPELINE to PIPELINE_TYPE_***
-rw-r--r--Graphics/GraphicsEngine/include/DeviceContextBase.hpp16
-rw-r--r--Graphics/GraphicsEngine/include/PipelineStateBase.hpp17
-rw-r--r--Graphics/GraphicsEngine/interface/PipelineState.h16
-rw-r--r--Graphics/GraphicsEngineD3D12/src/PipelineStateD3D12Impl.cpp6
-rw-r--r--Graphics/GraphicsEngineVulkan/src/GenerateMipsVkHelper.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/ComputeShaderTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/DrawCommandTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/GeometryShaderTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/PSOCompatibilityTest.cpp4
-rw-r--r--Tests/DiligentCoreAPITest/src/QueryTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/RenderPassTest.cpp6
-rw-r--r--Tests/DiligentCoreAPITest/src/ShaderResourceLayoutTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/TessellationTest.cpp2
-rw-r--r--Tests/DiligentCoreAPITest/src/c_interface/PipelineState_C_Test.c2
14 files changed, 46 insertions, 35 deletions
diff --git a/Graphics/GraphicsEngine/include/DeviceContextBase.hpp b/Graphics/GraphicsEngine/include/DeviceContextBase.hpp
index 3d5544a4..c82cb26a 100644
--- a/Graphics/GraphicsEngine/include/DeviceContextBase.hpp
+++ b/Graphics/GraphicsEngine/include/DeviceContextBase.hpp
@@ -1426,7 +1426,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != GRAPHICS_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_GRAPHICS)
{
LOG_ERROR_MESSAGE("Draw command arguments are invalid: pipeline state '", m_pPipelineState->GetDesc().Name, "' is a compute pipeline.");
return false;
@@ -1453,7 +1453,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != GRAPHICS_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_GRAPHICS)
{
LOG_ERROR_MESSAGE("DrawIndexed command arguments are invalid: pipeline state '",
m_pPipelineState->GetDesc().Name, "' is a compute pipeline.");
@@ -1494,7 +1494,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != MESH_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_MESH)
{
LOG_ERROR_MESSAGE("DrawMesh command arguments are invalid: pipeline state '",
m_pPipelineState->GetDesc().Name, "' is a compute pipeline.");
@@ -1522,7 +1522,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != GRAPHICS_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_GRAPHICS)
{
LOG_ERROR_MESSAGE("DrawIndirect command arguments are invalid: pipeline state '",
@@ -1568,7 +1568,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != GRAPHICS_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_GRAPHICS)
{
LOG_ERROR_MESSAGE("DrawIndexedIndirect command arguments are invalid: pipeline state '",
m_pPipelineState->GetDesc().Name, "' is a compute pipeline.");
@@ -1626,7 +1626,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != MESH_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_MESH)
{
LOG_ERROR_MESSAGE("DrawMeshIndirect command arguments are invalid: pipeline state '",
m_pPipelineState->GetDesc().Name, "' is a compute pipeline.");
@@ -1715,7 +1715,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != COMPUTE_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_COMPUTE)
{
LOG_ERROR_MESSAGE("DispatchCompute command arguments are invalid: pipeline state '", m_pPipelineState->GetDesc().Name,
"' is a graphics pipeline.");
@@ -1750,7 +1750,7 @@ inline bool DeviceContextBase<BaseInterface, ImplementationTraits>::
return false;
}
- if (m_pPipelineState->GetDesc().PipelineType != COMPUTE_PIPELINE)
+ if (m_pPipelineState->GetDesc().PipelineType != PIPELINE_TYPE_COMPUTE)
{
LOG_ERROR_MESSAGE("DispatchComputeIndirect command arguments are invalid: pipeline state '",
m_pPipelineState->GetDesc().Name, "' is a graphics pipeline.");
diff --git a/Graphics/GraphicsEngine/include/PipelineStateBase.hpp b/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
index 17029ced..82d89e0d 100644
--- a/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
+++ b/Graphics/GraphicsEngine/include/PipelineStateBase.hpp
@@ -177,7 +177,7 @@ public:
VALIDATE_SHADER_TYPE(GraphicsPipeline.pMS, SHADER_TYPE_MESH, "mesh")
#undef VALIDATE_SHADER_TYPE
- if (PSODesc.PipelineType == GRAPHICS_PIPELINE)
+ if (PSODesc.PipelineType == PIPELINE_TYPE_GRAPHICS)
{
CHECK_THROW(GraphicsPipeline.pVS, "Vertex shader must be defined");
CHECK_THROW(!GraphicsPipeline.pAS && !GraphicsPipeline.pMS, "Mesh shaders are not supported in graphics pipeline");
@@ -187,7 +187,7 @@ public:
m_pDS = GraphicsPipeline.pDS;
m_pHS = GraphicsPipeline.pHS;
}
- else if (PSODesc.PipelineType == MESH_PIPELINE)
+ else if (PSODesc.PipelineType == PIPELINE_TYPE_MESH)
{
CHECK_THROW(GraphicsPipeline.pMS, "Mesh shader must be defined");
CHECK_THROW(!GraphicsPipeline.pVS && !GraphicsPipeline.pGS && !GraphicsPipeline.pDS && !GraphicsPipeline.pHS,
@@ -448,7 +448,18 @@ protected:
size_t m_ShaderResourceLayoutHash = 0; ///< Hash computed from the shader resource layout
private:
-#define LOG_PSO_ERROR_AND_THROW(...) LOG_ERROR_AND_THROW("Description of ", (this->m_Desc.IsComputePipeline() ? "compute" : "graphics"), " PSO '", this->m_Desc.Name, "' is invalid: ", ##__VA_ARGS__)
+#define LOG_PSO_ERROR_AND_THROW(...) LOG_ERROR_AND_THROW("Description of ", PipelineTypeToString(), " PSO '", this->m_Desc.Name, "' is invalid: ", ##__VA_ARGS__)
+
+ const char* PipelineTypeToString() const
+ {
+ switch (this->m_Desc.PipelineType)
+ {
+ case PIPELINE_TYPE_COMPUTE: return "compute";
+ case PIPELINE_TYPE_GRAPHICS: return "graphics";
+ case PIPELINE_TYPE_MESH: return "mesh";
+ }
+ return "unknown";
+ }
void ValidateDesc() const
{
diff --git a/Graphics/GraphicsEngine/interface/PipelineState.h b/Graphics/GraphicsEngine/interface/PipelineState.h
index 007ce319..271ed607 100644
--- a/Graphics/GraphicsEngine/interface/PipelineState.h
+++ b/Graphics/GraphicsEngine/interface/PipelineState.h
@@ -249,20 +249,20 @@ DILIGENT_TYPED_ENUM(PIPELINE_TYPE, Uint8)
{
/// Graphics pipeline used in IDeviceContext::Draw(), IDeviceContext::DrawIndexed(),
/// IDeviceContext::DrawIndirect(), IDeviceContext::DrawIndexedIndirect().
- GRAPHICS_PIPELINE,
+ PIPELINE_TYPE_GRAPHICS,
/// Compute pipeline used in IDeviceContext::DispatchCompute(), IDeviceContext::DispatchComputeIndirect().
- COMPUTE_PIPELINE,
+ PIPELINE_TYPE_COMPUTE,
// Mesh pipeline used in IDeviceContext::DrawMesh(), IDeviceContext::DrawMeshIndirect().
- MESH_PIPELINE,
+ PIPELINE_TYPE_MESH,
};
/// Pipeline state description
struct PipelineStateDesc DILIGENT_DERIVE(DeviceObjectAttribs)
/// Pipeline type
- PIPELINE_TYPE PipelineType DEFAULT_INITIALIZER(GRAPHICS_PIPELINE);
+ PIPELINE_TYPE PipelineType DEFAULT_INITIALIZER(PIPELINE_TYPE_GRAPHICS);
/// Shader resource binding allocation granularity
@@ -276,15 +276,15 @@ struct PipelineStateDesc DILIGENT_DERIVE(DeviceObjectAttribs)
/// Pipeline layout description
PipelineResourceLayoutDesc ResourceLayout;
- /// Graphics pipeline state description. This memeber is ignored if PipelineType == GRAPHICS_PIPELINE or MESH_PIPELINE
+ /// Graphics pipeline state description. This memeber is ignored if PipelineType == PIPELINE_TYPE_GRAPHICS or PIPELINE_TYPE_MESH
GraphicsPipelineDesc GraphicsPipeline;
- /// Compute pipeline state description. This memeber is ignored if PipelineType == COMPUTE_PIPELINE
+ /// Compute pipeline state description. This memeber is ignored if PipelineType == PIPELINE_TYPE_COMPUTE
ComputePipelineDesc ComputePipeline;
#if DILIGENT_CPP_INTERFACE
- bool IsAnyGraphicsPipeline() const { return PipelineType == GRAPHICS_PIPELINE || PipelineType == MESH_PIPELINE; }
- bool IsComputePipeline () const { return PipelineType == COMPUTE_PIPELINE; }
+ bool IsAnyGraphicsPipeline() const { return PipelineType == PIPELINE_TYPE_GRAPHICS || PipelineType == PIPELINE_TYPE_MESH; }
+ bool IsComputePipeline () const { return PipelineType == PIPELINE_TYPE_COMPUTE; }
#endif
};
typedef struct PipelineStateDesc PipelineStateDesc;
diff --git a/Graphics/GraphicsEngineD3D12/src/PipelineStateD3D12Impl.cpp b/Graphics/GraphicsEngineD3D12/src/PipelineStateD3D12Impl.cpp
index 79ae0eec..dc75131e 100644
--- a/Graphics/GraphicsEngineD3D12/src/PipelineStateD3D12Impl.cpp
+++ b/Graphics/GraphicsEngineD3D12/src/PipelineStateD3D12Impl.cpp
@@ -191,7 +191,7 @@ PipelineStateD3D12Impl::PipelineStateD3D12Impl(IReferenceCounters* pR
switch (m_Desc.PipelineType)
{
- case COMPUTE_PIPELINE:
+ case PIPELINE_TYPE_COMPUTE:
{
auto& ComputePipeline = m_Desc.ComputePipeline;
@@ -225,7 +225,7 @@ PipelineStateD3D12Impl::PipelineStateD3D12Impl(IReferenceCounters* pR
break;
}
- case GRAPHICS_PIPELINE:
+ case PIPELINE_TYPE_GRAPHICS:
{
const auto& GraphicsPipeline = m_Desc.GraphicsPipeline;
@@ -312,7 +312,7 @@ PipelineStateD3D12Impl::PipelineStateD3D12Impl(IReferenceCounters* pR
}
#ifdef D12_H_HAS_MESH_SHADER
- case MESH_PIPELINE:
+ case PIPELINE_TYPE_MESH:
{
const auto& GraphicsPipeline = m_Desc.GraphicsPipeline;
diff --git a/Graphics/GraphicsEngineVulkan/src/GenerateMipsVkHelper.cpp b/Graphics/GraphicsEngineVulkan/src/GenerateMipsVkHelper.cpp
index be1bf51d..5110c873 100644
--- a/Graphics/GraphicsEngineVulkan/src/GenerateMipsVkHelper.cpp
+++ b/Graphics/GraphicsEngineVulkan/src/GenerateMipsVkHelper.cpp
@@ -157,7 +157,7 @@ std::array<RefCntAutoPtr<IPipelineState>, 4> GenerateMipsVkHelper::CreatePSOs(TE
PipelineStateCreateInfo PSOCreateInfo;
PipelineStateDesc& PSODesc = PSOCreateInfo.PSODesc;
- PSODesc.PipelineType = COMPUTE_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_COMPUTE;
PSODesc.Name = name.c_str();
PSODesc.ComputePipeline.pCS = pCS;
diff --git a/Tests/DiligentCoreAPITest/src/ComputeShaderTest.cpp b/Tests/DiligentCoreAPITest/src/ComputeShaderTest.cpp
index 3a7b8047..6a81f457 100644
--- a/Tests/DiligentCoreAPITest/src/ComputeShaderTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/ComputeShaderTest.cpp
@@ -141,7 +141,7 @@ TEST(ComputeShaderTest, FillTexture)
PipelineStateCreateInfo PSOCreateInfo;
PSOCreateInfo.PSODesc.Name = "Compute shader test";
- PSOCreateInfo.PSODesc.PipelineType = COMPUTE_PIPELINE;
+ PSOCreateInfo.PSODesc.PipelineType = PIPELINE_TYPE_COMPUTE;
PSOCreateInfo.PSODesc.ComputePipeline.pCS = pCS;
RefCntAutoPtr<IPipelineState> pPSO;
diff --git a/Tests/DiligentCoreAPITest/src/DrawCommandTest.cpp b/Tests/DiligentCoreAPITest/src/DrawCommandTest.cpp
index e0e85f4f..7d4f2f5b 100644
--- a/Tests/DiligentCoreAPITest/src/DrawCommandTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/DrawCommandTest.cpp
@@ -228,7 +228,7 @@ protected:
PSODesc.Name = "Draw command test - procedural triangles";
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.NumRenderTargets = 1;
PSODesc.GraphicsPipeline.RTVFormats[0] = pSwapChain->GetDesc().ColorBufferFormat;
PSODesc.GraphicsPipeline.PrimitiveTopology = PRIMITIVE_TOPOLOGY_TRIANGLE_LIST;
diff --git a/Tests/DiligentCoreAPITest/src/GeometryShaderTest.cpp b/Tests/DiligentCoreAPITest/src/GeometryShaderTest.cpp
index e5210455..2c9c0fb9 100644
--- a/Tests/DiligentCoreAPITest/src/GeometryShaderTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/GeometryShaderTest.cpp
@@ -138,7 +138,7 @@ TEST(GeometryShaderTest, DrawTriangles)
PSODesc.Name = "Geometry shader test";
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.NumRenderTargets = 1;
PSODesc.GraphicsPipeline.RTVFormats[0] = pSwapChain->GetDesc().ColorBufferFormat;
PSODesc.GraphicsPipeline.PrimitiveTopology = PRIMITIVE_TOPOLOGY_POINT_LIST;
diff --git a/Tests/DiligentCoreAPITest/src/PSOCompatibilityTest.cpp b/Tests/DiligentCoreAPITest/src/PSOCompatibilityTest.cpp
index d9d837a0..39fc6fc7 100644
--- a/Tests/DiligentCoreAPITest/src/PSOCompatibilityTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/PSOCompatibilityTest.cpp
@@ -204,7 +204,7 @@ RefCntAutoPtr<IPipelineState> CreateGraphicsPSO(IRenderDevice* pDevice, const ch
PipelineStateCreateInfo PSOCreateInfo;
PipelineStateDesc& PSODesc = PSOCreateInfo.PSODesc;
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.NumRenderTargets = 1;
PSODesc.GraphicsPipeline.RTVFormats[0] = TEX_FORMAT_RGBA8_UNORM_SRGB;
PSODesc.GraphicsPipeline.DepthStencilDesc.DepthEnable = False;
@@ -247,7 +247,7 @@ RefCntAutoPtr<IPipelineState> CreateComputePSO(IRenderDevice* pDevice, const cha
PipelineStateCreateInfo PSOCreateInfo;
PipelineStateDesc& PSODesc = PSOCreateInfo.PSODesc;
- PSODesc.PipelineType = COMPUTE_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_COMPUTE;
ShaderCreateInfo CreationAttrs;
CreationAttrs.SourceLanguage = SHADER_SOURCE_LANGUAGE_HLSL;
CreationAttrs.UseCombinedTextureSamplers = true;
diff --git a/Tests/DiligentCoreAPITest/src/QueryTest.cpp b/Tests/DiligentCoreAPITest/src/QueryTest.cpp
index 5a23e91e..fe830620 100644
--- a/Tests/DiligentCoreAPITest/src/QueryTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/QueryTest.cpp
@@ -114,7 +114,7 @@ protected:
PSODesc.Name = "Query command test - procedural quad";
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.NumRenderTargets = 1;
PSODesc.GraphicsPipeline.RTVFormats[0] = TexDesc.Format;
PSODesc.GraphicsPipeline.PrimitiveTopology = PRIMITIVE_TOPOLOGY_TRIANGLE_STRIP;
diff --git a/Tests/DiligentCoreAPITest/src/RenderPassTest.cpp b/Tests/DiligentCoreAPITest/src/RenderPassTest.cpp
index be60b0a0..ff54cb3e 100644
--- a/Tests/DiligentCoreAPITest/src/RenderPassTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/RenderPassTest.cpp
@@ -134,7 +134,7 @@ protected:
PSODesc.Name = "Render pass test - draw triangles";
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.pRenderPass = pRenderPass;
PSODesc.GraphicsPipeline.SubpassIndex = 0;
PSODesc.GraphicsPipeline.SmplDesc.Count = SampleCount;
@@ -871,8 +871,8 @@ TEST_F(RenderPassTest, InputAttachment)
PipelineStateDesc& PSODesc = PSOCreateInfo.PSODesc;
PSODesc.Name = "Render pass test - input attachment";
-
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.pRenderPass = pRenderPass;
PSODesc.GraphicsPipeline.SubpassIndex = 1;
PSODesc.GraphicsPipeline.SmplDesc.Count = 1;
diff --git a/Tests/DiligentCoreAPITest/src/ShaderResourceLayoutTest.cpp b/Tests/DiligentCoreAPITest/src/ShaderResourceLayoutTest.cpp
index 55b88530..b52d26fe 100644
--- a/Tests/DiligentCoreAPITest/src/ShaderResourceLayoutTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/ShaderResourceLayoutTest.cpp
@@ -246,7 +246,7 @@ protected:
auto* pDevice = pEnv->GetDevice();
PSODesc.Name = "Shader resource layout test";
- PSODesc.PipelineType = COMPUTE_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_COMPUTE;
PSODesc.ResourceLayout = ResourceLayout;
PSODesc.ComputePipeline.pCS = pCS;
diff --git a/Tests/DiligentCoreAPITest/src/TessellationTest.cpp b/Tests/DiligentCoreAPITest/src/TessellationTest.cpp
index 744a3bcd..a9258d97 100644
--- a/Tests/DiligentCoreAPITest/src/TessellationTest.cpp
+++ b/Tests/DiligentCoreAPITest/src/TessellationTest.cpp
@@ -137,7 +137,7 @@ TEST(TessellationTest, DrawQuad)
PSODesc.Name = "Tessellation test";
- PSODesc.PipelineType = GRAPHICS_PIPELINE;
+ PSODesc.PipelineType = PIPELINE_TYPE_GRAPHICS;
PSODesc.GraphicsPipeline.NumRenderTargets = 1;
PSODesc.GraphicsPipeline.RTVFormats[0] = pSwapChain->GetDesc().ColorBufferFormat;
PSODesc.GraphicsPipeline.PrimitiveTopology = PRIMITIVE_TOPOLOGY_1_CONTROL_POINT_PATCHLIST;
diff --git a/Tests/DiligentCoreAPITest/src/c_interface/PipelineState_C_Test.c b/Tests/DiligentCoreAPITest/src/c_interface/PipelineState_C_Test.c
index 818fc6f6..00c7f664 100644
--- a/Tests/DiligentCoreAPITest/src/c_interface/PipelineState_C_Test.c
+++ b/Tests/DiligentCoreAPITest/src/c_interface/PipelineState_C_Test.c
@@ -74,7 +74,7 @@ int TestPipelineStateCInterface(struct IPipelineState* pPSO)
++num_errors;
PSODesc = *IPipelineState_GetDesc(pPSO);
- if (PSODesc.PipelineType == COMPUTE_PIPELINE)
+ if (PSODesc.PipelineType == PIPELINE_TYPE_COMPUTE)
++num_errors;
StaticVarCount = IPipelineState_GetStaticVariableCount(pPSO, SHADER_TYPE_VERTEX);