ldn: Implement calls of UserLocalCommunicationService (#829)

* ldn: Implement calls of UserLocalCommunicationService

- Implement `IUserServiceCreator: CreateUserLocalCommunicationService` according to RE.
- Implement `IUserLocalCommunicationService` calls:
  - Every calls in this interface are layered to `NetworkInterface`.
  - `GetState` according to RE.
  - `InitializeOld`, `Initialize` and `Finalize` stubbed with the appropriate result code and some TODO according to RE.
  - `AttachStateChangeEvent` according to RE.

* Fix var name and TODO comments

* Fix review
This commit is contained in:
Ac_K 2019-11-21 13:24:06 +01:00 committed by Thog
parent ee81ab547e
commit cfcc360d06
6 changed files with 189 additions and 1 deletions

View file

@ -1,8 +1,19 @@
namespace Ryujinx.HLE.HOS.Services.Ldn
using Ryujinx.HLE.HOS.Services.Ldn.UserServiceCreator;
namespace Ryujinx.HLE.HOS.Services.Ldn
{
[Service("ldn:u")]
class IUserServiceCreator : IpcService
{
public IUserServiceCreator(ServiceCtx context) { }
[Command(0)]
// CreateUserLocalCommunicationService() -> object<nn::ldn::detail::IUserLocalCommunicationService>
public ResultCode CreateUserLocalCommunicationService(ServiceCtx context)
{
MakeObject(context, new IUserLocalCommunicationService(context));
return ResultCode.Success;
}
}
}