Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
LayoutComputeTypes.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 fuddlesworth
2// SPDX-License-Identifier: LGPL-2.1-or-later
3
4#pragma once
5
6#include <phosphorzones_export.h>
7
8#include <QMetaType>
9#include <QRectF>
10#include <QString>
11#include <QUuid>
12#include <QVector>
13
14namespace PhosphorZones {
15
16enum class ZoneGeometryMode : int;
17
25
27{
28 QUuid layoutId;
29 QString screenId;
31 QVector<ZoneSnapshot> zones;
32};
33
35{
36 QUuid zoneId;
38};
39
41{
42 QUuid layoutId;
43 QString screenId;
45 QVector<ComputedZoneGeometry> zones;
46 uint64_t generation = 0;
47};
48
49} // namespace PhosphorZones
50
51Q_DECLARE_METATYPE(PhosphorZones::LayoutSnapshot)
52Q_DECLARE_METATYPE(PhosphorZones::LayoutComputeResult)
Definition IWindowTrackingService.h:22
ZoneGeometryMode
Geometry mode for individual zones.
Definition Zone.h:28
Definition LayoutComputeTypes.h:35
QUuid zoneId
Definition LayoutComputeTypes.h:36
QRectF absoluteGeometry
Definition LayoutComputeTypes.h:37
Definition LayoutComputeTypes.h:41
QRectF screenGeometry
Definition LayoutComputeTypes.h:44
QVector< ComputedZoneGeometry > zones
Definition LayoutComputeTypes.h:45
QString screenId
Definition LayoutComputeTypes.h:43
uint64_t generation
Definition LayoutComputeTypes.h:46
QUuid layoutId
Definition LayoutComputeTypes.h:42
Definition LayoutComputeTypes.h:27
QUuid layoutId
Definition LayoutComputeTypes.h:28
QVector< ZoneSnapshot > zones
Definition LayoutComputeTypes.h:31
QString screenId
Definition LayoutComputeTypes.h:29
QRectF screenGeometry
Definition LayoutComputeTypes.h:30
Definition LayoutComputeTypes.h:19
QRectF relativeGeometry
Definition LayoutComputeTypes.h:22
ZoneGeometryMode geometryMode
Definition LayoutComputeTypes.h:21
QUuid id
Definition LayoutComputeTypes.h:20
QRectF fixedGeometry
Definition LayoutComputeTypes.h:23