|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectjavax.media.nativewindow.NativeWindowFactory
public abstract class NativeWindowFactory
Provides a pluggable mechanism for arbitrary window toolkits to
adapt their components to the NativeWindow interface,
which provides a platform-independent mechanism of accessing the
information required to perform operations like
hardware-accelerated rendering using the OpenGL API.
| Field Summary | |
|---|---|
static String |
TYPE_ANDROID
Android/EGL type, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_AWT
Generic AWT type, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_DEFAULT
Generic DEFAULT type, where platform implementation don't care, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_EGL
OpenKODE/EGL type, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_MACOSX
Mac OS X type, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_WINDOWS
Microsoft Windows type, as retrieved with getNativeWindowType(boolean) |
static String |
TYPE_X11
X11 type, as retrieved with getNativeWindowType(boolean) |
static String |
X11JAWTToolkitLockClassName
|
static String |
X11ToolkitLockClassName
|
| Method Summary | |
|---|---|
static ToolkitLock |
createDefaultToolkitLock(String type,
long deviceHandle)
Creates the default ToolkitLock for type and deviceHandle. |
static ToolkitLock |
createDefaultToolkitLock(String type,
String sharedType,
long deviceHandle)
Creates the default ToolkitLock for type and deviceHandle. |
static ToolkitLock |
getAWTToolkitLock()
Returns the AWT Toolkit (JAWT based) if isAWTAvailable, otherwise null. |
static NativeWindowFactory |
getDefaultFactory()
Gets the default NativeWindowFactory. |
static ToolkitLock |
getDefaultToolkitLock()
Provides the system default ToolkitLock, a singleton instance. |
static ToolkitLock |
getDefaultToolkitLock(String type)
Provides the default ToolkitLock for type, a singleton instance. |
static NativeWindowFactory |
getFactory(Class<?> windowClass)
Returns the appropriate NativeWindowFactory to handle window objects of the given type. |
static NativeWindow |
getNativeWindow(Object winObj,
AbstractGraphicsConfiguration config)
Converts the given window object and it's AbstractGraphicsConfiguration into a
NativeWindow which can be operated upon by a custom
toolkit, e.g. |
static String |
getNativeWindowType(boolean useCustom)
|
static ToolkitLock |
getNullToolkitLock()
|
static OffscreenLayerSurface |
getOffscreenLayerSurface(NativeSurface surface,
boolean ifEnabled)
Returns the OffscreenLayerSurface instance of this NativeSurface. |
static void |
initSingleton(boolean firstUIActionOnProcess)
Static one time initialization of this factory. This initialization method must be called once by the program or utilizing modules! |
static boolean |
isAWTAvailable()
|
static boolean |
isFirstUIActionOnProcess()
|
static boolean |
requiresToolkitLock()
|
static void |
setDefaultFactory(NativeWindowFactory factory)
Sets the default NativeWindowFactory. |
static void |
shutdown()
|
| Methods inherited from class java.lang.Object |
|---|
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public static final String TYPE_EGL
getNativeWindowType(boolean)
public static final String TYPE_WINDOWS
getNativeWindowType(boolean)
public static final String TYPE_X11
getNativeWindowType(boolean)
public static final String TYPE_ANDROID
getNativeWindowType(boolean)
public static final String TYPE_MACOSX
getNativeWindowType(boolean)
public static final String TYPE_AWT
getNativeWindowType(boolean)
public static final String TYPE_DEFAULT
getNativeWindowType(boolean)
public static final String X11JAWTToolkitLockClassName
public static final String X11ToolkitLockClassName
| Method Detail |
|---|
public static void initSingleton(boolean firstUIActionOnProcess)
The parameter firstUIActionOnProcess has an impact on concurrent locking:
getDefaultToolkitLock() getDefaultToolkitLock(type) createDefaultToolkitLock(type, dpyHandle) createDefaultToolkitLockNoAWT(type, dpyHandle)
firstUIActionOnProcess - Should be true if called before the first UI action of the running program,
otherwise false.public static void shutdown()
public static boolean isFirstUIActionOnProcess()
initSingleton(firstUIActionOnProcess==true),
otherwise false.public static boolean requiresToolkitLock()
public static boolean isAWTAvailable()
public static String getNativeWindowType(boolean useCustom)
useCustom - if false return the native value, if true return a custom value if set, otherwise fallback to the native value.
TYPE_X11, ..public static void setDefaultFactory(NativeWindowFactory factory)
public static NativeWindowFactory getDefaultFactory()
public static ToolkitLock getDefaultToolkitLock()
ToolkitLock, a singleton instance.
getDefaultToolkitLock(java.lang.String)public static ToolkitLock getDefaultToolkitLock(String type)
ToolkitLock for type, a singleton instance.
initSingleton( firstUIActionOnProcess := false ) getAWTToolkitLock() getNullToolkitLock()
public static ToolkitLock getAWTToolkitLock()
isAWTAvailable, otherwise null.
public static ToolkitLock getNullToolkitLock()
public static ToolkitLock createDefaultToolkitLock(String type,
long deviceHandle)
ToolkitLock for type and deviceHandle.
initSingleton( firstUIActionOnProcess := false ) X11ToolkitLock NullToolkitLock
public static ToolkitLock createDefaultToolkitLock(String type,
String sharedType,
long deviceHandle)
ToolkitLock for type and deviceHandle.
initSingleton( firstUIActionOnProcess := false ) jogamp.nativewindow.jawt.x11.X11JAWTToolkitLock X11ToolkitLock NullToolkitLock
public static NativeWindowFactory getFactory(Class<?> windowClass)
throws IllegalArgumentException
NativeWindow, in which case the client has
already assumed the responsibility of creating a compatible
NativeWindow implementation, or it might be that of a toolkit
class like Component.
IllegalArgumentException
public static NativeWindow getNativeWindow(Object winObj,
AbstractGraphicsConfiguration config)
throws IllegalArgumentException,
NativeWindowException
AbstractGraphicsConfiguration into a
NativeWindow which can be operated upon by a custom
toolkit, e.g. javax.media.opengl.GLDrawableFactory.GraphicsConfigurationFactory
to construct a proper AbstractGraphicsConfiguration.
IllegalArgumentException - if the given window object
could not be handled by any of the registered
NativeWindowFactory instances
NativeWindowExceptionjavax.media.nativewindow.GraphicsConfigurationFactory#chooseGraphicsConfiguration(Capabilities, CapabilitiesChooser, AbstractGraphicsScreen)
public static OffscreenLayerSurface getOffscreenLayerSurface(NativeSurface surface,
boolean ifEnabled)
OffscreenLayerSurface instance of this NativeSurface.
In case this surface is a NativeWindow, we traverse from the given surface
up to root until an implementation of OffscreenLayerSurface is found.
In case ifEnabled is true, the surface must also implement OffscreenLayerOption
where OffscreenLayerOption.isOffscreenLayerSurfaceEnabled() is true.
surface - The surface to query.ifEnabled - If true, only return the enabled OffscreenLayerSurface, see OffscreenLayerOption.isOffscreenLayerSurfaceEnabled().
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||