Plasma Engine  2.0
Loading...
Searching...
No Matches
ImmutableSamplers.h
1#pragma once
2
3#include <RendererFoundation/RendererFoundationDLL.h>
4
6class plGALDevice;
7
13class PL_RENDERERFOUNDATION_DLL plGALImmutableSamplers
14{
15public:
17
22 static plResult RegisterImmutableSampler(plHashedString sSamplerName, const plGALSamplerStateCreationDescription& desc);
23
26 static const ImmutableSamplers& GetImmutableSamplers();
27
28private:
29 static void OnEngineStartup();
30 static void OnEngineShutdown();
31 static void GALDeviceEventHandler(const plGALDeviceEvent& e);
32 static void CreateSamplers(plGALDevice* m_pDevice);
33 static void DestroySamplers(plGALDevice* m_pDevice);
34
35private:
36 PL_MAKE_SUBSYSTEM_STARTUP_FRIEND(RendererFoundation, ImmutableSamplers);
37
38 static bool s_bInitialized;
39 static ImmutableSamplers s_ImmutableSamplers;
41};
The plRenderDevice class is the primary interface for interactions with rendering APIs It contains a ...
Definition Device.h:19
Manages and creates immutable samplers. Once registered, the immutable sampler will be automatically ...
Definition ImmutableSamplers.h:14
Definition HashTable.h:333
This class is optimized to take nearly no memory (sizeof(void*)) and to allow very fast checks whethe...
Definition HashedString.h:25
Type for important GAL events.
Definition Descriptors.h:253
Definition Descriptors.h:118
Default enum for returning failure or success, instead of using a bool.
Definition Types.h:54