JOCL v2.6.0-rc-20250722
JOCL, OpenCL® API Binding for Java™ (public API).
com.jogamp.opencl.gl.CLGLContext Class Reference

OpenCL Context supporting JOGL-JOCL interoperablity. More...

Inheritance diagram for com.jogamp.opencl.gl.CLGLContext:
Collaboration diagram for com.jogamp.opencl.gl.CLGLContext:

Public Member Functions

final CLGLBuffer<?> createFromGLBuffer (final int glBuffer, final long glBufferSize, final Mem... flags)
 Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer. More...
 
final CLGLBuffer<?> createFromGLBuffer (final int glBuffer, final long glBufferSize, final int flags)
 Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer. More...
 
final< B extends Buffer > CLGLBuffer< B > createFromGLBuffer (final B directBuffer, final int glBuffer, final long glBufferSize, final Mem... flags)
 Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer. More...
 
final< B extends Buffer > CLGLBuffer< B > createFromGLBuffer (final B directBuffer, final int glBuffer, final long glBufferSize, final int flags)
 Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer. More...
 
final CLGLImage2d<?> createFromGLRenderbuffer (final int glBuffer, final Mem... flags)
 
final CLGLImage2d<?> createFromGLRenderbuffer (final int glBuffer, final int flags)
 
final< B extends Buffer > CLGLImage2d< B > createFromGLRenderbuffer (final B directBuffer, final int glBuffer, final Mem... flags)
 
final< B extends Buffer > CLGLImage2d< B > createFromGLRenderbuffer (final B directBuffer, final int glBuffer, final int flags)
 
final CLGLTexture2d<?> createFromGLTexture2d (final int target, final int texture, final int mipmap, final Mem... flags)
 
final CLGLTexture2d<?> createFromGLTexture2d (final int target, final int texture, final int mipmap, final int flags)
 
final< B extends Buffer > CLGLTexture2d< B > createFromGLTexture2d (final B directBuffer, final int target, final int texture, final int mipmap, final Mem... flags)
 
final< B extends Buffer > CLGLTexture2d< B > createFromGLTexture2d (final B directBuffer, final int target, final int texture, final int mipmap, final int flags)
 
final CLGLTexture3d<?> createFromGLTexture3d (final int target, final int texture, final int mipmap, final Mem... flags)
 
final CLGLTexture3d<?> createFromGLTexture3d (final int target, final int texture, final int mipmap, final int flags)
 
final< B extends Buffer > CLGLTexture3d< B > createFromGLTexture3d (final B directBuffer, final int target, final int texture, final int mipmap, final Mem... flags)
 
final< B extends Buffer > CLGLTexture3d< B > createFromGLTexture3d (final B directBuffer, final int target, final int texture, final int mipmap, final int flags)
 
CL getCL ()
 Return the low level OpenCL interface with OpenGL interoperability. More...
 
GLContext getGLContext ()
 Returns the OpenGL context this context was shared with. More...
 
CLGLContext getContext ()
 Returns the context for this OpenCL object. More...
 
- Public Member Functions inherited from com.jogamp.opencl.CLContext
CLProgram createProgram (final String src)
 Creates a program from the given sources, the returned program is not build yet. More...
 
CLProgram createProgram (final InputStream source) throws IOException
 Creates a program and reads the source from stream, the returned program is not build yet. More...
 
CLProgram createProgram (final Map< CLDevice, byte[]> binaries)
 Creates a program from the given binaries, the program is not build yet. More...
 
final CLBuffer< ShortBuffer > createShortBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and element count. More...
 
final CLBuffer< IntBuffer > createIntBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and element count. More...
 
final CLBuffer< LongBuffer > createLongBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and element count. More...
 
final CLBuffer< FloatBuffer > createFloatBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and element count. More...
 
final CLBuffer< DoubleBuffer > createDoubleBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and element count. More...
 
final CLBuffer< ByteBuffer > createByteBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags and buffer size in bytes. More...
 
final CLBuffer< ByteBuffer > createByteBuffer (final int size, final int flags)
 Creates a CLBuffer with the specified flags and buffer size in bytes. More...
 
final CLBuffer<?> createBuffer (final int size, final Mem... flags)
 Creates a CLBuffer with the specified flags. More...
 
final CLBuffer<?> createBuffer (final int size, final int flags)
 Creates a CLBuffer with the specified flags. More...
 
final< B extends Buffer > CLBuffer< B > createBuffer (final B directBuffer, final Mem... flags)
 Creates a CLBuffer with the specified flags. More...
 
final< B extends Buffer > CLBuffer< B > createBuffer (final B directBuffer, final int flags)
 Creates a CLBuffer with the specified flags. More...
 
final CLImage2d<?> createImage2d (final int width, final int height, final CLImageFormat format, final Mem... flags)
 Creates a CLImage2d with the specified format, dimension and flags. More...
 
final CLImage2d<?> createImage2d (final int width, final int height, final int rowPitch, final CLImageFormat format, final Mem... flags)
 Creates a CLImage2d with the specified format, dimension and flags. More...
 
final< B extends Buffer > CLImage2d< B > createImage2d (final B directBuffer, final int width, final int height, final CLImageFormat format, final Mem... flags)
 Creates a CLImage2d with the specified format, dimension and flags. More...
 
final< B extends Buffer > CLImage2d< B > createImage2d (final B directBuffer, final int width, final int height, final int rowPitch, final CLImageFormat format, final Mem... flags)
 Creates a CLImage2d with the specified format, dimension and flags. More...
 
final CLImage3d<?> createImage3d (final int width, final int height, final int depth, final CLImageFormat format, final Mem... flags)
 Creates a CLImage3d with the specified format, dimension and flags. More...
 
final CLImage3d<?> createImage3d (final int width, final int height, final int depth, final int rowPitch, final int slicePitch, final CLImageFormat format, final Mem... flags)
 Creates a CLImage3d with the specified format, dimension and flags. More...
 
final< B extends Buffer > CLImage3d< B > createImage3d (final B directBuffer, final int width, final int height, final int depth, final CLImageFormat format, final Mem... flags)
 Creates a CLImage3d with the specified format, dimension and flags. More...
 
final< B extends Buffer > CLImage3d< B > createImage3d (final B directBuffer, final int width, final int height, final int depth, final int rowPitch, final int slicePitch, final CLImageFormat format, final Mem... flags)
 Creates a CLImage3d with the specified format, dimension and flags. More...
 
CLSampler createSampler (final AddressingMode addrMode, final FilteringMode filtMode, final boolean normalizedCoords)
 
void addCLErrorHandler (final CLErrorHandler handler)
 
void removeCLErrorHandler (final CLErrorHandler handler)
 
synchronized void release ()
 Releases this context and all resources. More...
 
CLImageFormat[] getSupportedImage2dFormats (final Mem... flags)
 Returns all supported 2d image formats with the (optional) memory allocation flags. More...
 
CLImageFormat[] getSupportedImage3dFormats (final Mem... flags)
 Returns all supported 3d image formats with the (optional) memory allocation flags. More...
 
CLPlatform getPlatform ()
 Returns the CLPlatform this context is running on. More...
 
CLContext getContext ()
 Returns the context for this OpenCL object. More...
 
List< CLProgramgetPrograms ()
 Returns a read only shapshot of all programs associated with this context. More...
 
List< CLMemory<? extends Buffer > > getMemoryObjects ()
 Returns a read only shapshot of all allocated memory objects associated with this context. More...
 
List< CLSamplergetSamplers ()
 Returns a read only shapshot of all samplers associated with this context. More...
 
CLDevice getMaxFlopsDevice ()
 Returns the device with maximal FLOPS from this context. More...
 
CLDevice getMaxFlopsDevice (final CLDevice.Type type)
 Returns the device with maximal FLOPS of the specified device type from this context. More...
 
long getMaxMemBaseAddrAlign ()
 Returns the maximum CLDevice#getMemBaseAddrAlign() of all devices. More...
 
CLDevice[] getDevices ()
 Returns all devices associated with this CLContext. More...
 
CL getCL ()
 Return the low level OpenCL interface. More...
 
String toString ()
 
boolean equals (final Object obj)
 
int hashCode ()
 

Static Public Member Functions

static CLGLContext create (final GLContext glContext)
 Creates a shared context on all available devices (CL_DEVICE_TYPE_ALL). More...
 
static CLGLContext create (final GLContext glContext, final CLPlatform platform)
 Creates a shared context on the specified platform on all available devices (CL_DEVICE_TYPE_ALL). More...
 
static CLGLContext create (final GLContext glContext, final CLDevice.Type... deviceTypes)
 Creates a shared context on the specified platform and with the specified device types. More...
 
static CLGLContext create (final GLContext glContext, CLPlatform platform, final CLDevice.Type... deviceTypes)
 Creates a shared context on the specified platform and with the specified device types. More...
 
static CLGLContext create (final GLContext glContext, final CLDevice... devices)
 Creates a shared context on the specified platform and with the specified devices. More...
 
- Static Public Member Functions inherited from com.jogamp.opencl.CLContext
static CLContext create ()
 Creates a context on all available devices (CL_DEVICE_TYPE_ALL). More...
 
static CLContext create (final Type... deviceTypes)
 Creates a context on the specified device types. More...
 
static CLContext create (final CLPlatform platform)
 Creates a context on the specified platform on all available devices (CL_DEVICE_TYPE_ALL). More...
 
static CLContext create (CLPlatform platform, final Type... deviceTypes)
 Creates a context on the specified platform and with the specified device types. More...
 
static CLContext create (final CLDevice... devices)
 Creates a context on the specified devices. More...
 

Additional Inherited Members

- Protected Member Functions inherited from com.jogamp.opencl.CLContext
 CLContext (final CLPlatform platform, final long contextID, final ErrorDispatcher dispatcher)
 
void overrideContext (final CLDevice device)
 
- Static Protected Member Functions inherited from com.jogamp.opencl.CLContext
static long createContextFromType (final CLPlatform platform, final CLErrorHandler handler, final PointerBuffer properties, final long deviceType)
 
static long createContext (final CLPlatform platform, final CLErrorHandler handler, final PointerBuffer properties, final CLDevice... devices)
 
static long toDeviceBitmap (final Type[] deviceTypes)
 
static ErrorDispatcher createErrorHandler ()
 
- Protected Attributes inherited from com.jogamp.opencl.CLContext
CLDevice[] devices
 
final Set< CLProgramprograms
 
final Set< CLSamplersamplers
 
final Set< CLMemory<? extends Buffer > > memoryObjects
 
final Map< CLDevice, List< CLCommandQueue > > queuesMap
 
final CLPlatform platform
 

Detailed Description

OpenCL Context supporting JOGL-JOCL interoperablity.

Author
Michael Bien, et al.

Definition at line 53 of file CLGLContext.java.

Member Function Documentation

◆ create() [1/5]

static CLGLContext com.jogamp.opencl.gl.CLGLContext.create ( final GLContext  glContext)
static

Creates a shared context on all available devices (CL_DEVICE_TYPE_ALL).

See also
GLContext::makeCurrent()

Definition at line 68 of file CLGLContext.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ create() [2/5]

static CLGLContext com.jogamp.opencl.gl.CLGLContext.create ( final GLContext  glContext,
CLPlatform  platform,
final CLDevice.Type...  deviceTypes 
)
static

Creates a shared context on the specified platform and with the specified device types.

See also
GLContext::makeCurrent()

Definition at line 94 of file CLGLContext.java.

Here is the call graph for this function:

◆ create() [3/5]

static CLGLContext com.jogamp.opencl.gl.CLGLContext.create ( final GLContext  glContext,
final CLDevice...  devices 
)
static

Creates a shared context on the specified platform and with the specified devices.

See also
GLContext::makeCurrent()

Definition at line 114 of file CLGLContext.java.

Here is the call graph for this function:

◆ create() [4/5]

static CLGLContext com.jogamp.opencl.gl.CLGLContext.create ( final GLContext  glContext,
final CLDevice.Type...  deviceTypes 
)
static

Creates a shared context on the specified platform and with the specified device types.

See also
GLContext::makeCurrent()

Definition at line 85 of file CLGLContext.java.

Here is the call graph for this function:

◆ create() [5/5]

static CLGLContext com.jogamp.opencl.gl.CLGLContext.create ( final GLContext  glContext,
final CLPlatform  platform 
)
static

Creates a shared context on the specified platform on all available devices (CL_DEVICE_TYPE_ALL).

See also
GLContext::makeCurrent()

Definition at line 76 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLBuffer() [1/4]

final< B extends Buffer > CLGLBuffer< B > com.jogamp.opencl.gl.CLGLContext.createFromGLBuffer ( final B  directBuffer,
final int  glBuffer,
final long  glBufferSize,
final int  flags 
)

Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer.

Parameters
directBufferA direct allocated NIO buffer for data transfers between java and OpenCL.
glBufferThe OpenGL buffer handle like a vertex buffer or pixel buffer object.
glBufferSizeThe size of the OpenGL buffer in bytes
flagsoptional flags.

Definition at line 253 of file CLGLContext.java.

◆ createFromGLBuffer() [2/4]

final< B extends Buffer > CLGLBuffer< B > com.jogamp.opencl.gl.CLGLContext.createFromGLBuffer ( final B  directBuffer,
final int  glBuffer,
final long  glBufferSize,
final Mem...  flags 
)

Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer.

Parameters
directBufferA direct allocated NIO buffer for data transfers between java and OpenCL.
glBufferThe OpenGL buffer handle like a vertex buffer or pixel buffer object.
glBufferSizeThe size of the OpenGL buffer in bytes
flagsoptional flags.

Definition at line 242 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLBuffer() [3/4]

final CLGLBuffer<?> com.jogamp.opencl.gl.CLGLContext.createFromGLBuffer ( final int  glBuffer,
final long  glBufferSize,
final int  flags 
)

Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer.

Parameters
glBufferThe OpenGL buffer handle like a vertex buffer or pixel buffer object.
glBufferSizeThe size of the OpenGL buffer in bytes
flagsoptional flags.

Definition at line 231 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLBuffer() [4/4]

final CLGLBuffer<?> com.jogamp.opencl.gl.CLGLContext.createFromGLBuffer ( final int  glBuffer,
final long  glBufferSize,
final Mem...  flags 
)

Creates a CLGLBuffer for memory sharing with the specified OpenGL buffer.

Parameters
glBufferThe OpenGL buffer handle like a vertex buffer or pixel buffer object.
glBufferSizeThe size of the OpenGL buffer in bytes
flagsoptional flags.

Definition at line 221 of file CLGLContext.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createFromGLRenderbuffer() [1/4]

final< B extends Buffer > CLGLImage2d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLRenderbuffer ( final B  directBuffer,
final int  glBuffer,
final int  flags 
)

Definition at line 272 of file CLGLContext.java.

◆ createFromGLRenderbuffer() [2/4]

final< B extends Buffer > CLGLImage2d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLRenderbuffer ( final B  directBuffer,
final int  glBuffer,
final Mem...  flags 
)

Definition at line 268 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLRenderbuffer() [3/4]

final CLGLImage2d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLRenderbuffer ( final int  glBuffer,
final int  flags 
)

Definition at line 264 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLRenderbuffer() [4/4]

final CLGLImage2d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLRenderbuffer ( final int  glBuffer,
final Mem...  flags 
)

Definition at line 260 of file CLGLContext.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createFromGLTexture2d() [1/4]

final< B extends Buffer > CLGLTexture2d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLTexture2d ( final B  directBuffer,
final int  target,
final int  texture,
final int  mipmap,
final int  flags 
)

Definition at line 291 of file CLGLContext.java.

◆ createFromGLTexture2d() [2/4]

final< B extends Buffer > CLGLTexture2d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLTexture2d ( final B  directBuffer,
final int  target,
final int  texture,
final int  mipmap,
final Mem...  flags 
)

Definition at line 287 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLTexture2d() [3/4]

final CLGLTexture2d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLTexture2d ( final int  target,
final int  texture,
final int  mipmap,
final int  flags 
)

Definition at line 283 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLTexture2d() [4/4]

final CLGLTexture2d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLTexture2d ( final int  target,
final int  texture,
final int  mipmap,
final Mem...  flags 
)

Definition at line 279 of file CLGLContext.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ createFromGLTexture3d() [1/4]

final< B extends Buffer > CLGLTexture3d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLTexture3d ( final B  directBuffer,
final int  target,
final int  texture,
final int  mipmap,
final int  flags 
)

Definition at line 310 of file CLGLContext.java.

◆ createFromGLTexture3d() [2/4]

final< B extends Buffer > CLGLTexture3d< B > com.jogamp.opencl.gl.CLGLContext.createFromGLTexture3d ( final B  directBuffer,
final int  target,
final int  texture,
final int  mipmap,
final Mem...  flags 
)

Definition at line 306 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLTexture3d() [3/4]

final CLGLTexture3d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLTexture3d ( final int  target,
final int  texture,
final int  mipmap,
final int  flags 
)

Definition at line 302 of file CLGLContext.java.

Here is the call graph for this function:

◆ createFromGLTexture3d() [4/4]

final CLGLTexture3d<?> com.jogamp.opencl.gl.CLGLContext.createFromGLTexture3d ( final int  target,
final int  texture,
final int  mipmap,
final Mem...  flags 
)

Definition at line 298 of file CLGLContext.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getCL()

CL com.jogamp.opencl.gl.CLGLContext.getCL ( )

Return the low level OpenCL interface with OpenGL interoperability.

Reimplemented from com.jogamp.opencl.CLContext.

Definition at line 320 of file CLGLContext.java.

◆ getContext()

CLGLContext com.jogamp.opencl.gl.CLGLContext.getContext ( )

Returns the context for this OpenCL object.

Reimplemented from com.jogamp.opencl.CLContext.

Definition at line 332 of file CLGLContext.java.

Here is the caller graph for this function:

◆ getGLContext()

GLContext com.jogamp.opencl.gl.CLGLContext.getGLContext ( )

Returns the OpenGL context this context was shared with.

Definition at line 327 of file CLGLContext.java.

Here is the caller graph for this function:

The documentation for this class was generated from the following file: