diff options
| author | Emmanuel Hansen <emmausssss@gmail.com> | 2023-05-09 21:46:23 +0000 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-05-09 21:46:23 +0000 |
| commit | 0bc8151c7ecdacc1506305a8d60e7b3c7b13622d (patch) | |
| tree | c14b5a4463764a0f86285054cea813e242950ba2 /src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs | |
| parent | 40c17673f5a1a7c96f548dc4efaf05bba832a340 (diff) | |
IPC - Refactor Bcat service to use new ipc - Revisit (#4803)
* bcat ipc
* fix hipc buffer flags
* add buffer fixed size flag on generator
Diffstat (limited to 'src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs')
| -rw-r--r-- | src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs | 65 |
1 files changed, 0 insertions, 65 deletions
diff --git a/src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs b/src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs deleted file mode 100644 index 57544977..00000000 --- a/src/Ryujinx.HLE/HOS/Services/Bcat/ServiceCreator/IDeliveryCacheDirectoryService.cs +++ /dev/null @@ -1,65 +0,0 @@ -using LibHac; -using LibHac.Bcat; -using LibHac.Common; -using Ryujinx.Common; -using System.Runtime.InteropServices; - -namespace Ryujinx.HLE.HOS.Services.Bcat.ServiceCreator -{ - class IDeliveryCacheDirectoryService : DisposableIpcService - { - private SharedRef<LibHac.Bcat.Impl.Ipc.IDeliveryCacheDirectoryService> _base; - - public IDeliveryCacheDirectoryService(ref SharedRef<LibHac.Bcat.Impl.Ipc.IDeliveryCacheDirectoryService> baseService) - { - _base = SharedRef<LibHac.Bcat.Impl.Ipc.IDeliveryCacheDirectoryService>.CreateMove(ref baseService); - } - - protected override void Dispose(bool isDisposing) - { - if (isDisposing) - { - _base.Destroy(); - } - } - - [CommandCmif(0)] - // Open(nn::bcat::DirectoryName) - public ResultCode Open(ServiceCtx context) - { - DirectoryName directoryName = context.RequestData.ReadStruct<DirectoryName>(); - - Result result = _base.Get.Open(ref directoryName); - - return (ResultCode)result.Value; - } - - [CommandCmif(1)] - // Read() -> (u32, buffer<nn::bcat::DeliveryCacheDirectoryEntry, 6>) - public ResultCode Read(ServiceCtx context) - { - ulong bufferAddress = context.Request.ReceiveBuff[0].Position; - ulong bufferLen = context.Request.ReceiveBuff[0].Size; - - using (var region = context.Memory.GetWritableRegion(bufferAddress, (int)bufferLen, true)) - { - Result result = _base.Get.Read(out int entriesRead, MemoryMarshal.Cast<byte, DeliveryCacheDirectoryEntry>(region.Memory.Span)); - - context.ResponseData.Write(entriesRead); - - return (ResultCode)result.Value; - } - } - - [CommandCmif(2)] - // GetCount() -> u32 - public ResultCode GetCount(ServiceCtx context) - { - Result result = _base.Get.GetCount(out int count); - - context.ResponseData.Write(count); - - return (ResultCode)result.Value; - } - } -} |
