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.NativeResource
Structure specifying additional attributes of Windows handles exported from a memory.Description
If this structure is not present, or if
pAttributes
is 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_WRITE
for handles of the following types:
EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_D3D11_TEXTURE_BIT
And
GENERIC_ALL
for handles of the following types:
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP_BIT
EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE_BIT
Valid Usage
- If
VkExportMemoryAllocateInfo
::handleTypes
does 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
,VkExportMemoryWin32HandleInfoKHR
must not be in thepNext
chain ofVkMemoryAllocateInfo
.
Valid Usage (Implicit)
sType
must beSTRUCTURE_TYPE_EXPORT_MEMORY_WIN32_HANDLE_INFO_KHR
- If
pAttributes
is notNULL
,pAttributes
must be a valid pointer to a validSECURITY_ATTRIBUTES
value
Member documentation
sType
– the type of this structure.pNext
–NULL
or a pointer to an extension-specific structure.pAttributes
– a pointer to a WindowsSECURITY_ATTRIBUTES
structure specifying security attributes of the handle.dwAccess
– aDWORD
specifying 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_ATTRIBUTES
const * pAttributes; DWORD dwAccess; LPCWSTR name; }
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
VkExportMemoryWin32HandleInfoKHR.Buffer
An array ofVkExportMemoryWin32HandleInfoKHR
structs.
-
Constructor Summary
Constructors Constructor Description VkExportMemoryWin32HandleInfoKHR(java.nio.ByteBuffer container)
Creates aVkExportMemoryWin32HandleInfoKHR
instance at the current position of the specifiedByteBuffer
container.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static VkExportMemoryWin32HandleInfoKHR
calloc()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated withmemCalloc
.static VkExportMemoryWin32HandleInfoKHR.Buffer
calloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withmemCalloc
.static VkExportMemoryWin32HandleInfoKHR
callocStack()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR.Buffer
callocStack(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR.Buffer
callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the specifiedMemoryStack
and initializes all its bits to zero.static VkExportMemoryWin32HandleInfoKHR
create()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated withBufferUtils
.static VkExportMemoryWin32HandleInfoKHR.Buffer
create(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withBufferUtils
.static VkExportMemoryWin32HandleInfoKHR
create(long address)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance for the specified memory address.static VkExportMemoryWin32HandleInfoKHR.Buffer
create(long address, int capacity)
Create aVkExportMemoryWin32HandleInfoKHR.Buffer
instance at the specified memory.static VkExportMemoryWin32HandleInfoKHR
createSafe(long address)
static VkExportMemoryWin32HandleInfoKHR.Buffer
createSafe(long address, int capacity)
int
dwAccess()
Returns the value of thedwAccess
field.VkExportMemoryWin32HandleInfoKHR
dwAccess(int value)
Sets the specified value to thedwAccess
field.static VkExportMemoryWin32HandleInfoKHR
malloc()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated withmemAlloc
.static VkExportMemoryWin32HandleInfoKHR.Buffer
malloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withmemAlloc
.static VkExportMemoryWin32HandleInfoKHR
mallocStack()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the thread-localMemoryStack
.static VkExportMemoryWin32HandleInfoKHR.Buffer
mallocStack(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
.static VkExportMemoryWin32HandleInfoKHR.Buffer
mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated on the specifiedMemoryStack
.static VkExportMemoryWin32HandleInfoKHR
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the specifiedMemoryStack
.java.nio.ByteBuffer
name()
Returns aByteBuffer
view of the null-terminated string pointed to by thename
field.VkExportMemoryWin32HandleInfoKHR
name(java.nio.ByteBuffer value)
Sets the address of the specified encoded string to thename
field.java.lang.String
nameString()
Decodes the null-terminated string pointed to by thename
field.static int
ndwAccess(long struct)
Unsafe version ofdwAccess()
.static void
ndwAccess(long struct, int value)
Unsafe version ofdwAccess
.static java.nio.ByteBuffer
nname(long struct)
Unsafe version ofname()
.static void
nname(long struct, java.nio.ByteBuffer value)
Unsafe version ofname
.static java.lang.String
nnameString(long struct)
Unsafe version ofnameString()
.static org.lwjgl.system.windows.SECURITY_ATTRIBUTES
npAttributes(long struct)
Unsafe version ofpAttributes()
.static void
npAttributes(long struct, org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
Unsafe version ofpAttributes
.static long
npNext(long struct)
Unsafe version ofpNext()
.static void
npNext(long struct, long value)
Unsafe version ofpNext
.static int
nsType(long struct)
Unsafe version ofsType()
.static void
nsType(long struct, int value)
Unsafe version ofsType
.org.lwjgl.system.windows.SECURITY_ATTRIBUTES
pAttributes()
Returns aSECURITY_ATTRIBUTES
view of the struct pointed to by thepAttributes
field.VkExportMemoryWin32HandleInfoKHR
pAttributes(org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
Sets the address of the specifiedSECURITY_ATTRIBUTES
to thepAttributes
field.long
pNext()
Returns the value of thepNext
field.VkExportMemoryWin32HandleInfoKHR
pNext(long value)
Sets the specified value to thepNext
field.VkExportMemoryWin32HandleInfoKHR
set(int sType, long pNext, org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes, int dwAccess, java.nio.ByteBuffer name)
Initializes this struct with the specified values.VkExportMemoryWin32HandleInfoKHR
set(VkExportMemoryWin32HandleInfoKHR src)
Copies the specified struct data to this struct.int
sizeof()
int
sType()
Returns the value of thesType
field.VkExportMemoryWin32HandleInfoKHR
sType(int value)
Sets the specified value to thesType
field.static void
validate(long struct)
Validates pointer members that should not beNULL
.static void
validate(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 aVkExportMemoryWin32HandleInfoKHR
instance at the current position of the specifiedByteBuffer
container. 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:
sizeof
in classorg.lwjgl.system.Struct
-
sType
public int sType()
Returns the value of thesType
field.
-
pNext
public long pNext()
Returns the value of thepNext
field.
-
pAttributes
@Nullable public org.lwjgl.system.windows.SECURITY_ATTRIBUTES pAttributes()
Returns aSECURITY_ATTRIBUTES
view of the struct pointed to by thepAttributes
field.
-
dwAccess
public int dwAccess()
Returns the value of thedwAccess
field.
-
name
public java.nio.ByteBuffer name()
Returns aByteBuffer
view of the null-terminated string pointed to by thename
field.
-
nameString
public java.lang.String nameString()
Decodes the null-terminated string pointed to by thename
field.
-
sType
public VkExportMemoryWin32HandleInfoKHR sType(int value)
Sets the specified value to thesType
field.
-
pNext
public VkExportMemoryWin32HandleInfoKHR pNext(long value)
Sets the specified value to thepNext
field.
-
pAttributes
public VkExportMemoryWin32HandleInfoKHR pAttributes(@Nullable org.lwjgl.system.windows.SECURITY_ATTRIBUTES value)
Sets the address of the specifiedSECURITY_ATTRIBUTES
to thepAttributes
field.
-
dwAccess
public VkExportMemoryWin32HandleInfoKHR dwAccess(int value)
Sets the specified value to thedwAccess
field.
-
name
public VkExportMemoryWin32HandleInfoKHR name(java.nio.ByteBuffer value)
Sets the address of the specified encoded string to thename
field.
-
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 newVkExportMemoryWin32HandleInfoKHR
instance allocated withmemAlloc
. The instance must be explicitly freed.
-
calloc
public static VkExportMemoryWin32HandleInfoKHR calloc()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated withmemCalloc
. The instance must be explicitly freed.
-
create
public static VkExportMemoryWin32HandleInfoKHR create()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated withBufferUtils
.
-
create
public static VkExportMemoryWin32HandleInfoKHR create(long address)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance for the specified memory address.
-
createSafe
@Nullable public static VkExportMemoryWin32HandleInfoKHR createSafe(long address)
-
malloc
public static VkExportMemoryWin32HandleInfoKHR.Buffer malloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withmemAlloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
calloc
public static VkExportMemoryWin32HandleInfoKHR.Buffer calloc(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withmemCalloc
. The instance must be explicitly freed.- Parameters:
capacity
- the buffer capacity
-
create
public static VkExportMemoryWin32HandleInfoKHR.Buffer create(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated withBufferUtils
.- Parameters:
capacity
- the buffer capacity
-
create
public static VkExportMemoryWin32HandleInfoKHR.Buffer create(long address, int capacity)
Create aVkExportMemoryWin32HandleInfoKHR.Buffer
instance 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 newVkExportMemoryWin32HandleInfoKHR
instance allocated on the thread-localMemoryStack
.
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR callocStack()
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the thread-localMemoryStack
and initializes all its bits to zero.
-
mallocStack
public static VkExportMemoryWin32HandleInfoKHR mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the specifiedMemoryStack
.- Parameters:
stack
- the stack from which to allocate
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR callocStack(org.lwjgl.system.MemoryStack stack)
Returns a newVkExportMemoryWin32HandleInfoKHR
instance allocated on the specifiedMemoryStack
and 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.Buffer
instance allocated on the thread-localMemoryStack
.- Parameters:
capacity
- the buffer capacity
-
callocStack
public static VkExportMemoryWin32HandleInfoKHR.Buffer callocStack(int capacity)
Returns a newVkExportMemoryWin32HandleInfoKHR.Buffer
instance allocated on the thread-localMemoryStack
and 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.Buffer
instance 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.Buffer
instance allocated on the specifiedMemoryStack
and 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
-
-