ResidualVM logo ResidualVM website - Forums - Contact us BuildBot - Doxygen - Wiki curved edge

EngineManager Class Reference

Singleton class which manages all Engine plugins. More...

#include <metaengine.h>

Inheritance diagram for EngineManager:
Collaboration diagram for EngineManager:

List of all members.

Public Member Functions

DetectionResults detectGames (const Common::FSList &fslist) const
 Given a list of FSNodes in a given directory, detect a set of games contained within.
const PluginfindPlugin (const Common::String &engineId) const
 Find a plugin by its engine ID.
const PluginListgetPlugins () const
 Get the list of all engine plugins.
QualifiedGameDescriptor findTarget (const Common::String &target, const Plugin **plugin=NULL) const
 Find a target.
QualifiedGameList findGamesMatching (const Common::String &engineId, const Common::String &gameId) const
 List games matching the specified criteria.
Common::String createTargetForGame (const DetectedGame &game)
 Create a target from the supplied game descriptor.
void upgradeTargetIfNecessary (const Common::String &target) const
 Upgrade a target to the current configuration format.

Private Member Functions

QualifiedGameList findGameInLoadedPlugins (const Common::String &gameId) const
 Find a game across all loaded plugins.
const PluginfindLoadedPlugin (const Common::String &engineId) const
 Find a loaded plugin with the given engine ID.
void upgradeTargetForEngineId (const Common::String &target) const
 Use heuristics to complete a target lacking an engine ID.

Detailed Description

Singleton class which manages all Engine plugins.

Definition at line 400 of file metaengine.h.


Member Function Documentation

Common::String EngineManager::createTargetForGame ( const DetectedGame game  ) 

Create a target from the supplied game descriptor.

Returns the created target name.

Definition at line 577 of file plugins.cpp.

DetectionResults EngineManager::detectGames ( const Common::FSList fslist  )  const

Given a list of FSNodes in a given directory, detect a set of games contained within.

Returns an empty list if none are found.

Definition at line 539 of file plugins.cpp.

QualifiedGameList EngineManager::findGameInLoadedPlugins ( const Common::String gameId  )  const [private]

Find a game across all loaded plugins.

Find the game within the plugins loaded in memory.

Definition at line 520 of file plugins.cpp.

QualifiedGameList EngineManager::findGamesMatching ( const Common::String engineId,
const Common::String gameId 
) const

List games matching the specified criteria.

This function works for both cached and uncached PluginManagers.

If the engine id is not specified, this scans all the plugins, loading them from disk if necessary. This is a slow operation on some platforms and should not be used for the happy path.

For the cached version, most of the logic here will short circuit.

For the uncached version, we first try to find the plugin using the engineId and only if we can't find it there, we loop through the plugins.

Definition at line 492 of file plugins.cpp.

const Plugin * EngineManager::findLoadedPlugin ( const Common::String engineId  )  const [private]

Find a loaded plugin with the given engine ID.

Definition at line 625 of file plugins.cpp.

const Plugin * EngineManager::findPlugin ( const Common::String engineId  )  const

Find a plugin by its engine ID.

Definition at line 635 of file plugins.cpp.

QualifiedGameDescriptor EngineManager::findTarget ( const Common::String target,
const Plugin **  plugin = NULL 
) const

Find a target.

Definition at line 664 of file plugins.cpp.

const PluginList & EngineManager::getPlugins (  )  const

Get the list of all engine plugins.

Definition at line 564 of file plugins.cpp.

void EngineManager::upgradeTargetForEngineId ( const Common::String target  )  const [private]

Use heuristics to complete a target lacking an engine ID.

Definition at line 702 of file plugins.cpp.

void EngineManager::upgradeTargetIfNecessary ( const Common::String target  )  const

Upgrade a target to the current configuration format.

Definition at line 693 of file plugins.cpp.


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


Generated on Sat Sep 19 2020 05:04:01 for ResidualVM by doxygen 1.7.1
curved edge   curved edge