diff options
author | Zach Hilman <zachhilman@gmail.com> | 2018-11-27 15:18:29 +0100 |
---|---|---|
committer | Zach Hilman <zachhilman@gmail.com> | 2018-11-29 14:48:40 +0100 |
commit | a342bcc9b130e9bd78720e09e04c92dcac8840d0 (patch) | |
tree | df1d16c2a71b121fc449b53fc931c6fac8ccf82a /src/core/hle/service/nvflinger/buffer_queue.cpp | |
parent | core: Port all current usages of Event to Readable/WritableEvent (diff) | |
download | yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar.gz yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar.bz2 yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar.lz yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar.xz yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.tar.zst yuzu-a342bcc9b130e9bd78720e09e04c92dcac8840d0.zip |
Diffstat (limited to 'src/core/hle/service/nvflinger/buffer_queue.cpp')
-rw-r--r-- | src/core/hle/service/nvflinger/buffer_queue.cpp | 14 |
1 files changed, 6 insertions, 8 deletions
diff --git a/src/core/hle/service/nvflinger/buffer_queue.cpp b/src/core/hle/service/nvflinger/buffer_queue.cpp index 7b07750b5..fc07d9bb8 100644 --- a/src/core/hle/service/nvflinger/buffer_queue.cpp +++ b/src/core/hle/service/nvflinger/buffer_queue.cpp @@ -16,8 +16,8 @@ namespace Service::NVFlinger { BufferQueue::BufferQueue(u32 id, u64 layer_id) : id(id), layer_id(layer_id) { auto& kernel = Core::System::GetInstance().Kernel(); - buffer_wait_event = Kernel::WritableEvent::CreateRegisteredEventPair( - kernel, Kernel::ResetType::Sticky, "BufferQueue NativeHandle"); + buffer_wait_event = Kernel::WritableEvent::CreateEventPair(kernel, Kernel::ResetType::Sticky, + "BufferQueue NativeHandle"); } BufferQueue::~BufferQueue() = default; @@ -31,7 +31,7 @@ void BufferQueue::SetPreallocatedBuffer(u32 slot, const IGBPBuffer& igbp_buffer) buffer.status = Buffer::Status::Free; queue.emplace_back(buffer); - buffer_wait_event->Signal(); + buffer_wait_event.writable->Signal(); } std::optional<u32> BufferQueue::DequeueBuffer(u32 width, u32 height) { @@ -90,7 +90,7 @@ void BufferQueue::ReleaseBuffer(u32 slot) { ASSERT(itr->status == Buffer::Status::Acquired); itr->status = Buffer::Status::Free; - buffer_wait_event->Signal(); + buffer_wait_event.writable->Signal(); } u32 BufferQueue::Query(QueryType type) { @@ -108,13 +108,11 @@ u32 BufferQueue::Query(QueryType type) { } Kernel::SharedPtr<Kernel::WritableEvent> BufferQueue::GetWritableBufferWaitEvent() const { - return buffer_wait_event; + return buffer_wait_event.writable; } Kernel::SharedPtr<Kernel::ReadableEvent> BufferQueue::GetBufferWaitEvent() const { - const auto& event{ - Core::System::GetInstance().Kernel().FindNamedEvent("BufferQueue NativeHandle")}; - return event->second; + return buffer_wait_event.readable; } } // namespace Service::NVFlinger |