aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb/ZRLEDecoder.cxx
Commit message (Collapse)AuthorAgeFilesLines
* Correctly handle ZRLE cursorsPierre Ossman2024-08-301-2/+2
| | | | | | Cursor data has a depth of 32 bits and hence cannot use CPIXELs. This is a regression from baca73d.
* Avoid redundant argumentsPierre Ossman2024-06-241-32/+31
| | | | | Remove redundant arguments where the method already has access to the relevant variable as an object attribute.
* Use nullptr in all C++ codePierre Ossman2024-06-241-1/+1
| | | | | It's more readable than 0, and a bit safer than NULL, so let's try to follow modern norms.
* Consistently use uint8_t for data buffersPierre Ossman2023-03-181-2/+2
| | | | | These will always be byte streams at heart, so let's try to keep them with a proper type. Should make it clearer how they will be used.
* Use stdint typesPierre Ossman2023-02-011-18/+18
| | | | | Avoid having our own custom stuff and instead use the modern, standard types, for familiarity.
* Use templates for optimized codePierre Ossman2023-02-011-38/+186
| | | | | Avoid preprocessor magic and instead rely on templating to generate optimized functions for performance critical code.
* Explicitly mark unused parametersPierre Ossman2023-01-041-2/+3
| | | | | This allows us to separate accidentally unused, from explicitly unused parameters, which allows us to turn on such checks in the compiler.
* Be consistent in including config.hPierre Ossman2021-12-301-0/+4
| | | | | | The generally recommended way is to include it from source files, not headers. We had a mix of both. Let's try to be consistent and follow the recommended way.
* Change streams to be asynchronousPierre Ossman2020-05-211-3/+21
| | | | | | | | | | Major restructuring of how streams work. Neither input nor output streams are now blocking. This avoids stalling the rest of the client or server when a peer is slow or unresponsive. Note that this puts an extra burden on users of streams to make sure they are allowed to do their work once the underlying transports are ready (e.g. monitoring fds).
* Split out ServerParams from ConnParamsPierre Ossman2018-11-011-4/+4
| | | | | | We need to track different things in the server and client, so separate things to two independent structures to keep things more clear.
* Properly handle depth > 24 in ZRLE decoderPierre Ossman2017-02-221-16/+20
|
* Fix temporary decoder buffer sizesPierre Ossman2016-10-051-6/+5
| | | | | Some of these were excessively large because of redundant factors in the size calculation.
* Decode rectangles in order if neededPierre Ossman2015-11-271-1/+1
| | | | | Some encodings must be handled in the order they are received. Make sure we respect this in the decode manager.
* Add flags member to decodersPierre Ossman2015-11-271-1/+1
| | | | | Allows us to add attributes later that affect of the decoder manager deals with the decoders.
* Split decoders into a read and decode stepPierre Ossman2015-11-271-6/+22
| | | | | | | | We need to split these steps up in preparation for multi-core support. Reading needs to be done in a serial manner, whilst decoding can be done in parallel. This also involved a rather large cleanup of the Tight decoder.
* Decouple decoders from CConnectionPierre Ossman2015-11-271-7/+7
|
* Use PixelBuffer objects as the interface for encoders and decodersPierre Ossman2014-07-141-10/+9
| | | | | | | This avoid a lot of unnecessary middle men. This also pushes the responsibility for pixel format conversion into the encoders and decoders. The new bufferFromBuffer() is used for direct conversion, rather than PixelTransformer/TransImageGetter.
* Encoders/decoders should track the connection objectPierre Ossman2014-07-071-4/+5
| | | | | | The connection object is a much more appropriate object for the decoders and encoders to keep track of. Besides the streams, it also contains state like connection parameters.
* Get rid of unnecessary macros as they are only ever set to a single thingPierre Ossman2014-07-071-3/+0
|
* Push encoding specific formats into the encoders and decodersPierre Ossman2014-07-071-0/+20
| | | | Keep the generic stream classes clean and general.
* Avoid reader/writer duplication in every encoder/decoderPierre Ossman2014-07-071-1/+1
|
* Get rid of the register mechanism for encoders and decodersPierre Ossman2014-07-071-5/+0
| | | | We have no use for it, so let's keep things simple.
* Consolidate pixel conversion into the PixelFormat class and optimise thePierre Ossman2009-03-061-10/+7
| | | | | | | common cases. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3636 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Migrating to new directory structure adopted from the RealVNC's source tree. ↵Constantin Kaplinsky2006-05-251-0/+91
More changes will follow. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@589 3789f03b-4d11-0410-bbf8-ca57d06f2519