Merge pull request #157 from Cyuubi/pctl-initialize-and-without-initialize
[PCTL] Add CreateServiceWithoutInitialize and Initialize
This commit is contained in:
commit
f1e866e248
2 changed files with 33 additions and 4 deletions
|
@ -1,3 +1,4 @@
|
|||
using Ryujinx.HLE.Logging;
|
||||
using Ryujinx.HLE.OsHle.Ipc;
|
||||
using System.Collections.Generic;
|
||||
|
||||
|
@ -9,12 +10,32 @@ namespace Ryujinx.HLE.OsHle.Services.Pctl
|
|||
|
||||
public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
|
||||
|
||||
public IParentalControlService()
|
||||
private bool Initialized = false;
|
||||
|
||||
private bool NeedInitialize;
|
||||
|
||||
public IParentalControlService(bool NeedInitialize = true)
|
||||
{
|
||||
m_Commands = new Dictionary<int, ServiceProcessRequest>()
|
||||
{
|
||||
//...
|
||||
{ 1, Initialize }
|
||||
};
|
||||
|
||||
this.NeedInitialize = NeedInitialize;
|
||||
}
|
||||
|
||||
public long Initialize(ServiceCtx Context)
|
||||
{
|
||||
if (NeedInitialize && !Initialized)
|
||||
{
|
||||
Initialized = true;
|
||||
}
|
||||
else
|
||||
{
|
||||
Context.Ns.Log.PrintWarning(LogClass.ServicePctl, "Service is already initialized!");
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -13,15 +13,23 @@ 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)
|
||||
{
|
||||
MakeObject(Context, new IParentalControlService(false));
|
||||
|
||||
return 0;
|
||||
}
|
||||
}
|
||||
}
|
Reference in a new issue