aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/support/video_surface.h
diff options
context:
space:
mode:
authorPaul Gilbert2016-07-12 17:35:48 -0400
committerPaul Gilbert2016-07-17 13:09:27 -0400
commit6b250453f90a399b76d373ae9205b1bb985f8e46 (patch)
tree2c5c8f8cc898b25469c9b74b42ccf4141a17735a /engines/titanic/support/video_surface.h
parent513723c82d5db078236421577924bd9cde29b99b (diff)
downloadscummvm-rg350-6b250453f90a399b76d373ae9205b1bb985f8e46.tar.gz
scummvm-rg350-6b250453f90a399b76d373ae9205b1bb985f8e46.tar.bz2
scummvm-rg350-6b250453f90a399b76d373ae9205b1bb985f8e46.zip
TITANIC: Further implementation of movie frame decoding
Diffstat (limited to 'engines/titanic/support/video_surface.h')
-rw-r--r--engines/titanic/support/video_surface.h20
1 files changed, 14 insertions, 6 deletions
diff --git a/engines/titanic/support/video_surface.h b/engines/titanic/support/video_surface.h
index 254745805e..a0e74b5b3d 100644
--- a/engines/titanic/support/video_surface.h
+++ b/engines/titanic/support/video_surface.h
@@ -25,6 +25,7 @@
#include "common/scummsys.h"
#include "common/array.h"
+#include "graphics/managed_surface.h"
#include "titanic/support/font.h"
#include "titanic/support/direct_draw.h"
#include "titanic/support/movie.h"
@@ -62,7 +63,7 @@ protected:
CScreenManager *_screenManager;
Graphics::ManagedSurface *_rawSurface;
bool _pendingLoad;
- CVideoSurface *_movieFrameSurface;
+ Graphics::ManagedSurface *_movieFrameSurface;
int _field48;
int _videoSurfaceNum;
int _field50;
@@ -260,7 +261,7 @@ public:
/**
* Duplicates movie frame surface
*/
- virtual CVideoSurface *dupMovieFrame() const = 0;
+ virtual Graphics::ManagedSurface *dupMovieFrame() const = 0;
/**
* Frees the underlying surface
@@ -283,13 +284,14 @@ public:
void blitFrom(const Point &destPos, const Graphics::Surface *src);
/**
- *
+ * Sets the movie frame surface containing frame data from an active movie
*/
- void setMovieFrameSurface(CVideoSurface *frameSurface) { _movieFrameSurface = frameSurface; }
+ void setMovieFrameSurface(Graphics::ManagedSurface *frameSurface) { _movieFrameSurface = frameSurface; }
/**
+ * Get the previously set movie frame surface
*/
- CVideoSurface *getMovieFrameSurface() const { return _movieFrameSurface; }
+ Graphics::ManagedSurface *getMovieFrameSurface() const { return _movieFrameSurface; }
/**
* Get the pixels associated with the surface. Only valid when the
@@ -298,6 +300,12 @@ public:
uint16 *getPixels() { return (uint16 *)_rawSurface->getPixels(); }
/**
+ * Get a reference to the underlying surface. Only valid when the surface
+ * has been locked for access
+ */
+ Graphics::ManagedSurface *getRawSurface() { return _rawSurface; }
+
+ /**
* Returns the transparent color
*/
uint getTransparencyColor();
@@ -499,7 +507,7 @@ public:
/**
* Duplicates movie frame surface
*/
- virtual CVideoSurface *dupMovieFrame() const;
+ virtual Graphics::ManagedSurface *dupMovieFrame() const;
/**