summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/pctl/parental_control_service.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/core/hle/service/pctl/parental_control_service.h')
-rw-r--r--src/core/hle/service/pctl/parental_control_service.h62
1 files changed, 37 insertions, 25 deletions
diff --git a/src/core/hle/service/pctl/parental_control_service.h b/src/core/hle/service/pctl/parental_control_service.h
index dcc357f65..03dbaa2e5 100644
--- a/src/core/hle/service/pctl/parental_control_service.h
+++ b/src/core/hle/service/pctl/parental_control_service.h
@@ -3,7 +3,9 @@
#pragma once
+#include "core/hle/service/cmif_types.h"
#include "core/hle/service/kernel_helpers.h"
+#include "core/hle/service/os/event.h"
#include "core/hle/service/pctl/pctl_types.h"
#include "core/hle/service/service.h"
@@ -19,28 +21,38 @@ private:
bool ConfirmStereoVisionPermissionImpl() const;
void SetStereoVisionRestrictionImpl(bool is_restricted);
- void Initialize(HLERequestContext& ctx);
- void CheckFreeCommunicationPermission(HLERequestContext& ctx);
- void ConfirmSnsPostPermission(HLERequestContext& ctx);
- void IsRestrictionTemporaryUnlocked(HLERequestContext& ctx);
- void ConfirmStereoVisionPermission(HLERequestContext& ctx);
- void EndFreeCommunication(HLERequestContext& ctx);
- void IsFreeCommunicationAvailable(HLERequestContext& ctx);
- void IsRestrictionEnabled(HLERequestContext& ctx);
- void GetSafetyLevel(HLERequestContext& ctx);
- void GetCurrentSettings(HLERequestContext& ctx);
- void GetFreeCommunicationApplicationListCount(HLERequestContext& ctx);
- void ConfirmStereoVisionRestrictionConfigurable(HLERequestContext& ctx);
- void IsStereoVisionPermitted(HLERequestContext& ctx);
- void IsPairingActive(HLERequestContext& ctx);
- void GetSynchronizationEvent(HLERequestContext& ctx);
- void GetPlayTimerSettings(HLERequestContext& ctx);
- void GetPlayTimerEventToRequestSuspension(HLERequestContext& ctx);
- void IsPlayTimerAlarmDisabled(HLERequestContext& ctx);
- void GetUnlinkedEvent(HLERequestContext& ctx);
- void SetStereoVisionRestriction(HLERequestContext& ctx);
- void GetStereoVisionRestriction(HLERequestContext& ctx);
- void ResetConfirmedStereoVisionPermission(HLERequestContext& ctx);
+ Result Initialize();
+ Result CheckFreeCommunicationPermission();
+ Result ConfirmLaunchApplicationPermission(InBuffer<BufferAttr_HipcPointer> restriction_bitset,
+ u64 nacp_flag, u64 application_id);
+ Result ConfirmResumeApplicationPermission(InBuffer<BufferAttr_HipcPointer> restriction_bitset,
+ u64 nacp_flag, u64 application_id);
+ Result ConfirmSnsPostPermission();
+ Result IsRestrictionTemporaryUnlocked(Out<bool> out_is_temporary_unlocked);
+ Result IsRestrictedSystemSettingsEntered(Out<bool> out_is_restricted_system_settings_entered);
+ Result ConfirmStereoVisionPermission();
+ Result EndFreeCommunication();
+ Result IsFreeCommunicationAvailable();
+ Result IsRestrictionEnabled(Out<bool> out_restriction_enabled);
+ Result GetSafetyLevel(Out<u32> out_safety_level);
+ Result GetCurrentSettings(Out<RestrictionSettings> out_settings);
+ Result GetFreeCommunicationApplicationListCount(Out<s32> out_count);
+ Result ConfirmStereoVisionRestrictionConfigurable();
+ Result IsStereoVisionPermitted(Out<bool> out_is_permitted);
+ Result GetPinCodeLength(Out<s32> out_length);
+ Result IsPairingActive(Out<bool> out_is_pairing_active);
+ Result GetSynchronizationEvent(OutCopyHandle<Kernel::KReadableEvent> out_event);
+ Result StartPlayTimer();
+ Result StopPlayTimer();
+ Result IsPlayTimerEnabled(Out<bool> out_is_play_timer_enabled);
+ Result IsRestrictedByPlayTimer(Out<bool> out_is_restricted_by_play_timer);
+ Result GetPlayTimerSettings(Out<PlayTimerSettings> out_play_timer_settings);
+ Result GetPlayTimerEventToRequestSuspension(OutCopyHandle<Kernel::KReadableEvent> out_event);
+ Result IsPlayTimerAlarmDisabled(Out<bool> out_play_timer_alarm_disabled);
+ Result GetUnlinkedEvent(OutCopyHandle<Kernel::KReadableEvent> out_event);
+ Result GetStereoVisionRestriction(Out<bool> out_stereo_vision_restriction);
+ Result SetStereoVisionRestriction(bool stereo_vision_restriction);
+ Result ResetConfirmedStereoVisionPermission();
struct States {
u64 current_tid{};
@@ -65,10 +77,10 @@ private:
std::array<char, 8> pin_code{};
Capability capability{};
- Kernel::KEvent* synchronization_event;
- Kernel::KEvent* unlinked_event;
- Kernel::KEvent* request_suspension_event;
KernelHelpers::ServiceContext service_context;
+ Event synchronization_event;
+ Event unlinked_event;
+ Event request_suspension_event;
};
} // namespace Service::PCTL