C Specification
If VK_MEMORY_MAP_PLACED_BIT_EXT
is set in
VkMemoryMapInfoKHR
::flags
and the pNext
chain of
VkMemoryMapInfoKHR includes a VkMemoryMapPlacedInfoEXT
structure, then that structure specifies the placement address of the memory
map.
The implementation will place the memory map at the specified address,
replacing any existing maps in the specified memory range.
Replacing memory maps in this way does not implicitly unmap Vulkan memory
objects.
Instead, the client must ensure no other Vulkan memory objects are mapped
anywhere in the specified virtual address range.
If successful, ppData
will be set to the same value as
VkMemoryMapPlacedInfoEXT
::pPlacedAddress
and
vkMapMemory2KHR
will return VK_SUCCESS
.
If it cannot place the map at the requested address for any reason, the
memory object is left unmapped and vkMapMemory2KHR
will return
VK_ERROR_MEMORY_MAP_FAILED
.
The VkMemoryMapPlacedInfoEXT
structure is defined as:
// Provided by VK_EXT_map_memory_placed
typedef struct VkMemoryMapPlacedInfoEXT {
VkStructureType sType;
const void* pNext;
void* pPlacedAddress;
} VkMemoryMapPlacedInfoEXT;
Members
-
sType
is a VkStructureType value identifying this structure. -
pNext
isNULL
or a pointer to a structure extending this structure. -
pPlacedAddress
is the virtual address at which to place the address. IfVkMemoryMapInfoKHR
::flags
does not containVK_MEMORY_MAP_PLACED_BIT_EXT
, this value is ignored.
Document Notes
For more information, see the Vulkan Specification
This page is extracted from the Vulkan Specification. Fixes and changes should be made to the Specification, not directly.