aboutsummaryrefslogtreecommitdiff
path: root/engines/glk/detection.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/glk/detection.h')
-rw-r--r--engines/glk/detection.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/engines/glk/detection.h b/engines/glk/detection.h
index e54f744aa3..0b21985349 100644
--- a/engines/glk/detection.h
+++ b/engines/glk/detection.h
@@ -24,9 +24,13 @@
#define GLK_DETECTION_H
#include "engines/advancedDetector.h"
+#include "engines/game.h"
#define MAX_SAVES 99
+/**
+ * ScummVM Meta Engine interface
+ */
class GlkMetaEngine : public MetaEngine {
private:
Common::String findFileByGameId(const Common::String &gameId) const;
@@ -71,4 +75,33 @@ public:
void detectClashes() const;
};
+namespace Glk {
+
+/**
+ * Holds the name of a recognised game
+ */
+struct GameDescriptor {
+ const char *_gameId;
+ const char *_description;
+ uint _options;
+
+ GameDescriptor(const char *gameId, const char *description, uint options) :
+ _gameId(gameId), _description(description), _options(options) {}
+ GameDescriptor(const PlainGameDescriptor &gd) : _gameId(gd.gameId), _description(gd.description),
+ _options(0) {}
+
+ static PlainGameDescriptor empty() {
+ return GameDescriptor(nullptr, nullptr, 0);
+ }
+
+ operator PlainGameDescriptor() const {
+ PlainGameDescriptor pd;
+ pd.gameId = _gameId;
+ pd.description = _description;
+ return pd;
+ }
+};
+
+} // End of namespace Glk
+
#endif