diff options
Diffstat (limited to 'engines/sci/graphics/frameout.h')
-rw-r--r-- | engines/sci/graphics/frameout.h | 20 |
1 files changed, 17 insertions, 3 deletions
diff --git a/engines/sci/graphics/frameout.h b/engines/sci/graphics/frameout.h index e736872773..cc62c61d22 100644 --- a/engines/sci/graphics/frameout.h +++ b/engines/sci/graphics/frameout.h @@ -185,7 +185,7 @@ private: /** * Whether or not calls to kFrameOut should be framerate - * limited to ~60fps. + * limited to 60fps. */ bool _throttleFrameOut; @@ -304,6 +304,12 @@ public: #pragma mark Rendering private: /** + * State tracker to provide more accurate 60fps + * video throttling. + */ + uint8 _throttleState; + + /** * TODO: Documentation */ int8 _styleRanges[256]; @@ -318,7 +324,9 @@ private: Buffer _currentBuffer; /** - * TODO: Documentation + * When true, a change to the remap zone in the palette + * has occurred and screen items with remap data need to + * be redrawn. */ bool _remapOccurred; @@ -423,13 +431,19 @@ public: */ bool _palMorphIsOn; - inline Buffer &getCurrentBuffer() { + inline const Buffer &getCurrentBuffer() const { return _currentBuffer; } void kernelFrameOut(const bool showBits); /** + * Throttles the engine as necessary to maintain + * 60fps output. + */ + void throttle(); + + /** * Updates the internal screen buffer for the next * frame. If `shouldShowBits` is true, also sends the * buffer to hardware. If `eraseRect` is non-empty, |