prepo: Implement RequestImmediateTransmission and GetTransmissionStatus (#1033)

* prepo: Implement RequestImmediateTransmission and GetTransmissionStatus

This implement RequestImmediateTransmission and GetTransmissionStatus of the prepo service accurately to RE.
Since we don't use reports, I've explained what the calls do in the real service.

Close #958

* fix comment
This commit is contained in:
Ac_K 2020-03-25 12:28:15 +01:00 committed by GitHub
parent 21c9c04f9f
commit 56374c8633
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -49,6 +49,27 @@ namespace Ryujinx.HLE.HOS.Services.Prepo
return ProcessReport(context, withUserID: true); return ProcessReport(context, withUserID: true);
} }
[Command(10200)]
// RequestImmediateTransmission()
public ResultCode RequestImmediateTransmission(ServiceCtx context)
{
// It signals an event of nn::prepo::detail::service::core::TransmissionStatusManager that requests the transmission of the report.
// Since we don't use reports it's fine to do nothing.
return ResultCode.Success;
}
[Command(10300)]
// GetTransmissionStatus() -> u32
public ResultCode GetTransmissionStatus(ServiceCtx context)
{
// It returns the transmission result of nn::prepo::detail::service::core::TransmissionStatusManager.
// Since we don't use reports it's fine to return ResultCode.Success.
context.ResponseData.Write((int)ResultCode.Success);
return ResultCode.Success;
}
private ResultCode ProcessReport(ServiceCtx context, bool withUserID) private ResultCode ProcessReport(ServiceCtx context, bool withUserID)
{ {
UserId userId = withUserID ? context.RequestData.ReadStruct<UserId>() : new UserId(); UserId userId = withUserID ? context.RequestData.ReadStruct<UserId>() : new UserId();