diff options
author | Liam <byteslice@airmail.cc> | 2023-02-19 21:05:34 +0100 |
---|---|---|
committer | Liam <byteslice@airmail.cc> | 2023-03-01 16:39:49 +0100 |
commit | 809148e1a58296ab88c9d3c6719d345f35ce0279 (patch) | |
tree | 8db1dcd33eabde75ca55ceafc6fb380d5f007e50 /src/core/hle/service/nvnflinger/binder.h | |
parent | service: move hle_ipc from kernel (diff) | |
download | yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar.gz yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar.bz2 yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar.lz yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar.xz yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.tar.zst yuzu-809148e1a58296ab88c9d3c6719d345f35ce0279.zip |
Diffstat (limited to 'src/core/hle/service/nvnflinger/binder.h')
-rw-r--r-- | src/core/hle/service/nvnflinger/binder.h | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/core/hle/service/nvnflinger/binder.h b/src/core/hle/service/nvnflinger/binder.h new file mode 100644 index 000000000..aef1477e3 --- /dev/null +++ b/src/core/hle/service/nvnflinger/binder.h @@ -0,0 +1,45 @@ +// SPDX-FileCopyrightText: Copyright 2021 yuzu Emulator Project +// SPDX-FileCopyrightText: Copyright 2014 The Android Open Source Project +// SPDX-License-Identifier: GPL-3.0-or-later +// Parts of this implementation were based on: +// https://cs.android.com/android/platform/superproject/+/android-5.1.1_r38:frameworks/native/include/binder/IBinder.h + +#pragma once + +#include "common/common_types.h" + +namespace Kernel { +class KReadableEvent; +} // namespace Kernel + +namespace Service { +class HLERequestContext; +} + +namespace Service::android { + +enum class TransactionId { + RequestBuffer = 1, + SetBufferCount = 2, + DequeueBuffer = 3, + DetachBuffer = 4, + DetachNextBuffer = 5, + AttachBuffer = 6, + QueueBuffer = 7, + CancelBuffer = 8, + Query = 9, + Connect = 10, + Disconnect = 11, + AllocateBuffers = 13, + SetPreallocatedBuffer = 14, + GetBufferHistory = 17, +}; + +class IBinder { +public: + virtual ~IBinder() = default; + virtual void Transact(HLERequestContext& ctx, android::TransactionId code, u32 flags) = 0; + virtual Kernel::KReadableEvent& GetNativeHandle() = 0; +}; + +} // namespace Service::android |