MayaFlux 0.2.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches

◆ cleanup()

void MayaFlux::Core::VKShaderModule::cleanup ( vk::Device  device)

Cleanup shader module.

Parameters
deviceLogical device (must match creation device)

Destroys vk::ShaderModule and clears metadata. Safe to call multiple times or on uninitialized modules.

Definition at line 121 of file VKShaderModule.cpp.

122{
123 if (m_module) {
124 device.destroyShaderModule(m_module);
125 m_module = nullptr;
126
128 "Shader module cleaned up ({} stage)", vk::to_string(m_stage));
129 }
130
131 m_spirv_code.clear();
132 m_reflection = ShaderReflection {};
133 m_specialization_map.clear();
135 m_specialization_data.clear();
136}
#define MF_DEBUG(comp, ctx,...)
std::vector< vk::SpecializationMapEntry > m_specialization_entries
vk::ShaderStageFlagBits m_stage
std::vector< uint32_t > m_specialization_data
std::unordered_map< uint32_t, uint32_t > m_specialization_map
std::vector< uint32_t > m_spirv_code
Preserved SPIR-V (if enabled)
@ GraphicsBackend
Graphics/visual rendering backend (Vulkan, OpenGL)
@ Core
Core engine, backend, subsystems.

References MayaFlux::Journal::Core, MayaFlux::Journal::GraphicsBackend, m_module, m_reflection, m_specialization_data, m_specialization_entries, m_specialization_map, m_spirv_code, m_stage, and MF_DEBUG.