diff options
author | Alyssa Milburn | 2010-12-25 19:52:54 +0000 |
---|---|---|
committer | Alyssa Milburn | 2010-12-25 19:52:54 +0000 |
commit | 64a8652cd6786fc7c063c28c849be6b8bfdcc454 (patch) | |
tree | b0ad8c146c70f1f38ac5a17fc3605ba68ad20d48 /engines/mohawk/graphics.h | |
parent | 1897e5e132bda062f84d38cbb0a3bef4d7087245 (diff) | |
download | scummvm-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.h | 5 |
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 { |