MayaFlux 1.0.0
Digital-First Multimedia Processing Framework
Loading...
Searching...
No Matches
MayaFlux::Portal::Forma::SurfaceConfig Struct Reference

The single argument every Surface-creating function in this module takes, at every level of abstraction. More...

#include <Surface.hpp>

+ Collaboration diagram for MayaFlux::Portal::Forma::SurfaceConfig:

Public Member Functions

bool should_detach_on_close () const noexcept
 Whether the built-in detach behavior actually runs.
 

Public Attributes

std::shared_ptr< Context > ctx
 Pre-built Context, already wired to window.
 
bool detach_on_close { true }
 Whether the built-in close handling (Bridge::stop_sync plus a deferred window release, see Surface::Surface) runs.
 
std::shared_ptr< Layer > layer
 Pre-built Layer, constructed against window.
 
std::string name
 Unique name scoping the Context's event coroutines.
 
std::function< void()> on_close
 Runs in addition to, never instead of, the built-in close handling.
 
std::shared_ptr< Core::Window > window
 Target window. Must outlive the Surface.
 

Detailed Description

The single argument every Surface-creating function in this module takes, at every level of abstraction.

Surface, Atelier::create_surface, and Portal::Forma::create_surface all take this instead of a loose (window, name) pair: when layer/ctx are unset, a fresh Layer and Context are built from window/name against the global EventManager and filled in; when both are already set (the power-tinkerer case) they are used as-is and name is ignored. This type must not itself reach into internal::atelier(). Only Forma.hpp/.cpp touch that singleton. Building stays the job of whichever function is given the config.

Definition at line 26 of file Surface.hpp.


The documentation for this struct was generated from the following file: