MayaFlux 0.4.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 194 of file VKShaderModule.cpp.

195{
196 if (m_module) {
197 device.destroyShaderModule(m_module);
198 m_module = nullptr;
199
201 "Shader module cleaned up ({} stage)", vk::to_string(m_stage));
202 }
203
204 m_spirv_code.clear();
205 m_reflection = ShaderReflection {};
206 m_specialization_map.clear();
208 m_specialization_data.clear();
209}
#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.