diff options
author | johndoe123 | 2014-04-04 10:47:39 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2018-07-20 06:43:33 +0000 |
commit | 54bce3d37a852e0d3a674277ff09212a7adfc007 (patch) | |
tree | 8c04acffabe11b7894513cd16bc61a7fff4a8182 /engines/illusions/screen.h | |
parent | 6d17b40796bf6ff91d4d036a33280e0ec27788f6 (diff) | |
download | scummvm-rg350-54bce3d37a852e0d3a674277ff09212a7adfc007.tar.gz scummvm-rg350-54bce3d37a852e0d3a674277ff09212a7adfc007.tar.bz2 scummvm-rg350-54bce3d37a852e0d3a674277ff09212a7adfc007.zip |
ILLUSIONS: Move SpriteDecompressQueue to screen
Diffstat (limited to 'engines/illusions/screen.h')
-rw-r--r-- | engines/illusions/screen.h | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/engines/illusions/screen.h b/engines/illusions/screen.h index 8fa95ecfa6..33a0de3986 100644 --- a/engines/illusions/screen.h +++ b/engines/illusions/screen.h @@ -24,12 +24,36 @@ #define ILLUSIONS_SCREEN_H #include "illusions/spritedrawqueue.h" -#include "illusions/spritedecompressqueue.h" +#include "common/list.h" #include "graphics/surface.h" namespace Illusions { class IllusionsEngine; +class Screen; + +struct SpriteDecompressQueueItem { + byte *_drawFlags; + uint32 _flags; + uint32 _field8; + WidthHeight _dimensions; + byte *_compressedPixels; + Graphics::Surface *_surface; +}; + +class SpriteDecompressQueue { +public: + SpriteDecompressQueue(); + ~SpriteDecompressQueue(); + void insert(byte *drawFlags, uint32 flags, uint32 field8, WidthHeight &dimensions, + byte *compressedPixels, Graphics::Surface *surface); + void decompressAll(); +protected: + typedef Common::List<SpriteDecompressQueueItem*> SpriteDecompressQueueList; + typedef SpriteDecompressQueueList::iterator SpriteDecompressQueueListIterator; + SpriteDecompressQueueList _queue; + void decompress(SpriteDecompressQueueItem *item); +}; class Screen { public: |