aboutsummaryrefslogtreecommitdiff
path: root/common/system.h
diff options
context:
space:
mode:
Diffstat (limited to 'common/system.h')
-rw-r--r--common/system.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/common/system.h b/common/system.h
index 9b833c5b1a..413fe326a7 100644
--- a/common/system.h
+++ b/common/system.h
@@ -45,6 +45,9 @@ class String;
#if defined(USE_TASKBAR)
class TaskbarManager;
#endif
+#if defined(USE_UPDATES)
+class UpdateManager;
+#endif
class TimerManager;
class SeekableReadStream;
class WriteStream;
@@ -161,6 +164,15 @@ protected:
Common::TaskbarManager *_taskbarManager;
#endif
+#if defined(USE_UPDATES)
+ /**
+ * No default value is provided for _updateManager by OSystem.
+ *
+ * @note _updateManager is deleted by the OSystem destructor.
+ */
+ Common::UpdateManager *_updateManager;
+#endif
+
/**
* No default value is provided for _fsFactory by OSystem.
*
@@ -391,6 +403,11 @@ public:
* factor 2x, too, just like the game graphics. But if it has a
* cursorTargetScale of 2, then it shouldn't be scaled again by
* the game graphics scaler.
+ *
+ * On a note for OSystem users here. We do not require our graphics
+ * to be thread safe and in fact most/all backends using OpenGL are
+ * not. So do *not* try to call any of these functions from a timer
+ * and/or audio callback (like readBuffer of AudioStreams).
*/
//@{
@@ -1071,6 +1088,18 @@ public:
}
#endif
+#if defined(USE_UPDATES)
+ /**
+ * Returns the UpdateManager, used to handle auto-updating,
+ * and updating of ScummVM in general.
+ *
+ * @return the UpdateManager for the current architecture
+ */
+ virtual Common::UpdateManager *getUpdateManager() {
+ return _updateManager;
+ }
+#endif
+
/**
* Returns the FilesystemFactory object, depending on the current architecture.
*