Class VkDeviceMemoryReportCallbackDataEXT

  • All Implemented Interfaces:
    java.lang.AutoCloseable, org.lwjgl.system.NativeResource, org.lwjgl.system.Pointer

    public class VkDeviceMemoryReportCallbackDataEXT
    extends org.lwjgl.system.Struct
    implements org.lwjgl.system.NativeResource
    Structure specifying parameters returned to the callback.
    Description

    memoryObjectId is used to avoid double-counting on the same memory object.

    If an internally-allocated device memory object or a VkDeviceMemory cannot be exported, memoryObjectId must be unique in the VkDevice.

    If an internally-allocated device memory object or a VkDeviceMemory supports being exported, memoryObjectId must be unique system wide.

    If an internal device memory object or a VkDeviceMemory is backed by an imported external memory object, memoryObjectId must be unique system wide.

    Note

    This structure should only be considered valid during the lifetime of the triggered callback.

    For DEVICE_MEMORY_REPORT_EVENT_TYPE_ALLOCATE_EXT and DEVICE_MEMORY_REPORT_EVENT_TYPE_IMPORT_EXT events, objectHandle usually will not yet exist when the application or tool receives the callback. objectHandle will only exist when the create or allocate call that triggered the event returns, and if the allocation or import ends up failing objectHandle will not ever exist.

    Valid Usage (Implicit)

    Layout

    
     struct VkDeviceMemoryReportCallbackDataEXT {
         VkStructureType sType();
         void * pNext();
         VkDeviceMemoryReportFlagsEXT flags();
         VkDeviceMemoryReportEventTypeEXT type();
         uint64_t memoryObjectId();
         VkDeviceSize size();
         VkObjectType objectType();
         uint64_t objectHandle();
         uint32_t heapIndex();
     }