IMultiCommitManager.cs 998 B

1234567891011121314151617181920212223242526272829303132333435
  1. using LibHac;
  2. using Ryujinx.HLE.HOS.Services.Fs.FileSystemProxy;
  3. namespace Ryujinx.HLE.HOS.Services.Fs
  4. {
  5. class IMultiCommitManager : IpcService // 6.0.0+
  6. {
  7. private LibHac.FsSrv.IMultiCommitManager _baseCommitManager;
  8. public IMultiCommitManager(LibHac.FsSrv.IMultiCommitManager baseCommitManager)
  9. {
  10. _baseCommitManager = baseCommitManager;
  11. }
  12. [CommandHipc(1)] // 6.0.0+
  13. // Add(object<nn::fssrv::sf::IFileSystem>)
  14. public ResultCode Add(ServiceCtx context)
  15. {
  16. IFileSystem fileSystem = GetObject<IFileSystem>(context, 0);
  17. Result result = _baseCommitManager.Add(fileSystem.GetBaseFileSystem());
  18. return (ResultCode)result.Value;
  19. }
  20. [CommandHipc(2)] // 6.0.0+
  21. // Commit()
  22. public ResultCode Commit(ServiceCtx context)
  23. {
  24. Result result = _baseCommitManager.Commit();
  25. return (ResultCode)result.Value;
  26. }
  27. }
  28. }