// SPDX-FileCopyrightText: Copyright 2023 yuzu Emulator Project // SPDX-License-Identifier: GPL-3.0-or-later #pragma once #include "core/hle/service/service.h" namespace Core { class System; } namespace Service::HID { class ResourceManager; class HidFirmwareSettings; class IHidDebugServer final : public ServiceFramework { public: explicit IHidDebugServer(Core::System& system_, std::shared_ptr resource, std::shared_ptr settings); ~IHidDebugServer() override; private: void DeactivateTouchScreen(HLERequestContext& ctx); void SetTouchScreenAutoPilotState(HLERequestContext& ctx); void UnsetTouchScreenAutoPilotState(HLERequestContext& ctx); void GetTouchScreenConfiguration(HLERequestContext& ctx); void ProcessTouchScreenAutoTune(HLERequestContext& ctx); void ForceStopTouchScreenManagement(HLERequestContext& ctx); void ForceRestartTouchScreenManagement(HLERequestContext& ctx); void IsTouchScreenManaged(HLERequestContext& ctx); void DeactivateGesture(HLERequestContext& ctx); std::shared_ptr GetResourceManager(); std::shared_ptr resource_manager; std::shared_ptr firmware_settings; }; } // namespace Service::HID