Added two different polling algorithms, a dumb one from VNC4, and an
improved method which limits the rate of updates for continuously
changed areas such as video windows. Now there are three polling
algorithms supported, and the default is to use the new improved one.
New -PollingType options was added, it allows to select one of three
polling algorithms (0 - dumb, 1 - old, 2 - new).
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@340 3789f03b-4d11-0410-bbf8-ca57d06f2519
diff --git a/x0vncserver/PollingManager.h b/x0vncserver/PollingManager.h
index aba7ac1..9befee9 100644
--- a/x0vncserver/PollingManager.h
+++ b/x0vncserver/PollingManager.h
@@ -35,20 +35,35 @@
public:
PollingManager(Display *dpy, Image *image, ImageFactory *factory);
+ virtual ~PollingManager();
- void setVNCServer(VNCServer* s);
+ void setVNCServer(VNCServer *s);
void pollDebug();
void poll();
protected:
- Display* m_dpy;
- VNCServer* m_server;
- Image* m_image;
- Image* m_rowImage;
- Image* m_tileImage;
+ void poll_SkipCycles();
+ void poll_Traditional();
+ void poll_Dumb();
+
+ Display *m_dpy;
+ VNCServer *m_server;
+
+ Image *m_image;
+ int m_width;
+ int m_height;
+ int m_widthTiles;
+ int m_heightTiles;
+
+ Image *m_rowImage;
+ Image *m_tileImage;
+
+ char *m_statusMatrix;
+
unsigned int m_pollingStep;
static const int m_pollingOrder[];
+ static const char m_bitsSet[];
};