15#ifdef VK_USE_PLATFORM_WIN32_KHR
24 createInfo.
pNext =
nullptr;
34 return std::unique_ptr<GrVkSemaphore>(
new GrVkSemaphore(gpu, semaphore,
false,
false, isOwned));
38 VkSemaphore semaphore,
42 SkDEBUGFAIL(
"Trying to wrap an invalid VkSemaphore");
47 return std::unique_ptr<GrVkSemaphore>(
new GrVkSemaphore(gpu, semaphore, prohibitSignal,
52GrVkSemaphore::GrVkSemaphore(
GrVkGpu* gpu, VkSemaphore semaphore,
bool prohibitSignal,
53 bool prohibitWait,
bool isOwned) {
54 fResource =
new Resource(gpu, semaphore, prohibitSignal, prohibitWait, isOwned);
63void GrVkSemaphore::Resource::freeGPUData()
const {
66 DestroySemaphore(
fGpu->
device(), fSemaphore,
nullptr));
@ kBorrow_GrWrapOwnership
#define GR_VK_CALL(IFACE, X)
#define GR_VK_CALL_RESULT(GPU, RESULT, X)
#define SkDEBUGFAIL(message)
const skgpu::VulkanInterface * vkInterface() const
VkSemaphore semaphore() const
~GrVkSemaphore() override
GrBackendSemaphore backendSemaphore() const override
static std::unique_ptr< GrVkSemaphore > Make(GrVkGpu *gpu, bool isOwned)
static std::unique_ptr< GrVkSemaphore > MakeWrapped(GrVkGpu *, VkSemaphore, GrSemaphoreWrapType, GrWrapOwnership)
SK_API GrBackendSemaphore MakeVk(VkSemaphore semaphore)
VkSemaphoreCreateFlags flags
@ VK_STRUCTURE_TYPE_SEMAPHORE_CREATE_INFO