[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-kimageshop
Subject: Compression design
From: Boudewijn Rempt <boud () valdyas ! org>
Date: 2006-11-27 16:29:33
Message-ID: 200611271729.35945.boud () valdyas ! org
[Download RAW message or body]
[Attachment #2 (multipart/signed)]
For documentation purposes, here's what I'm trying to implement for the
compressed tile experiment:
* A thread, KisTileCompressor that takes tiles from a queue and compresses
them in the background
* The data for the compressed state of a tile is special allocated
* The data for the uncompressed state of a tile is taken from the pool
* KisTile will get three states: compressed, uncompressed and queued for
compression.
* As soon as the last reader is is removed, a tile is queued for compression
* If a reader is added to the tile before the tile is compressed, it is
dequeued and nothing happens.
* If a reader is added to a compressed tile, it is decompressed
* Only compressed tiles are written out to swap
(In this scheme, therefore, all tiles may get compressed, not just the tiles
in the undo swap -- I want to see what this does for interactive speed, so
I'm pursuing the most agressive option first.)
Note: it would have been handy if we had used a QByteArray instead of a plain
char * array.
--
Boudewijn Rempt
http://www.valdyas.org/fading/index.cgi
[Attachment #5 (application/pgp-signature)]
_______________________________________________
kimageshop mailing list
kimageshop@kde.org
https://mail.kde.org/mailman/listinfo/kimageshop
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic