Nameless Engine
Loading...
Searching...
No Matches
HlslShaderCacheManager.h
1#pragma once
2
3// Custom.
4#include "shader/general/cache/ShaderCacheManager.h"
5
6namespace ne {
7 class Renderer;
8
11 // Only shader manager is expected to create this manager.
12 friend class ShaderCacheManager;
13
14 public:
15 virtual ~HlslShaderCacheManager() override = default;
16
18 HlslShaderCacheManager& operator=(const HlslShaderCacheManager&) = delete;
19
20 protected:
31 [[nodiscard]] virtual std::optional<std::string>
32 isLanguageSpecificGlobalCacheOutdated(const ConfigManager& cacheConfig) override;
33
41 [[nodiscard]] virtual std::optional<Error>
43
44 private:
48 static constexpr std::string_view sVsModel = "vs";
49
51 static constexpr std::string_view sPsModel = "ps";
52
54 static constexpr std::string_view sCsModel = "cs";
55
57 static constexpr std::string_view sCompilerVersion = "compiler_version";
58 };
59
66
68 static constexpr std::string_view sHlslSectionName = "hlsl";
69 };
70}
Definition: ConfigManager.h:27
Definition: HlslShaderCacheManager.h:10
virtual std::optional< std::string > isLanguageSpecificGlobalCacheOutdated(const ConfigManager &cacheConfig) override
Definition: HlslShaderCacheManager.cpp:11
static constexpr std::string_view sHlslSectionName
Definition: HlslShaderCacheManager.h:68
virtual std::optional< Error > writeLanguageSpecificParameters(ConfigManager &cacheConfig) override
Definition: HlslShaderCacheManager.cpp:73
Definition: Renderer.h:43
Definition: ShaderCacheManager.h:16
Renderer *const pRenderer
Definition: ShaderCacheManager.h:113
static constexpr std::string_view sCsModel
Definition: HlslShaderCacheManager.h:54
static constexpr std::string_view sCompilerVersion
Definition: HlslShaderCacheManager.h:57
static constexpr std::string_view sPsModel
Definition: HlslShaderCacheManager.h:51
static constexpr std::string_view sVsModel
Definition: HlslShaderCacheManager.h:48