Browse Source

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
greggameplayer 7 years ago
parent
commit
ed29982f9b

+ 21 - 0
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>()
+            {
+                //...
+            };
+        }
+		
+    }
+}

+ 21 - 0
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>()
+            {
+                //...
+            };
+        }
+		
+    }
+}

+ 39 - 0
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;
+        }
+    }
+}

+ 15 - 2
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();