aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/support/video_surface.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/titanic/support/video_surface.h')
-rw-r--r--engines/titanic/support/video_surface.h59
1 files changed, 55 insertions, 4 deletions
diff --git a/engines/titanic/support/video_surface.h b/engines/titanic/support/video_surface.h
index e5d904f6d6..9b7e0fbaec 100644
--- a/engines/titanic/support/video_surface.h
+++ b/engines/titanic/support/video_surface.h
@@ -129,13 +129,28 @@ public:
* Returns the pitch of the surface in bytes
*/
virtual int getPitch() = 0;
-
+
+ /**
+ * Returns the bytes per pixel of the surface
+ */
+ virtual int getBpp() = 0;
+
/**
- * Reiszes the surface
+ * Recreates the surface
+ */
+ virtual void recreate(int width, int height) = 0;
+
+ /**
+ * Resizes the surface
*/
virtual void resize(int width, int height) = 0;
/**
+ * Detachs the underlying raw surface
+ */
+ virtual void detachSurface() = 0;
+
+ /**
* Returns the number of bytes per pixel in the surface
*/
virtual int getPixelDepth() = 0;
@@ -145,6 +160,12 @@ public:
*/
virtual uint16 getPixel(const Common::Point &pt) = 0;
+
+ /**
+ * Sets a pixel at a specified position within the surface
+ */
+ virtual void setPixel(const Point &pt, uint pixel) = 0;
+
/**
* Change a pixel
*/
@@ -156,6 +177,11 @@ public:
virtual void shiftColors() = 0;
/**
+ * Clears the entire surface to black
+ */
+ virtual void clear() = 0;
+
+ /**
* Plays a movie, loading it from the specified _resource
* if not already loaded
*/
@@ -305,11 +331,26 @@ public:
virtual int getPitch();
/**
- * Reiszes the surface
+ * Returns the bytes per pixel of the surface
+ */
+ virtual int getBpp();
+
+ /**
+ * Recreates the surface with the designated size
+ */
+ virtual void recreate(int width, int height);
+
+ /**
+ * Resizes the surface
*/
virtual void resize(int width, int height);
/**
+ * Detachs the underlying raw surface
+ */
+ virtual void detachSurface();
+
+ /**
* Returns the number of bytes per pixel in the surface
*/
virtual int getPixelDepth();
@@ -317,7 +358,12 @@ public:
/**
* Gets the pixel at the specified position within the surface
*/
- virtual uint16 getPixel(const Common::Point &pt);
+ virtual uint16 getPixel(const Point &pt);
+
+ /**
+ * Sets a pixel at a specified position within the surface
+ */
+ virtual void setPixel(const Point &pt, uint pixel);
/**
* Change a pixel
@@ -330,6 +376,11 @@ public:
virtual void shiftColors();
/**
+ * Clears the entire surface to black
+ */
+ virtual void clear();
+
+ /**
* Plays a movie, loading it from the specified _resource
* if not already loaded
*/