aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2010-11-06 06:17:41 +0100
committerSven Gothel <[email protected]>2010-11-06 06:17:41 +0100
commit8df147c4a1d7e2e5d63416a1bee979be858440d0 (patch)
tree32709ce1ce9c6c00ed806e61e36ad896b1862dd2
parent1be7b5271ec1d08b6929a88dd811754d33d149de (diff)
Added fast path to equals impl.
-rw-r--r--src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java35
-rw-r--r--src/jogl/classes/javax/media/opengl/GLCapabilities.java1
-rw-r--r--src/jogl/classes/javax/media/opengl/GLProfile.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/Capabilities.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/util/Dimension.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/util/Insets.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/util/Point.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/util/Rectangle.java1
-rw-r--r--src/nativewindow/classes/javax/media/nativewindow/util/SurfaceSize.java1
-rw-r--r--src/newt/classes/com/jogamp/newt/Display.java1
-rw-r--r--src/newt/classes/com/jogamp/newt/Screen.java1
-rw-r--r--src/newt/classes/com/jogamp/newt/ScreenMode.java1
-rw-r--r--src/newt/classes/com/jogamp/newt/util/MonitorMode.java2
13 files changed, 44 insertions, 4 deletions
diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java
index 430ed08ce..131858271 100644
--- a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java
+++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java
@@ -1,3 +1,30 @@
+/**
+ * Copyright 2010 JogAmp Community. All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without modification, are
+ * permitted provided that the following conditions are met:
+ *
+ * 1. Redistributions of source code must retain the above copyright notice, this list of
+ * conditions and the following disclaimer.
+ *
+ * 2. Redistributions in binary form must reproduce the above copyright notice, this list
+ * of conditions and the following disclaimer in the documentation and/or other materials
+ * provided with the distribution.
+ *
+ * THIS SOFTWARE IS PROVIDED BY JogAmp Community ``AS IS'' AND ANY EXPRESS OR IMPLIED
+ * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
+ * FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL JogAmp Community OR
+ * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+ * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
+ * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
+ * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+ * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+ * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+ *
+ * The views and conclusions contained in the software and documentation are those of the
+ * authors and should not be interpreted as representing official policies, either expressed
+ * or implied, of JogAmp Community.
+ */
package com.jogamp.opengl.util.glsl;
@@ -169,15 +196,17 @@ public class ShaderProgram {
}
public boolean equals(Object obj) {
- if(this==obj) return true;
- if(obj instanceof ShaderCode) {
- return id()==((ShaderCode)obj).id();
+ if(this == obj) { return true; }
+ if(obj instanceof ShaderProgram) {
+ return id()==((ShaderProgram)obj).id();
}
return false;
}
+
public int hashCode() {
return id.intValue();
}
+
public String toString() {
StringBuffer buf = new StringBuffer();
buf.append("ShaderProgram[id="+id);
diff --git a/src/jogl/classes/javax/media/opengl/GLCapabilities.java b/src/jogl/classes/javax/media/opengl/GLCapabilities.java
index 11d353e61..4368add3f 100644
--- a/src/jogl/classes/javax/media/opengl/GLCapabilities.java
+++ b/src/jogl/classes/javax/media/opengl/GLCapabilities.java
@@ -93,6 +93,7 @@ public class GLCapabilities extends Capabilities implements Cloneable {
}
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if(!(obj instanceof GLCapabilities)) {
return false;
}
diff --git a/src/jogl/classes/javax/media/opengl/GLProfile.java b/src/jogl/classes/javax/media/opengl/GLProfile.java
index 102a97a33..853d3e888 100644
--- a/src/jogl/classes/javax/media/opengl/GLProfile.java
+++ b/src/jogl/classes/javax/media/opengl/GLProfile.java
@@ -510,6 +510,7 @@ public class GLProfile {
* if both, profile and profileImpl is equal with this.
*/
public final boolean equals(Object o) {
+ if(this==o) { return true; }
if(o instanceof GLProfile) {
GLProfile glp = (GLProfile)o;
return profile.equals(glp.getName()) && profileImpl.equals(glp.getImplName()) ;
diff --git a/src/nativewindow/classes/javax/media/nativewindow/Capabilities.java b/src/nativewindow/classes/javax/media/nativewindow/Capabilities.java
index 9df57b6d2..6c875ab40 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/Capabilities.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/Capabilities.java
@@ -74,6 +74,7 @@ public class Capabilities implements Cloneable {
}
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if(!(obj instanceof Capabilities)) {
return false;
}
diff --git a/src/nativewindow/classes/javax/media/nativewindow/util/Dimension.java b/src/nativewindow/classes/javax/media/nativewindow/util/Dimension.java
index 86e1b8d28..a970be158 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/util/Dimension.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/util/Dimension.java
@@ -78,6 +78,7 @@ public class Dimension implements Cloneable, DimensionReadOnly {
}
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if (obj instanceof Dimension) {
Dimension p = (Dimension)obj;
return height == p.height &&
diff --git a/src/nativewindow/classes/javax/media/nativewindow/util/Insets.java b/src/nativewindow/classes/javax/media/nativewindow/util/Insets.java
index c7fa247bf..96a45b7b1 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/util/Insets.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/util/Insets.java
@@ -70,6 +70,7 @@ public class Insets implements Cloneable {
* otherwise <code>false</code>.
*/
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if (obj instanceof Insets) {
Insets insets = (Insets)obj;
return ((top == insets.top) && (left == insets.left) &&
diff --git a/src/nativewindow/classes/javax/media/nativewindow/util/Point.java b/src/nativewindow/classes/javax/media/nativewindow/util/Point.java
index 76f1d69c5..6db0ecfe2 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/util/Point.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/util/Point.java
@@ -51,6 +51,7 @@ public class Point implements Cloneable, PointReadOnly {
}
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if (obj instanceof Point) {
Point p = (Point)obj;
return y == p.y && x == p.x;
diff --git a/src/nativewindow/classes/javax/media/nativewindow/util/Rectangle.java b/src/nativewindow/classes/javax/media/nativewindow/util/Rectangle.java
index f4808929b..ba24bc64e 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/util/Rectangle.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/util/Rectangle.java
@@ -63,6 +63,7 @@ public class Rectangle implements Cloneable, RectangleReadOnly {
public void setHeight(int height) { this.height = height; }
public boolean equals(Object obj) {
+ if(this == obj) { return true; }
if (obj instanceof Rectangle) {
Rectangle rect = (Rectangle)obj;
return (y == rect.y) && (x == rect.x) &&
diff --git a/src/nativewindow/classes/javax/media/nativewindow/util/SurfaceSize.java b/src/nativewindow/classes/javax/media/nativewindow/util/SurfaceSize.java
index 294fa2d13..ea098b967 100644
--- a/src/nativewindow/classes/javax/media/nativewindow/util/SurfaceSize.java
+++ b/src/nativewindow/classes/javax/media/nativewindow/util/SurfaceSize.java
@@ -76,6 +76,7 @@ public class SurfaceSize implements Cloneable {
* otherwise <code>false</code>.
*/
public final boolean equals(Object obj) {
+ if(this == obj) { return true; }
if (obj instanceof SurfaceSize) {
SurfaceSize p = (SurfaceSize)obj;
return getResolution().equals(p.getResolution()) &&
diff --git a/src/newt/classes/com/jogamp/newt/Display.java b/src/newt/classes/com/jogamp/newt/Display.java
index 71ea12ad8..bec014c0b 100644
--- a/src/newt/classes/com/jogamp/newt/Display.java
+++ b/src/newt/classes/com/jogamp/newt/Display.java
@@ -44,6 +44,7 @@ public abstract class Display {
/** return true if obj is of type Display and both FQN {@link #getFQName()} equals */
public boolean equals(Object obj) {
+ if (this == obj) { return true; }
if (obj instanceof Display) {
Display d = (Display)obj;
return d.getFQName().equals(getFQName());
diff --git a/src/newt/classes/com/jogamp/newt/Screen.java b/src/newt/classes/com/jogamp/newt/Screen.java
index fc91047c0..d7d6baea7 100644
--- a/src/newt/classes/com/jogamp/newt/Screen.java
+++ b/src/newt/classes/com/jogamp/newt/Screen.java
@@ -49,6 +49,7 @@ public abstract class Screen {
/** return true if obj is of type Display and both FQN {@link #getFQName()} equals */
public boolean equals(Object obj) {
+ if (this == obj) { return true; }
if (obj instanceof Screen) {
Screen s = (Screen)obj;
return s.getFQName().equals(getFQName());
diff --git a/src/newt/classes/com/jogamp/newt/ScreenMode.java b/src/newt/classes/com/jogamp/newt/ScreenMode.java
index f87c41240..81ce70249 100644
--- a/src/newt/classes/com/jogamp/newt/ScreenMode.java
+++ b/src/newt/classes/com/jogamp/newt/ScreenMode.java
@@ -164,6 +164,7 @@ public class ScreenMode implements Cloneable {
* <br>
*/
public final boolean equals(Object obj) {
+ if (this == obj) { return true; }
if (obj instanceof ScreenMode) {
ScreenMode sm = (ScreenMode)obj;
return sm.getMonitorMode().equals(getMonitorMode()) &&
diff --git a/src/newt/classes/com/jogamp/newt/util/MonitorMode.java b/src/newt/classes/com/jogamp/newt/util/MonitorMode.java
index 7f989e4ab..fb2d0ceb5 100644
--- a/src/newt/classes/com/jogamp/newt/util/MonitorMode.java
+++ b/src/newt/classes/com/jogamp/newt/util/MonitorMode.java
@@ -1,6 +1,5 @@
/**
* Copyright 2010 JogAmp Community. All rights reserved.
- * Copyright (c) 2010 JogAmp Community. All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification, are
* permitted provided that the following conditions are met:
@@ -85,6 +84,7 @@ public class MonitorMode implements Cloneable {
* otherwise <code>false</code>.
*/
public final boolean equals(Object obj) {
+ if (this == obj) { return true; }
if (obj instanceof MonitorMode) {
MonitorMode p = (MonitorMode)obj;
return getSurfaceSize().equals(p.getSurfaceSize()) &&