#include <ShaderProgram.h>
|
| ShaderModule (GFXDevice &context, const std::string_view name, U32 generation) |
|
virtual | ~ShaderModule () override |
|
void | registerParent (ShaderProgram *parent) |
|
void | deregisterParent (ShaderProgram *parent) |
|
| PROPERTY_R (Str< 256 >, name) |
|
| PROPERTY_R (bool, valid, false) |
|
| PROPERTY_R (bool, inUse, true) |
|
| PROPERTY_R (U32, generation, 0u) |
|
| PROPERTY_R (U64, lastUsedFrame, U64_MAX - MAX_FRAME_LIFETIME - 1u) |
|
| GUIDWrapper () noexcept |
|
| GUIDWrapper (const GUIDWrapper &old) noexcept |
|
| GUIDWrapper (GUIDWrapper &&old) noexcept |
|
virtual | ~GUIDWrapper ()=default |
|
FORCE_INLINE I64 | getGUID () const noexcept |
|
GUIDWrapper & | operator= (const GUIDWrapper &old)=delete |
|
GUIDWrapper & | operator= (GUIDWrapper &&other)=delete |
|
virtual | ~GraphicsResource () |
|
GFXDevice & | context () const noexcept |
|
U64 | nameHash () const noexcept |
|
| NonCopyable (const NonCopyable &)=delete |
|
NonCopyable & | operator= (const NonCopyable &)=delete |
|
| NonCopyable (NonCopyable &&)=default |
|
NonCopyable & | operator= (NonCopyable &&)=default |
|
| NonMovable (NonMovable &&)=delete |
|
NonMovable & | operator= (NonMovable &&)=delete |
|
| NonMovable (const NonMovable &)=default |
|
NonMovable & | operator= (const NonMovable &)=default |
|
Definition at line 72 of file ShaderProgram.h.
◆ ShaderMap
◆ ShaderModule()
Divide::ShaderModule::ShaderModule |
( |
GFXDevice & |
context, |
|
|
const std::string_view |
name, |
|
|
U32 |
generation |
|
) |
| |
|
explicit |
◆ ~ShaderModule()
Divide::ShaderModule::~ShaderModule |
( |
| ) |
|
|
overridevirtual |
◆ deregisterParent()
void Divide::ShaderModule::deregisterParent |
( |
ShaderProgram * |
parent | ) |
|
◆ DestroyStaticData()
void Divide::ShaderModule::DestroyStaticData |
( |
| ) |
|
|
static |
◆ GetShader()
ShaderModule * Divide::ShaderModule::GetShader |
( |
const std::string_view |
name | ) |
|
|
static |
Returns a reference to an already loaded shader, null otherwise.
Definition at line 814 of file ShaderProgram.cpp.
◆ GetShaderLocked()
ShaderModule * Divide::ShaderModule::GetShaderLocked |
( |
const std::string_view |
name | ) |
|
|
staticprotected |
◆ Idle()
void Divide::ShaderModule::Idle |
( |
bool |
fast | ) |
|
|
static |
◆ InitStaticData()
void Divide::ShaderModule::InitStaticData |
( |
| ) |
|
|
static |
◆ PROPERTY_R() [1/5]
Divide::ShaderModule::PROPERTY_R |
( |
bool |
, |
|
|
inUse |
, |
|
|
true |
|
|
) |
| |
◆ PROPERTY_R() [2/5]
Divide::ShaderModule::PROPERTY_R |
( |
bool |
, |
|
|
valid |
, |
|
|
false |
|
|
) |
| |
◆ PROPERTY_R() [3/5]
Divide::ShaderModule::PROPERTY_R |
( |
Str< 256 > |
, |
|
|
name |
|
|
) |
| |
◆ PROPERTY_R() [4/5]
Divide::ShaderModule::PROPERTY_R |
( |
U32 |
, |
|
|
generation |
, |
|
|
0u |
|
|
) |
| |
◆ PROPERTY_R() [5/5]
◆ registerParent()
void Divide::ShaderModule::registerParent |
( |
ShaderProgram * |
parent | ) |
|
◆ _parentLock
Mutex Divide::ShaderModule::_parentLock |
|
protected |
◆ _parents
eastl::fixed_vector<ShaderProgram*, 4, true> Divide::ShaderModule::_parents |
|
protected |
◆ MAX_FRAME_LIFETIME
◆ s_modulesRemoved
std::atomic_bool Divide::ShaderModule::s_modulesRemoved |
|
staticprotected |
◆ s_shaderNameLock
◆ s_shaderNameMap
The documentation for this class was generated from the following files: