22 #ifndef ENGINES_METAENGINE_H 23 #define ENGINES_METAENGINE_H 25 #include "common/scummsys.h" 26 #include "common/error.h" 27 #include "common/array.h" 28 #include "common/debug-channels.h" 30 #include "engines/achievements.h" 31 #include "engines/game.h" 32 #include "engines/savestate.h" 34 #include "base/plugins.h" 54 class OptionsContainerWidget;
87 enum { kSavegameFilePattern = -99 };
89 #define EXTENDED_SAVE_VERSION 4 132 static const char GAME_NOT_IMPLEMENTED[];
137 virtual const char *getName()
const override = 0;
140 virtual const char *getEngineName()
const = 0;
143 virtual const char *getOriginalCopyright()
const = 0;
162 virtual uint getMD5Bytes()
const = 0;
170 virtual void dumpDetectionEntries()
const = 0;
211 int findEmptySaveSlot(
const char *target);
244 virtual const char *getName()
const override = 0;
276 virtual void deleteInstance(
Engine *engine,
const DetectedGame &gameDescriptor,
const void *meDescriptor);
309 SaveStateList listSaves(
const char *target,
bool saveMode)
const;
333 return hasFeature(kSavesUseExtendedFormat) ? 99 : 0;
348 virtual bool removeSaveState(
const char *target,
int slot)
const;
369 virtual Common::String getSavegameFile(
int saveGameIdx,
const char *target =
nullptr)
const;
377 return getSavegameFile(kSavegameFilePattern, target);
391 virtual void registerDefaultSettings(
const Common::String &target)
const;
506 kSavesUseExtendedFormat
562 bool copySaveFileToFreeSlot(
const char *target,
int slot);
578 static void decodeSavegameDate(
const ExtendedSavegameHeader *header, uint16 &outYear, uint8 &outMonth, uint8 &outDay);
610 const PluginList &getPlugins(
const PluginType fetchPluginType)
const;
642 void upgradeTargetForEngineId(
const Common::String &target)
const;
646 #define EngineMan EngineManager::instance()
Definition: savefile.h:54
Definition: metaengine.h:594
Definition: achievements.h:87
Definition: plugins.h:145
void upgradeTargetIfNecessary(const ObsoleteGameID *obsoleteList)
Definition: savestate.h:56
Definition: debug-channels.h:36
Definition: algorithm.h:29
Definition: formatinfo.h:28
bool skipThumbnail(Common::SeekableReadStream &in)
AchievementsPlatform
Definition: achievements.h:46
Definition: plugins.h:131
SeekableReadStream InSaveFile
Definition: savefile.h:47
Definition: achievements.h:74
Definition: singleton.h:42