aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb/tightDecode.h
Commit message (Collapse)AuthorAgeFilesLines
* Split decoders into a read and decode stepPierre Ossman2015-11-271-252/+63
| | | | | | | | 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-4/+10
|
* Change fillRect() to take a buffer instead of a pixelPierre Ossman2015-06-051-1/+1
| | | | | | | | There has been some confusion if fillRect() should accept a buffer or a pixel. This can cause misrendering if your data is not in the native endian order. A buffer makes more sense here though, and is what most of the callers are already assuming, so change the API to follow that.
* Remove unused assert.h includePierre Ossman2014-10-101-1/+0
|
* Move image encoding logic into a central EncodeManager classPierre Ossman2014-07-141-7/+8
| | | | | | | | This allows us to apply a lot more server logic independently of which encoder is in use. Most of this class are things moved over from the Tight encoder.
* Use PixelBuffer objects as the interface for encoders and decodersPierre Ossman2014-07-141-6/+6
| | | | | | | 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-1/+1
| | | | | | 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.
* Remove full support for colour mapsPierre Ossman2014-07-071-9/+9
| | | | | | | | | Gets rid of a loooot of code and complexity. Colour map clients are still supported through an automatically generated map, but we lose the ability to develop a client or server that uses colour maps internally.
* Get rid of unnecessary macros as they are only ever set to a single thingPierre Ossman2014-07-071-6/+3
|
* Push encoding specific formats into the encoders and decodersPierre Ossman2014-07-071-2/+2
| | | | Keep the generic stream classes clean and general.
* Consistent use of stride vs pitchPierre Ossman2014-07-071-2/+1
| | | | | | | Consistently use the term stride rather than pitch. Also consistently represent the stride in number of pixels rather than number of bytes. There is so much code that assumes proper alignment already that we do not need the extra resolution.
* Be more consistent in referring to pixel byte streams as buffersPierre Ossman2014-07-071-4/+4
|
* Fix issue uncovered with valgrindDRC2011-11-091-1/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4787 3789f03b-4d11-0410-bbf8-ca57d06f2519
* The source data here is RGB triplets, not "pixels".Pierre Ossman2011-11-081-3/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4785 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Further optimizations (avoiding single-byte copies and InStream processing ↵DRC2011-11-041-45/+32
| | | | | | overhead) git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4763 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Since fillRect() operates directly on the framebuffer, optimize it and ↵DRC2011-11-031-33/+1
| | | | | | remove the separate version in TightDecoder. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4762 3789f03b-4d11-0410-bbf8-ca57d06f2519
* If the client and server are using identical pixel formats, then perform ↵DRC2011-11-031-158/+118
| | | | | | Tight decoding directly into the viewer's back buffer, rather than going through the slow fillRect/imageRect routines. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4757 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Fixed the formatting of a few Cendio copyright lines, so that it isPeter Åstrand2011-09-281-1/+1
| | | | | | | | consistent with the rest of the code. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4677 3789f03b-4d11-0410-bbf8-ca57d06f2519
* [Bugfix] Remove "unused-but-set" variable from tightDecode.h.Adam Tkac2011-02-211-2/+1
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4298 3789f03b-4d11-0410-bbf8-ca57d06f2519
* The tight decoder is really working on pixel buffers, not Pixel arrays. ThisPierre Ossman2010-09-301-21/+18
| | | | | | | | distinction is generally unnoticed, but it can cause problems when the target buffer is not in native endian order. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4152 3789f03b-4d11-0410-bbf8-ca57d06f2519
* [Bugfix] Fix memory leak in Tight decoder.Adam Tkac2010-01-271-0/+2
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3957 3789f03b-4d11-0410-bbf8-ca57d06f2519
* The code to utilize our libjpeg's ability to input/output out native formatsv0.0.90Pierre Ossman2009-04-301-19/+22
| | | | | | | | failed to consider everything but the ideal cases. Clean up the code and make sure it handles everything. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3795 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Take advantage of libjpeg colorspace extensions, if availableDRC2009-04-061-9/+54
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3759 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Optimise the common pixel format conversion RGB24 to RGB32.Pierre Ossman2009-03-311-4/+2
| | | | git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3730 3789f03b-4d11-0410-bbf8-ca57d06f2519
* Consolidate pixel conversion into the PixelFormat class and optimise thePierre Ossman2009-03-061-31/+31
| | | | | | | 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/+412
More changes will follow. git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@589 3789f03b-4d11-0410-bbf8-ca57d06f2519