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

◆ stop()

void MayaFlux::Core::GraphicsSubsystem::stop ( )
overridevirtual

Stop the subsystem's processing/event loops.

Implements MayaFlux::Core::ISubsystem.

Definition at line 202 of file GraphicsSubsystem.cpp.

203{
204 if (!m_running.load(std::memory_order_acquire)) {
205 return;
206 }
207
209 "Stopping Graphics Subsystem...");
210
211 m_running.store(false, std::memory_order_release);
212
213 if (m_graphics_thread.joinable()) {
214 m_graphics_thread.join();
215 }
216
218
219 m_backend->cleanup();
220
221 for (auto& window : m_registered_windows) {
222 window->set_graphics_registered(false);
223 }
224 m_registered_windows.clear();
225
227 "Graphics Subsystem stopped.");
228}
#define MF_INFO(comp, ctx,...)
std::vector< std::shared_ptr< Window > > m_registered_windows
std::unique_ptr< IGraphicsBackend > m_backend
@ GraphicsSubsystem
Graphics subsystem operations (Vulkan, rendering pipeline)
@ Core
Core engine, backend, subsystems.
void shutdown()
Shutdown Portal::Graphics subsystem.
Definition Graphics.cpp:69

References MayaFlux::Journal::Core, MayaFlux::Journal::GraphicsSubsystem, m_backend, m_graphics_thread, m_registered_windows, m_running, MF_INFO, and MayaFlux::Portal::Graphics::shutdown().

Referenced by shutdown(), and ~GraphicsSubsystem().

+ Here is the call graph for this function:
+ Here is the caller graph for this function: