aboutsummaryrefslogtreecommitdiff
path: root/backends/platform/iphone/osys_main.h
diff options
context:
space:
mode:
Diffstat (limited to 'backends/platform/iphone/osys_main.h')
-rw-r--r--backends/platform/iphone/osys_main.h36
1 files changed, 17 insertions, 19 deletions
diff --git a/backends/platform/iphone/osys_main.h b/backends/platform/iphone/osys_main.h
index e4b3d358d5..5d0f60c34c 100644
--- a/backends/platform/iphone/osys_main.h
+++ b/backends/platform/iphone/osys_main.h
@@ -59,39 +59,27 @@ protected:
static SoundProc s_soundCallback;
static void *s_soundParam;
- int _currentGraphicsMode;
-
Audio::MixerImpl *_mixer;
- Graphics::Surface _framebuffer;
- byte *_gameScreenRaw;
- OverlayColor *_overlayBuffer;
- uint16 _overlayHeight;
- uint16 _overlayWidth;
+ VideoContext *_videoContext;
- uint16 *_gameScreenConverted;
+ Graphics::Surface _framebuffer;
// For use with the game texture
uint16 _gamePalette[256];
// For use with the mouse texture
uint16 _gamePaletteRGBA5551[256];
- bool _overlayVisible;
- uint16 _screenWidth;
- uint16 _screenHeight;
struct timeval _startTime;
uint32 _timeSuspended;
- bool _mouseVisible;
bool _mouseCursorPaletteEnabled;
uint16 _mouseCursorPalette[256];
- byte *_mouseBuf;
- byte _mouseKeyColor;
- uint _mouseWidth, _mouseHeight;
- uint _mouseX, _mouseY;
- int _mouseHotspotX, _mouseHotspotY;
+ Graphics::Surface _mouseBuffer;
+ uint16 _mouseKeyColor;
bool _mouseDirty;
bool _mouseNeedTextureUpdate;
+
long _lastMouseDown;
long _lastMouseTap;
long _queuedEventTime;
@@ -133,9 +121,18 @@ public:
virtual bool setGraphicsMode(int mode);
virtual int getGraphicsMode() const;
virtual void initSize(uint width, uint height, const Graphics::PixelFormat *format);
+
+ virtual void beginGFXTransaction();
+ virtual TransactionError endGFXTransaction();
+
virtual int16 getHeight();
virtual int16 getWidth();
+#ifdef USE_RGB_COLOR
+ virtual Graphics::PixelFormat getScreenFormat() const { return _framebuffer.format; }
+ virtual Common::List<Graphics::PixelFormat> getSupportedFormats() const;
+#endif
+
virtual PaletteManager *getPaletteManager() { return this; }
protected:
// PaletteManager API
@@ -192,13 +189,14 @@ public:
virtual void logMessage(LogMessageType::Type type, const char *message);
protected:
+ void initVideoContext();
+ void updateOutputSurface();
+
void internUpdateScreen();
void dirtyFullScreen();
void dirtyFullOverlayScreen();
void suspendLoop();
void drawDirtyRect(const Common::Rect &dirtyRect);
- void drawDirtyOverlayRect(const Common::Rect &dirtyRect);
- void updateHardwareSurfaceForRect(const Common::Rect &updatedRect);
void updateMouseTexture();
static void AQBufferCallback(void *in, AudioQueueRef inQ, AudioQueueBufferRef outQB);
static int timerHandler(int t);