base: split out the VncServer into a VncInput and Server classes

This patch adds a VncInput base class which VncServer inherits from.
Another class can implement the same interface and be used instead
of the VncServer, for example a class that replays Vnc traffic.

--HG--
rename : src/base/vnc/VncServer.py => src/base/vnc/Vnc.py
rename : src/base/vnc/vncserver.cc => src/base/vnc/vncinput.cc
rename : src/base/vnc/vncserver.hh => src/base/vnc/vncinput.hh
This commit is contained in:
Chander Sudanthi
2012-11-02 11:32:00 -05:00
parent ac161c1d72
commit 55787cc0d0
11 changed files with 430 additions and 269 deletions

View File

@@ -128,7 +128,7 @@ class PL031(AmbaIntDevice):
class Pl050(AmbaIntDevice):
type = 'Pl050'
vnc = Param.VncServer(Parent.any, "Vnc server for remote frame buffer display")
vnc = Param.VncInput(Parent.any, "Vnc server for remote frame buffer display")
is_mouse = Param.Bool(False, "Is this interface a mouse, if not a keyboard")
int_delay = '1us'
amba_id = 0x00141050
@@ -137,7 +137,7 @@ class Pl111(AmbaDmaDevice):
type = 'Pl111'
# Override the default clock
clock = '24MHz'
vnc = Param.VncServer(Parent.any, "Vnc server for remote frame buffer display")
vnc = Param.VncInput(Parent.any, "Vnc server for remote frame buffer display")
amba_id = 0x00141111
class RealView(Platform):

View File

@@ -41,7 +41,7 @@
* William Wang
*/
#include "base/vnc/vncserver.hh"
#include "base/vnc/vncinput.hh"
#include "base/trace.hh"
#include "debug/Pl050.hh"
#include "dev/arm/amba_device.hh"

View File

@@ -50,7 +50,7 @@
#include <list>
#include "base/vnc/vncserver.hh"
#include "base/vnc/vncinput.hh"
#include "dev/arm/amba_device.hh"
#include "params/Pl050.hh"
@@ -118,7 +118,7 @@ class Pl050 : public AmbaIntDevice, public VncKeyboard, public VncMouse
bool shiftDown;
/** The vnc server we're connected to (if any) */
VncServer *vnc;
VncInput *vnc;
/** If the linux driver has initialized the device yet and thus can we send
* mouse data */

View File

@@ -38,7 +38,7 @@
* Ali Saidi
*/
#include "base/vnc/vncserver.hh"
#include "base/vnc/vncinput.hh"
#include "base/bitmap.hh"
#include "base/output.hh"
#include "base/trace.hh"
@@ -64,7 +64,7 @@ Pl111::Pl111(const Params *p)
clcdCrsrCtrl(0), clcdCrsrConfig(0), clcdCrsrPalette0(0),
clcdCrsrPalette1(0), clcdCrsrXY(0), clcdCrsrClip(0), clcdCrsrImsc(0),
clcdCrsrIcr(0), clcdCrsrRis(0), clcdCrsrMis(0),
vncserver(p->vnc), bmp(NULL), width(LcdMaxWidth), height(LcdMaxHeight),
vnc(p->vnc), bmp(NULL), width(LcdMaxWidth), height(LcdMaxHeight),
bytesPerPixel(4), startTime(0), startAddr(0), maxAddr(0), curAddr(0),
waterMark(0), dmaPendingNum(0), readEvent(this), fillFifoEvent(this),
dmaDoneEvent(maxOutstandingDma, this), intEvent(this)
@@ -80,8 +80,8 @@ Pl111::Pl111(const Params *p)
memset(cursorImage, 0, sizeof(cursorImage));
memset(dmaBuffer, 0, buffer_size);
if (vncserver)
vncserver->setFramebufferAddr(dmaBuffer);
if (vnc)
vnc->setFramebufferAddr(dmaBuffer);
}
Pl111::~Pl111()
@@ -386,18 +386,18 @@ Pl111::updateVideoParams()
bytesPerPixel = 2;
}
if (vncserver) {
if (vnc) {
if (lcdControl.lcdbpp == bpp24 && lcdControl.bgr)
vncserver->setFrameBufferParams(VideoConvert::bgr8888, width,
vnc->setFrameBufferParams(VideoConvert::bgr8888, width,
height);
else if (lcdControl.lcdbpp == bpp24 && !lcdControl.bgr)
vncserver->setFrameBufferParams(VideoConvert::rgb8888, width,
vnc->setFrameBufferParams(VideoConvert::rgb8888, width,
height);
else if (lcdControl.lcdbpp == bpp16m565 && lcdControl.bgr)
vncserver->setFrameBufferParams(VideoConvert::bgr565, width,
vnc->setFrameBufferParams(VideoConvert::bgr565, width,
height);
else if (lcdControl.lcdbpp == bpp16m565 && !lcdControl.bgr)
vncserver->setFrameBufferParams(VideoConvert::rgb565, width,
vnc->setFrameBufferParams(VideoConvert::rgb565, width,
height);
else
panic("Unimplemented video mode\n");
@@ -489,8 +489,8 @@ Pl111::dmaDone()
}
assert(!readEvent.scheduled());
if (vncserver)
vncserver->setDirty();
if (vnc)
vnc->setDirty();
DPRINTF(PL111, "-- write out frame buffer into bmp\n");
@@ -710,8 +710,8 @@ Pl111::unserialize(Checkpoint *cp, const std::string &section)
if (lcdControl.lcdpwr) {
updateVideoParams();
if (vncserver)
vncserver->setDirty();
if (vnc)
vnc->setDirty();
}
}

View File

@@ -53,7 +53,7 @@
#include "sim/serialize.hh"
class Gic;
class VncServer;
class VncInput;
class Bitmap;
class Pl111: public AmbaDmaDevice
@@ -228,7 +228,7 @@ class Pl111: public AmbaDmaDevice
InterruptReg clcdCrsrMis;
/** VNC server */
VncServer *vncserver;
VncInput *vnc;
/** Helper to write out bitmaps */
Bitmap *bmp;