Class Window

Inheritance Relationships

Derived Type

Class Documentation

class Window

Display-owned window accessed on the platform owner.

Logical dimensions use window coordinates; framebuffer dimensions use drawable pixels and may be zero. Queries do not synchronize with another thread. Copy observed values into the runtime handoff instead of reading a live window from simulation/render workers.

Subclassed by CE::Platform::GLFW::Window

Public Functions

virtual ~Window() = default

Release concrete native window state on its required owner.

Detach input callbacks and rendering/presentation dependents before destruction.

See also

Detailed guide

virtual ::CE::Platform::Dimensions<int> logical_size() const = 0

Declaration: [[nodiscard]]

Copy logical window-coordinate dimensions on the platform owner.

See also

Detailed guide

Returns:

Logical size, distinct from framebuffer pixel extent. Observation freshness is backend-defined.

virtual ::CE::Platform::FramebufferSize framebuffer_size() const = 0

Declaration: [[nodiscard]]

Copy drawable pixel dimensions on the platform owner.

See also

Detailed guide

Returns:

Framebuffer size; either dimension may be zero while minimized. Copy into runtime handoff state instead of querying the live window from a simulation worker.

virtual ::CE::Platform::WindowMode mode() const = 0

Declaration: [[nodiscard]]

Read the backend-observed window mode on the platform owner.

See also

Detailed guide

virtual bool should_close() const = 0

Declaration: [[nodiscard]]

Observe the backend close-request flag on the platform owner.

See also

Detailed guide

Returns:

Whether normal runtime shutdown should begin; this query does not destroy the window.

inline virtual bool supports_close_intent() const noexcept

Declaration: [[nodiscard]]

inline virtual bool consume_close_intent()

Declaration: [[nodiscard]]

Consume and acknowledge one native intent on the platform owner.

inline virtual std::optional<bool> focused() const

Declaration: [[nodiscard]]

Optional native focus observation, sampled on the platform owner.

inline virtual void check_native_failure() const

Consume/rethrow a deferred native callback failure on the platform owner.

Pumping adapters check this before publishing a successful poll. The default implementation does nothing for backends without throwing native callbacks.

See also

Detailed guide

virtual void resize(int width, int height) = 0

Request a logical size on the platform owner.

See also

Detailed guide

Parameters:
  • width – Positive logical width.

  • height – Positive logical height. Query resulting logical/pixel sizes afterward; freshness, native constraints and mutation-failure behavior belong to the backend.

virtual void set_mode(::CE::Platform::WindowMode mode) = 0

Request a backend-supported window mode on the platform owner.

See also

Detailed guide

Parameters:

mode – Requested mode; invalid/unsupported transitions may reject. Does not promise a new render context or update a retained frame automatically.

virtual void hide_cursor(bool hide) const = 0

Set cursor visibility on the platform owner.

See also

Detailed guide

Parameters:

hide – True hides the native cursor; false shows it. Visibility does not imply relative pointer capture or locked motion.