vulkan-2.0.0.1: Bindings to the Vulkan graphics API.

Safe HaskellNone
LanguageHaskell2010

Graphics.Vulkan.Extensions.VK_NV_external_memory_win32

Synopsis

Documentation

type HANDLE = Ptr () Source #

data SECURITY_ATTRIBUTES Source #

Opaque data

vkGetMemoryWin32HandleNV :: ("device" ::: VkDevice) -> ("memory" ::: VkDeviceMemory) -> ("handleType" ::: VkExternalMemoryHandleTypeFlagsNV) -> ("pHandle" ::: Ptr HANDLE) -> IO VkResult Source #

vkGetMemoryWin32HandleNV - retrieve Win32 handle to a device memory object

Parameters

  • device is the logical device that owns the memory.
  • memory is the VkDeviceMemory object.
  • handleType is a bitmask of VkExternalMemoryHandleTypeFlagBitsNV containing a single bit specifying the type of handle requested.
  • handle points to a Windows HANDLE in which the handle is returned.

Valid Usage

Valid Usage (Implicit)

  • device must be a valid VkDevice handle
  • memory must be a valid VkDeviceMemory handle
  • handleType must be a valid combination of VkExternalMemoryHandleTypeFlagBitsNV values
  • handleType must not be 0
  • pHandle must be a valid pointer to a HANDLE value
  • memory must have been created, allocated, or retrieved from device

Return Codes

[Success] - VK_SUCCESS

[Failure] - VK_ERROR_TOO_MANY_OBJECTS

  • VK_ERROR_OUT_OF_HOST_MEMORY

See Also

VkDevice, VkDeviceMemory, VkExternalMemoryHandleTypeFlagsNV

data VkImportMemoryWin32HandleInfoNV Source #

VkImportMemoryWin32HandleInfoNV - import Win32 memory created on the same physical device

Description

If handleType is 0, this structure is ignored by consumers of the VkMemoryAllocateInfo structure it is chained from.

Valid Usage

  • handleType must not have more than one bit set.
  • handle must be a valid handle to memory, obtained as specified by handleType.

Valid Usage (Implicit)

  • sType must be VK_STRUCTURE_TYPE_IMPORT_MEMORY_WIN32_HANDLE_INFO_NV

See Also

VkExternalMemoryHandleTypeFlagsNV, VkStructureType

Constructors

VkImportMemoryWin32HandleInfoNV 

Fields

data VkExportMemoryWin32HandleInfoNV Source #

VkExportMemoryWin32HandleInfoNV - specify security attributes and access rights for Win32 memory handles

Description

If this structure is not present, or if pAttributes is set to NULL, default security descriptor values will be used, and child processes created by the application will not inherit the handle, as described in the MSDN documentation for “Synchronization Object Security and Access Rights”[1]. Further, if the structure is not present, the access rights will be

DXGI_SHARED_RESOURCE_READ | DXGI_SHARED_RESOURCE_WRITE
1
https://msdn.microsoft.com/en-us/library/windows/desktop/ms686670.aspx

Valid Usage (Implicit)

  • sType must be VK_STRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_NV
  • If pAttributes is not NULL, pAttributes must be a valid pointer to a valid SECURITY_ATTRIBUTES value

See Also

VkStructureType

Constructors

VkExportMemoryWin32HandleInfoNV 

Fields