Skip to main content

IsUniformCacheStrategyLike.ixx File

Concept for strategies that cache shader uniforms for a shader handle. More...

Included Headers

Namespaces Index

namespacehelios
namespaceengine
namespacerendering
namespaceshader
namespaceconcepts

Description

Concept for strategies that cache shader uniforms for a shader handle.

File Listing

The file content with the documentation metadata removed is:

1
5module;
6
7#include <concepts>
8
9export module helios.engine.rendering.shader.concepts.IsUniformCacheStrategyLike;
10
11import helios.engine.rendering.shader.ShaderEntity;
12import helios.engine.rendering.shader.concepts.IsShaderHandle;
13import helios.engine.runtime.world.EngineWorld;
14import helios.engine.runtime.world.UpdateContext;
15
18export namespace helios::engine::rendering::shader::concepts {
19
27 template<typename T, typename TMemberHandle, typename... TUniformScopes>
28 concept IsUniformCacheStrategyLike =
29 IsShaderHandle<TMemberHandle> && (
30
31 requires(
33 ) {
34 {t.template cacheUniforms<TUniformScopes>(entityHandle, renderResourceWorld, updateContext)} -> std::same_as<bool>;
35 } && ...);
36
37
38};

Generated via doxygen2docusaurus 2.0.0 by Doxygen 1.9.8.