vncserver.hh (8229:78bf55f23338) | vncserver.hh (8635:23ba076b2cca) |
---|---|
1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 34 unchanged lines hidden (view full) --- 43 */ 44 45#ifndef __DEV_VNC_SERVER_HH__ 46#define __DEV_VNC_SERVER_HH__ 47 48#include <iostream> 49 50#include "base/vnc/convert.hh" | 1/* 2 * Copyright (c) 2010 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 34 unchanged lines hidden (view full) --- 43 */ 44 45#ifndef __DEV_VNC_SERVER_HH__ 46#define __DEV_VNC_SERVER_HH__ 47 48#include <iostream> 49 50#include "base/vnc/convert.hh" |
51#include "base/bitmap.hh" |
|
51#include "base/circlebuf.hh" 52#include "base/pollevent.hh" 53#include "base/socket.hh" 54#include "cpu/intr_control.hh" 55#include "params/VncServer.hh" 56#include "sim/sim_object.hh" 57 | 52#include "base/circlebuf.hh" 53#include "base/pollevent.hh" 54#include "base/socket.hh" 55#include "cpu/intr_control.hh" 56#include "params/VncServer.hh" 57#include "sim/sim_object.hh" 58 |
59 |
|
58/** 59 * A device that expects to receive input from the vnc server should derrive 60 * (through mulitple inheritence if necessary from VncKeyboard or VncMouse 61 * and call setKeyboard() or setMouse() respectively on the vnc server. 62 */ 63class VncKeyboard 64{ 65 public: --- 245 unchanged lines hidden (view full) --- 311 bool supportsResizeEnc; 312 313 /** The mode of data we're getting frame buffer in */ 314 VideoConvert::Mode videoMode; 315 316 /** The video converter that transforms data for us */ 317 VideoConvert *vc; 318 | 60/** 61 * A device that expects to receive input from the vnc server should derrive 62 * (through mulitple inheritence if necessary from VncKeyboard or VncMouse 63 * and call setKeyboard() or setMouse() respectively on the vnc server. 64 */ 65class VncKeyboard 66{ 67 public: --- 245 unchanged lines hidden (view full) --- 313 bool supportsResizeEnc; 314 315 /** The mode of data we're getting frame buffer in */ 316 VideoConvert::Mode videoMode; 317 318 /** The video converter that transforms data for us */ 319 VideoConvert *vc; 320 |
321 /** Flag indicating whether to capture snapshots of frame buffer or not */ 322 bool captureEnabled; 323 324 /** Current frame number being captured to a file */ 325 int captureCurrentFrame; 326 327 /** Directory to store captured frames to */ 328 std::string captureOutputDirectory; 329 330 /** Computed hash of the last captured frame */ 331 uint64_t captureLastHash; 332 333 /** Cached bitmap object for writing out frame buffers to file */ 334 Bitmap *captureBitmap; 335 |
|
319 protected: | 336 protected: |
337 /** Captures the current frame buffer to a file */ 338 void captureFrameBuffer(); 339 |
|
320 /** 321 * vnc client Interface 322 */ 323 324 /** Send an error message to the client 325 * @param error_msg text to send describing the error 326 */ 327 void sendError(const char* error_msg); --- 116 unchanged lines hidden (view full) --- 444 /** The frame buffer uses this call to notify the vnc server that 445 * the frame buffer has been updated and a new image needs to be sent to the 446 * client 447 */ 448 void 449 setDirty() 450 { 451 sendUpdate = true; | 340 /** 341 * vnc client Interface 342 */ 343 344 /** Send an error message to the client 345 * @param error_msg text to send describing the error 346 */ 347 void sendError(const char* error_msg); --- 116 unchanged lines hidden (view full) --- 464 /** The frame buffer uses this call to notify the vnc server that 465 * the frame buffer has been updated and a new image needs to be sent to the 466 * client 467 */ 468 void 469 setDirty() 470 { 471 sendUpdate = true; |
472 if (captureEnabled) 473 captureFrameBuffer(); |
|
452 sendFrameBufferUpdate(); 453 } 454 455 /** What is the width of the screen we're displaying. 456 * This is used for pointer/tablet devices that need to know to calculate 457 * the correct value to send to the device driver. 458 * @return the width of the simulated screen 459 */ --- 16 unchanged lines hidden --- | 474 sendFrameBufferUpdate(); 475 } 476 477 /** What is the width of the screen we're displaying. 478 * This is used for pointer/tablet devices that need to know to calculate 479 * the correct value to send to the device driver. 480 * @return the width of the simulated screen 481 */ --- 16 unchanged lines hidden --- |