|
|
|
@ -0,0 +1,32 @@ |
|
|
|
// SPDX-License-Identifier: GPL-3.0-or-later |
|
|
|
// Copyright 2021 yuzu Emulator Project |
|
|
|
// Copyright 2012 The Android Open Source Project |
|
|
|
// Parts of this implementation were base on: |
|
|
|
// https://cs.android.com/android/platform/superproject/+/android-5.1.1_r38:frameworks/native/include/ui/Fence.h |
|
|
|
|
|
|
|
#pragma once |
|
|
|
|
|
|
|
#include <array> |
|
|
|
|
|
|
|
#include "common/common_types.h" |
|
|
|
#include "core/hle/service/nvdrv/nvdata.h" |
|
|
|
|
|
|
|
namespace android { |
|
|
|
|
|
|
|
class Fence { |
|
|
|
public: |
|
|
|
constexpr Fence() = default; |
|
|
|
|
|
|
|
static constexpr Fence NoFence() { |
|
|
|
Fence fence; |
|
|
|
fence.fences[0].id = -1; |
|
|
|
return fence; |
|
|
|
} |
|
|
|
|
|
|
|
public: |
|
|
|
u32 num_fences{}; |
|
|
|
std::array<Service::Nvidia::NvFence, 4> fences{}; |
|
|
|
}; |
|
|
|
static_assert(sizeof(Fence) == 36, "Fence has wrong size"); |
|
|
|
|
|
|
|
} // namespace android |