public class CUDA_EXTERNAL_MEMORY_HANDLE_DESC
extends org.lwjgl.system.Struct
implements org.lwjgl.system.NativeResource
type – Type of the handlehandle
handle.fd – File descriptor referencing the memory object. Valid when type is ::CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_FDhandle.win32 –
Win32 handle referencing the semaphore object. Valid when type is one of the following:
- ::CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32
- ::CU_EXTERNAL_MEMORY_HANDLE_TYPE_OPAQUE_WIN32_KMT
- ::CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_HEAP
- ::CU_EXTERNAL_MEMORY_HANDLE_TYPE_D3D12_RESOURCE
Exactly one of 'handle' and 'name' must be non-NULL. If type is ::CU_EXTERNAL_SEMAPHORE_HANDLE_TYPE_OPAQUE_WIN32_KMT then 'name' must be NULL.
handle.win32.handle – Valid NT handle. Must be NULL if 'name' is non-NULLhandle.win32.name – Name of a valid memory object. Must be NULL if 'handle' is non-NULL.size – Size of the memory allocationflags – Flags must either be zero or ::CUDA_EXTERNAL_MEMORY_DEDICATED
struct CUDA_EXTERNAL_MEMORY_HANDLE_DESC {
CUexternalMemoryHandleType type;
union {
int fd;
struct {
void * handle;
void const * name;
} win32;
} handle;
unsigned long long size;
unsigned int flags;
unsigned int reserved[16];
}| Modifier and Type | Class and Description |
|---|---|
static class |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer
An array of
CUDA_EXTERNAL_MEMORY_HANDLE_DESC structs. |
| Modifier and Type | Field and Description |
|---|---|
static int |
ALIGNOF
The struct alignment in bytes.
|
static int |
FLAGS
The struct member offsets.
|
static int |
HANDLE
The struct member offsets.
|
static int |
HANDLE_FD
The struct member offsets.
|
static int |
HANDLE_WIN32
The struct member offsets.
|
static int |
HANDLE_WIN32_HANDLE
The struct member offsets.
|
static int |
HANDLE_WIN32_NAME
The struct member offsets.
|
static int |
RESERVED
The struct member offsets.
|
static int |
SIZE
The struct member offsets.
|
static int |
SIZEOF
The struct size in bytes.
|
static int |
TYPE
The struct member offsets.
|
| Constructor and Description |
|---|
CUDA_EXTERNAL_MEMORY_HANDLE_DESC(java.nio.ByteBuffer container)
Creates a
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance at the current position of the specified ByteBuffer container. |
| Modifier and Type | Method and Description |
|---|---|
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
calloc()
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with memCalloc. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
calloc(int capacity)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with memCalloc. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
callocStack()
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
callocStack(int capacity)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
callocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
callocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the specified MemoryStack and initializes all its bits to zero. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
create()
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with BufferUtils. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
create(int capacity)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with BufferUtils. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
create(long address)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance for the specified memory address. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
create(long address,
int capacity)
Create a
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance at the specified memory. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
createSafe(long address)
|
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
createSafe(long address,
int capacity)
|
int |
flags()
Returns the value of the
flags field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
flags(int value)
Sets the specified value to the
flags field. |
int |
handle_fd()
Returns the value of the
handle.fd field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
handle_fd(int value)
Sets the specified value to the
handle.fd field. |
long |
handle_win32_handle()
Returns the value of the
handle.win32.handle field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
handle_win32_handle(long value)
Sets the specified value to the
handle.win32.handle field. |
long |
handle_win32_name()
Returns the value of the
handle.win32.name field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
handle_win32_name(long value)
Sets the specified value to the
handle.win32.name field. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
malloc()
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with memAlloc. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
malloc(int capacity)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with memAlloc. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
mallocStack()
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the thread-local MemoryStack. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
mallocStack(int capacity)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the thread-local MemoryStack. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer |
mallocStack(int capacity,
org.lwjgl.system.MemoryStack stack)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the specified MemoryStack. |
static CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
mallocStack(org.lwjgl.system.MemoryStack stack)
Returns a new
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the specified MemoryStack. |
static int |
nflags(long struct)
Unsafe version of
flags(). |
static void |
nflags(long struct,
int value)
Unsafe version of
flags. |
static int |
nhandle_fd(long struct)
Unsafe version of
handle_fd(). |
static void |
nhandle_fd(long struct,
int value)
Unsafe version of
handle_fd. |
static long |
nhandle_win32_handle(long struct)
Unsafe version of
handle_win32_handle(). |
static void |
nhandle_win32_handle(long struct,
long value)
Unsafe version of
handle_win32_handle. |
static long |
nhandle_win32_name(long struct)
Unsafe version of
handle_win32_name(). |
static void |
nhandle_win32_name(long struct,
long value)
Unsafe version of
handle_win32_name. |
static java.nio.IntBuffer |
nreserved(long struct)
Unsafe version of
reserved(). |
static int |
nreserved(long struct,
int index)
Unsafe version of
reserved. |
static void |
nreserved(long struct,
java.nio.IntBuffer value)
Unsafe version of
reserved. |
static void |
nreserved(long struct,
int index,
int value)
Unsafe version of
reserved. |
static long |
nsize(long struct)
Unsafe version of
size(). |
static void |
nsize(long struct,
long value)
Unsafe version of
size. |
static int |
ntype(long struct)
Unsafe version of
type(). |
static void |
ntype(long struct,
int value)
Unsafe version of
type. |
java.nio.IntBuffer |
reserved()
Returns a
IntBuffer view of the reserved field. |
int |
reserved(int index)
Returns the value at the specified index of the
reserved field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
reserved(java.nio.IntBuffer value)
Copies the specified
IntBuffer to the reserved field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
reserved(int index,
int value)
Sets the specified value at the specified index of the
reserved field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
set(CUDA_EXTERNAL_MEMORY_HANDLE_DESC src)
Copies the specified struct data to this struct.
|
long |
size()
Returns the value of the
size field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
size(long value)
Sets the specified value to the
size field. |
int |
sizeof() |
int |
type()
Returns the value of the
type field. |
CUDA_EXTERNAL_MEMORY_HANDLE_DESC |
type(int value)
Sets the specified value to the
type field. |
public static final int SIZEOF
public static final int ALIGNOF
public static final int TYPE
public static final int HANDLE
public static final int HANDLE_FD
public static final int HANDLE_WIN32
public static final int HANDLE_WIN32_HANDLE
public static final int HANDLE_WIN32_NAME
public static final int SIZE
public static final int FLAGS
public static final int RESERVED
public CUDA_EXTERNAL_MEMORY_HANDLE_DESC(java.nio.ByteBuffer container)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance at the current position of the specified ByteBuffer 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.
public int sizeof()
sizeof in class org.lwjgl.system.Structpublic int type()
type field.public int handle_fd()
handle.fd field.public long handle_win32_handle()
handle.win32.handle field.public long handle_win32_name()
handle.win32.name field.public long size()
size field.public int flags()
flags field.public java.nio.IntBuffer reserved()
IntBuffer view of the reserved field.public int reserved(int index)
reserved field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC type(int value)
type field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC handle_fd(int value)
handle.fd field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC handle_win32_handle(long value)
handle.win32.handle field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC handle_win32_name(long value)
handle.win32.name field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC size(long value)
size field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC flags(int value)
flags field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC reserved(java.nio.IntBuffer value)
IntBuffer to the reserved field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC reserved(int index, int value)
reserved field.public CUDA_EXTERNAL_MEMORY_HANDLE_DESC set(CUDA_EXTERNAL_MEMORY_HANDLE_DESC src)
src - the source structpublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC malloc()
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with memAlloc. The instance must be explicitly freed.public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC calloc()
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with memCalloc. The instance must be explicitly freed.public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC create()
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated with BufferUtils.public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC create(long address)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance for the specified memory address.@Nullable public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC createSafe(long address)
public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer malloc(int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with memAlloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer calloc(int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with memCalloc. The instance must be explicitly freed.capacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer create(int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated with BufferUtils.capacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer create(long address, int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance at the specified memory.address - the memory addresscapacity - the buffer capacity@Nullable public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer createSafe(long address, int capacity)
public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC mallocStack()
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the thread-local MemoryStack.public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC callocStack()
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the thread-local MemoryStack and initializes all its bits to zero.public static CUDA_EXTERNAL_MEMORY_HANDLE_DESC mallocStack(org.lwjgl.system.MemoryStack stack)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the specified MemoryStack.stack - the stack from which to allocatepublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC callocStack(org.lwjgl.system.MemoryStack stack)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatepublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer mallocStack(int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the thread-local MemoryStack.capacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer callocStack(int capacity)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the thread-local MemoryStack and initializes all its bits to zero.capacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer mallocStack(int capacity, org.lwjgl.system.MemoryStack stack)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the specified MemoryStack.stack - the stack from which to allocatecapacity - the buffer capacitypublic static CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer callocStack(int capacity, org.lwjgl.system.MemoryStack stack)
CUDA_EXTERNAL_MEMORY_HANDLE_DESC.Buffer instance allocated on the specified MemoryStack and initializes all its bits to zero.stack - the stack from which to allocatecapacity - the buffer capacitypublic static int ntype(long struct)
type().public static int nhandle_fd(long struct)
handle_fd().public static long nhandle_win32_handle(long struct)
handle_win32_handle().public static long nhandle_win32_name(long struct)
handle_win32_name().public static long nsize(long struct)
size().public static int nflags(long struct)
flags().public static java.nio.IntBuffer nreserved(long struct)
reserved().public static int nreserved(long struct,
int index)
reserved.public static void ntype(long struct,
int value)
type.public static void nhandle_fd(long struct,
int value)
handle_fd.public static void nhandle_win32_handle(long struct,
long value)
handle_win32_handle.public static void nhandle_win32_name(long struct,
long value)
handle_win32_name.public static void nsize(long struct,
long value)
size.public static void nflags(long struct,
int value)
flags.public static void nreserved(long struct,
java.nio.IntBuffer value)
reserved.public static void nreserved(long struct,
int index,
int value)
reserved.Copyright LWJGL. All Rights Reserved. License terms.