MayaFlux 0.3.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 134 of file VKShaderModule.cpp.

135{
136 if (m_module) {
137 device.destroyShaderModule(m_module);
138 m_module = nullptr;
139
141 "Shader module cleaned up ({} stage)", vk::to_string(m_stage));
142 }
143
144 m_spirv_code.clear();
145 m_reflection = ShaderReflection {};
146 m_specialization_map.clear();
148 m_specialization_data.clear();
149}
#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.