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

◆ initialize()

void MayaFlux::Core::GraphicsSubsystem::initialize ( SubsystemProcessingHandle handle)
overridevirtual

Initialize with graphics configuration.

Parameters
handleProcessing handle for domain registration

Implements MayaFlux::Core::ISubsystem.

Definition at line 46 of file GraphicsSubsystem.cpp.

47{
49 "Initializing Graphics Subsystem...");
50
51 m_handle = &handle;
52
53 if (!m_backend->initialize(m_graphics_config)) {
54 error<std::runtime_error>(
57 std::source_location::current(),
58 "No graphics backend available");
59 }
60
63 }
64
65 handle.tasks.register_clock(Vruta::ProcessingToken::FRAME_ACCURATE, m_frame_clock);
66
68
70
71 m_is_ready = true;
72
74 "Graphics Subsystem initialized (Target FPS: {})",
75 m_frame_clock->frame_rate());
76}
#define MF_INFO(comp, ctx,...)
void initialize_graphics_portal()
Initialize Portal::Graphics subsystem.
SubsystemProcessingHandle * m_handle
Reference to processing handle.
std::shared_ptr< Vruta::FrameClock > m_frame_clock
std::unique_ptr< IGraphicsBackend > m_backend
GlobalGraphicsConfig m_graphics_config
Graphics/windowing configuration.
@ GraphicsSubsystem
Graphics subsystem operations (Vulkan, rendering pipeline)
@ Core
Core engine, backend, subsystems.
bool initialize(std::optional< Core::TextConfig > config)
Initialize Portal::Text.
Definition Text.cpp:18
@ FRAME_ACCURATE
Coroutine is frame-accurate.
TextConfig text_config
Default font for Portal::Text.
uint32_t target_frame_rate
Target frame rate for visual processing (Hz)

References MayaFlux::Journal::Core, MayaFlux::Vruta::FRAME_ACCURATE, MayaFlux::Journal::GraphicsSubsystem, MayaFlux::Portal::Text::initialize(), initialize_graphics_portal(), m_backend, m_frame_clock, m_graphics_config, m_handle, m_is_ready, MF_INFO, MayaFlux::Core::TaskSchedulerHandle::register_clock(), MayaFlux::Core::GlobalGraphicsConfig::target_frame_rate, MayaFlux::Core::SubsystemProcessingHandle::tasks, and MayaFlux::Core::GlobalGraphicsConfig::text_config.

+ Here is the call graph for this function: