1// Copyright (C) 2017 Pier Luigi Fiorini <pierluigi.fiorini@gmail.com>
2// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR GPL-3.0-only
3
4#ifndef QWAYLANDOUTPUTMODE_H
5#define QWAYLANDOUTPUTMODE_H
6
7#include <QtWaylandCompositor/qtwaylandcompositorglobal.h>
8#include <QtCore/QSize>
9
10QT_BEGIN_NAMESPACE
11
12class Q_WAYLANDCOMPOSITOR_EXPORT QWaylandOutputMode
13{
14public:
15 explicit QWaylandOutputMode();
16 QWaylandOutputMode(const QSize &size, int refreshRate);
17 QWaylandOutputMode(const QWaylandOutputMode &other);
18 ~QWaylandOutputMode();
19
20 QWaylandOutputMode &operator=(const QWaylandOutputMode &other);
21 bool operator==(const QWaylandOutputMode &other) const;
22 bool operator!=(const QWaylandOutputMode &other) const;
23
24 bool isValid() const;
25
26 QSize size() const;
27 int refreshRate() const;
28
29private:
30 class QWaylandOutputModePrivate *const d;
31 friend class QWaylandOutputPrivate;
32
33 void setSize(const QSize &size);
34};
35Q_DECLARE_TYPEINFO(QWaylandOutputMode, Q_MOVABLE_TYPE);
36
37QT_END_NAMESPACE
38
39#endif // QWAYLANDOUTPUTMODE_H
40

source code of qtwayland/src/compositor/compositor_api/qwaylandoutputmode.h