Refactoring HOS folder structure (#771)

* Refactoring HOS folder structure

Refactoring HOS folder structure:

- Added some subfolders when needed (Following structure decided in private).
- Added some `Types` folders when needed.
- Little cleanup here and there.
- Add services placeholders for every HOS services (close #766 and #753).

* Remove Types namespaces
This commit is contained in:
Ac_K 2019-09-19 02:45:11 +02:00 committed by jduncanator
parent 4af3101b22
commit a0720b5681
393 changed files with 2540 additions and 1299 deletions

View file

@ -1,4 +1,6 @@
namespace Ryujinx.HLE.HOS.Services.Am
using Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy;
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService
{
class ISystemAppletProxy : IpcService
{

View file

@ -2,9 +2,10 @@
using Ryujinx.HLE.HOS.Ipc;
using Ryujinx.HLE.HOS.Kernel.Common;
using Ryujinx.HLE.HOS.Kernel.Threading;
using Ryujinx.HLE.HOS.Services.Am.AppletAE.Storage;
using System;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.LibraryAppletCreator
{
class ILibraryAppletAccessor : IpcService
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IApplicationCreator : IpcService
{

View file

@ -1,6 +1,6 @@
using Ryujinx.Common.Logging;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IAudioController : IpcService
{

View file

@ -2,15 +2,16 @@ using Ryujinx.Common.Logging;
using Ryujinx.HLE.HOS.Ipc;
using Ryujinx.HLE.HOS.Kernel.Common;
using Ryujinx.HLE.HOS.Kernel.Threading;
using Ryujinx.HLE.HOS.Services.Apm;
using System;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class ICommonStateGetter : IpcService
{
private KEvent _displayResolutionChangeEvent;
private Apm.CpuBoostMode _cpuBoostMode = Apm.CpuBoostMode.Disabled;
private CpuBoostMode _cpuBoostMode = CpuBoostMode.Disabled;
public ICommonStateGetter(Horizon system)
{
@ -64,9 +65,9 @@ namespace Ryujinx.HLE.HOS.Services.Am
// GetPerformanceMode() -> u32
public ResultCode GetPerformanceMode(ServiceCtx context)
{
Apm.PerformanceMode mode = context.Device.System.State.DockedMode
? Apm.PerformanceMode.Docked
: Apm.PerformanceMode.Handheld;
PerformanceMode mode = context.Device.System.State.DockedMode
? PerformanceMode.Docked
: PerformanceMode.Handheld;
context.ResponseData.Write((int)mode);
@ -130,7 +131,7 @@ namespace Ryujinx.HLE.HOS.Services.Am
return ResultCode.CpuBoostModeInvalid;
}
_cpuBoostMode = (Apm.CpuBoostMode)cpuBoostMode;
_cpuBoostMode = (CpuBoostMode)cpuBoostMode;
// NOTE: There is a condition variable after the assignment, probably waiting something with apm:sys service (SetCpuBoostMode call?).
// Since we will probably never support CPU boost things, it's not needed to implement more.

View file

@ -0,0 +1,7 @@
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IDebugFunctions : IpcService
{
public IDebugFunctions() { }
}
}

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IDisplayController : IpcService
{

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IGlobalStateController : IpcService
{

View file

@ -4,7 +4,7 @@ using Ryujinx.HLE.HOS.Kernel.Common;
using Ryujinx.HLE.HOS.Kernel.Threading;
using System;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IHomeMenuFunctions : IpcService
{

View file

@ -1,4 +1,6 @@
namespace Ryujinx.HLE.HOS.Services.Am
using Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.LibraryAppletCreator;
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class ILibraryAppletCreator : IpcService
{

View file

@ -4,7 +4,7 @@ using Ryujinx.HLE.HOS.Kernel.Common;
using Ryujinx.HLE.HOS.Kernel.Threading;
using System;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class ISelfController : IpcService
{

View file

@ -1,6 +1,6 @@
using Ryujinx.Common.Logging;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
class IWindowController : IpcService
{

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
enum FocusState
{
InFocus = 1,
OutOfFocus = 2
}
}

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
enum MessageInfo
{

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy
{
enum OperationMode
{
Handheld = 0,
Docked = 1
}
}

View file

@ -1,4 +1,6 @@
namespace Ryujinx.HLE.HOS.Services.Am
using Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService;
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE
{
[Service("appletAE")]
class IAllSystemAppletProxiesService : IpcService

View file

@ -1,4 +1,4 @@
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE
{
class IStorage : IpcService
{

View file

@ -1,6 +1,6 @@
using System;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE
{
class IStorageAccessor : IpcService
{

View file

@ -1,6 +1,6 @@
using System.IO;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletAE.Storage
{
class StorageHelper
{
@ -16,9 +16,9 @@ namespace Ryujinx.HLE.HOS.Services.Am
ms.SetLength(0x88);
writer.Write(LaunchParamsMagic);
writer.Write(1); //IsAccountSelected? Only lower 8 bits actually used.
writer.Write(1L); //User Id Low (note: User Id needs to be != 0)
writer.Write(0L); //User Id High
writer.Write(1); // IsAccountSelected? Only lower 8 bits actually used.
writer.Write(1L); // User Id Low (note: User Id needs to be != 0)
writer.Write(0L); // User Id High
return ms.ToArray();
}

View file

@ -1,6 +1,8 @@
using Ryujinx.Common.Logging;
using Ryujinx.HLE.HOS.Services.Am.AppletAE;
using Ryujinx.HLE.HOS.Services.Am.AppletAE.Storage;
namespace Ryujinx.HLE.HOS.Services.Am
namespace Ryujinx.HLE.HOS.Services.Am.AppletOE.ApplicationProxyService.ApplicationProxy
{
class IApplicationFunctions : IpcService
{

View file

@ -1,4 +1,7 @@
namespace Ryujinx.HLE.HOS.Services.Am
using Ryujinx.HLE.HOS.Services.Am.AppletAE.AllSystemAppletProxiesService.SystemAppletProxy;
using Ryujinx.HLE.HOS.Services.Am.AppletOE.ApplicationProxyService.ApplicationProxy;
namespace Ryujinx.HLE.HOS.Services.Am.AppletOE.ApplicationProxyService
{
class IApplicationProxy : IpcService
{

View file

@ -1,3 +1,6 @@
using Ryujinx.HLE.HOS.Services.Am.AppletAE;
using Ryujinx.HLE.HOS.Services.Am.AppletOE.ApplicationProxyService;
namespace Ryujinx.HLE.HOS.Services.Am
{
[Service("appletOE")]

View file

@ -1,8 +0,0 @@
namespace Ryujinx.HLE.HOS.Services.Am
{
enum FocusState
{
InFocus = 1,
OutOfFocus = 2
}
}

View file

@ -1,7 +0,0 @@
namespace Ryujinx.HLE.HOS.Services.Am
{
class IDebugFunctions : IpcService
{
public IDebugFunctions() { }
}
}

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.Idle
{
[Service("idle:sys")]
class IPolicyManagerSystem : IpcService
{
public IPolicyManagerSystem(ServiceCtx context) { }
}
}

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.Omm
{
[Service("omm")]
class IOperationModeManager : IpcService
{
public IOperationModeManager(ServiceCtx context) { }
}
}

View file

@ -1,8 +0,0 @@
namespace Ryujinx.HLE.HOS.Services.Am
{
enum OperationMode
{
Handheld = 0,
Docked = 1
}
}

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.Spsm
{
[Service("spsm")]
class IPowerStateInterface : IpcService
{
public IPowerStateInterface(ServiceCtx context) { }
}
}

View file

@ -0,0 +1,8 @@
namespace Ryujinx.HLE.HOS.Services.Am.Tcap
{
[Service("tcap")]
class IManager : IpcService
{
public IManager(ServiceCtx context) { }
}
}