204 bool is_running()
const;
276 inline std::shared_ptr<Vruta::TaskScheduler>
get_scheduler() {
return m_scheduler; }
351 return m_subsystem_manager->get_subsystem(type);
363 void await_shutdown();
371 void request_shutdown();
377 bool is_shutdown_requested()
const;
391 bool m_is_initialized {};
393 std::atomic<bool> m_should_shutdown {
false };
409#ifdef MAYAFLUX_PLATFORM_MACOS
410 void run_macos_event_loop();
413#ifdef MAYAFLUX_PLATFORM_WINDOWS
414 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.
bool is_configured() const
Checks if the engine has been initialized and configured.
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.
GlobalNetworkConfig & get_network_config()
Gets the current network configuration.
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.
Configuration for the NetworkSubsystem.
Comprehensive configuration for digital audio stream processing.
Configuration settings for individual audio nodes.