23 lines
685 B
C#
23 lines
685 B
C#
// Copyright (C) 2026 SharpEmu Emulator Project
|
|
// SPDX-License-Identifier: GPL-2.0-or-later
|
|
|
|
namespace SharpEmu.HLE;
|
|
|
|
public interface IModuleManager
|
|
{
|
|
/// <summary>Registers pre-built exports (the compile-time generated registry).</summary>
|
|
int RegisterExports(IReadOnlyList<ExportedFunction> exports);
|
|
|
|
void Freeze();
|
|
|
|
bool TryGetFunction(string nid, out Delegate function);
|
|
|
|
bool TryGetExport(string nid, out ExportedFunction export);
|
|
|
|
bool TryGetExportByName(string exportName, out ExportedFunction export);
|
|
|
|
bool TryDispatch(string nid, CpuContext context, out OrbisGen2Result result);
|
|
|
|
OrbisGen2Result Dispatch(string nid, CpuContext context);
|
|
}
|