Initial implementation of continuous updates in the server code. This code does not handle framebuffer size changes properly yet. Also, the server does not send the client EndOfContinuousUpdates message yet (documented in doc/rfbproto.tex).

git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2251 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/common/rfb/VNCSConnectionST.h b/common/rfb/VNCSConnectionST.h
index a04296d..7fe2e32 100644
--- a/common/rfb/VNCSConnectionST.h
+++ b/common/rfb/VNCSConnectionST.h
@@ -129,6 +129,9 @@
     virtual void setInitialColourMap();
     virtual void supportsLocalCursor();
 
+    virtual void enableContinuousUpdates(const Rect& r);
+    virtual void disableContinuousUpdates();
+
     // setAccessRights() allows a security package to limit the access rights
     // of a VNCSConnectioST to the server.  These access rights are applied
     // such that the actual rights granted are the minimum of the server's
@@ -150,6 +153,8 @@
     void setCursor();
     void setSocketTimeouts();
 
+    void resetRequestedRegion();
+
     network::Socket* sock;
     CharArray peerEndpoint;
     VNCServerST* server;
@@ -159,6 +164,9 @@
     bool drawRenderedCursor, removeRenderedCursor;
     Rect renderedCursorRect;
 
+    bool autoUpdatesActive;       // continuous updates enabled
+    Rect autoUpdatedRect;         // continuously updated area
+
     std::set<rdr::U32> pressedKeys;
 
     time_t lastEventTime;