Skip to content

Commit e1de8b3

Browse files
committed
moving it to SPIRVShaderResourceAttribs, make it static member ResourceTypeToString
1 parent 743e7f2 commit e1de8b3

File tree

3 files changed

+37
-36
lines changed

3 files changed

+37
-36
lines changed

Graphics/ShaderTools/include/SPIRVShaderResources.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ struct SPIRVShaderResourceAttribs
8585

8686
static SHADER_RESOURCE_TYPE GetShaderResourceType(ResourceType Type);
8787
static PIPELINE_RESOURCE_FLAGS GetPipelineResourceFlags(ResourceType Type);
88+
static const char* ResourceTypeToString(ResourceType Type);
8889

8990
// clang-format off
9091

Graphics/ShaderTools/src/SPIRVShaderResources.cpp

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -248,6 +248,41 @@ PIPELINE_RESOURCE_FLAGS SPIRVShaderResourceAttribs::GetPipelineResourceFlags(Res
248248
}
249249
}
250250

251+
const char* SPIRVShaderResourceAttribs::ResourceTypeToString(SPIRVShaderResourceAttribs::ResourceType Type)
252+
{
253+
switch (Type)
254+
{
255+
case SPIRVShaderResourceAttribs::ResourceType::UniformBuffer:
256+
return "UniformBuffer";
257+
case SPIRVShaderResourceAttribs::ResourceType::ROStorageBuffer:
258+
return "ROStorageBuffer";
259+
case SPIRVShaderResourceAttribs::ResourceType::RWStorageBuffer:
260+
return "RWStorageBuffer";
261+
case SPIRVShaderResourceAttribs::ResourceType::UniformTexelBuffer:
262+
return "UniformTexelBuffer";
263+
case SPIRVShaderResourceAttribs::ResourceType::StorageTexelBuffer:
264+
return "StorageTexelBuffer";
265+
case SPIRVShaderResourceAttribs::ResourceType::StorageImage:
266+
return "StorageImage";
267+
case SPIRVShaderResourceAttribs::ResourceType::SampledImage:
268+
return "SampledImage";
269+
case SPIRVShaderResourceAttribs::ResourceType::AtomicCounter:
270+
return "AtomicCounter";
271+
case SPIRVShaderResourceAttribs::ResourceType::SeparateImage:
272+
return "SeparateImage";
273+
case SPIRVShaderResourceAttribs::ResourceType::SeparateSampler:
274+
return "SeparateSampler";
275+
case SPIRVShaderResourceAttribs::ResourceType::InputAttachment:
276+
return "InputAttachment";
277+
case SPIRVShaderResourceAttribs::ResourceType::AccelerationStructure:
278+
return "AccelerationStructure";
279+
case SPIRVShaderResourceAttribs::ResourceType::PushConstant:
280+
return "PushConstant";
281+
default:
282+
return "Unknown";
283+
}
284+
}
285+
251286
spv::ExecutionModel ShaderTypeToSpvExecutionModel(SHADER_TYPE ShaderType)
252287
{
253288
static_assert(SHADER_TYPE_LAST == 0x4000, "Please handle the new shader type in the switch below");

Tests/DiligentCoreTest/src/ShaderTools/SPIRVShaderResourcesTest.cpp

Lines changed: 1 addition & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -42,41 +42,6 @@ using namespace Diligent::Testing;
4242
namespace
4343
{
4444

45-
const char* SPIRVShaderResourceTypeToString(SPIRVShaderResourceAttribs::ResourceType Type)
46-
{
47-
switch (Type)
48-
{
49-
case SPIRVShaderResourceAttribs::ResourceType::UniformBuffer:
50-
return "UniformBuffer";
51-
case SPIRVShaderResourceAttribs::ResourceType::ROStorageBuffer:
52-
return "ROStorageBuffer";
53-
case SPIRVShaderResourceAttribs::ResourceType::RWStorageBuffer:
54-
return "RWStorageBuffer";
55-
case SPIRVShaderResourceAttribs::ResourceType::UniformTexelBuffer:
56-
return "UniformTexelBuffer";
57-
case SPIRVShaderResourceAttribs::ResourceType::StorageTexelBuffer:
58-
return "StorageTexelBuffer";
59-
case SPIRVShaderResourceAttribs::ResourceType::StorageImage:
60-
return "StorageImage";
61-
case SPIRVShaderResourceAttribs::ResourceType::SampledImage:
62-
return "SampledImage";
63-
case SPIRVShaderResourceAttribs::ResourceType::AtomicCounter:
64-
return "AtomicCounter";
65-
case SPIRVShaderResourceAttribs::ResourceType::SeparateImage:
66-
return "SeparateImage";
67-
case SPIRVShaderResourceAttribs::ResourceType::SeparateSampler:
68-
return "SeparateSampler";
69-
case SPIRVShaderResourceAttribs::ResourceType::InputAttachment:
70-
return "InputAttachment";
71-
case SPIRVShaderResourceAttribs::ResourceType::AccelerationStructure:
72-
return "AccelerationStructure";
73-
case SPIRVShaderResourceAttribs::ResourceType::PushConstant:
74-
return "PushConstant";
75-
default:
76-
return "Unknown";
77-
}
78-
}
79-
8045
std::vector<uint32_t> HLSLtoSPIRV(const char* FilePath, SHADER_TYPE ShaderType = SHADER_TYPE_PIXEL)
8146
{
8247
ShaderCreateInfo ShaderCI;
@@ -190,7 +155,7 @@ void TestSPIRVResources(const char* FilePath,
190155
ASSERT_NE(pRefRes, nullptr) << "Resource '" << Res.Name << "' is not found in the reference list";
191156

192157
EXPECT_EQ(Res.ArraySize, pRefRes->ArraySize) << Res.Name;
193-
EXPECT_STREQ(SPIRVShaderResourceTypeToString(Res.Type), SPIRVShaderResourceTypeToString(pRefRes->Type)) << Res.Name;
158+
EXPECT_STREQ(SPIRVShaderResourceAttribs::ResourceTypeToString(Res.Type), SPIRVShaderResourceAttribs::ResourceTypeToString(pRefRes->Type)) << Res.Name;
194159
EXPECT_EQ(Res.ArraySize, pRefRes->ArraySize) << Res.Name;
195160
EXPECT_EQ(Res.ResourceDim, pRefRes->ResourceDim) << Res.Name;
196161
EXPECT_EQ(Res.IsMS, pRefRes->IsMS) << Res.Name;

0 commit comments

Comments
 (0)