This commit is contained in:
goyuken 2014-08-24 01:52:37 +00:00
parent dad905b738
commit 65a3435530
1 changed files with 29 additions and 0 deletions

View File

@ -8,6 +8,9 @@ using BizHawk.Emulation.DiscSystem;
namespace BizHawk.Emulation.Cores
{
/// <summary>
/// finds and instantiates IEmulator cores
/// </summary>
public class CoreInventory
{
public class Core
@ -55,6 +58,16 @@ namespace BizHawk.Emulation.Cores
parameters[i] = value;
}
/// <summary>
/// instatiate an emulator core
/// </summary>
/// <param name="comm"></param>
/// <param name="game"></param>
/// <param name="rom"></param>
/// <param name="deterministic"></param>
/// <param name="settings"></param>
/// <param name="syncsettings"></param>
/// <returns></returns>
public IEmulator Create
(
CoreComm comm,
@ -92,6 +105,11 @@ namespace BizHawk.Emulation.Cores
ss.Add(core);
}
/// <summary>
/// find a core matching a particular game.system
/// </summary>
/// <param name="system"></param>
/// <returns></returns>
public Core this[string system]
{
get
@ -102,6 +120,13 @@ namespace BizHawk.Emulation.Cores
return ss[0];
}
}
/// <summary>
/// find a core matching a particular game.system with a particular coreattributes.name
/// </summary>
/// <param name="system"></param>
/// <param name="core"></param>
/// <returns></returns>
public Core this[string system, string core]
{
get
@ -116,6 +141,10 @@ namespace BizHawk.Emulation.Cores
}
}
/// <summary>
/// create a core inventory, collecting all IEmulators from some assembilies
/// </summary>
/// <param name="assys"></param>
public CoreInventory(IEnumerable<Assembly> assys)
{
foreach (var assy in assys)