blob: cf0c8572fe7ae1e2e417e85cc07588f5a9830d64 [file] [log] [blame]
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +00001/* Copyright (C) 2002-2005 RealVNC Ltd. All Rights Reserved.
DRCb4a83232011-08-19 04:57:18 +00002 * Copyeight (C) 2011 D. R. Commander. All Rights Reserved.
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +00003 *
4 * This is free software; you can redistribute it and/or modify
5 * it under the terms of the GNU General Public License as published by
6 * the Free Software Foundation; either version 2 of the License, or
7 * (at your option) any later version.
8 *
9 * This software is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12 * GNU General Public License for more details.
13 *
14 * You should have received a copy of the GNU General Public License
15 * along with this software; if not, write to the Free Software
16 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
17 * USA.
18 */
19#ifndef __RFB_ENCODINGS_H__
20#define __RFB_ENCODINGS_H__
21
22namespace rfb {
23
Peter Åstrand98fe98c2010-02-10 07:43:02 +000024 const int encodingRaw = 0;
25 const int encodingCopyRect = 1;
26 const int encodingRRE = 2;
27 const int encodingCoRRE = 4;
28 const int encodingHextile = 5;
29 const int encodingTight = 7;
30 const int encodingZRLE = 16;
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000031
Peter Åstrand98fe98c2010-02-10 07:43:02 +000032 const int encodingMax = 255;
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000033
Peter Åstrand98fe98c2010-02-10 07:43:02 +000034 const int pseudoEncodingXCursor = -240;
35 const int pseudoEncodingCursor = -239;
36 const int pseudoEncodingDesktopSize = -223;
Pierre Ossman2fa63f82016-12-05 15:26:21 +010037 const int pseudoEncodingLEDState = -261;
Peter Åstrand98fe98c2010-02-10 07:43:02 +000038 const int pseudoEncodingExtendedDesktopSize = -308;
39 const int pseudoEncodingDesktopName = -307;
Pierre Ossmanc754cce2011-11-14 15:44:11 +000040 const int pseudoEncodingFence = -312;
Pierre Ossmanc898d9a2011-11-14 16:22:23 +000041 const int pseudoEncodingContinuousUpdates = -313;
Pierre Ossmana4c0aac2017-02-19 15:50:29 +010042 const int pseudoEncodingCursorWithAlpha = -314;
Pierre Ossman5ae28212017-05-16 14:30:38 +020043 const int pseudoEncodingQEMUKeyEvent = -258;
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000044
45 // TightVNC-specific
Peter Åstrand98fe98c2010-02-10 07:43:02 +000046 const int pseudoEncodingLastRect = -224;
47 const int pseudoEncodingQualityLevel0 = -32;
48 const int pseudoEncodingQualityLevel9 = -23;
49 const int pseudoEncodingCompressLevel0 = -256;
50 const int pseudoEncodingCompressLevel9 = -247;
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000051
DRCb4a83232011-08-19 04:57:18 +000052 // TurboVNC-specific
53 const int pseudoEncodingFineQualityLevel0 = -512;
54 const int pseudoEncodingFineQualityLevel100 = -412;
55 const int pseudoEncodingSubsamp1X = -768;
56 const int pseudoEncodingSubsamp4X = -767;
57 const int pseudoEncodingSubsamp2X = -766;
58 const int pseudoEncodingSubsampGray = -765;
59 const int pseudoEncodingSubsamp8X = -764;
60 const int pseudoEncodingSubsamp16X = -763;
61
Pierre Ossman4a6266f2018-11-05 16:28:18 +010062 // VMware-specific
63 const int pseudoEncodingVMwareCursor = 0x574d5664;
Pierre Ossman62b07862018-11-05 16:28:57 +010064 const int pseudoEncodingVMwareLEDState = 0x574d5668;
Pierre Ossman4a6266f2018-11-05 16:28:18 +010065
Pierre Ossman0ff26552016-02-05 10:26:56 +010066 // UltraVNC-specific
67 const int pseudoEncodingExtendedClipboard = 0xC0A1E5CE;
68
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000069 int encodingNum(const char* name);
Peter Åstrand98fe98c2010-02-10 07:43:02 +000070 const char* encodingName(int num);
Constantin Kaplinskya2adc8d2006-05-25 05:01:55 +000071}
72#endif