Package org.lwjgl.vulkan
Class VkExternalMemoryProperties
java.lang.Object
org.lwjgl.system.Pointer.Default
org.lwjgl.system.Struct<VkExternalMemoryProperties>
org.lwjgl.vulkan.VkExternalMemoryProperties
- All Implemented Interfaces:
org.lwjgl.system.Pointer
- Direct Known Subclasses:
VkExternalMemoryPropertiesKHR
Structure specifying external memory handle type capabilities.
Description
compatibleHandleTypes must include at least handleType. Inclusion of a handle type in compatibleHandleTypes does not imply the values returned in VkImageFormatProperties2 will be the same when VkPhysicalDeviceExternalImageFormatInfo::handleType is set to that type. The application is responsible for querying the capabilities of all handle types intended for concurrent use in a single image and intersecting them to obtain the compatible set of capabilities.
See Also
VkExternalBufferProperties, VkExternalImageFormatProperties
Layout
struct VkExternalMemoryProperties {
VkExternalMemoryFeatureFlags externalMemoryFeatures();
VkExternalMemoryHandleTypeFlags exportFromImportedHandleTypes();
VkExternalMemoryHandleTypeFlags compatibleHandleTypes();
}-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class org.lwjgl.system.Struct
org.lwjgl.system.Struct.StructValidationNested classes/interfaces inherited from interface org.lwjgl.system.Pointer
org.lwjgl.system.Pointer.Default -
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intThe struct alignment in bytes.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct member offsets.static final intThe struct size in bytes.Fields inherited from interface org.lwjgl.system.Pointer
BITS32, BITS64, CLONG_SHIFT, CLONG_SIZE, POINTER_SHIFT, POINTER_SIZE -
Constructor Summary
ConstructorsConstructorDescriptionVkExternalMemoryProperties(ByteBuffer container) Creates aVkExternalMemoryPropertiesinstance at the current position of the specifiedByteBuffercontainer. -
Method Summary
Modifier and TypeMethodDescriptioninta bitmask ofVkExternalMemoryHandleTypeFlagBitsspecifying handle types which can be specified at the same time ashandleTypewhen creating an image compatible with external memory.static VkExternalMemoryPropertiescreate(long address) Returns a newVkExternalMemoryPropertiesinstance for the specified memory address.create(long address, int capacity) Create aVkExternalMemoryProperties.Bufferinstance at the specified memory.static @Nullable VkExternalMemoryPropertiescreateSafe(long address) static @Nullable VkExternalMemoryProperties.BuffercreateSafe(long address, int capacity) inta bitmask ofVkExternalMemoryHandleTypeFlagBitsspecifying which types of imported handlehandleTypecan be exported from.inta bitmask ofVkExternalMemoryFeatureFlagBitsspecifying the features ofhandleType.static intncompatibleHandleTypes(long struct) Unsafe version ofcompatibleHandleTypes().static intnexportFromImportedHandleTypes(long struct) Unsafe version ofexportFromImportedHandleTypes().static intnexternalMemoryFeatures(long struct) Unsafe version ofexternalMemoryFeatures().intsizeof()Methods inherited from class org.lwjgl.system.Struct
clear, free, isNull, validate, validateMethods inherited from class org.lwjgl.system.Pointer.Default
address, equals, hashCode, toString
-
Field Details
-
SIZEOF
public static final int SIZEOFThe struct size in bytes. -
ALIGNOF
public static final int ALIGNOFThe struct alignment in bytes. -
EXTERNALMEMORYFEATURES
public static final int EXTERNALMEMORYFEATURESThe struct member offsets. -
EXPORTFROMIMPORTEDHANDLETYPES
public static final int EXPORTFROMIMPORTEDHANDLETYPESThe struct member offsets. -
COMPATIBLEHANDLETYPES
public static final int COMPATIBLEHANDLETYPESThe struct member offsets.
-
-
Constructor Details
-
VkExternalMemoryProperties
Creates aVkExternalMemoryPropertiesinstance at the current position of the specifiedByteBuffercontainer. Changes to the buffer's content will be visible to the struct instance and vice versa.The created instance holds a strong reference to the container object.
-
-
Method Details
-
sizeof
public int sizeof()- Specified by:
sizeofin classorg.lwjgl.system.Struct<VkExternalMemoryProperties>
-
externalMemoryFeatures
public int externalMemoryFeatures()a bitmask ofVkExternalMemoryFeatureFlagBitsspecifying the features ofhandleType. -
exportFromImportedHandleTypes
public int exportFromImportedHandleTypes()a bitmask ofVkExternalMemoryHandleTypeFlagBitsspecifying which types of imported handlehandleTypecan be exported from. -
compatibleHandleTypes
public int compatibleHandleTypes()a bitmask ofVkExternalMemoryHandleTypeFlagBitsspecifying handle types which can be specified at the same time ashandleTypewhen creating an image compatible with external memory. -
create
Returns a newVkExternalMemoryPropertiesinstance for the specified memory address. -
createSafe
-
create
Create aVkExternalMemoryProperties.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
-
nexternalMemoryFeatures
public static int nexternalMemoryFeatures(long struct) Unsafe version ofexternalMemoryFeatures(). -
nexportFromImportedHandleTypes
public static int nexportFromImportedHandleTypes(long struct) Unsafe version ofexportFromImportedHandleTypes(). -
ncompatibleHandleTypes
public static int ncompatibleHandleTypes(long struct) Unsafe version ofcompatibleHandleTypes().
-