public EncodedRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle, int encoding)
		{
			this.rfb = rfb;
			this.framebuffer = framebuffer;
			this.rectangle = rectangle;

			//Select appropriate reader
			BinaryReader reader = (encoding == RfbProtocol.ZRLE_ENCODING) ? rfb.ZrleReader : rfb.Reader;

			// Create the appropriate PixelReader depending on screen size and encoding
			switch (framebuffer.BitsPerPixel)
			{
				case 32:
					if (encoding == RfbProtocol.ZRLE_ENCODING)
					{
						preader = new CPixelReader(reader, framebuffer);
					}
					else
					{
						preader = new PixelReader32(reader, framebuffer);
					}
					break;
				case 16:
					preader = new PixelReader16(reader, framebuffer);
					break;
				case 8:
					preader = new PixelReader8(reader, framebuffer, rfb);
					break;
				default:
					throw new ArgumentOutOfRangeException("BitsPerPixel", framebuffer.BitsPerPixel, "Valid VNC Pixel Widths are 8, 16 or 32 bits.");
			}
		}
		public EncodedRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
		{
			this.rfb = rfb;
			this.framebuffer = framebuffer;
			this.rectangle = rectangle;

			// Create the appropriate PixelReader depending on screen size
			switch (framebuffer.BitsPerPixel) {
				case 32:
					preader = new PixelReader32(rfb, framebuffer);
					break;
				case 16:
					preader = new PixelReader16(rfb, framebuffer);
					break;
				case 8:
					preader = new PixelReader8(rfb, framebuffer);
					break;
				default:
					throw new ArgumentOutOfRangeException("BitsPerPixel", framebuffer.BitsPerPixel, "Valid VNC Pixel Widths are 8, 16, or 32 bits.");
			}
		}
Exemple #3
0
 public CoRRE(RfbProtocol rfb, Framebuffer framebuffer, int[] pixels, Rectangle rectangle)
     : base(rfb, framebuffer, pixels, rectangle)
 {
     this.pixels = pixels;
 }
Exemple #4
0
		public RawRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
			: base(rfb, framebuffer, rectangle, RfbProtocol.RAW_ENCODING)
		{
		}
Exemple #5
0
 public RreRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbEncodingType.RRE)
 {
 }
Exemple #6
0
		public RawRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle) : base(rfb, framebuffer, rectangle)
		{
		}
		public PixelReader8(BinaryReader reader, Framebuffer framebuffer, RfbProtocol rfb) : base(reader, framebuffer)
		{
			this.rfb = rfb;
		}
Exemple #8
0
 public CoRreRectangle(RfbProtocol rfb, Framebuffer framebuffer, int[] pixels, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.Encoding.CORRE_ENCODING)
 {
     this.pixels = pixels;
 }
Exemple #9
0
 public EncodedRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle, RfbProtocol.Encoding encoding)
 {
     this.rfb = rfb;
     this.framebuffer = framebuffer;
     this.rectangle = rectangle;
 }
 public HextileRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.HEXTILE_ENCODING)
 {
 }
Exemple #11
0
        private Object[] tiles; // each element either Tile or byte[]

        #endregion Fields

        #region Constructors

        public HextileRectangle(RfbProtocol rfb, Framebuffer framebuffer, int[] pixels, Rectangle rectangle)
            : base(rfb, framebuffer, rectangle, RfbProtocol.Encoding.HEXTILE_ENCODING)
        {
            this.pixels = pixels;
        }
Exemple #12
0
 public PixelReader8(BinaryReader reader, Framebuffer framebuffer, RfbProtocol rfb) : base(reader, framebuffer)
 {
     this.rfb = rfb;
 }
 public CopyRectRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbEncodingType.CopyRect)
 {
 }
 public PixelReader16(RfbProtocol rfb, Framebuffer framebuffer) : base(rfb, framebuffer)
 {
 }
 public TightRectangle(RfbProtocol rfbProtocol, Framebuffer framebuffer, Rectangle rectangle) : base(rfbProtocol,
                                                                                                     framebuffer, rectangle, RfbProtocol.TIGHT_ENCODING)
 {
 }
		public ZrleRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
			: base(rfb, framebuffer, rectangle, RfbProtocol.ZRLE_ENCODING)
		{
		}
 // support for local cursor handling. Changing the local cursor does not work in 800xA framework,
 // but looks better than the "double mouse" effect
 public CursorRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.CURSOR_PSEUDO_ENCODING)
 {
 }
Exemple #18
0
 public RreRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.RRE_ENCODING)
 {
 }
		public HextileRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
			: base(rfb, framebuffer, rectangle, RfbProtocol.HEXTILE_ENCODING) 
		{
		}
 public CoRreRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle) : base(rfb, framebuffer, rectangle)
 {
 }
Exemple #21
0
		public PixelReader16(RfbProtocol rfb, Framebuffer framebuffer) : base(rfb, framebuffer)
		{
		}
Exemple #22
0
 public CopyRectRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.COPYRECT_ENCODING)
 {
 }
		public CoRreRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle) : base(rfb, framebuffer, rectangle, RfbProtocol.CORRE_ENCODING)
		{
		}
Exemple #24
0
		protected PixelReader(RfbProtocol rfb, Framebuffer framebuffer)
		{
			this.rfb = rfb;
			this.framebuffer = framebuffer;
		}
		public CopyRectRectangle(RfbProtocol rfb, Framebuffer framebuffer, Rectangle rectangle)
			: base(rfb, framebuffer, rectangle, RfbProtocol.COPYRECT_ENCODING) 
		{
		}
Exemple #26
0
 public CopyRectRectangle(RfbProtocol rfb, Framebuffer framebuffer, int[] pixels, Rectangle rectangle)
     : base(rfb, framebuffer, rectangle, RfbProtocol.Encoding.COPYRECT_ENCODING)
 {
 }