|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
public interface AbstractGraphicsDevice
A interface describing a graphics device in a toolkit-independent manner.
| Field Summary | |
|---|---|
static boolean |
DEBUG
|
static String |
DEFAULT_CONNECTION
Dummy connection value for a default connection where no native support for multiple devices is available |
static int |
DEFAULT_UNIT
Default unit id for the 1st device: 0 |
static String |
EXTERNAL_CONNECTION
Dummy connection value for an external connection where no native support for multiple devices is available |
| Method Summary | |
|---|---|
boolean |
close()
Optionally closing the device if handle is not null. |
String |
getConnection()
Returns the semantic GraphicsDevice connection. On platforms supporting remote devices, eg via tcp/ip network, the implementation shall return a unique name for each remote address. On X11 for example, the connection string should be as the following example. :0.0 for a local connection
remote.host.net:0.0 for a remote connection
To support multiple local device, see getUnitID(). |
long |
getHandle()
Returns the native handle of the underlying native device, if such thing exist. |
String |
getType()
Returns the type of the underlying subsystem, ie NativeWindowFactory.TYPE_KD, NativeWindowFactory.TYPE_X11, .. |
String |
getUniqueID()
Returns a unique ID String of this device using type,
connection and unitID.The unique ID does not reflect the instance of the device, hence the handle is not included. The unique ID may be used as a key for semantic device mapping. |
int |
getUnitID()
Returns the graphics device unit ID.The unit ID support multiple graphics device configurations
on a local machine.To support remote device, see getConnection(). |
void |
lock()
Optionally locking the device, utilizing eg ToolkitLock.lock(). |
boolean |
open()
Optionally [re]opening the device if handle is null. |
void |
unlock()
Optionally unlocking the device, utilizing eg ToolkitLock.unlock(). |
void |
validateLocked()
|
| Field Detail |
|---|
static final boolean DEBUG
static final String DEFAULT_CONNECTION
static final String EXTERNAL_CONNECTION
static final int DEFAULT_UNIT
| Method Detail |
|---|
String getType()
String getConnection()
:0.0 for a local connectionremote.host.net:0.0 for a remote connectiongetUnitID().
int getUnitID()
unit ID.unit ID support multiple graphics device configurations
on a local machine.getConnection().
String getUniqueID()
type,
connection and unitID.
long getHandle()
void lock()
ToolkitLock.lock().
The lock implementation must be recursive.
void unlock()
ToolkitLock.unlock().
The lock implementation must be recursive.
RuntimeException - in case the lock is not acquired by this thread.
void validateLocked()
throws RuntimeException
RuntimeException - if current thread does not hold the lockboolean open()
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.
null and opening was successful, otherwise false.boolean close()
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.
null and closing was successful, otherwise false.
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||