aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.Cpu/ICpuEngine.cs
blob: b53b23a8c6f9dbdc24b3e76f31edeb5d25750f96 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
using ARMeilleure.Memory;

namespace Ryujinx.Cpu
{
    /// <summary>
    /// CPU execution engine interface.
    /// </summary>
    public interface ICpuEngine
    {
        /// <summary>
        /// Creates a new CPU context that can be used to run code for multiple threads sharing an address space.
        /// </summary>
        /// <param name="memoryManager">Memory manager for the address space of the context</param>
        /// <param name="for64Bit">Indicates if the context will be used to run 64-bit or 32-bit Arm code</param>
        /// <returns>CPU context</returns>
        ICpuContext CreateCpuContext(IMemoryManager memoryManager, bool for64Bit);
    }
}