diff options
Diffstat (limited to 'engines/sci/graphics/video32.h')
-rw-r--r-- | engines/sci/graphics/video32.h | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/engines/sci/graphics/video32.h b/engines/sci/graphics/video32.h index 0496f61d5d..75b8fb2d21 100644 --- a/engines/sci/graphics/video32.h +++ b/engines/sci/graphics/video32.h @@ -27,6 +27,7 @@ #include "common/scummsys.h" // for int16, uint8, uint16, int32 #include "common/str.h" // for String #include "sci/engine/vm_types.h" // for reg_t +#include "sci/video/robot_decoder.h" // for RobotDecoder namespace Video { class AdvancedVMDDecoder; @@ -267,6 +268,15 @@ public: kEventFlagReverse = 0x80 }; + enum VMDStatus { + kVMDNotOpen = 0, + kVMDOpen = 1, + kVMDPlaying = 2, + kVMDPaused = 3, + kVMDStopped = 4, + kVMDFinished = 5 + }; + VMDPlayer(SegManager *segMan, EventManager *eventMan); ~VMDPlayer(); @@ -294,6 +304,11 @@ public: */ IOStatus close(); + /** + * Gets the playback status of the VMD player. + */ + VMDStatus getStatus() const; + // NOTE: Was WaitForEvent in SSCI EventFlags kernelPlayUntilEvent(const EventFlags flags, const int16 lastFrameNo, const int16 yieldInterval); @@ -505,16 +520,19 @@ public: Video32(SegManager *segMan, EventManager *eventMan) : _SEQPlayer(segMan), _AVIPlayer(segMan, eventMan), - _VMDPlayer(segMan, eventMan) {} + _VMDPlayer(segMan, eventMan), + _robotPlayer(segMan) {} SEQPlayer &getSEQPlayer() { return _SEQPlayer; } AVIPlayer &getAVIPlayer() { return _AVIPlayer; } VMDPlayer &getVMDPlayer() { return _VMDPlayer; } + RobotDecoder &getRobotPlayer() { return _robotPlayer; } private: SEQPlayer _SEQPlayer; AVIPlayer _AVIPlayer; VMDPlayer _VMDPlayer; + RobotDecoder _robotPlayer; }; } // End of namespace Sci |