diff options
author | Fernando Carvajal <fcarvajal@qindel.com> | 2016-04-15 09:49:09 +0200 |
---|---|---|
committer | Fernando Carvajal <fcarvajal@qindel.com> | 2016-04-15 09:49:09 +0200 |
commit | 5c495241069708e9b1bbf6e57fd49599be540b63 (patch) | |
tree | 014155ca365a93687f99ea6492dd2c9d3e80593e /nxcomp/TextCompressor.cpp | |
parent | 00464aea0c35bdb63e4f63438e703cffb1d1f39e (diff) | |
download | nx-libs-5c495241069708e9b1bbf6e57fd49599be540b63.tar.gz nx-libs-5c495241069708e9b1bbf6e57fd49599be540b63.tar.bz2 nx-libs-5c495241069708e9b1bbf6e57fd49599be540b63.zip |
Remove TextCompressor class and files from nxcomp
This commit removes TextCompressor class references from ClientCache
and ServerCache as it's no longer used after removing old protocol's
compatibility code from nxcomp. It also removes the attribute textCache
from both classes as it's no longer used either.
Finally the header and source files associated with the TextCompressor
class are also deleted and removed from the compilation process.
Refs: ArcticaProject/nx-libs#108
Diffstat (limited to 'nxcomp/TextCompressor.cpp')
-rw-r--r-- | nxcomp/TextCompressor.cpp | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/nxcomp/TextCompressor.cpp b/nxcomp/TextCompressor.cpp deleted file mode 100644 index 16131222c..000000000 --- a/nxcomp/TextCompressor.cpp +++ /dev/null @@ -1,77 +0,0 @@ -/**************************************************************************/ -/* */ -/* Copyright (c) 2001, 2010 NoMachine, http://www.nomachine.com/. */ -/* */ -/* NXCOMP, NX protocol compression and NX extensions to this software */ -/* are copyright of NoMachine. Redistribution and use of the present */ -/* software is allowed according to terms specified in the file LICENSE */ -/* which comes in the source distribution. */ -/* */ -/* Check http://www.nomachine.com/licensing.html for applicability. */ -/* */ -/* NX and NoMachine are trademarks of Medialogic S.p.A. */ -/* */ -/* All rights reserved. */ -/* */ -/**************************************************************************/ - -#include "TextCompressor.h" - -#include "EncodeBuffer.h" -#include "DecodeBuffer.h" - -// -// The compression obtained by this class is -// very poor. In newer versions the text is -// simply appended to the encode buffer and -// compressed by leveraging the final stream -// compression. -// - -void -TextCompressor::encodeChar(unsigned char ch, EncodeBuffer& encodeBuffer) -{ - // encode each successive character of text using - // a predictive model where most of the last 3 characters - // (low order 7 bits of the previous character, plus the - // low order 5 bits of the character before that, plus - // the low order 3 bits of the character before that) - // are used to find the right cache... - - CharCache& cache = cache_[key_ % cacheSize_]; - if ((key_ >= 128) && (cache.getSize() == 0)) - { - // 3rd-order model doesn't have any statistics yet, - // so use the 1st-order one instead - CharCache& cache2 = cache_[(key_ & 0x7f) % cacheSize_]; - encodeBuffer.encodeCachedValue((unsigned int) ch, 8, cache2); - cache.insert(ch); - } - else - { - encodeBuffer.encodeCachedValue((unsigned int) ch, 8, cache); - } - - key_ = (((key_ & 0x1f) << 7) | ((key_ & 0x380) << 5) | (ch & 0x7f)); -} - - -unsigned char -TextCompressor::decodeChar(DecodeBuffer& decodeBuffer) -{ - unsigned char nextChar; - CharCache& cache = cache_[key_ % cacheSize_]; - if ((key_ >= 128) && (cache.getSize() == 0)) - { - CharCache& cache2 = cache_[(key_ & 0x7f) % cacheSize_]; - decodeBuffer.decodeCachedValue(nextChar, 8, cache2); - cache.insert(nextChar); - } - else - { - decodeBuffer.decodeCachedValue(nextChar, 8, cache); - } - - key_ = (((key_ & 0x1f) << 7) | ((key_ & 0x380) << 5) | (nextChar & 0x7f)); - return nextChar; -} |