aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Kiewitz2010-02-05 15:48:45 +0000
committerMartin Kiewitz2010-02-05 15:48:45 +0000
commitab2941bb520583be93ca9520497f6c3718194fa2 (patch)
treee3649c547286bfe7ba2af58f046ac6a0343048ae
parentf8f490c565809c93ca35928210a740b6579fba19 (diff)
downloadscummvm-rg350-ab2941bb520583be93ca9520497f6c3718194fa2.tar.gz
scummvm-rg350-ab2941bb520583be93ca9520497f6c3718194fa2.tar.bz2
scummvm-rg350-ab2941bb520583be93ca9520497f6c3718194fa2.zip
SCI: adding some minor documentation for the various graphic classes
svn-id: r47904
-rw-r--r--engines/sci/graphics/animate.h3
-rw-r--r--engines/sci/graphics/cache.h3
-rw-r--r--engines/sci/graphics/compare.h3
-rw-r--r--engines/sci/graphics/controls.h3
-rw-r--r--engines/sci/graphics/font.h4
-rw-r--r--engines/sci/graphics/frameout.h3
-rw-r--r--engines/sci/graphics/menu.h3
-rw-r--r--engines/sci/graphics/paint16.h3
-rw-r--r--engines/sci/graphics/paint32.h3
-rw-r--r--engines/sci/graphics/palette.h3
-rw-r--r--engines/sci/graphics/picture.h4
-rw-r--r--engines/sci/graphics/ports.h4
-rw-r--r--engines/sci/graphics/screen.h5
-rw-r--r--engines/sci/graphics/text16.h3
-rw-r--r--engines/sci/graphics/transitions.h3
-rw-r--r--engines/sci/graphics/view.h4
16 files changed, 54 insertions, 0 deletions
diff --git a/engines/sci/graphics/animate.h b/engines/sci/graphics/animate.h
index 958f881e2f..44b91024cd 100644
--- a/engines/sci/graphics/animate.h
+++ b/engines/sci/graphics/animate.h
@@ -81,6 +81,9 @@ class GfxPaint16;
class GfxScreen;
class GfxPalette;
class GfxTransitions;
+/**
+ * Animate class, kAnimate and relevant functions for SCI16 (SCI0-SCI1.1) games
+ */
class GfxAnimate {
public:
GfxAnimate(EngineState *state, GfxCache *cache, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen, GfxPalette *palette, GfxCursor *cursor, GfxTransitions *transitions);
diff --git a/engines/sci/graphics/cache.h b/engines/sci/graphics/cache.h
index b1754929b1..16ab1916d4 100644
--- a/engines/sci/graphics/cache.h
+++ b/engines/sci/graphics/cache.h
@@ -38,6 +38,9 @@ class GfxView;
typedef Common::HashMap<int, GfxFont *> FontCache;
typedef Common::HashMap<int, GfxView *> ViewCache;
+/**
+ * Cache class, handles caching of views/fonts
+ */
class GfxCache {
public:
GfxCache(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette);
diff --git a/engines/sci/graphics/compare.h b/engines/sci/graphics/compare.h
index 7de0a3bfeb..a825667b97 100644
--- a/engines/sci/graphics/compare.h
+++ b/engines/sci/graphics/compare.h
@@ -34,6 +34,9 @@ namespace Sci {
class Screen;
+/**
+ * Compare class, handles compare operations graphic-wise (like when checking control screen for a pattern etc.)
+ */
class GfxCompare {
public:
GfxCompare(SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxScreen *screen);
diff --git a/engines/sci/graphics/controls.h b/engines/sci/graphics/controls.h
index 4e60c92e7a..8c38b4fc8e 100644
--- a/engines/sci/graphics/controls.h
+++ b/engines/sci/graphics/controls.h
@@ -39,6 +39,9 @@ class GfxPaint16;
class Font;
class GfxText16;
class GfxScreen;
+/**
+ * Controls class, handles drawing of controls in SCI16 (SCI0-SCI1.1) games
+ */
class GfxControls {
public:
GfxControls(SegManager *segMan, GfxPorts *ports, GfxPaint16 *paint16, GfxText16 *text16, GfxScreen *screen);
diff --git a/engines/sci/graphics/font.h b/engines/sci/graphics/font.h
index a14ad4aaa3..975b7e712a 100644
--- a/engines/sci/graphics/font.h
+++ b/engines/sci/graphics/font.h
@@ -30,6 +30,10 @@
namespace Sci {
+/**
+ * Font class, handles loading of font resources and drawing characters to screen
+ * every font resource has its own instance of this class
+ */
class GfxFont {
public:
GfxFont(ResourceManager *resMan, GfxScreen *screen, GuiResourceId resourceId);
diff --git a/engines/sci/graphics/frameout.h b/engines/sci/graphics/frameout.h
index 34dfc26545..24db870b60 100644
--- a/engines/sci/graphics/frameout.h
+++ b/engines/sci/graphics/frameout.h
@@ -45,6 +45,9 @@ typedef Common::List<FrameoutEntry *> FrameoutList;
class GfxCache;
class GfxPaint32;
+/**
+ * Frameout class, kFrameout and relevant functions for SCI32 games
+ */
class GfxFrameout {
public:
GfxFrameout(SegManager *segMan, ResourceManager *resMan, GfxCache *cache, GfxScreen *screen, GfxPalette *palette, GfxPaint32 *paint32);
diff --git a/engines/sci/graphics/menu.h b/engines/sci/graphics/menu.h
index 4144eab584..7f983efb4a 100644
--- a/engines/sci/graphics/menu.h
+++ b/engines/sci/graphics/menu.h
@@ -76,6 +76,9 @@ struct GuiMenuItemEntry {
};
typedef Common::List<GuiMenuItemEntry *> GuiMenuItemList;
+/**
+ * Menu class, handles game pulldown menu for SCI16 (SCI0-SCI1.1) games
+ */
class GfxMenu {
public:
GfxMenu(SciEvent *event, SegManager *segMan, SciGui *gui, GfxPorts *ports, GfxPaint16 *paint16, GfxText16 *text16, GfxScreen *screen, GfxCursor *cursor);
diff --git a/engines/sci/graphics/paint16.h b/engines/sci/graphics/paint16.h
index d9e13a38a3..76ec1b98de 100644
--- a/engines/sci/graphics/paint16.h
+++ b/engines/sci/graphics/paint16.h
@@ -40,6 +40,9 @@ class Font;
class SciGuiPicture;
class GfxView;
+/**
+ * Paint16 class, handles painting/drawing for SCI16 (SCI0-SCI1.1) games
+ */
class GfxPaint16 : public GfxPaint {
public:
GfxPaint16(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette, GfxTransitions *transitions);
diff --git a/engines/sci/graphics/paint32.h b/engines/sci/graphics/paint32.h
index c158075326..86b3f53ea4 100644
--- a/engines/sci/graphics/paint32.h
+++ b/engines/sci/graphics/paint32.h
@@ -35,6 +35,9 @@ namespace Sci {
class GfxPorts;
+/**
+ * Paint32 class, handles painting/drawing for SCI32 (SCI2+) games
+ */
class GfxPaint32 : public GfxPaint {
public:
GfxPaint32(ResourceManager *resMan, SegManager *segMan, Kernel *kernel, GfxCache *cache, GfxScreen *screen, GfxPalette *palette);
diff --git a/engines/sci/graphics/palette.h b/engines/sci/graphics/palette.h
index 8bee000d81..efe27cb791 100644
--- a/engines/sci/graphics/palette.h
+++ b/engines/sci/graphics/palette.h
@@ -31,6 +31,9 @@
namespace Sci {
class Screen;
+/**
+ * Palette class, handles palette operations like changing intensity, setting up the palette, merging different palettes
+ */
class GfxPalette {
public:
GfxPalette(ResourceManager *resMan, GfxScreen *screen, bool autoSetPalette = true);
diff --git a/engines/sci/graphics/picture.h b/engines/sci/graphics/picture.h
index f0e6cca690..92c30262d2 100644
--- a/engines/sci/graphics/picture.h
+++ b/engines/sci/graphics/picture.h
@@ -36,6 +36,10 @@ class GfxPorts;
class GfxScreen;
class GfxPalette;
+/**
+ * Picture class, handles loading and displaying of picture resources
+ * every picture resource has its own instance of this class
+ */
class GfxPicture {
public:
GfxPicture(ResourceManager *resMan, GfxPorts *ports, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId, bool EGAdrawingVisualize = false);
diff --git a/engines/sci/graphics/ports.h b/engines/sci/graphics/ports.h
index 678ee06726..2b2449bbef 100644
--- a/engines/sci/graphics/ports.h
+++ b/engines/sci/graphics/ports.h
@@ -36,6 +36,10 @@ class GfxPaint16;
class GfxScreen;
class GfxText16;
+/**
+ * Ports class, includes all port managment for SCI0->SCI1.1 games. Ports are some sort of windows in SCI
+ * this class also handles adjusting coordinates to a specific port
+ */
class GfxPorts {
public:
GfxPorts(SegManager *segMan, GfxScreen *screen);
diff --git a/engines/sci/graphics/screen.h b/engines/sci/graphics/screen.h
index ee59411055..55fd0b4828 100644
--- a/engines/sci/graphics/screen.h
+++ b/engines/sci/graphics/screen.h
@@ -41,6 +41,11 @@ namespace Sci {
#define SCI_SCREEN_UNDITHERMEMORIAL_SIZE 256
+/**
+ * Screen class, actually creates 3 (4) screens internally - which is visual/display (for the user),
+ * priority (contains priority information) and control (contains control information). Handles all operations to it
+ * and copies parts of visual/display screen to the actual screen, so the user can really see it.
+ */
class GfxScreen {
public:
GfxScreen(ResourceManager *resMan, int16 width = 320, int16 height = 200, bool upscaledHires = false);
diff --git a/engines/sci/graphics/text16.h b/engines/sci/graphics/text16.h
index 47e5f14e13..e3e526101c 100644
--- a/engines/sci/graphics/text16.h
+++ b/engines/sci/graphics/text16.h
@@ -36,6 +36,9 @@ class GfxPorts;
class GfxPaint16;
class GfxScreen;
class GfxFont;
+/**
+ * Text16 class, handles text calculation and displaying of text for SCI0->SCI1.1 games
+ */
class GfxText16 {
public:
GfxText16(ResourceManager *_resMan, GfxCache *fonts, GfxPorts *ports, GfxPaint16 *paint16, GfxScreen *screen);
diff --git a/engines/sci/graphics/transitions.h b/engines/sci/graphics/transitions.h
index b28b14dd94..9a1a412d5b 100644
--- a/engines/sci/graphics/transitions.h
+++ b/engines/sci/graphics/transitions.h
@@ -60,6 +60,9 @@ enum {
};
class Screen;
+/**
+ * Transitions class, handles doing transitions for SCI0->SCI1.1 games like fade out/fade in, mosaic effect, etc.
+ */
class GfxTransitions {
public:
GfxTransitions(SciGui *gui, GfxScreen *screen, GfxPalette *palette, bool isVGA);
diff --git a/engines/sci/graphics/view.h b/engines/sci/graphics/view.h
index beb3242804..a2050dc9d5 100644
--- a/engines/sci/graphics/view.h
+++ b/engines/sci/graphics/view.h
@@ -51,6 +51,10 @@ struct LoopInfo {
class GfxScreen;
class GfxPalette;
+/**
+ * View class, handles loading of view resources and drawing contained cels to screen
+ * every view resource has its own instance of this class
+ */
class GfxView {
public:
GfxView(ResourceManager *resMan, GfxScreen *screen, GfxPalette *palette, GuiResourceId resourceId);