[PCTL] Add CreateServiceWithoutInitialize and Initialize

This commit is contained in:
Starlet 2018-06-12 14:28:45 -04:00
parent 98e6a34608
commit 8442a5917f
2 changed files with 28 additions and 3 deletions

View file

@ -1,3 +1,4 @@
using Ryujinx.HLE.Logging;
using Ryujinx.HLE.OsHle.Ipc;
using System.Collections.Generic;
@ -9,12 +10,24 @@ namespace Ryujinx.HLE.OsHle.Services.Pctl
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
public bool Initialized = false;
public IParentalControlService()
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
//...
{ 1, Initialize }
};
}
public long Initialize(ServiceCtx Context)
{
if (!Initialized)
Initialized = true;
else
Context.Ns.Log.PrintWarning(LogClass.ServicePctl, "Service is already initialized!");
return 0;
}
}
}

View file

@ -13,15 +13,27 @@ namespace Ryujinx.HLE.OsHle.Services.Pctl
{
m_Commands = new Dictionary<int, ServiceProcessRequest>()
{
{ 0, CreateService }
{ 0, CreateService },
{ 1, CreateServiceWithoutInitialize }
};
}
public static long CreateService(ServiceCtx Context)
public long CreateService(ServiceCtx Context)
{
MakeObject(Context, new IParentalControlService());
return 0;
}
public long CreateServiceWithoutInitialize(ServiceCtx Context)
{
IParentalControlService Service = new IParentalControlService();
Service.Initialized = true;
MakeObject(Context, Service);
return 0;
}
}
}