mirror of
https://github.com/Laupetin/OpenAssetTools.git
synced 2026-03-05 20:43:03 +00:00
chore: move ShaderDumpingZoneState to non-game specific code
This commit is contained in:
31
src/ObjWriting/Techset/ShaderDumpingZoneState.cpp
Normal file
31
src/ObjWriting/Techset/ShaderDumpingZoneState.cpp
Normal file
@@ -0,0 +1,31 @@
|
||||
#include "ShaderDumpingZoneState.h"
|
||||
|
||||
namespace techset
|
||||
{
|
||||
bool ShaderDumpingZoneState::ShouldDumpTechnique(const void* technique)
|
||||
{
|
||||
if (m_dumped_techniques.contains(technique))
|
||||
return false;
|
||||
|
||||
m_dumped_techniques.emplace(technique);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ShaderDumpingZoneState::ShouldDumpVertexShader(const void* vertexShader)
|
||||
{
|
||||
if (m_dumped_vertex_shaders.contains(vertexShader))
|
||||
return false;
|
||||
|
||||
m_dumped_vertex_shaders.emplace(vertexShader);
|
||||
return true;
|
||||
}
|
||||
|
||||
bool ShaderDumpingZoneState::ShouldDumpPixelShader(const void* pixelShader)
|
||||
{
|
||||
if (m_dumped_pixel_shaders.contains(pixelShader))
|
||||
return false;
|
||||
|
||||
m_dumped_pixel_shaders.emplace(pixelShader);
|
||||
return true;
|
||||
}
|
||||
} // namespace techset
|
||||
21
src/ObjWriting/Techset/ShaderDumpingZoneState.h
Normal file
21
src/ObjWriting/Techset/ShaderDumpingZoneState.h
Normal file
@@ -0,0 +1,21 @@
|
||||
#pragma once
|
||||
|
||||
#include "Dumping/IZoneAssetDumperState.h"
|
||||
|
||||
#include <unordered_set>
|
||||
|
||||
namespace techset
|
||||
{
|
||||
class ShaderDumpingZoneState final : public IZoneAssetDumperState
|
||||
{
|
||||
public:
|
||||
bool ShouldDumpTechnique(const void* technique);
|
||||
bool ShouldDumpVertexShader(const void* vertexShader);
|
||||
bool ShouldDumpPixelShader(const void* pixelShader);
|
||||
|
||||
private:
|
||||
std::unordered_set<const void*> m_dumped_techniques;
|
||||
std::unordered_set<const void*> m_dumped_vertex_shaders;
|
||||
std::unordered_set<const void*> m_dumped_pixel_shaders;
|
||||
};
|
||||
} // namespace techset
|
||||
@@ -4,7 +4,7 @@ namespace techset
|
||||
{
|
||||
bool TechniqueDumpingZoneState::ShouldDumpTechnique(const void* technique)
|
||||
{
|
||||
if (m_dumped_techniques.find(technique) != m_dumped_techniques.end())
|
||||
if (m_dumped_techniques.contains(technique))
|
||||
return false;
|
||||
|
||||
m_dumped_techniques.emplace(technique);
|
||||
|
||||
Reference in New Issue
Block a user