Changeset View
Changeset View
Standalone View
Standalone View
framebuffers/xcb/xcb_framebuffer.h
- This file was added.
1 | /* This file is part of the KDE project | ||||
---|---|---|---|---|---|
2 | Copyright (C) 2017 Alexey Min <alexey.min@gmail.com> | ||||
3 | | ||||
4 | This program is free software; you can redistribute it and/or | ||||
5 | modify it under the terms of the GNU General Public | ||||
6 | License as published by the Free Software Foundation; either | ||||
7 | version 2 of the License, or (at your option) any later version. | ||||
8 | */ | ||||
9 | #ifndef KRFB_FRAMEBUFFER_XCB_XCB_FRAMEBUFFER_H | ||||
10 | #define KRFB_FRAMEBUFFER_XCB_XCB_FRAMEBUFFER_H | ||||
11 | | ||||
12 | #include "framebuffer.h" | ||||
13 | #include <QWidget> | ||||
14 | #include <xcb/xcb.h> | ||||
15 | | ||||
16 | | ||||
17 | | ||||
18 | /** | ||||
19 | @author Alexey Min <alexey.min@gmail.com> | ||||
20 | */ | ||||
21 | class XCBFrameBuffer: public FrameBuffer | ||||
22 | { | ||||
23 | Q_OBJECT | ||||
24 | public: | ||||
25 | XCBFrameBuffer(WId winid, QObject *parent = 0); | ||||
26 | ~XCBFrameBuffer(); | ||||
27 | | ||||
28 | public: | ||||
29 | QList<QRect> modifiedTiles() Q_DECL_OVERRIDE; | ||||
30 | int depth() Q_DECL_OVERRIDE; | ||||
31 | int height() Q_DECL_OVERRIDE; | ||||
32 | int width() Q_DECL_OVERRIDE; | ||||
33 | int paddedWidth() Q_DECL_OVERRIDE; | ||||
34 | void getServerFormat(rfbPixelFormat &format) Q_DECL_OVERRIDE; | ||||
35 | void startMonitor() Q_DECL_OVERRIDE; | ||||
36 | void stopMonitor() Q_DECL_OVERRIDE; | ||||
37 | | ||||
38 | public: | ||||
39 | void handleXDamageNotify(xcb_generic_event_t *xevent); | ||||
40 | | ||||
41 | private: | ||||
42 | void cleanupRects(); | ||||
43 | | ||||
44 | class P; | ||||
45 | P *const d; | ||||
46 | }; | ||||
47 | | ||||
48 | #endif |