aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorgreggameplayer <33609333+greggameplayer@users.noreply.github.com>2018-07-23 16:20:16 +0200
committerAc_K <Acoustik666@gmail.com>2018-07-23 16:20:16 +0200
commited29982f9b0414d42fd75acdcf2182d14174fe90 (patch)
treec9c411bc679f87c7ee11d67b36f6fb065267cf42
parented075ae3cdc99163aa910b628bcd9de03dae03dd (diff)
Link BCAT:U & BCAT:A & BCAT:M & BCAT:S (#257)
* Link BCAT:U & BCAT:A & BCAT:M & BCAT:S * delete unneeded using * delete unneeded spaces * delete unneeded using * Add comment (1/2) * Add comment (2/2) * delete unneeded using
-rw-r--r--Ryujinx.HLE/OsHle/Services/Bcat/IBcatService.cs21
-rw-r--r--Ryujinx.HLE/OsHle/Services/Bcat/IDeliveryCacheStorageService.cs21
-rw-r--r--Ryujinx.HLE/OsHle/Services/Bcat/IServiceCreator.cs39
-rw-r--r--Ryujinx.HLE/OsHle/Services/ServiceFactory.cs17
4 files changed, 96 insertions, 2 deletions
diff --git a/Ryujinx.HLE/OsHle/Services/Bcat/IBcatService.cs b/Ryujinx.HLE/OsHle/Services/Bcat/IBcatService.cs
new file mode 100644
index 00000000..b7754d6b
--- /dev/null
+++ b/Ryujinx.HLE/OsHle/Services/Bcat/IBcatService.cs
@@ -0,0 +1,21 @@
+using Ryujinx.HLE.OsHle.Ipc;
+using System.Collections.Generic;
+
+namespace Ryujinx.HLE.OsHle.Services.Bcat
+{
+ class IBcatService : IpcService
+ {
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
+
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
+
+ public IBcatService()
+ {
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
+ {
+ //...
+ };
+ }
+
+ }
+}
diff --git a/Ryujinx.HLE/OsHle/Services/Bcat/IDeliveryCacheStorageService.cs b/Ryujinx.HLE/OsHle/Services/Bcat/IDeliveryCacheStorageService.cs
new file mode 100644
index 00000000..0b84d809
--- /dev/null
+++ b/Ryujinx.HLE/OsHle/Services/Bcat/IDeliveryCacheStorageService.cs
@@ -0,0 +1,21 @@
+using Ryujinx.HLE.OsHle.Ipc;
+using System.Collections.Generic;
+
+namespace Ryujinx.HLE.OsHle.Services.Bcat
+{
+ class IDeliveryCacheStorageService : IpcService
+ {
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
+
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
+
+ public IDeliveryCacheStorageService()
+ {
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
+ {
+ //...
+ };
+ }
+
+ }
+}
diff --git a/Ryujinx.HLE/OsHle/Services/Bcat/IServiceCreator.cs b/Ryujinx.HLE/OsHle/Services/Bcat/IServiceCreator.cs
new file mode 100644
index 00000000..cc1fc6f8
--- /dev/null
+++ b/Ryujinx.HLE/OsHle/Services/Bcat/IServiceCreator.cs
@@ -0,0 +1,39 @@
+using Ryujinx.HLE.OsHle.Ipc;
+using System.Collections.Generic;
+
+namespace Ryujinx.HLE.OsHle.Services.Bcat
+{
+ class IServiceCreator : IpcService
+ {
+ private Dictionary<int, ServiceProcessRequest> m_Commands;
+
+ public override IReadOnlyDictionary<int, ServiceProcessRequest> Commands => m_Commands;
+
+ public IServiceCreator()
+ {
+ m_Commands = new Dictionary<int, ServiceProcessRequest>()
+ {
+ { 0, CreateBcatService },
+ { 1, CreateDeliveryCacheStorageService }
+ };
+ }
+
+ public long CreateBcatService(ServiceCtx Context)
+ {
+ long Id = Context.RequestData.ReadInt64();
+
+ MakeObject(Context, new IBcatService());
+
+ return 0;
+ }
+
+ public long CreateDeliveryCacheStorageService(ServiceCtx Context)
+ {
+ long Id = Context.RequestData.ReadInt64();
+
+ MakeObject(Context, new IDeliveryCacheStorageService());
+
+ return 0;
+ }
+ }
+}
diff --git a/Ryujinx.HLE/OsHle/Services/ServiceFactory.cs b/Ryujinx.HLE/OsHle/Services/ServiceFactory.cs
index b69fc9f8..712698b9 100644
--- a/Ryujinx.HLE/OsHle/Services/ServiceFactory.cs
+++ b/Ryujinx.HLE/OsHle/Services/ServiceFactory.cs
@@ -2,6 +2,7 @@ using Ryujinx.HLE.OsHle.Services.Acc;
using Ryujinx.HLE.OsHle.Services.Am;
using Ryujinx.HLE.OsHle.Services.Apm;
using Ryujinx.HLE.OsHle.Services.Aud;
+using Ryujinx.HLE.OsHle.Services.Bcat;
using Ryujinx.HLE.OsHle.Services.Bsd;
using Ryujinx.HLE.OsHle.Services.Caps;
using Ryujinx.HLE.OsHle.Services.Friend;
@@ -55,6 +56,18 @@ namespace Ryujinx.HLE.OsHle.Services
case "audren:u":
return new IAudioRendererManager();
+ case "bcat:a":
+ return new Bcat.IServiceCreator();
+
+ case "bcat:m":
+ return new Bcat.IServiceCreator();
+
+ case "bcat:u":
+ return new Bcat.IServiceCreator();
+
+ case "bcat:s":
+ return new Bcat.IServiceCreator();
+
case "bsd:s":
return new IClient();
@@ -71,10 +84,10 @@ namespace Ryujinx.HLE.OsHle.Services
return new IRandomInterface();
case "friend:a":
- return new IServiceCreator();
+ return new Friend.IServiceCreator();
case "friend:u":
- return new IServiceCreator();
+ return new Friend.IServiceCreator();
case "fsp-srv":
return new IFileSystemProxy();