The Advanced Detector (AD) provides a standard framework for filename and MD5-based game detection.
Classes | |
struct | ADGameFileDescription |
struct | ADGameDescription |
struct | ADDetectedGame |
struct | ADFileBasedFallback |
struct | ADExtraGuiOptionsMap |
class | AdvancedMetaEngineDetection |
class | AdvancedMetaEngine |
Macros | |
#define | AD_LISTEND {NULL, 0, NULL, 0} |
#define | AD_ENTRY1(f, x) {{ f, 0, x, -1}, AD_LISTEND} |
#define | AD_ENTRY1s(f, x, s) {{ f, 0, x, s}, AD_LISTEND} |
#define | AD_TABLE_END_MARKER { NULL, NULL, { { NULL, 0, NULL, 0 } }, Common::UNK_LANG, Common::kPlatformUnknown, ADGF_NO_FLAGS, GUIO0() } |
#define | AD_EXTRA_GUI_OPTIONS_TERMINATOR { 0, { 0, 0, 0, 0 } } |
Typedefs | |
typedef Common::Array< ADDetectedGame > | ADDetectedGames |
Enumerations | |
enum | ADGameFlags { ADGF_NO_FLAGS = 0, ADGF_REMASTERED = (1 << 18), ADGF_AUTOGENTARGET = (1 << 19), ADGF_UNSTABLE = (1 << 20), ADGF_TESTING = (1 << 21), ADGF_PIRATED = (1 << 22), ADGF_UNSUPPORTED = (1 << 23), ADGF_ADDENGLISH = (1 << 24), ADGF_MACRESFORK = (1 << 25), ADGF_USEEXTRAASTITLE = (1 << 26), ADGF_DROPLANGUAGE = (1 << 27), ADGF_DROPPLATFORM = (1 << 28), ADGF_CD = (1 << 29), ADGF_DEMO = (1 << 30) } |
enum | ADFlags { kADFlagUseExtraAsHint = (1 << 0) } |
#define AD_LISTEND {NULL, 0, NULL, 0} |
A shortcut to produce an empty ADGameFileDescription record. Used to mark the end of a list of these.
#define AD_ENTRY1 | ( | f, | |
x | |||
) | {{ f, 0, x, -1}, AD_LISTEND} |
A shortcut to produce a list of ADGameFileDescription records with only one record that contains just a filename with an MD5, and no file size.
#define AD_ENTRY1s | ( | f, | |
x, | |||
s | |||
) | {{ f, 0, x, s}, AD_LISTEND} |
A shortcut to produce a list of ADGameFileDescription records with only one record that contains just a filename with an MD5, plus a file size.
#define AD_TABLE_END_MARKER { NULL, NULL, { { NULL, 0, NULL, 0 } }, Common::UNK_LANG, Common::kPlatformUnknown, ADGF_NO_FLAGS, GUIO0() } |
End marker for a table of ADGameDescription structures. Use this to terminate a list to be passed to the Advanced Detector API.
typedef Common::Array<ADDetectedGame> ADDetectedGames |
A list of games detected by the AD.
enum ADGameFlags |
Flags used in the game description.
Enumerator | |
---|---|
ADGF_NO_FLAGS | No flags. |
ADGF_REMASTERED | Add "-remastered' to gameid. |
ADGF_AUTOGENTARGET | Automatically generate gameid from ADGameDescription::extra. |
ADGF_UNSTABLE | Flag to designate not yet officially supported games that are not fit for public testing. |
ADGF_TESTING | Flag to designate not yet officially supported games that are fit for public testing. |
ADGF_PIRATED | Flag to designate well-known pirated versions with cracks. |
ADGF_UNSUPPORTED | Flag to mark certain versions (like fan translations) not to be run for various reasons. A custom message can be provided in the ADGameDescription::extra field. |
ADGF_ADDENGLISH | Always add English as a language option. |
ADGF_MACRESFORK | Calculate the MD5 for this entry from the resource fork. |
ADGF_USEEXTRAASTITLE | Use ADGameDescription::extra as the main game title, not gameid. |
ADGF_DROPLANGUAGE | Do not add language to gameid. |
ADGF_DROPPLATFORM | Do not add platform to gameid. |
ADGF_CD | Add "-cd" to gameid. |
ADGF_DEMO | Add "-demo" to gameid. |
enum ADFlags |
Enumerator | |
---|---|
kADFlagUseExtraAsHint | Store the value of the ADGameDescription::extra field in the config file, and use it as a hint on subsequent runs. This can be used when there is no way to autodetect the game (when more than one game are located in same directory), and the user picks up a variant manually. In addition, this is useful if two variants of a game sharing the same gameid are contained in a single directory. |