JOGL v2.6.0-rc-20250706
JOGL, High-Performance Graphics Binding for Java™ (public API).
com.jogamp.nativewindow.x11.X11GraphicsDevice Class Reference

Encapsulates a graphics device on X11 platforms. More...

Inheritance diagram for com.jogamp.nativewindow.x11.X11GraphicsDevice:
Collaboration diagram for com.jogamp.nativewindow.x11.X11GraphicsDevice:

Public Member Functions

 X11GraphicsDevice (final String connection, final int unitID)
 Constructs a new X11GraphicsDevice corresponding to the given connection and default com.jogamp.nativewindow.ToolkitLock via NativeWindowFactory#getDefaultToolkitLock(String). More...
 
 X11GraphicsDevice (final long display, final int unitID, final boolean owner)
 Constructs a new X11GraphicsDevice corresponding to the given native display handle and default com.jogamp.nativewindow.ToolkitLock via NativeWindowFactory#getDefaultToolkitLock(String). More...
 
 X11GraphicsDevice (final long display, final int unitID, final ToolkitLock locker, final boolean owner)
 
 X11GraphicsDevice (final String displayConnection, final int unitID, final ToolkitLock locker)
 Constructs a new X11GraphicsDevice corresponding to the given display connection. More...
 
int getDefaultScreen ()
 Returns the default screen number as referenced by the display connection, i.e. More...
 
int getDefaultVisualID ()
 
final boolean isXineramaEnabled ()
 
Object clone ()
 
boolean open ()
 Optionally [re]opening the device if handle is null. More...
 
boolean close ()
 Optionally closing the device if handle is not null. More...
 
- Public Member Functions inherited from com.jogamp.nativewindow.DefaultGraphicsDevice
 DefaultGraphicsDevice (final String type, final String connection, final int unitID)
 Create an instance with the system default ToolkitLock, gathered via NativeWindowFactory#getDefaultToolkitLock(String). More...
 
 DefaultGraphicsDevice (final String type, final String connection, final int unitID, final long handle)
 Create an instance with the system default ToolkitLock. More...
 
 DefaultGraphicsDevice (final String type, final String connection, final int unitID, final long handle, final ToolkitLock locker)
 Create an instance with the given ToolkitLock instance, or null ToolkitLock if null. More...
 
Object clone ()
 
final String getType ()
 Returns the type of the underlying subsystem, ie NativeWindowFactory.TYPE_KD, NativeWindowFactory.TYPE_X11, . More...
 
final String getConnection ()
 Returns the semantic GraphicsDevice connection. More...
 
final int getUnitID ()
 Returns the graphics device unit ID. More...
 
final String getUniqueID ()
 Returns a unique ID object of this device using type, connection and unitID as it's key components. More...
 
final long getHandle ()
 Returns the native handle of the underlying native device, if such thing exist. More...
 
final void lock ()
 Optionally locking the device, utilizing eg com.jogamp.nativewindow.ToolkitLock#lock().The lock implementation must be recursive. More...
 
final void validateLocked () throws RuntimeException
 
final void unlock ()
 Optionally unlocking the device, utilizing eg com.jogamp.nativewindow.ToolkitLock#unlock().The lock implementation must be recursive.
Exceptions
RuntimeExceptionin case the lock is not acquired by this thread.
More...
 
boolean open ()
 Optionally [re]opening the device if handle is null. More...
 
boolean close ()
 Optionally closing the device if handle is not null. More...
 
final boolean isHandleOwner ()
 
final void clearHandleOwner ()
 
String toString ()
 
final ToolkitLock getToolkitLock ()
 
Object clone ()
 
String getType ()
 Returns the type of the underlying subsystem, ie NativeWindowFactory.TYPE_KD, NativeWindowFactory.TYPE_X11, . More...
 
String getConnection ()
 Returns the semantic GraphicsDevice connection. More...
 
int getUnitID ()
 Returns the graphics device unit ID. More...
 
String getUniqueID ()
 Returns a unique ID object of this device using type, connection and unitID as it's key components. More...
 
long getHandle ()
 Returns the native handle of the underlying native device, if such thing exist. More...
 
void lock ()
 Optionally locking the device, utilizing eg com.jogamp.nativewindow.ToolkitLock#lock(). More...
 
void unlock ()
 Optionally unlocking the device, utilizing eg com.jogamp.nativewindow.ToolkitLock#unlock(). More...
 
void validateLocked () throws RuntimeException
 
boolean open ()
 Optionally [re]opening the device if handle is null. More...
 
boolean close ()
 Optionally closing the device if handle is not null. More...
 
boolean isHandleOwner ()
 
void clearHandleOwner ()
 

Additional Inherited Members

- Static Public Member Functions inherited from com.jogamp.nativewindow.DefaultGraphicsDevice
static String getDefaultDisplayConnection ()
 Return the default display connection for the given windowing toolkit type gathered via NativeWindowFactory#getDefaultDisplayConnection(). More...
 
static String getDefaultDisplayConnection (final String type)
 Return the default display connection for the given windowing toolkit type gathered via NativeWindowFactory#getDefaultDisplayConnection(String). More...
 
static final void swapHandleAndOwnership (final DefaultGraphicsDevice a, final DefaultGraphicsDevice b)
 
- Static Public Attributes inherited from com.jogamp.nativewindow.AbstractGraphicsDevice
static final boolean DEBUG = Debug.debug("GraphicsDevice")
 
static String DEFAULT_CONNECTION = "decon"
 Dummy connection value for a default connection where no native support for multiple devices is available. More...
 
static String EXTERNAL_CONNECTION = "excon"
 Dummy connection value for an external connection where no native support for multiple devices is available. More...
 
static int DEFAULT_UNIT = 0
 Default unit id for the 1st device: 0. More...
 
- Protected Member Functions inherited from com.jogamp.nativewindow.DefaultGraphicsDevice
final long setHandle (final long newHandle)
 Set the native handle of the underlying native device and return the previous one. More...
 
final Object getHandleOwnership ()
 
final Object setHandleOwnership (final Object newOwnership)
 
ToolkitLock setToolkitLock (final ToolkitLock locker)
 Set the internal ToolkitLock, which is used within the lock() and unlock() implementation. More...
 
- Protected Attributes inherited from com.jogamp.nativewindow.DefaultGraphicsDevice
final String connection
 
final int unitID
 
final String uniqueID
 
long handle
 
ToolkitLock toolkitLock
 

Detailed Description

Encapsulates a graphics device on X11 platforms.

Definition at line 47 of file X11GraphicsDevice.java.

Constructor & Destructor Documentation

◆ X11GraphicsDevice() [1/4]

com.jogamp.nativewindow.x11.X11GraphicsDevice.X11GraphicsDevice ( final String  connection,
final int  unitID 
)

Constructs a new X11GraphicsDevice corresponding to the given connection and default com.jogamp.nativewindow.ToolkitLock via NativeWindowFactory#getDefaultToolkitLock(String).


Note that this is not an open connection, ie no native display handle exist. This constructor exist to setup a default device connection.

See also
DefaultGraphicsDevice::DefaultGraphicsDevice(String, String, int)

Definition at line 56 of file X11GraphicsDevice.java.

◆ X11GraphicsDevice() [2/4]

com.jogamp.nativewindow.x11.X11GraphicsDevice.X11GraphicsDevice ( final long  display,
final int  unitID,
final boolean  owner 
)

Constructs a new X11GraphicsDevice corresponding to the given native display handle and default com.jogamp.nativewindow.ToolkitLock via NativeWindowFactory#getDefaultToolkitLock(String).

See also
DefaultGraphicsDevice::DefaultGraphicsDevice(String, String, int, long)

Definition at line 66 of file X11GraphicsDevice.java.

Here is the call graph for this function:

◆ X11GraphicsDevice() [3/4]

com.jogamp.nativewindow.x11.X11GraphicsDevice.X11GraphicsDevice ( final long  display,
final int  unitID,
final ToolkitLock  locker,
final boolean  owner 
)
Parameters
displaythe Display connection
lockercustom com.jogamp.nativewindow.ToolkitLock, eg to force null locking w/ private connection
See also
DefaultGraphicsDevice::DefaultGraphicsDevice(String, String, int, long, ToolkitLock)

Definition at line 75 of file X11GraphicsDevice.java.

◆ X11GraphicsDevice() [4/4]

com.jogamp.nativewindow.x11.X11GraphicsDevice.X11GraphicsDevice ( final String  displayConnection,
final int  unitID,
final ToolkitLock  locker 
)

Constructs a new X11GraphicsDevice corresponding to the given display connection.

The constructor opens the native connection and takes ownership.

Parameters
displayConnectionthe semantic display connection name
lockercustom com.jogamp.nativewindow.ToolkitLock, eg to force null locking w/ private connection
See also
DefaultGraphicsDevice::DefaultGraphicsDevice(String, String, int, long, ToolkitLock)

Definition at line 93 of file X11GraphicsDevice.java.

Here is the call graph for this function:

Member Function Documentation

◆ clone()

Object com.jogamp.nativewindow.x11.X11GraphicsDevice.clone ( )

Reimplemented from com.jogamp.nativewindow.DefaultGraphicsDevice.

Definition at line 135 of file X11GraphicsDevice.java.

◆ close()

boolean com.jogamp.nativewindow.x11.X11GraphicsDevice.close ( )

Optionally closing the device if handle is not null.

The default implementation dispose it's ToolkitLock and sets the handle to null.

Example implementations like com.jogamp.nativewindow.x11.X11GraphicsDevice or com.jogamp.nativewindow.egl.EGLGraphicsDevice issue the native close operation or skip it depending on the handles's ownership.

Returns
true if the handle was not null and closing was successful, otherwise false.

Reimplemented from com.jogamp.nativewindow.DefaultGraphicsDevice.

Definition at line 155 of file X11GraphicsDevice.java.

Here is the call graph for this function:

◆ getDefaultScreen()

int com.jogamp.nativewindow.x11.X11GraphicsDevice.getDefaultScreen ( )

Returns the default screen number as referenced by the display connection, i.e.

'somewhere:0.1' -> 1

Implementation uses the XLib macro DefaultScreen(display).

Definition at line 110 of file X11GraphicsDevice.java.

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

◆ getDefaultVisualID()

int com.jogamp.nativewindow.x11.X11GraphicsDevice.getDefaultVisualID ( )

Definition at line 122 of file X11GraphicsDevice.java.

Here is the call graph for this function:

◆ isXineramaEnabled()

final boolean com.jogamp.nativewindow.x11.X11GraphicsDevice.isXineramaEnabled ( )

Definition at line 130 of file X11GraphicsDevice.java.

◆ open()

boolean com.jogamp.nativewindow.x11.X11GraphicsDevice.open ( )

Optionally [re]opening the device if handle is null.

The default implementation is a NOP.

Example implementations like com.jogamp.nativewindow.x11.X11GraphicsDevice or com.jogamp.nativewindow.egl.EGLGraphicsDevice issue the native open operation in case handle is null.

Returns
true if the handle was null and opening was successful, otherwise false.

Reimplemented from com.jogamp.nativewindow.DefaultGraphicsDevice.

Definition at line 140 of file X11GraphicsDevice.java.

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

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