aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb/CMsgHandler.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/rfb/CMsgHandler.h')
-rw-r--r--common/rfb/CMsgHandler.h59
1 files changed, 29 insertions, 30 deletions
diff --git a/common/rfb/CMsgHandler.h b/common/rfb/CMsgHandler.h
index b484b695..d267ae47 100644
--- a/common/rfb/CMsgHandler.h
+++ b/common/rfb/CMsgHandler.h
@@ -27,63 +27,62 @@
#include <stdint.h>
#include <rfb/ServerParams.h>
-#include <rfb/Rect.h>
-#include <rfb/ScreenSet.h>
-namespace rdr { class InStream; }
+namespace core {
+ struct Point;
+ struct Rect;
+}
namespace rfb {
+ class ModifiablePixelBuffer;
+ struct ScreenSet;
+
class CMsgHandler {
public:
- CMsgHandler();
- virtual ~CMsgHandler();
-
// The following methods are called as corresponding messages are
- // read. A derived class should override these methods as desired.
- // Note that for the setDesktopSize(), setExtendedDesktopSize(),
- // setName(), serverInit() and handleClipboardCaps() methods, a
- // derived class should call on to CMsgHandler's methods to set the
- // members of "server" appropriately.
+ // read. A derived class must override these methods.
- virtual void setDesktopSize(int w, int h);
+ virtual void setDesktopSize(int w, int h) = 0;
virtual void setExtendedDesktopSize(unsigned reason, unsigned result,
int w, int h,
- const ScreenSet& layout);
- virtual void setCursor(int width, int height, const Point& hotspot,
+ const ScreenSet& layout) = 0;
+ virtual void setCursor(int width, int height, const
+ core::Point& hotspot,
const uint8_t* data) = 0;
- virtual void setCursorPos(const Point& pos) = 0;
- virtual void setName(const char* name);
- virtual void fence(uint32_t flags, unsigned len, const uint8_t data[]);
- virtual void endOfContinuousUpdates();
- virtual void supportsQEMUKeyEvent();
- virtual void supportsExtendedMouseButtons();
+ virtual void setCursorPos(const core::Point& pos) = 0;
+ virtual void setName(const char* name) = 0;
+ virtual void fence(uint32_t flags, unsigned len,
+ const uint8_t data[]) = 0;
+ virtual void endOfContinuousUpdates() = 0;
+ virtual void supportsQEMUKeyEvent() = 0;
+ virtual void supportsExtendedMouseButtons() = 0;
virtual void serverInit(int width, int height,
const PixelFormat& pf,
const char* name) = 0;
- virtual bool readAndDecodeRect(const Rect& r, int encoding,
+ virtual bool readAndDecodeRect(const core::Rect& r, int encoding,
ModifiablePixelBuffer* pb) = 0;
- virtual void framebufferUpdateStart();
- virtual void framebufferUpdateEnd();
- virtual bool dataRect(const Rect& r, int encoding) = 0;
+ virtual void framebufferUpdateStart() = 0;
+ virtual void framebufferUpdateEnd() = 0;
+ virtual bool dataRect(const core::Rect& r, int encoding) = 0;
virtual void setColourMapEntries(int firstColour, int nColours,
uint16_t* rgbs) = 0;
virtual void bell() = 0;
virtual void serverCutText(const char* str) = 0;
- virtual void setLEDState(unsigned int state);
+ virtual void setLEDState(unsigned int state) = 0;
virtual void handleClipboardCaps(uint32_t flags,
- const uint32_t* lengths);
- virtual void handleClipboardRequest(uint32_t flags);
- virtual void handleClipboardPeek();
- virtual void handleClipboardNotify(uint32_t flags);
+ const uint32_t* lengths) = 0;
+ virtual void handleClipboardRequest(uint32_t flags) = 0;
+ virtual void handleClipboardPeek() = 0;
+ virtual void handleClipboardNotify(uint32_t flags) = 0;
virtual void handleClipboardProvide(uint32_t flags,
const size_t* lengths,
- const uint8_t* const* data);
+ const uint8_t* const* data) = 0;
ServerParams server;
};