aboutsummaryrefslogtreecommitdiff
path: root/engines/mohawk/graphics.h
diff options
context:
space:
mode:
authorAlyssa Milburn2010-12-25 19:52:54 +0000
committerAlyssa Milburn2010-12-25 19:52:54 +0000
commit64a8652cd6786fc7c063c28c849be6b8bfdcc454 (patch)
treeb0ad8c146c70f1f38ac5a17fc3605ba68ad20d48 /engines/mohawk/graphics.h
parent1897e5e132bda062f84d38cbb0a3bef4d7087245 (diff)
downloadscummvm-rg350-64a8652cd6786fc7c063c28c849be6b8bfdcc454.tar.gz
scummvm-rg350-64a8652cd6786fc7c063c28c849be6b8bfdcc454.tar.bz2
scummvm-rg350-64a8652cd6786fc7c063c28c849be6b8bfdcc454.zip
MOHAWK: Add subimage drawing/caching code
svn-id: r55038
Diffstat (limited to 'engines/mohawk/graphics.h')
-rw-r--r--engines/mohawk/graphics.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/engines/mohawk/graphics.h b/engines/mohawk/graphics.h
index 0dc281c391..7c11692af3 100644
--- a/engines/mohawk/graphics.h
+++ b/engines/mohawk/graphics.h
@@ -88,20 +88,25 @@ public:
virtual void setPalette(uint16 id);
void copyAnimImageToScreen(uint16 image, int left = 0, int top = 0);
void copyAnimImageSectionToScreen(uint16 image, Common::Rect src, Common::Rect dest);
+ void copyAnimSubImageToScreen(uint16 image, uint16 subimage, int left = 0, int top = 0);
protected:
+ void copyAnimImageSectionToScreen(MohawkSurface *image, Common::Rect src, Common::Rect dest);
+
// findImage will search the cache to find the image.
// If not found, it will call decodeImage to get a new one.
MohawkSurface *findImage(uint16 id);
// decodeImage will always return a new image.
virtual MohawkSurface *decodeImage(uint16 id) = 0;
+ virtual Common::Array<MohawkSurface *> decodeImages(uint16 id);
virtual MohawkEngine *getVM() = 0;
private:
// An image cache that stores images until clearCache() is called
Common::HashMap<uint16, MohawkSurface*> _cache;
+ Common::HashMap<uint16, Common::Array<MohawkSurface*> > _subImageCache;
};
class MystGraphics : public GraphicsManager {