Flutter Impeller
impeller::IdleWaiterVK Class Reference

#include <context_vk.h>

Inheritance diagram for impeller::IdleWaiterVK:
impeller::IdleWaiter

Public Member Functions

 IdleWaiterVK (std::weak_ptr< DeviceHolderVK > device_holder)
 
void WaitIdle () const override
 
- Public Member Functions inherited from impeller::IdleWaiter
virtual ~IdleWaiter ()=default
 

Detailed Description

Definition at line 46 of file context_vk.h.

Constructor & Destructor Documentation

◆ IdleWaiterVK()

impeller::IdleWaiterVK::IdleWaiterVK ( std::weak_ptr< DeviceHolderVK device_holder)
inlineexplicit

Definition at line 48 of file context_vk.h.

49  : device_holder_(std::move(device_holder)) {}

Member Function Documentation

◆ WaitIdle()

void impeller::IdleWaiterVK::WaitIdle ( ) const
inlineoverridevirtual

Wait for the GPU tasks to finish. This is a noop on some platforms, it's important for Vulkan.

Implements impeller::IdleWaiter.

Definition at line 51 of file context_vk.h.

51  {
52  std::shared_ptr<DeviceHolderVK> strong_device_holder_ =
53  device_holder_.lock();
54  if (strong_device_holder_ && strong_device_holder_->GetDevice()) {
55  [[maybe_unused]] auto result =
56  strong_device_holder_->GetDevice().waitIdle();
57  }
58  }

The documentation for this class was generated from the following file: