202 bool is_running()
const;
258 inline std::shared_ptr<Vruta::TaskScheduler>
get_scheduler() {
return m_scheduler; }
333 return m_subsystem_manager->get_subsystem(type);
345 void await_shutdown();
353 void request_shutdown();
359 bool is_shutdown_requested()
const;
372 bool m_is_initialized {};
374 std::atomic<bool> m_should_shutdown {
false };
390#ifdef MAYAFLUX_PLATFORM_MACOS
391 void run_macos_event_loop();
394#ifdef MAYAFLUX_PLATFORM_WINDOWS
395 void run_windows_event_loop();
GlobalStreamInfo & get_stream_info()
Gets the current stream configuration.
std::shared_ptr< SubsystemManager > m_subsystem_manager
std::shared_ptr< WindowManager > get_window_manager()
Gets the window manager.
std::shared_ptr< Nodes::NodeGraphManager > get_node_graph_manager()
Gets the node graph manager.
std::shared_ptr< IO::IOManager > m_io_manager
IO manager for video/audio loading and dispatch.
std::shared_ptr< Vruta::EventManager > m_event_manager
Event manager (currently only glfw events)
Engine(const Engine &)=delete
std::shared_ptr< Buffers::BufferManager > m_buffer_manager
Buffer manager.
std::shared_ptr< ISubsystem > get_subsystem(SubsystemType type)
Get typed access to a specific subsystem.
std::shared_ptr< InputManager > get_input_manager()
Gets the input manager.
std::shared_ptr< SubsystemManager > get_subsystem_manager()
Gets the subsystem manager for advanced component access.
GlobalInputConfig & get_input_config()
Gets the current input configuration.
std::unique_ptr< Kinesis::Stochastic::Stochastic > m_stochastic_engine
Core stochastic engine for random generation.
GlobalGraphicsConfig & get_graphics_config()
Gets the current graphics configuration.
std::shared_ptr< WindowManager > m_window_manager
Window manager (Windowing subsystem)
std::shared_ptr< Vruta::EventManager > get_event_manager()
Gets the event manager.
std::shared_ptr< Vruta::TaskScheduler > m_scheduler
Task scheduler.
std::shared_ptr< InputManager > m_input_manager
Input manager (HID/MIDI/etc.)
std::shared_ptr< IO::IOManager > get_io_manager()
Gets the IO manager.
std::shared_ptr< Vruta::TaskScheduler > get_scheduler()
Gets the task scheduler.
std::shared_ptr< Buffers::BufferManager > get_buffer_manager()
Gets the buffer manager.
std::shared_ptr< Nodes::NodeGraphManager > m_node_graph_manager
Node graph manager.
Engine & operator=(const Engine &)=delete
Kinesis::Stochastic::Stochastic * get_stochastic_engine()
Gets the stochastic signal generator engine.
Central lifecycle manager and component orchestrator for the MayaFlux processing system.
Unified generative infrastructure for stochastic and procedural algorithms.
void Resume()
Resumes audio processing on the default engine.
void Start()
Starts audio processing on the default engine.
void Pause()
Pauses audio processing on the default engine.
void Init()
Initializes the default engine with default settings.
void End()
Stops and cleans up the default engine.
Comprehensive configuration for digital audio stream processing.
Configuration settings for individual audio nodes.