diff options
| author | liamwhite <liamwhite@users.noreply.github.com> | 2024-01-01 15:02:13 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-01 15:02:13 -0500 |
| commit | 59d81ae614a42588dbd7eaf4b7e029ab168886c9 (patch) | |
| tree | a5d636853c0871b700ebccf1c5d4fc6726046a31 /src/core/hle/service/hid/controllers/digitizer.cpp | |
| parent | c3c676b7d69c35c37462fb0edd04d714e9a1f4e3 (diff) | |
| parent | 865abfc37c5b3e8945d833bd44db428ad720bd58 (diff) | |
Merge pull request #12536 from german77/npad_interface
service: hid: Use applet resource to get latest shared memory handle
Diffstat (limited to 'src/core/hle/service/hid/controllers/digitizer.cpp')
| -rw-r--r-- | src/core/hle/service/hid/controllers/digitizer.cpp | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/core/hle/service/hid/controllers/digitizer.cpp b/src/core/hle/service/hid/controllers/digitizer.cpp new file mode 100644 index 000000000..c01580fd6 --- /dev/null +++ b/src/core/hle/service/hid/controllers/digitizer.cpp @@ -0,0 +1,38 @@ +// SPDX-FileCopyrightText: Copyright 2018 yuzu Emulator Project +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "core/core_timing.h" +#include "core/hle/service/hid/controllers/applet_resource.h" +#include "core/hle/service/hid/controllers/digitizer.h" +#include "core/hle/service/hid/controllers/types/shared_memory_format.h" + +namespace Service::HID { + +Digitizer::Digitizer(Core::HID::HIDCore& hid_core_) : ControllerBase{hid_core_} {} + +Digitizer::~Digitizer() = default; + +void Digitizer::OnInit() {} + +void Digitizer::OnRelease() {} + +void Digitizer::OnUpdate(const Core::Timing::CoreTiming& core_timing) { + if (!smart_update) { + return; + } + + const u64 aruid = applet_resource->GetActiveAruid(); + auto* data = applet_resource->GetAruidData(aruid); + + if (data == nullptr) { + return; + } + + auto& header = data->shared_memory_format->digitizer.header; + header.timestamp = core_timing.GetGlobalTimeNs().count(); + header.total_entry_count = 17; + header.entry_count = 0; + header.last_entry_index = 0; +} + +} // namespace Service::HID |
