diff options
author | Filippos Karapetis | 2008-04-20 14:43:56 +0000 |
---|---|---|
committer | Filippos Karapetis | 2008-04-20 14:43:56 +0000 |
commit | d0590a09eac68d5cde64d37fb2e5bbd1471a676a (patch) | |
tree | 3e29857746449aaea4c9834bedad0d18ce487ff7 /engines/made/pmvplayer.h | |
parent | d484c7ed434e9f8e8267049fccbe3dbb5c39fe0b (diff) | |
download | scummvm-rg350-d0590a09eac68d5cde64d37fb2e5bbd1471a676a.tar.gz scummvm-rg350-d0590a09eac68d5cde64d37fb2e5bbd1471a676a.tar.bz2 scummvm-rg350-d0590a09eac68d5cde64d37fb2e5bbd1471a676a.zip |
Initial import of the work in progress MADE engine
svn-id: r31599
Diffstat (limited to 'engines/made/pmvplayer.h')
-rw-r--r-- | engines/made/pmvplayer.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/engines/made/pmvplayer.h b/engines/made/pmvplayer.h new file mode 100644 index 0000000000..51f5a36734 --- /dev/null +++ b/engines/made/pmvplayer.h @@ -0,0 +1,39 @@ +#ifndef MADE_PMVPLAYER_H +#define MADE_PMVPLAYER_H + +#include "common/system.h" +#include "common/events.h" +#include "common/file.h" +#include "common/endian.h" +#include "graphics/surface.h" +#include "sound/mixer.h" +#include "sound/audiostream.h" + +#include "made/graphics.h" +#include "made/sound.h" + +namespace Made { + +class PmvPlayer { +public: + PmvPlayer(OSystem *system, Audio::Mixer *mixer); + ~PmvPlayer(); + void play(const char *filename); +protected: + OSystem *_system; + Audio::Mixer *_mixer; + Common::File *_fd; + Audio::AppendableAudioStream *_audioStream; + Audio::SoundHandle _audioStreamHandle; + byte _palette[768]; + Graphics::Surface *_surface; + bool _abort; + void readChunk(uint32 &chunkType, uint32 &chunkSize); + void handleEvents(); + void updatePalette(); + void updateScreen(); +}; + +} + +#endif |