diff options
| author | bunnei <bunneidev@gmail.com> | 2018-04-27 00:49:40 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2018-04-27 00:49:40 -0400 |
| commit | 3c404964097a0882ce9651571ec02c54474350ce (patch) | |
| tree | 37932b0e46a5190fbe54a83fe06706d171e6141a /src/core/hle/service/prepo/prepo.cpp | |
| parent | 4f120a9ec0ce7a20d7bb0dc60342c42a60ed8c43 (diff) | |
| parent | abc23416e8f2a0963a5ddff021788cae7f00dd62 (diff) | |
Merge pull request #380 from ogniK5377/service-impl
Implemented some useful interfaces needed for games.
Diffstat (limited to 'src/core/hle/service/prepo/prepo.cpp')
| -rw-r--r-- | src/core/hle/service/prepo/prepo.cpp | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/core/hle/service/prepo/prepo.cpp b/src/core/hle/service/prepo/prepo.cpp new file mode 100644 index 000000000..eaf30ee6b --- /dev/null +++ b/src/core/hle/service/prepo/prepo.cpp @@ -0,0 +1,43 @@ +#include <cinttypes> +#include "common/logging/log.h" +#include "core/hle/ipc_helpers.h" +#include "core/hle/kernel/event.h" +#include "core/hle/service/prepo/prepo.h" + +namespace Service::PlayReport { +PlayReport::PlayReport(const char* name) : ServiceFramework(name) { + static const FunctionInfo functions[] = { + {10100, nullptr, "SaveReport"}, + {10101, &PlayReport::SaveReportWithUser, "SaveReportWithUser"}, + {10200, nullptr, "RequestImmediateTransmission"}, + {10300, nullptr, "GetTransmissionStatus"}, + {20100, nullptr, "SaveSystemReport"}, + {20200, nullptr, "SetOperationMode"}, + {20101, nullptr, "SaveSystemReportWithUser"}, + {30100, nullptr, "ClearStorage"}, + {40100, nullptr, "IsUserAgreementCheckEnabled"}, + {40101, nullptr, "SetUserAgreementCheckEnabled"}, + {90100, nullptr, "GetStorageUsage"}, + {90200, nullptr, "GetStatistics"}, + {90201, nullptr, "GetThroughputHistory"}, + {90300, nullptr, "GetLastUploadError"}, + }; + RegisterHandlers(functions); +}; + +void PlayReport::SaveReportWithUser(Kernel::HLERequestContext& ctx) { + // TODO(ogniK): Do we want to add play report? + NGLOG_WARNING(Service_PREPO, "(STUBBED) called"); + + IPC::ResponseBuilder rb{ctx, 2}; + rb.Push(RESULT_SUCCESS); +}; + +void InstallInterfaces(SM::ServiceManager& service_manager) { + std::make_shared<PlayReport>("prepo:a")->InstallAsService(service_manager); + std::make_shared<PlayReport>("prepo:m")->InstallAsService(service_manager); + std::make_shared<PlayReport>("prepo:s")->InstallAsService(service_manager); + std::make_shared<PlayReport>("prepo:u")->InstallAsService(service_manager); +} + +} // namespace Service::PlayReport |
