summaryrefslogtreecommitdiffstats
path: root/common/rfb/zrleEncode.h
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2014-03-17 14:35:51 +0100
committerPierre Ossman <ossman@cendio.se>2014-07-07 14:42:08 +0200
commit7b5c069d2e7eaa1748507a03697c14900258e507 (patch)
tree245936793e9607ce98dd89e98c1fdd0ac6b2d3ce /common/rfb/zrleEncode.h
parent65ad3224e920deecb91a3c28e15341c8584a372c (diff)
downloadtigervnc-7b5c069d2e7eaa1748507a03697c14900258e507.tar.gz
tigervnc-7b5c069d2e7eaa1748507a03697c14900258e507.zip
Push encoding specific formats into the encoders and decoders
Keep the generic stream classes clean and general.
Diffstat (limited to 'common/rfb/zrleEncode.h')
-rw-r--r--common/rfb/zrleEncode.h12
1 files changed, 6 insertions, 6 deletions
diff --git a/common/rfb/zrleEncode.h b/common/rfb/zrleEncode.h
index 34b5c675..cfc2a469 100644
--- a/common/rfb/zrleEncode.h
+++ b/common/rfb/zrleEncode.h
@@ -45,13 +45,13 @@ namespace rfb {
#ifdef CPIXEL
#define PIXEL_T rdr::CONCAT2E(U,BPP)
-#define WRITE_PIXEL CONCAT2E(writeOpaque,CPIXEL)
+#define WRITE_PIXEL(os, u) CONCAT2E(writeOpaque,CPIXEL)(os, u)
#define ZRLE_ENCODE CONCAT2E(zrleEncode,CPIXEL)
#define ZRLE_ENCODE_TILE CONCAT2E(zrleEncodeTile,CPIXEL)
#define BPPOUT 24
#else
#define PIXEL_T rdr::CONCAT2E(U,BPP)
-#define WRITE_PIXEL CONCAT2E(writeOpaque,BPP)
+#define WRITE_PIXEL(os, u) os->CONCAT2E(writeOpaque,BPP)(u)
#define ZRLE_ENCODE CONCAT2E(zrleEncode,BPP)
#define ZRLE_ENCODE_TILE CONCAT2E(zrleEncodeTile,BPP)
#define BPPOUT BPP
@@ -129,7 +129,7 @@ void ZRLE_ENCODE_TILE (PIXEL_T* data, int w, int h, rdr::OutStream* os)
if (palette.size() == 1) {
os->writeU8(1);
- os->WRITE_PIXEL(palette.getColour(0));
+ WRITE_PIXEL(os, palette.getColour(0));
return;
}
@@ -176,7 +176,7 @@ void ZRLE_ENCODE_TILE (PIXEL_T* data, int w, int h, rdr::OutStream* os)
os->writeU8((useRle ? 128 : 0) | palette.size());
for (int i = 0; i < palette.size(); i++) {
- os->WRITE_PIXEL(palette.getColour(i));
+ WRITE_PIXEL(os, palette.getColour(i));
}
if (useRle) {
@@ -202,7 +202,7 @@ void ZRLE_ENCODE_TILE (PIXEL_T* data, int w, int h, rdr::OutStream* os)
int index = palette.lookup(pix);
os->writeU8(index | 128);
} else {
- os->WRITE_PIXEL(pix);
+ WRITE_PIXEL(os, pix);
}
len -= 1;
while (len >= 255) {
@@ -253,7 +253,7 @@ void ZRLE_ENCODE_TILE (PIXEL_T* data, int w, int h, rdr::OutStream* os)
#ifdef CPIXEL
for (PIXEL_T* ptr = data; ptr < data+w*h; ptr++) {
- os->WRITE_PIXEL(*ptr);
+ WRITE_PIXEL(os, *ptr);
}
#else
os->writeBytes(data, w*h*(BPP/8));