Changeset View
Changeset View
Standalone View
Standalone View
plugins/platforms/virtual/virtual_backend.h
Show All 22 Lines | |||||
23 | 23 | | |||
24 | #include <kwin_export.h> | 24 | #include <kwin_export.h> | ||
25 | 25 | | |||
26 | #include <QObject> | 26 | #include <QObject> | ||
27 | #include <QRect> | 27 | #include <QRect> | ||
28 | 28 | | |||
29 | class QTemporaryDir; | 29 | class QTemporaryDir; | ||
30 | 30 | | |||
31 | struct gbm_device; | | |||
32 | | ||||
33 | namespace KWin | 31 | namespace KWin | ||
34 | { | 32 | { | ||
35 | class VirtualOutput; | 33 | class VirtualOutput; | ||
36 | 34 | | |||
37 | class KWIN_EXPORT VirtualBackend : public Platform | 35 | class KWIN_EXPORT VirtualBackend : public Platform | ||
38 | { | 36 | { | ||
39 | Q_OBJECT | 37 | Q_OBJECT | ||
40 | Q_INTERFACES(KWin::Platform) | 38 | Q_INTERFACES(KWin::Platform) | ||
Show All 13 Lines | 41 | public: | |||
54 | QPainterBackend* createQPainterBackend() override; | 52 | QPainterBackend* createQPainterBackend() override; | ||
55 | OpenGLBackend *createOpenGLBackend() override; | 53 | OpenGLBackend *createOpenGLBackend() override; | ||
56 | 54 | | |||
57 | Q_INVOKABLE void setVirtualOutputs(int count, QVector<QRect> geometries = QVector<QRect>(), QVector<int> scales = QVector<int>()); | 55 | Q_INVOKABLE void setVirtualOutputs(int count, QVector<QRect> geometries = QVector<QRect>(), QVector<int> scales = QVector<int>()); | ||
58 | 56 | | |||
59 | Outputs outputs() const override; | 57 | Outputs outputs() const override; | ||
60 | Outputs enabledOutputs() const override; | 58 | Outputs enabledOutputs() const override; | ||
61 | 59 | | |||
62 | int drmFd() const { | | |||
63 | return m_drmFd; | | |||
64 | } | | |||
65 | void setDrmFd(int fd) { | | |||
66 | m_drmFd = fd; | | |||
67 | } | | |||
68 | | ||||
69 | gbm_device *gbmDevice() const { | | |||
70 | return m_gbmDevice; | | |||
71 | } | | |||
72 | void setGbmDevice(gbm_device *device) { | | |||
73 | m_gbmDevice = device; | | |||
74 | } | | |||
75 | | ||||
76 | QVector<CompositingType> supportedCompositors() const override { | 60 | QVector<CompositingType> supportedCompositors() const override { | ||
77 | return QVector<CompositingType>{OpenGLCompositing, QPainterCompositing}; | 61 | return QVector<CompositingType>{OpenGLCompositing, QPainterCompositing}; | ||
78 | } | 62 | } | ||
79 | 63 | | |||
80 | Q_SIGNALS: | 64 | Q_SIGNALS: | ||
81 | void virtualOutputsSet(bool countChanged); | 65 | void virtualOutputsSet(bool countChanged); | ||
82 | 66 | | |||
83 | private: | 67 | private: | ||
84 | QVector<VirtualOutput*> m_outputs; | 68 | QVector<VirtualOutput*> m_outputs; | ||
85 | QVector<VirtualOutput*> m_enabledOutputs; | 69 | QVector<VirtualOutput*> m_enabledOutputs; | ||
86 | 70 | | |||
87 | QScopedPointer<QTemporaryDir> m_screenshotDir; | 71 | QScopedPointer<QTemporaryDir> m_screenshotDir; | ||
88 | int m_drmFd = -1; | | |||
89 | gbm_device *m_gbmDevice = nullptr; | | |||
90 | }; | 72 | }; | ||
91 | 73 | | |||
92 | } | 74 | } | ||
93 | 75 | | |||
94 | #endif | 76 | #endif |