aboutsummaryrefslogtreecommitdiff
path: root/image/codecs/rpza.h
diff options
context:
space:
mode:
authorMatthew Hoops2014-12-30 15:49:27 -0500
committerMatthew Hoops2015-04-11 14:37:09 -0400
commit7f12db95c6c7689f7f7f8905aaf122db6de13e4f (patch)
treefc83f24f34f7a3543d0b55124239fa3d51765e18 /image/codecs/rpza.h
parentb170b0882237a4c8b8119d2875bf2e05c03168e5 (diff)
downloadscummvm-rg350-7f12db95c6c7689f7f7f8905aaf122db6de13e4f.tar.gz
scummvm-rg350-7f12db95c6c7689f7f7f8905aaf122db6de13e4f.tar.bz2
scummvm-rg350-7f12db95c6c7689f7f7f8905aaf122db6de13e4f.zip
IMAGE: Implement QuickTime dithering in rpza
Diffstat (limited to 'image/codecs/rpza.h')
-rw-r--r--image/codecs/rpza.h14
1 files changed, 13 insertions, 1 deletions
diff --git a/image/codecs/rpza.h b/image/codecs/rpza.h
index d1dbbdb676..d62b385330 100644
--- a/image/codecs/rpza.h
+++ b/image/codecs/rpza.h
@@ -39,10 +39,22 @@ public:
~RPZADecoder();
const Graphics::Surface *decodeFrame(Common::SeekableReadStream &stream);
- Graphics::PixelFormat getPixelFormat() const { return Graphics::PixelFormat(2, 5, 5, 5, 0, 10, 5, 0, 0); }
+ Graphics::PixelFormat getPixelFormat() const { return _format; }
+
+ bool containsPalette() const { return _ditherPalette != 0; }
+ const byte *getPalette() { _dirtyPalette = false; return _ditherPalette; }
+ bool hasDirtyPalette() const { return _dirtyPalette; }
+ bool canDither(DitherType type) const;
+ void setDither(DitherType type, const byte *palette);
private:
+ Graphics::PixelFormat _format;
Graphics::Surface *_surface;
+ byte *_ditherPalette;
+ bool _dirtyPalette;
+ byte *_colorMap;
+ uint16 _width, _height;
+ uint16 _blockWidth, _blockHeight;
};
} // End of namespace Image