MayaFlux 0.1.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 101 of file VKShaderModule.cpp.

102{
103 if (m_module) {
104 device.destroyShaderModule(m_module);
105 m_module = nullptr;
106
108 "Shader module cleaned up ({} stage)", vk::to_string(m_stage));
109 }
110
111 m_spirv_code.clear();
112 m_reflection = ShaderReflection {};
113 m_specialization_map.clear();
115 m_specialization_data.clear();
116}
#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.