Top Description Fields Constructors Methods
org.lwjgl.opengles

public Class EXTMemoryObject

extends Object
Class Inheritance
Imports
java.nio.*, org.lwjgl.system.*

Native bindings to the EXT_memory_object extension.

The Vulkan API introduces the concept of explicit memory objects and reusable synchronization objects. This extension brings those concepts to the OpenGL API via two new object types:

Rather than allocating memory as a response to object allocation, memory allocation and binding are two separate operations in Vulkan. This extension allows an OpenGL application to import a Vulkan memory object, and to bind textures and/or buffer objects to it.

No methods to import memory objects are defined here. Separate platform-specific extensions are defined for this purpose.

Semaphores are synchronization primitives that can be waited on and signaled only by the GPU, or in GL terms, in the GL server. They are similar in concept to GL's "sync" objects and EGL's "EGLSync" objects, but different enough that compatibilities between the two are difficult to derive.

Rather than attempt to map Vulkan semaphores on to GL/EGL sync objects to achieve interoperability, this extension introduces a new object, GL semaphores, that map directly to the semantics of Vulkan semaphores. To achieve full image and buffer memory coherence with a Vulkan driver, the commands that manipulate semaphores also allow external usage information to be imported and exported.

Requires GLES 3.0.

Field Summary

Modifier and TypeField and Description
public static final int
public static final int
GL_DEVICE_UUID_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

public static final int
GL_DRIVER_UUID_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

public static final int
GL_LINEAR_TILING_EXT

Returned in the params parameter of GetInternalFormativ or GetInternalFormati64v when the pname parameter is TILING_TYPES_EXT, returned in the params parameter of GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT, and accepted by the params parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT.

public static final int
GL_NUM_DEVICE_UUIDS_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

public static final int
GL_NUM_TILING_TYPES_EXT

Accepted by the pname parameter of GetInternalFormativ or GetInternalFormati64v.

public static final int
GL_OPTIMAL_TILING_EXT

Returned in the params parameter of GetInternalFormativ or GetInternalFormati64v when the pname parameter is TILING_TYPES_EXT, returned in the params parameter of GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT, and accepted by the params parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT.

public static final int
public static final int
GL_TEXTURE_TILING_EXT

Accepted by the pname parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v, GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v.

public static final int
GL_TILING_TYPES_EXT

Accepted by the pname parameter of GetInternalFormativ or GetInternalFormati64v.

public static final int
GL_UUID_SIZE_EXT

Constant values.

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static native void
glBufferStorageMemEXT(int target, long size, int memory, long offset)

public static void
public static int
public static void
glCreateMemoryObjectsEXT(int[] memoryObjects)

Array version of: CreateMemoryObjectsEXT

public static void
public static void
glDeleteMemoryObjectsEXT(int memoryObject)

public static void
glDeleteMemoryObjectsEXT(int[] memoryObjects)

Array version of: DeleteMemoryObjectsEXT

public static int
glGetMemoryObjectParameteriEXT(int memoryObject, int pname)

public static void
glGetMemoryObjectParameterivEXT(int memoryObject, int pname, IntBuffer params)

public static void
glGetMemoryObjectParameterivEXT(int memoryObject, int pname, int[] params)

Array version of: GetMemoryObjectParameterivEXT

public static void
glGetUnsignedBytei_vEXT(int target, int index, ByteBuffer data)

public static void
public static native boolean
glIsMemoryObjectEXT(int memoryObject)

public static void
glMemoryObjectParameteriEXT(int memoryObject, int pname, int param)

public static void
glMemoryObjectParameterivEXT(int memoryObject, int pname, IntBuffer params)

public static void
glMemoryObjectParameterivEXT(int memoryObject, int pname, int[] params)

Array version of: MemoryObjectParameterivEXT

public static native void
glNamedBufferStorageMemEXT(int buffer, long size, int memory, long offset)

public static native void
glTexStorageMem2DEXT(int target, int levels, int internalFormat, int width, int height, int memory, long offset)

public static native void
glTexStorageMem2DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset)

public static native void
glTexStorageMem3DEXT(int target, int levels, int internalFormat, int width, int height, int depth, int memory, long offset)

public static native void
glTexStorageMem3DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset)

public static native void
glTextureStorageMem2DEXT(int texture, int levels, int internalFormat, int width, int height, int memory, long offset)

public static native void
glTextureStorageMem2DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset)

public static native void
glTextureStorageMem3DEXT(int texture, int levels, int internalFormat, int width, int height, int depth, int memory, long offset)

public static native void
glTextureStorageMem3DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset)

public static native void
nglCreateMemoryObjectsEXT(int n, long memoryObjects)

public static native void
nglDeleteMemoryObjectsEXT(int n, long memoryObjects)

public static native void
nglGetMemoryObjectParameterivEXT(int memoryObject, int pname, long params)

public static native void
nglGetUnsignedBytei_vEXT(int target, int index, long data)

public static native void
nglGetUnsignedBytevEXT(int pname, long data)

public static native void
nglMemoryObjectParameterivEXT(int memoryObject, int pname, long params)

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

GL_DEDICATED_MEMORY_OBJECT_EXTback to summary
public static final int GL_DEDICATED_MEMORY_OBJECT_EXT

Accepted by the pname parameter of MemoryObjectParameterivEXT, and GetMemoryObjectParameterivEXT.

GL_DEVICE_UUID_EXTback to summary
public static final int GL_DEVICE_UUID_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

GL_DRIVER_UUID_EXTback to summary
public static final int GL_DRIVER_UUID_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

GL_LINEAR_TILING_EXTback to summary
public static final int GL_LINEAR_TILING_EXT

Returned in the params parameter of GetInternalFormativ or GetInternalFormati64v when the pname parameter is TILING_TYPES_EXT, returned in the params parameter of GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT, and accepted by the params parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT.

GL_NUM_DEVICE_UUIDS_EXTback to summary
public static final int GL_NUM_DEVICE_UUIDS_EXT

Accepted by the pname parameter of GetBooleanv, GetDoublev, GetFloatv, GetIntegerv, GetInteger64v, GetUnsignedBytevEXT, and the target parameter of GetBooleani_v, GetIntegeri_v,GetFloati_v, GetDoublei_v, GetInteger64i_v, and GetUnsignedBytei_vEXT.

GL_NUM_TILING_TYPES_EXTback to summary
public static final int GL_NUM_TILING_TYPES_EXT

Accepted by the pname parameter of GetInternalFormativ or GetInternalFormati64v.

GL_OPTIMAL_TILING_EXTback to summary
public static final int GL_OPTIMAL_TILING_EXT

Returned in the params parameter of GetInternalFormativ or GetInternalFormati64v when the pname parameter is TILING_TYPES_EXT, returned in the params parameter of GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT, and accepted by the params parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v when the pname parameter is TEXTURE_TILING_EXT.

GL_PROTECTED_MEMORY_OBJECT_EXTback to summary
public static final int GL_PROTECTED_MEMORY_OBJECT_EXT

Accepted by the pname parameter of MemoryObjectParameterivEXT, and GetMemoryObjectParameterivEXT.

GL_TEXTURE_TILING_EXTback to summary
public static final int GL_TEXTURE_TILING_EXT

Accepted by the pname parameter of TexParameter{ifx}{v}, TexParameterI{i ui}v, TextureParameter{if}{v}, TextureParameterI{i ui}v, GetTexParameter{if}v, GetTexParameterI{i ui}v, GetTextureParameter{if}v, and GetTextureParameterI{i ui}v.

GL_TILING_TYPES_EXTback to summary
public static final int GL_TILING_TYPES_EXT

Accepted by the pname parameter of GetInternalFormativ or GetInternalFormati64v.

GL_UUID_SIZE_EXTback to summary
public static final int GL_UUID_SIZE_EXT

Constant values.

Constructor Detail

EXTMemoryObjectback to summary
protected EXTMemoryObject()

Method Detail

glBufferStorageMemEXTback to summary
public static native void glBufferStorageMemEXT(int target, long size, int memory, long offset)
glCreateMemoryObjectsEXTback to summary
public static void glCreateMemoryObjectsEXT(IntBuffer memoryObjects)
glCreateMemoryObjectsEXTback to summary
public static int glCreateMemoryObjectsEXT()
Annotations
@NativeType:void
glCreateMemoryObjectsEXTback to summary
public static void glCreateMemoryObjectsEXT(int[] memoryObjects)

Array version of: CreateMemoryObjectsEXT

glDeleteMemoryObjectsEXTback to summary
public static void glDeleteMemoryObjectsEXT(IntBuffer memoryObjects)
glDeleteMemoryObjectsEXTback to summary
public static void glDeleteMemoryObjectsEXT(int memoryObject)
glDeleteMemoryObjectsEXTback to summary
public static void glDeleteMemoryObjectsEXT(int[] memoryObjects)

Array version of: DeleteMemoryObjectsEXT

glGetMemoryObjectParameteriEXTback to summary
public static int glGetMemoryObjectParameteriEXT(int memoryObject, int pname)
Annotations
@NativeType:void
glGetMemoryObjectParameterivEXTback to summary
public static void glGetMemoryObjectParameterivEXT(int memoryObject, int pname, IntBuffer params)
glGetMemoryObjectParameterivEXTback to summary
public static void glGetMemoryObjectParameterivEXT(int memoryObject, int pname, int[] params)

Array version of: GetMemoryObjectParameterivEXT

glGetUnsignedBytei_vEXTback to summary
public static void glGetUnsignedBytei_vEXT(int target, int index, ByteBuffer data)
glGetUnsignedBytevEXTback to summary
public static void glGetUnsignedBytevEXT(int pname, ByteBuffer data)
glIsMemoryObjectEXTback to summary
public static native boolean glIsMemoryObjectEXT(int memoryObject)
Annotations
@NativeType:GLboolean
glMemoryObjectParameteriEXTback to summary
public static void glMemoryObjectParameteriEXT(int memoryObject, int pname, int param)
glMemoryObjectParameterivEXTback to summary
public static void glMemoryObjectParameterivEXT(int memoryObject, int pname, IntBuffer params)
glMemoryObjectParameterivEXTback to summary
public static void glMemoryObjectParameterivEXT(int memoryObject, int pname, int[] params)

Array version of: MemoryObjectParameterivEXT

glNamedBufferStorageMemEXTback to summary
public static native void glNamedBufferStorageMemEXT(int buffer, long size, int memory, long offset)
glTexStorageMem2DEXTback to summary
public static native void glTexStorageMem2DEXT(int target, int levels, int internalFormat, int width, int height, int memory, long offset)
glTexStorageMem2DMultisampleEXTback to summary
public static native void glTexStorageMem2DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset)
glTexStorageMem3DEXTback to summary
public static native void glTexStorageMem3DEXT(int target, int levels, int internalFormat, int width, int height, int depth, int memory, long offset)
glTexStorageMem3DMultisampleEXTback to summary
public static native void glTexStorageMem3DMultisampleEXT(int target, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset)
glTextureStorageMem2DEXTback to summary
public static native void glTextureStorageMem2DEXT(int texture, int levels, int internalFormat, int width, int height, int memory, long offset)
glTextureStorageMem2DMultisampleEXTback to summary
public static native void glTextureStorageMem2DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, boolean fixedSampleLocations, int memory, long offset)
glTextureStorageMem3DEXTback to summary
public static native void glTextureStorageMem3DEXT(int texture, int levels, int internalFormat, int width, int height, int depth, int memory, long offset)
glTextureStorageMem3DMultisampleEXTback to summary
public static native void glTextureStorageMem3DMultisampleEXT(int texture, int samples, int internalFormat, int width, int height, int depth, boolean fixedSampleLocations, int memory, long offset)
nglCreateMemoryObjectsEXTback to summary
public static native void nglCreateMemoryObjectsEXT(int n, long memoryObjects)
nglDeleteMemoryObjectsEXTback to summary
public static native void nglDeleteMemoryObjectsEXT(int n, long memoryObjects)
nglGetMemoryObjectParameterivEXTback to summary
public static native void nglGetMemoryObjectParameterivEXT(int memoryObject, int pname, long params)
nglGetUnsignedBytei_vEXTback to summary
public static native void nglGetUnsignedBytei_vEXT(int target, int index, long data)
nglGetUnsignedBytevEXTback to summary
public static native void nglGetUnsignedBytevEXT(int pname, long data)
nglMemoryObjectParameterivEXTback to summary
public static native void nglMemoryObjectParameterivEXT(int memoryObject, int pname, long params)