Package org.lwjgl.vulkan
Class VkExportMemoryWin32HandleInfoKHR
- java.lang.Object
-
- org.lwjgl.system.Pointer.Default
-
- org.lwjgl.system.Struct
-
- org.lwjgl.vulkan.VkExportMemoryWin32HandleInfoKHR
-
- All Implemented Interfaces:
java.lang.AutoCloseable,org.lwjgl.system.NativeResource,org.lwjgl.system.Pointer
public class VkExportMemoryWin32HandleInfoKHR extends org.lwjgl.system.Struct implements org.lwjgl.system.NativeResourceStructure specifying additional attributes of Windows handles exported from a memory.Description
If this structure is not present, or if
pAttributesis set toNULL, 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 beDXGI_SHARED_RESOURCE_READ|DXGI_SHARED_RESOURCE_WRITEfor handles of the following types:
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BITAnd
GENERIC_ALLfor handles of the following types:
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BITEXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BITValid Usage
- If
VkExportMemoryAllocateInfo::handleTypesdoes not includeEXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT,EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT,EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT, orEXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT,VkExportMemoryWin32HandleInfoKHRmust not be in thepNextchain ofVkMemoryAllocateInfo.
Valid Usage (Implicit)
sTypemust beSTRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR- If
pAttributesis notNULL,pAttributesmust be a valid pointer to a validSECURITY_ATTRIBUTESvalue
Member documentation
sType– the type of this structure.pNext–NULLor a pointer to an extension-specific structure.pAttributes– a pointer to a WindowsSECURITY_ATTRIBUTESstructure specifying security attributes of the handle.dwAccess– aDWORDspecifying access rights of the handle.name– a NULL-terminated UTF-16 string to associate with the underlying resource referenced by NT handles exported from the created memory.
Layout
struct VkExportMemoryWin32HandleInfoKHR { VkStructureType sType; void const * pNext;SECURITY_ATTRIBUTESconst * pAttributes; DWORD dwAccess; LPCWSTR name; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classVkExportMemoryWin32HandleInfoKHR.BufferAn array ofVkExportMemoryWin32HandleInfoKHRstructs.
-
Constructor Summary
Constructors Constructor Description VkExportMemoryWin32HandleInfoKHR(java.nio.ByteBuffer container)Creates aVkExportMemoryWin32HandleInfoKHRinstance at the current position of the specifiedByteBuffercontainer.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkExportMemoryWin32HandleInfoKHRcalloc()Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withmemCalloc.static VkExportMemoryWin32HandleInfoKHR.Buffercalloc(int capacity)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withmemCalloc.static VkExportMemoryWin32HandleInfoKHRcallocStack()Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR.BuffercallocStack(int capacity)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR.BuffercallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHRcallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHRcreate()Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withBufferUtils.static VkExportMemoryWin32HandleInfoKHR.Buffercreate(int capacity)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withBufferUtils.static VkExportMemoryWin32HandleInfoKHRcreate(long address)Returns a newVkExportMemoryWin32HandleInfoKHRinstance for the specified memory address.static VkExportMemoryWin32HandleInfoKHR.Buffercreate(long address, int capacity)Create aVkExportMemoryWin32HandleInfoKHR.Bufferinstance at the specified memory.static VkExportMemoryWin32HandleInfoKHRcreateSafe(long address)static VkExportMemoryWin32HandleInfoKHR.BuffercreateSafe(long address, int capacity)intdwAccess()Returns the value of thedwAccessfield.VkExportMemoryWin32HandleInfoKHRdwAccess(int value)Sets the specified value to thedwAccessfield.static VkExportMemoryWin32HandleInfoKHRmalloc()Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withmemAlloc.static VkExportMemoryWin32HandleInfoKHR.Buffermalloc(int capacity)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withmemAlloc.static VkExportMemoryWin32HandleInfoKHRmallocStack()Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the thread-localMemoryStack.static VkExportMemoryWin32HandleInfoKHR.BuffermallocStack(int capacity)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the thread-localMemoryStack.static VkExportMemoryWin32HandleInfoKHR.BuffermallocStack(int capacity, org.lwjgl.system.MemoryStack stack)Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.static VkExportMemoryWin32HandleInfoKHRmallocStack(org.lwjgl.system.MemoryStack stack)Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the specifiedMemoryStack.java.nio.ByteBuffername()Returns aByteBufferview of the null-terminated string pointed to by thenamefield.VkExportMemoryWin32HandleInfoKHRname(java.nio.ByteBuffer value)Sets the address of the specified encoded string to thenamefield.java.lang.StringnameString()Decodes the null-terminated string pointed to by thenamefield.static intndwAccess(long struct)Unsafe version ofdwAccess().static voidndwAccess(long struct, int value)Unsafe version ofdwAccess.static java.nio.ByteBuffernname(long struct)Unsafe version ofname().static voidnname(long struct, java.nio.ByteBuffer value)Unsafe version ofname.static java.lang.StringnnameString(long struct)Unsafe version ofnameString().static org.lwjgl.system.windows.SECURITY_ATTRIBUTESnpAttributes(long struct)Unsafe version ofpAttributes().static voidnpAttributes(long struct, org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)Unsafe version ofpAttributes.static longnpNext(long struct)Unsafe version ofpNext().static voidnpNext(long struct, long value)Unsafe version ofpNext.static intnsType(long struct)Unsafe version ofsType().static voidnsType(long struct, int value)Unsafe version ofsType.org.lwjgl.system.windows.SECURITY_ATTRIBUTESpAttributes()Returns aSECURITY_ATTRIBUTESview of the struct pointed to by thepAttributesfield.VkExportMemoryWin32HandleInfoKHRpAttributes(org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)Sets the address of the specifiedSECURITY_ATTRIBUTESto thepAttributesfield.longpNext()Returns the value of thepNextfield.VkExportMemoryWin32HandleInfoKHRpNext(long value)Sets the specified value to thepNextfield.VkExportMemoryWin32HandleInfoKHRset(int sType, long pNext, org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes, int dwAccess, java.nio.ByteBuffer name)Initializes this struct with the specified values.VkExportMemoryWin32HandleInfoKHRset(VkExportMemoryWin32HandleInfoKHR src)Copies the specified struct data to this struct.intsizeof()intsType()Returns the value of thesTypefield.VkExportMemoryWin32HandleInfoKHRsType(int value)Sets the specified value to thesTypefield.static voidvalidate(long struct)Validates pointer members that should not beNULL.static voidvalidate(long array, int count)Callsvalidate(long)for each struct contained in the specified struct array.
-
-
-
Constructor Detail
-
VkExportMemoryWin32HandleInfoKHR
public VkExportMemoryWin32HandleInfoKHR(java.nio.ByteBuffer container)
Creates aVkExportMemoryWin32HandleInfoKHRinstance 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 Detail
-
sizeof
public int sizeof()
- Specified by:
sizeofin classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesTypefield.
-
pNext
public long pNext()
Returns the value of thepNextfield.
-
pAttributes
@Nullable public org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes()
Returns aSECURITY_ATTRIBUTESview of the struct pointed to by thepAttributesfield.
-
dwAccess
public int dwAccess()
Returns the value of thedwAccessfield.
-
name
public java.nio.ByteBuffer name()
Returns aByteBufferview of the null-terminated string pointed to by thenamefield.
-
nameString
public java.lang.String nameString()
Decodes the null-terminated string pointed to by thenamefield.
-
sType
public VkExportMemoryWin32HandleInfoKHR sType(int value)
Sets the specified value to thesTypefield.
-
pNext
public VkExportMemoryWin32HandleInfoKHR pNext(long value)
Sets the specified value to thepNextfield.
-
pAttributes
public VkExportMemoryWin32HandleInfoKHR pAttributes(@Nullable org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
Sets the address of the specifiedSECURITY_ATTRIBUTESto thepAttributesfield.
-
dwAccess
public VkExportMemoryWin32HandleInfoKHR dwAccess(int value)
Sets the specified value to thedwAccessfield.
-
name
public VkExportMemoryWin32HandleInfoKHR name(java.nio.ByteBuffer value)
Sets the address of the specified encoded string to thenamefield.
-
set
public VkExportMemoryWin32HandleInfoKHR set(int sType, long pNext, @Nullable org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes, int dwAccess, java.nio.ByteBuffer name)
Initializes this struct with the specified values.
-
set
public VkExportMemoryWin32HandleInfoKHR set(VkExportMemoryWin32HandleInfoKHR src)
Copies the specified struct data to this struct.- Parameters:
src- the source struct- Returns:
- this struct
-
malloc
public static VkExportMemoryWin32HandleInfoKHR malloc()
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withmemAlloc. The instance must be explicitly freed.
-
calloc
public static VkExportMemoryWin32HandleInfoKHR calloc()
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withmemCalloc. The instance must be explicitly freed.
-
create
public static VkExportMemoryWin32HandleInfoKHR create()
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated withBufferUtils.
-
create
public static VkExportMemoryWin32HandleInfoKHR create(long address)
Returns a newVkExportMemoryWin32HandleInfoKHRinstance for the specified memory address.
-
createSafe
@Nullable public static VkExportMemoryWin32HandleInfoKHR createSafe(long address)
-
malloc
public static VkExportMemoryWin32HandleInfoKHR.Buffer malloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withmemAlloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
calloc
public static VkExportMemoryWin32HandleInfoKHR.Buffer calloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withmemCalloc. The instance must be explicitly freed.- Parameters:
capacity- the buffer capacity
-
create
public static VkExportMemoryWin32HandleInfoKHR.Buffer create(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated withBufferUtils.- Parameters:
capacity- the buffer capacity
-
create
public static VkExportMemoryWin32HandleInfoKHR.Buffer create(long address, int capacity)
Create aVkExportMemoryWin32HandleInfoKHR.Bufferinstance at the specified memory.- Parameters:
address- the memory addresscapacity- the buffer capacity
-
createSafe
@Nullable public static VkExportMemoryWin32HandleInfoKHR.Buffer createSafe(long address, int capacity)
-
mallocStack
public static VkExportMemoryWin32HandleInfoKHR mallocStack()
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the thread-localMemoryStack.
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR callocStack()
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.
-
mallocStack
public static VkExportMemoryWin32HandleInfoKHR mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocate
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHRinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocate
-
mallocStack
public static VkExportMemoryWin32HandleInfoKHR.Buffer mallocStack(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the thread-localMemoryStack.- Parameters:
capacity- the buffer capacity
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR.Buffer callocStack(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the thread-localMemoryStackand initializes all its bits to zero.- Parameters:
capacity- the buffer capacity
-
mallocStack
public static VkExportMemoryWin32HandleInfoKHR.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the specifiedMemoryStack.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR.Bufferinstance allocated on the specifiedMemoryStackand initializes all its bits to zero.- Parameters:
stack- the stack from which to allocatecapacity- the buffer capacity
-
nsType
public static int nsType(long struct)
Unsafe version ofsType().
-
npNext
public static long npNext(long struct)
Unsafe version ofpNext().
-
npAttributes
@Nullable public static org.lwjgl.system.windows.SECURITY_ATTRIBUTES npAttributes(long struct)
Unsafe version ofpAttributes().
-
ndwAccess
public static int ndwAccess(long struct)
Unsafe version ofdwAccess().
-
nname
public static java.nio.ByteBuffer nname(long struct)
Unsafe version ofname().
-
nnameString
public static java.lang.String nnameString(long struct)
Unsafe version ofnameString().
-
nsType
public static void nsType(long struct, int value)Unsafe version ofsType.
-
npNext
public static void npNext(long struct, long value)Unsafe version ofpNext.
-
npAttributes
public static void npAttributes(long struct, @Nullable org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)Unsafe version ofpAttributes.
-
ndwAccess
public static void ndwAccess(long struct, int value)Unsafe version ofdwAccess.
-
nname
public static void nname(long struct, java.nio.ByteBuffer value)Unsafe version ofname.
-
validate
public static void validate(long struct)
Validates pointer members that should not beNULL.- Parameters:
struct- the struct to validate
-
validate
public static void validate(long array, int count)Callsvalidate(long)for each struct contained in the specified struct array.- Parameters:
array- the struct array to validatecount- the number of structs inarray
-
-