Class GraphicsDomainOwner

Class Documentation

class GraphicsDomainOwner

Declaration: final

Backend lifecycle authority for a token, independent of notification routing.

Construct before native effects; allocation or identity exhaustion throws. Serialize mutations on the native owner. Destruction invalidates a still-live domain as Abandoned without callbacks or native calls.

Public Functions

GraphicsDomainOwner()
~GraphicsDomainOwner()
GraphicsDomainOwner(const GraphicsDomainOwner&) = delete
GraphicsDomainOwner &operator=(const GraphicsDomainOwner&) = delete
inline GraphicsDomain token() const noexcept

Declaration: [[nodiscard]]

Retain observation state independently of this backend authority and its context.

void make_available() noexcept

Commit initialization once, after mandatory native setup succeeds.

Later calls have no effect; a terminal domain cannot reopen. Performs no notification.

void shutdown() noexcept

Permanently invalidate an available domain after actual native deletion, without callbacks.

An uninitialized or already terminal domain is unchanged.

void abandon() noexcept

Permanently invalidate an available domain without native calls or callbacks.

Use when native cleanup cannot run; preserve an already committed Shutdown reason.