28 std::shared_ptr<Core::Window>
window;
44 std::shared_ptr<Context>
ctx;
159 [[nodiscard]]
Layer& layer() noexcept {
return *m_layer; }
162 [[nodiscard]]
const Layer&
layer() const noexcept {
return *m_layer; }
173 [[nodiscard]]
const Context&
ctx() const noexcept {
return *m_ctx; }
178 [[nodiscard]]
const std::shared_ptr<Core::Window>&
window() const noexcept
180 return m_window_ownership->window;
188 [[nodiscard]]
const std::shared_ptr<Layer>&
layer_ptr() const noexcept {
return m_layer; }
191 [[nodiscard]]
const std::shared_ptr<Context>&
ctx_ptr() const noexcept {
return m_ctx; }
216 void remove(uint32_t
id) { m_layer->remove(
id); }
246 return { .
min = { -1.F + margin, 1.F - margin -
h },
247 .max = { -1.F + margin + w, 1.F - margin } };
253 return { .
min = { 1.F - margin - w, 1.F - margin -
h },
254 .max = { 1.F - margin, 1.F - margin } };
260 return { .
min = { -1.F + margin, -1.F + margin },
261 .max = { -1.F + margin + w, -1.F + margin +
h } };
267 return { .
min = { 1.F - margin - w, -1.F + margin },
268 .max = { 1.F - margin, -1.F + margin +
h } };
278 return { .
min = { -1.F + margin, 1.F - margin -
h },
279 .max = { 1.F - margin, 1.F - margin } };
285 return { .
min = { -1.F + margin, -1.F + margin },
286 .max = { 1.F - margin, -1.F + margin +
h } };
296 return { .
min = { -1.F + margin, -1.F + margin },
297 .max = { -1.F + margin + w, 1.F - margin } };
303 return { .
min = { 1.F - margin - w, -1.F + margin },
304 .max = { 1.F - margin, 1.F - margin } };
310 return { .
min = { -w * 0.5F, -
h * 0.5F }, .max = { w * 0.5F,
h * 0.5F } };
316 return { .
min = glm::vec2(-1.F), .max = glm::vec2(1.F) };
std::weak_ptr< Core::Window > window
Event wiring between a Layer and a window surface.
Axis-aligned bounding rectangle in a 2D coordinate space.
std::shared_ptr< Core::Window > target_window
Unified rendering configuration for graphics buffers.