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

◆ process()

void MayaFlux::Core::GraphicsSubsystem::process ( )

Unified processing callback (alternative to separate methods)

This is called once per frame and handles all processing:

  • Visual nodes (VISUAL_RATE)
  • Graphics buffers (GRAPHICS_BACKEND)
  • Frame coroutines (FRAME_ACCURATE)

Can be overridden or extended via hooks.

Definition at line 276 of file GraphicsSubsystem.cpp.

277{
278 if (!m_handle) {
279 return;
280 }
281
282 for (auto& [name, hook] : m_handle->pre_process_hooks) {
283 hook(1);
284 }
285
287
289
291
293 m_backend->handle_window_resize();
294
295 // render_all_windows();
297
299 for (auto& [name, hook] : m_handle->post_process_hooks) {
300 hook(1);
301 }
302}
void process(uint32_t processing_units)
Process all channels in token domain.
void cleanup_closed_windows()
Cleanup resources for windows that have been closed.
void register_windows_for_processing()
Register markend windows from window manager for swapchain processing.
SubsystemProcessingHandle * m_handle
Reference to processing handle.
std::unique_ptr< IGraphicsBackend > m_backend
void process(uint32_t num_samples)
Process all nodes in token domain.
NodeProcessingHandle nodes
Node processing interface.
BufferProcessingHandle buffers
Buffer processing interface.
void process(uint64_t processing_units)
Process all tasks in token domain.
void process()
Process window events and frame hooks.

References MayaFlux::Core::SubsystemProcessingHandle::buffers, cleanup_closed_windows(), m_backend, m_handle, MayaFlux::Core::SubsystemProcessingHandle::nodes, MayaFlux::Core::SubsystemProcessingHandle::post_process_hooks, MayaFlux::Core::SubsystemProcessingHandle::pre_process_hooks, MayaFlux::Core::WindowManagerHandle::process(), MayaFlux::Core::NodeProcessingHandle::process(), MayaFlux::Core::BufferProcessingHandle::process(), MayaFlux::Core::TaskSchedulerHandle::process(), register_windows_for_processing(), MayaFlux::Core::SubsystemProcessingHandle::tasks, and MayaFlux::Core::SubsystemProcessingHandle::windows.

Referenced by graphics_thread_loop().

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