ScummVM API documentation
Macs2MetaEngine Class Reference
Inheritance diagram for Macs2MetaEngine:
AdvancedMetaEngine< ADGameDescription > AdvancedMetaEngineBase MetaEngine PluginObject

Public Member Functions

const char * getName () const override
 
Common::Error createInstance (OSystem *syst, Engine **engine, const ADGameDescription *desc) const override
 
bool hasFeature (MetaEngineFeature f) const override
 
GUI::OptionsContainerWidget * buildEngineOptionsWidget (GUI::GuiObject *boss, const Common::String &name, const Common::String &target) const override
 
void registerDefaultSettings (const Common::String &target) const override
 
Common::KeymapArray initKeymaps (const char *target) const override
 
SaveStateList listSaves (const char *target) const override
 
- Public Member Functions inherited from AdvancedMetaEngineBase
Common::Error createInstance (OSystem *syst, Engine **engine, const DetectedGame &gameDescriptor, const void *metaEngineDescriptor) override
 
virtual Common::Error createInstance (OSystem *syst, Engine **engine, const void *desc) const =0
 
const char * getName () const override=0
 
Common::String getGameId (const char *target) const
 
virtual ADDetectedGame fallbackDetectExtern (uint md5Bytes, const FileMap &allFiles, const Common::FSList &fslist, ADDetectedGameExtraInfo **extra=nullptr) const
 
bool getFilePropertiesExtern (uint md5Bytes, const FileMap &allFiles, MD5Properties md5prop, const Common::Path &fname, FileProperties &fileProps) const
 
- Public Member Functions inherited from MetaEngine
virtual const char * getName () const override=0
 
virtual Common::Error createInstance (OSystem *syst, Engine **engine, const DetectedGame &gameDescriptor, const void *meDescriptor)=0
 
virtual void deleteInstance (Engine *engine, const DetectedGame &gameDescriptor, const void *meDescriptor)
 
virtual SaveStateList listSaves (const char *target) const
 
SaveStateList listSaves (const char *target, bool saveMode) const
 
virtual int getAutosaveSlot () const
 
virtual int getMaximumSaveSlot () const
 
virtual bool removeSaveState (const char *target, int slot) const
 
virtual SaveStateDescriptor querySaveMetaInfos (const char *target, int slot) const
 
virtual Common::String getSavegameFile (int saveGameIdx, const char *target=nullptr) const
 
Common::String getSavegameFilePattern (const char *target=nullptr) const
 
virtual Common::Array< Common::Keymap * > initKeymaps (const char *target) const
 
virtual void registerDefaultSettings (const Common::String &target) const
 
virtual GUI::OptionsContainerWidget * buildEngineOptionsWidget (GUI::GuiObject *boss, const Common::String &name, const Common::String &target) const
 
virtual Common::AchievementsPlatform getAchievementsPlatform (const Common::String &target) const
 
virtual const Common::AchievementsInfo getAchievementsInfo (const Common::String &target) const
 
virtual const Common::AchievementDescriptionList * getAchievementDescriptionList () const
 
virtual bool hasFeature (MetaEngineFeature f) const
 
void appendExtendedSave (Common::OutSaveFile *saveFile, uint32 playtime, Common::String desc, bool isAutosave)
 
void appendExtendedSaveToStream (Common::WriteStream *saveFile, uint32 playtime, Common::String desc, bool isAutosave, uint32 offset=0)
 
bool copySaveFileToFreeSlot (const char *target, int slot)
 
virtual const char * getName () const =0
 

Additional Inherited Members

- Public Types inherited from AdvancedMetaEngineBase
typedef Common::HashMap< Common::Path, Common::FSNode, Common::Path::IgnoreCase_Hash, Common::Path::IgnoreCase_EqualTo > FileMap
 
- Public Types inherited from MetaEngine
enum  MetaEngineFeature {
  kSupportsListSaves , kSupportsLoadingDuringStartup , kSupportsDeleteSave , kSavesSupportMetaInfo ,
  kSavesSupportThumbnail , kSavesSupportCreationDate , kSavesSupportPlayTime , kSimpleSavesNames ,
  kSavesUseExtendedFormat
}
 
- Static Public Member Functions inherited from MetaEngine
static void parseSavegameHeader (ExtendedSavegameHeader *header, SaveStateDescriptor *desc)
 
static void fillDummyHeader (ExtendedSavegameHeader *header)
 
static void decodeSavegameDate (const ExtendedSavegameHeader *header, uint16 &outYear, uint8 &outMonth, uint8 &outDay)
 
static void decodeSavegameTime (const ExtendedSavegameHeader *header, uint8 &outHour, uint8 &outMinute)
 
static WARN_UNUSED_RESULT bool readSavegameHeader (Common::InSaveFile *in, ExtendedSavegameHeader *header, bool skipThumbnail=true)
 
- Protected Member Functions inherited from AdvancedMetaEngine< ADGameDescription >
virtual Common::Error createInstance (OSystem *syst, Engine **engine, const ADGameDescription *desc) const=0
 
Common::Error createInstance (OSystem *syst, Engine **engine, const void *desc) const override final
 
void deleteInstance (Engine *engine, const DetectedGame &gameDescriptor, const void *meDescriptor) override
 
- Protected Member Functions inherited from AdvancedMetaEngineBase
const ExtraGuiOptions getExtraGuiOptions (const Common::String &target) const override final
 
virtual const ADExtraGuiOptionsMap * getAdvancedExtraGuiOptions () const
 
bool checkExtendedSaves (MetaEngineFeature f) const
 
- Protected Member Functions inherited from MetaEngine
virtual void getSavegameThumbnail (Graphics::Surface &thumb)
 
int findEmptySaveSlot (const char *target)
 
virtual const ExtraGuiOptions getExtraGuiOptions (const Common::String &target) const
 

Member Function Documentation

◆ getName()

const char * Macs2MetaEngine::getName ( ) const
overridevirtual

Return the name of the engine plugin based on the engineID.

The engineID must match the one from MetaEngine.

See also
MetaEngine::getName().

Implements AdvancedMetaEngineBase.

◆ createInstance()

Common::Error Macs2MetaEngine::createInstance ( OSystem *  syst,
Engine **  engine,
const ADGameDescription *  desc 
) const
overridevirtual

◆ hasFeature()

bool Macs2MetaEngine::hasFeature ( MetaEngineFeature  f) const
overridevirtual

Determine whether the engine supports the specified MetaEngine feature.

Used by e.g. the launcher to determine whether to enable the Load button.

Reimplemented from MetaEngine.

◆ buildEngineOptionsWidget()

GUI::OptionsContainerWidget * Macs2MetaEngine::buildEngineOptionsWidget ( GUI::GuiObject *  boss,
const Common::String &  name,
const Common::String &  target 
) const
overridevirtual

Return a GUI widget container for configuring the specified target options.

Engines can build custom option dialogs from here.

Engines that don't have an Engine tab in the Edit Game dialog, or that use ExtraGuiOptions in MetaEngineDetection can return nullptr.

Parameters
bossThe widget or dialog that the returned widget is a child of.
nameThe name that the returned widget must use.
targetName of a config manager target.

Reimplemented from MetaEngine.

◆ registerDefaultSettings()

void Macs2MetaEngine::registerDefaultSettings ( const Common::String &  target) const
overridevirtual

Register the default values for the settings that the engine uses into the configuration manager.

Parameters
targetName of a config manager target.

Reimplemented from MetaEngine.

◆ initKeymaps()

Common::KeymapArray Macs2MetaEngine::initKeymaps ( const char *  target) const
overridevirtual

Return the keymap used by the target.

Reimplemented from MetaEngine.

◆ listSaves()

SaveStateList Macs2MetaEngine::listSaves ( const char *  target) const
overridevirtual

Return a list of all save states associated with the given target.

The returned list is guaranteed to be sorted by slot numbers. That means smaller slot numbers are always stored before bigger slot numbers.

The caller must ensure that this (Meta)Engine is responsible for the specified target. This is done by using findGame on it respectively on the associated gameid from the relevant ConfMan entry, if present.

The default implementation returns an empty list.

Note
MetaEngines must indicate that this function has been implemented via the kSupportsListSaves feature flag.
Parameters
targetName of a config manager target.
Returns
A list of save state descriptors.

Reimplemented from MetaEngine.


The documentation for this class was generated from the following file: