E:\Devel\PlayniteDiagTool\PlayniteDiagTool\bin\Debug\temp\PlayniteSDK\Database\IGameDatabase.cs e:\Devel\Playnite\source\PlayniteSDK\Database\IGameDatabase.cs
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);
   }    }
} }