IPC: Remove IIpcService interface (#2121)
This PR remove the IIpcService.cs interface usage which isn't needed anymore since the interface is only used by IpcService class. We can use it directly.
This commit is contained in:
parent
a8c945f35f
commit
39899c0407
3 changed files with 11 additions and 21 deletions
|
@ -14,15 +14,15 @@ namespace Ryujinx.HLE.Exceptions
|
||||||
[Serializable]
|
[Serializable]
|
||||||
internal class ServiceNotImplementedException : Exception
|
internal class ServiceNotImplementedException : Exception
|
||||||
{
|
{
|
||||||
public IIpcService Service { get; }
|
public IpcService Service { get; }
|
||||||
public ServiceCtx Context { get; }
|
public ServiceCtx Context { get; }
|
||||||
public IpcMessage Request { get; }
|
public IpcMessage Request { get; }
|
||||||
|
|
||||||
public ServiceNotImplementedException(IIpcService service, ServiceCtx context)
|
public ServiceNotImplementedException(IpcService service, ServiceCtx context)
|
||||||
: this(service, context, "The service call is not implemented.")
|
: this(service, context, "The service call is not implemented.")
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
public ServiceNotImplementedException(IIpcService service, ServiceCtx context, string message)
|
public ServiceNotImplementedException(IpcService service, ServiceCtx context, string message)
|
||||||
: base(message)
|
: base(message)
|
||||||
{
|
{
|
||||||
Service = service;
|
Service = service;
|
||||||
|
@ -30,7 +30,7 @@ namespace Ryujinx.HLE.Exceptions
|
||||||
Request = context.Request;
|
Request = context.Request;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ServiceNotImplementedException(IIpcService service, ServiceCtx context, string message, Exception inner)
|
public ServiceNotImplementedException(IpcService service, ServiceCtx context, string message, Exception inner)
|
||||||
: base(message, inner)
|
: base(message, inner)
|
||||||
{
|
{
|
||||||
Service = service;
|
Service = service;
|
||||||
|
@ -158,7 +158,7 @@ namespace Ryujinx.HLE.Exceptions
|
||||||
var method = frame.GetMethod();
|
var method = frame.GetMethod();
|
||||||
var declType = method.DeclaringType;
|
var declType = method.DeclaringType;
|
||||||
|
|
||||||
if (typeof(IIpcService).IsAssignableFrom(declType))
|
if (typeof(IpcService).IsAssignableFrom(declType))
|
||||||
{
|
{
|
||||||
return (declType, method);
|
return (declType, method);
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,10 +0,0 @@
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Reflection;
|
|
||||||
|
|
||||||
namespace Ryujinx.HLE.HOS.Services
|
|
||||||
{
|
|
||||||
interface IIpcService
|
|
||||||
{
|
|
||||||
IReadOnlyDictionary<int, MethodInfo> Commands { get; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -9,7 +9,7 @@ using System.Linq;
|
||||||
|
|
||||||
namespace Ryujinx.HLE.HOS.Services
|
namespace Ryujinx.HLE.HOS.Services
|
||||||
{
|
{
|
||||||
abstract class IpcService : IIpcService
|
abstract class IpcService
|
||||||
{
|
{
|
||||||
public IReadOnlyDictionary<int, MethodInfo> Commands { get; }
|
public IReadOnlyDictionary<int, MethodInfo> Commands { get; }
|
||||||
|
|
||||||
|
@ -55,7 +55,7 @@ namespace Ryujinx.HLE.HOS.Services
|
||||||
|
|
||||||
public void CallMethod(ServiceCtx context)
|
public void CallMethod(ServiceCtx context)
|
||||||
{
|
{
|
||||||
IIpcService service = this;
|
IpcService service = this;
|
||||||
|
|
||||||
if (_isDomain)
|
if (_isDomain)
|
||||||
{
|
{
|
||||||
|
@ -173,7 +173,7 @@ namespace Ryujinx.HLE.HOS.Services
|
||||||
{
|
{
|
||||||
int objId = context.Request.ObjectIds[index];
|
int objId = context.Request.ObjectIds[index];
|
||||||
|
|
||||||
IIpcService obj = _parent.GetObject(objId);
|
IpcService obj = _parent.GetObject(objId);
|
||||||
|
|
||||||
return obj is T t ? t : null;
|
return obj is T t ? t : null;
|
||||||
}
|
}
|
||||||
|
@ -190,7 +190,7 @@ namespace Ryujinx.HLE.HOS.Services
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
private int Add(IIpcService obj)
|
private int Add(IpcService obj)
|
||||||
{
|
{
|
||||||
return _domainObjects.Add(obj);
|
return _domainObjects.Add(obj);
|
||||||
}
|
}
|
||||||
|
@ -207,9 +207,9 @@ namespace Ryujinx.HLE.HOS.Services
|
||||||
return obj != null;
|
return obj != null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private IIpcService GetObject(int id)
|
private IpcService GetObject(int id)
|
||||||
{
|
{
|
||||||
return _domainObjects.GetData<IIpcService>(id);
|
return _domainObjects.GetData<IpcService>(id);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void SetParent(IpcService parent)
|
public void SetParent(IpcService parent)
|
||||||
|
|
Reference in a new issue