1// Copyright (c) 2018-2020 NVIDIA Corporation
2//
3// SPDX-License-Identifier: CC-BY-4.0
4
5[open,refpage='vkGetMemoryWin32HandleNV',desc='Retrieve Win32 handle to a device memory object',type='protos']
6--
7To retrieve the handle corresponding to a device memory object created with
8slink:VkExportMemoryAllocateInfoNV::pname:handleTypes set to include
9ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT_NV or
10ename:VK_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT_BIT_NV, call:
11
12include::{generated}/api/protos/vkGetMemoryWin32HandleNV.adoc[]
13
14  * pname:device is the logical device that owns the memory.
15  * pname:memory is the slink:VkDeviceMemory object.
16  * pname:handleType is a bitmask of
17    elink:VkExternalMemoryHandleTypeFlagBitsNV containing a single bit
18    specifying the type of handle requested.
19  * pname:handle is a pointer to a Windows code:HANDLE in which the handle
20    is returned.
21
22.Valid Usage
23****
24  * [[VUID-vkGetMemoryWin32HandleNV-handleType-01326]]
25    pname:handleType must: be a flag specified in
26    slink:VkExportMemoryAllocateInfoNV::pname:handleTypes when allocating
27    pname:memory
28****
29
30include::{generated}/validity/protos/vkGetMemoryWin32HandleNV.adoc[]
31--
32