| using Playnite.SDK.Models; |
| using Playnite.SDK.Models; |
| using Playnite.SDK.Plugins; |
| using Playnite.SDK.Plugins; |
| using System; |
| using System; |
| using System.Collections.Generic; |
| using System.Collections.Generic; |
| using System.Linq; |
| using System.Linq; |
| using System.Text; |
| using System.Text; |
| using System.Threading.Tasks; |
| using System.Threading.Tasks; |
| |
| |
| namespace Playnite.SDK |
| namespace Playnite.SDK |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Represents type of game database collection. |
| /// Represents type of game database collection. |
| /// </summary> |
| /// </summary> |
| public enum GameDatabaseCollection |
| public enum GameDatabaseCollection |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Uknown, |
| Uknown, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Games, |
| Games, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Platforms, |
| Platforms, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Emulators, |
| Emulators, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Genres, |
| Genres, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Companies, |
| Companies, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Tags, |
| Tags, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Categories, |
| Categories, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Series, |
| Series, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| AgeRatings, |
| AgeRatings, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Regions, |
| Regions, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Sources, |
| Sources, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
| Features, |
| Features, |
| /// <summary> |
| /// <summary> |
| /// |
| /// |
| /// </summary> |
| /// </summary> |
. | AppSoftware |
| AppSoftware, |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| GameScanners, |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| FilterPresets, |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| ImportExclusions, |
| |
| /// <summary> |
| |
| /// |
| |
| /// </summary> |
| |
| CompletionStatuses |
| } |
| } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Describes game databse API. |
| /// Describes game databse API. |
| /// </summary> |
| /// </summary> |
| public interface IGameDatabase |
| public interface IGameDatabase |
| { |
| { |
| /// <summary> |
| /// <summary> |
| /// Gets collection of games. |
| /// Gets collection of games. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Game> Games { get; } |
| IItemCollection<Game> Games { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collections of platforms. |
| /// Gets collections of platforms. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Platform> Platforms { get; } |
| IItemCollection<Platform> Platforms { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of emulators. |
| /// Gets collection of emulators. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Emulator> Emulators { get; } |
| IItemCollection<Emulator> Emulators { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of genres. |
| /// Gets collection of genres. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Genre> Genres { get; } |
| IItemCollection<Genre> Genres { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of companies. |
| /// Gets collection of companies. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Company> Companies { get; } |
| IItemCollection<Company> Companies { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of tags. |
| /// Gets collection of tags. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Tag> Tags { get; } |
| IItemCollection<Tag> Tags { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of categories. |
| /// Gets collection of categories. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Category> Categories { get; } |
| IItemCollection<Category> Categories { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of series. |
| /// Gets collection of series. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Series> Series { get; } |
| IItemCollection<Series> Series { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of age ratings. |
| /// Gets collection of age ratings. |
| /// </summary> |
| /// </summary> |
| IItemCollection<AgeRating> AgeRatings { get; } |
| IItemCollection<AgeRating> AgeRatings { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of regions. |
| /// Gets collection of regions. |
| /// </summary> |
| /// </summary> |
| IItemCollection<Region> Regions { get; } |
| IItemCollection<Region> Regions { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of sources. |
| /// Gets collection of sources. |
| /// </summary> |
| /// </summary> |
| IItemCollection<GameSource> Sources { get; } |
| IItemCollection<GameSource> Sources { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Gets collection of game features. |
| /// Gets collection of game features. |
| /// </summary> |
| /// </summary> |
| IItemCollection<GameFeature> Features { get; } |
| IItemCollection<GameFeature> Features { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
. | |
| /// Gets collection of game features. |
| |
| /// </summary> |
| |
| IItemCollection<GameScannerConfig> GameScanners { get; } |
| |
| |
| |
| /// <summary> |
| |
| /// Gets collection of game statuses. |
| |
| /// </summary> |
| |
| IItemCollection<CompletionStatus> CompletionStatuses { get; } |
| |
| |
| |
| /// <summary> |
| |
| /// Gets collection of import exclusions. |
| |
| /// </summary> |
| |
| IItemCollection<ImportExclusionItem> ImportExclusions { get; } |
| |
| |
| |
| /// <summary> |
| /// Gets value indicating whether database is opened. |
| /// Gets value indicating whether database is opened. |
| /// </summary> |
| /// </summary> |
| bool IsOpen { get; } |
| bool IsOpen { get; } |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Invoked when database is being opened. |
| /// Invoked when database is being opened. |
| /// </summary> |
| /// </summary> |
| event EventHandler DatabaseOpened; |
| event EventHandler DatabaseOpened; |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Import new game into database. |
| /// Import new game into database. |
| /// </summary> |
| /// </summary> |
| /// <param name="game">Game data to import.</param> |
| /// <param name="game">Game data to import.</param> |
| /// <returns>Imported game.</returns> |
| /// <returns>Imported game.</returns> |
. | Game ImportGame(GameInfo game); |
| Game ImportGame(GameMetadata game); |
| |
| |
| /// <summary> |
| /// <summary> |
| /// Import new game into database from a library plugin. |
| /// Import new game into database from a library plugin. |
| /// </summary> |
| /// </summary> |
| /// <param name="game">Game data to import.</param> |
| /// <param name="game">Game data to import.</param> |
| /// <param name="sourcePlugin">Source library plugin.</param> |
| /// <param name="sourcePlugin">Source library plugin.</param> |
| /// <returns>Imported game.</returns> |
| /// <returns>Imported game.</returns> |
. | Game ImportGame(GameInfo game, LibraryPlugin sourcePlugin); |
| Game ImportGame(GameMetadata game, LibraryPlugin sourcePlugin); |
| } |
| } |
| } |
| } |
| |
| |