summaryrefslogtreecommitdiffstats
path: root/src/classes/win32
diff options
context:
space:
mode:
authorKevin Rushforth <[email protected]>2007-05-16 22:34:12 +0000
committerKevin Rushforth <[email protected]>2007-05-16 22:34:12 +0000
commitcb471feee88597a77b715a9039ef6f62ef9fd664 (patch)
tree15edaad8562be73a4375c5fc1236a48fed89c11e /src/classes/win32
parentcf929de6a881ab72b03b99690feec23a8e0413d5 (diff)
Source code changes for issue 491: Refactor platform-specific classes to use non-overlapping class names
git-svn-id: https://svn.java.net/svn/j3d-core~svn/trunk@842 ba19aa83-45c5-6ac9-afd3-db810772062c
Diffstat (limited to 'src/classes/win32')
-rw-r--r--src/classes/win32/javax/media/j3d/Win32NativeConfigTemplate3D.java (renamed from src/classes/win32/javax/media/j3d/NativeConfigTemplate3D.java)44
-rw-r--r--src/classes/win32/javax/media/j3d/Win32NativeScreenInfo.java (renamed from src/classes/win32/javax/media/j3d/NativeScreenInfo.java)17
2 files changed, 32 insertions, 29 deletions
diff --git a/src/classes/win32/javax/media/j3d/NativeConfigTemplate3D.java b/src/classes/win32/javax/media/j3d/Win32NativeConfigTemplate3D.java
index f91986a..10edfd1 100644
--- a/src/classes/win32/javax/media/j3d/NativeConfigTemplate3D.java
+++ b/src/classes/win32/javax/media/j3d/Win32NativeConfigTemplate3D.java
@@ -18,25 +18,16 @@ import sun.awt.Win32GraphicsDevice;
import sun.awt.Win32GraphicsConfig;
import java.awt.GraphicsConfigTemplate;
-class NativeConfigTemplate3D {
+/**
+ * Native config template class. A singleton instance of this class is
+ * created by a factory method in the base class using reflection.
+ */
+class Win32NativeConfigTemplate3D extends NativeConfigTemplate3D {
private final static boolean debug = false;
- NativeConfigTemplate3D() {
+ Win32NativeConfigTemplate3D() {
}
- // This definition should match those in solaris NativeConfigTemplate3D.java
- final static int RED_SIZE = 0;
- final static int GREEN_SIZE = 1;
- final static int BLUE_SIZE = 2;
- final static int ALPHA_SIZE = 3;
- final static int ACCUM_BUFFER = 4;
- final static int DEPTH_SIZE = 5;
- final static int DOUBLEBUFFER = 6;
- final static int STEREO = 7;
- final static int ANTIALIASING = 8;
- final static int STENCIL_SIZE = 9;
- final static int NUM_ITEMS = 10;
-
/**
* selects the proper visual
*/
@@ -45,7 +36,7 @@ class NativeConfigTemplate3D {
// Native method to free an PixelFormatInfo struct. This is static since it
// may need to be called to clean up the Canvas3D graphicsConfigTable after the
- // NativeConfigTemplate3D has been disposed of.
+ // Win32NativeConfigTemplate3D has been disposed of.
static native void freePixelFormatInfo(long pFormatInfo);
// Native methods to return whether a particular attribute is available
@@ -58,6 +49,7 @@ class NativeConfigTemplate3D {
/**
* Chooses the best PixelFormat for Java 3D apps.
*/
+ @Override
GraphicsConfiguration
getBestConfiguration(GraphicsConfigTemplate3D template,
GraphicsConfiguration[] gc) {
@@ -69,7 +61,7 @@ class NativeConfigTemplate3D {
do so in J3D 1.4.
System.out.println("getBestConfiguration : Checking WGL ARB support\n");
- if (!NativeScreenInfo.isWglARB()) {
+ if (!Win32NativeScreenInfo.isWglARB()) {
Thread.dumpStack();
System.out.println("getBestConfiguration : WGL ARB support fail\n");
return null;
@@ -89,10 +81,10 @@ class NativeConfigTemplate3D {
attrList[STEREO] = template.getStereo();
attrList[ANTIALIASING] = template.getSceneAntialiasing();
attrList[STENCIL_SIZE] = template.getStencilSize();
- // System.out.println("NativeConfigTemplate3D : getStencilSize " +
+ // System.out.println("Win32NativeConfigTemplate3D : getStencilSize " +
// attrList[STENCIL_SIZE]);
- int screen = NativeScreenInfo.getScreen(gd);
+ int screen = NativeScreenInfo.getNativeScreenInfo().getScreen(gd);
long[] pFormatInfo = new long[1];
@@ -139,6 +131,7 @@ class NativeConfigTemplate3D {
* Determine if a given GraphicsConfiguration object can be used
* by Java 3D.
*/
+ @Override
boolean isGraphicsConfigSupported(GraphicsConfigTemplate3D template,
GraphicsConfiguration gc) {
@@ -149,7 +142,7 @@ class NativeConfigTemplate3D {
do so in J3D 1.4.
System.out.println("isGraphicsConfigSupported : Checking WGL ARB support\n");
- if (!NativeScreenInfo.isWglARB()) {
+ if (!Win32NativeScreenInfo.isWglARB()) {
Thread.dumpStack();
System.out.println("isGraphicsConfigSupported : WGL ARB support fail\n");
return false;
@@ -169,10 +162,10 @@ class NativeConfigTemplate3D {
attrList[STEREO] = template.getStereo();
attrList[ANTIALIASING] = template.getSceneAntialiasing();
attrList[STENCIL_SIZE] = template.getStencilSize();
- // System.out.println("NativeConfigTemplate3D : getStencilSize " +
+ // System.out.println("Win32NativeConfigTemplate3D : getStencilSize " +
// attrList[STENCIL_SIZE]);
- int screen = NativeScreenInfo.getScreen(gd);
+ int screen = NativeScreenInfo.getNativeScreenInfo().getScreen(gd);
long[] pFormatInfo = new long[1];
@@ -192,32 +185,37 @@ class NativeConfigTemplate3D {
// Return whether stereo is available.
+ @Override
boolean hasStereo(Canvas3D c3d) {
return isStereoAvailable(c3d.fbConfig, c3d.offScreen);
}
// Return the stencil of this canvas.
+ @Override
int getStencilSize(Canvas3D c3d) {
return getStencilSize(c3d.fbConfig, c3d.offScreen);
}
// Return whether a double buffer is available.
+ @Override
boolean hasDoubleBuffer(Canvas3D c3d) {
return isDoubleBufferAvailable(c3d.fbConfig, c3d.offScreen);
}
// Return whether scene antialiasing is available.
+ @Override
boolean hasSceneAntialiasingAccum(Canvas3D c3d) {
return isSceneAntialiasingAccumAvailable(c3d.fbConfig, c3d.offScreen);
}
// Return whether scene antialiasing is available.
+ @Override
boolean hasSceneAntialiasingMultisample(Canvas3D c3d) {
GraphicsConfiguration gc = c3d.graphicsConfiguration;
Win32GraphicsDevice gd =
(Win32GraphicsDevice)((Win32GraphicsConfig)gc).getDevice();
- int screen = NativeScreenInfo.getScreen(gd);
+ int screen = NativeScreenInfo.getNativeScreenInfo().getScreen(gd);
/* Fix to issue 77 */
return isSceneAntialiasingMultisampleAvailable(c3d.fbConfig, c3d.offScreen, screen);
}
diff --git a/src/classes/win32/javax/media/j3d/NativeScreenInfo.java b/src/classes/win32/javax/media/j3d/Win32NativeScreenInfo.java
index 61066b9..0a6a105 100644
--- a/src/classes/win32/javax/media/j3d/NativeScreenInfo.java
+++ b/src/classes/win32/javax/media/j3d/Win32NativeScreenInfo.java
@@ -15,7 +15,11 @@ package javax.media.j3d;
import java.awt.GraphicsDevice;
import sun.awt.Win32GraphicsDevice;
-class NativeScreenInfo {
+/**
+ * Native screen info class. A singleton instance of this class is created by
+ * a factory method in the base class using reflection.
+ */
+class Win32NativeScreenInfo extends NativeScreenInfo {
private static final long display = 0; // unused for Win32
private static boolean wglARBChecked = false;
@@ -23,8 +27,7 @@ class NativeScreenInfo {
private static native boolean queryWglARB();
- private NativeScreenInfo() {
- throw new AssertionError("constructor should never be called");
+ Win32NativeScreenInfo() {
}
// This method will return true if wglGetExtensionsStringARB is supported,
@@ -39,16 +42,18 @@ class NativeScreenInfo {
return isWglARB;
}
- static long getDisplay() {
+ @Override
+ long getDisplay() {
return display;
}
- static int getScreen(GraphicsDevice graphicsDevice) {
+ @Override
+ int getScreen(GraphicsDevice graphicsDevice) {
return ((Win32GraphicsDevice)graphicsDevice).getScreen();
}
// Ensure that the native libraries are loaded
static {
- VirtualUniverse.loadLibraries();
+ VirtualUniverse.loadLibraries();
}
}