From 2b954ff1fe88f35b59da6c6f6b82fde70274a6ef Mon Sep 17 00:00:00 2001 From: Michael Bien Date: Sat, 27 Mar 2010 23:24:13 +0100 Subject: refactoring: renamed com.sun.opengl -> com.jogamp.opengl. --- .../com/jogamp/opengl/util/glsl/ShaderProgram.java | 212 +++++++++++++++++++++ 1 file changed, 212 insertions(+) create mode 100644 src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java (limited to 'src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java') diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java new file mode 100644 index 000000000..49a341cc6 --- /dev/null +++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java @@ -0,0 +1,212 @@ + +package com.jogamp.opengl.util.glsl; + +import javax.media.opengl.*; + +import java.util.HashMap; +import java.util.Iterator; +import java.nio.*; +import java.io.PrintStream; + +public class ShaderProgram { + public ShaderProgram() { + id = getNextID(); + } + + public boolean linked() { + return programLinked; + } + + public boolean inUse() { + return programInUse; + } + + public int program() { return shaderProgram; } + + /** + * returns the uniq shader id as an integer + * @see #key() + */ + public int id() { return id.intValue(); } + + /** + * returns the uniq shader id as an Integer + * + * @see #id() + */ + public Integer key() { return id; } + + /** + * Detaches all shader codes and deletes the program. + * Destroys the shader codes as well. + * Calls release(gl, true) + * + * @see #release(GL2ES2, boolean) + */ + public synchronized void destroy(GL2ES2 gl) { + release(gl, true); + } + + /** + * Detaches all shader codes and deletes the program. + * Calls release(gl, false) + * + * @see #release(GL2ES2, boolean) + */ + public synchronized void release(GL2ES2 gl) { + release(gl, false); + } + + /** + * Detaches all shader codes and deletes the program. + * If releaseShaderToo is true, destroys the shader codes as well. + */ + public synchronized void release(GL2ES2 gl, boolean releaseShaderToo) { + glUseProgram(gl, false); + for(Iterator iter=shaderMap.values().iterator(); iter.hasNext(); ) { + ShaderCode shaderCode = (ShaderCode) iter.next(); + ShaderUtil.detachShader(gl, shaderProgram, shaderCode.shader()); + if(releaseShaderToo) { + shaderCode.destroy(gl); + } + } + shaderMap.clear(); + gl.glDeleteProgram(shaderProgram); + shaderProgram=-1; + } + + // + // ShaderCode handling + // + + /** + * Adds a new shader to a this non running program. + * + * @return false if the program is in use, or the shader already exist, + * otherwise true. + */ + public synchronized boolean add(ShaderCode shaderCode) { + if(shaderMap.containsKey(shaderCode.key())) return false; + shaderMap.put(shaderCode.key(), shaderCode); + return true; + } + + public synchronized ShaderCode getShader(int id) { + return (ShaderCode) shaderMap.get(new Integer(id)); + } + + // + // Program handling + // + + /** + * Replace a shader in a 'running' program. + * Refetches all previously bin/get attribute names + * and resets all attribute data as well + * + * @see getAttribLocation + * @param gl + * @param oldShaderID the to be replace Shader + * @param newShader the new ShaderCode + * @param verboseOut the optional verbose outputstream + * @throws GLException is the program is not linked + * + * @see #glRefetchAttribLocations + * @see #glResetAllVertexAttributes + * @see #glReplaceShader + */ + public synchronized boolean glReplaceShader(GL2ES2 gl, int oldShaderID, ShaderCode newShader, PrintStream verboseOut) { + if(!programLinked) throw new GLException("Program is not linked"); + boolean shaderWasInUse = programInUse; + glUseProgram(gl, false); + if(!newShader.compile(gl, verboseOut)) { + return false; + } + if(oldShaderID>=0) { + ShaderCode oldShader = (ShaderCode) shaderMap.remove(new Integer(oldShaderID)); + if(null!=oldShader) { + ShaderUtil.detachShader(gl, shaderProgram, oldShader.shader()); + } + } + add(newShader); + + ShaderUtil.attachShader(gl, shaderProgram, newShader.shader()); + gl.glLinkProgram(shaderProgram); + if ( ! ShaderUtil.isProgramValid(gl, shaderProgram, System.err) ) { + return false; + } + + if(shaderWasInUse) { + glUseProgram(gl, true); + } + return true; + } + + public synchronized boolean link(GL2ES2 gl, PrintStream verboseOut) { + if(programLinked) throw new GLException("Program is already linked"); + + if(0>shaderProgram) { + shaderProgram = gl.glCreateProgram(); + } + + for(Iterator iter=shaderMap.values().iterator(); iter.hasNext(); ) { + ShaderCode shaderCode = (ShaderCode) iter.next(); + if(!shaderCode.compile(gl, verboseOut)) { + return false; + } + ShaderUtil.attachShader(gl, shaderProgram, shaderCode.shader()); + } + + // Link the program + gl.glLinkProgram(shaderProgram); + + programLinked = ShaderUtil.isProgramValid(gl, shaderProgram, System.err); + + return programLinked; + } + + public boolean equals(Object obj) { + if(this==obj) return true; + if(obj instanceof ShaderCode) { + return id()==((ShaderCode)obj).id(); + } + return false; + } + public int hashCode() { + return id.intValue(); + } + public String toString() { + StringBuffer buf = new StringBuffer(); + buf.append("ShaderProgram[id="+id); + buf.append(", linked="+programLinked+", inUse="+programInUse+", program: "+shaderProgram+", ["); + for(Iterator iter=shaderMap.values().iterator(); iter.hasNext(); ) { + buf.append((ShaderCode) iter.next()); + buf.append(" "); + } + buf.append("]"); + return buf.toString(); + } + + protected synchronized void glUseProgram(GL2ES2 gl, boolean on) { + if(!programLinked) throw new GLException("Program is not linked"); + if(programInUse==on) return; + gl.glUseProgram(on?shaderProgram:0); + programInUse = on; + + //Throwable tX = new Throwable("Info: ShaderProgram.glUseProgram: "+on); + //tX.printStackTrace(); + + } + + protected boolean programLinked = false; + protected boolean programInUse = false; + protected int shaderProgram=-1; + protected HashMap shaderMap = new HashMap(); + protected Integer id = null; + + private static synchronized Integer getNextID() { + return new Integer(nextID++); + } + protected static int nextID = 1; +} + -- cgit v1.2.3 From 476d1d755b6d9c5650779aedda1265917a6dec6e Mon Sep 17 00:00:00 2001 From: Michael Bien Date: Mon, 29 Mar 2010 22:33:06 +0200 Subject: fixed a bunch of javadoc warnings. --- nbproject/project.xml | 5 ++ .../com/jogamp/opengl/util/ImmModeSink.java | 4 +- .../classes/com/jogamp/opengl/util/PMVMatrix.java | 2 +- .../classes/com/jogamp/opengl/util/TGAWriter.java | 8 ++- .../com/jogamp/opengl/util/glsl/ShaderProgram.java | 13 +++-- .../com/jogamp/opengl/util/glsl/ShaderState.java | 59 ++++++++++------------ .../opengl/util/glsl/fixedfunc/FixedFuncUtil.java | 8 +-- .../jogamp/opengl/util/glsl/sdk/CompileShader.java | 21 ++++---- .../classes/javax/media/opengl/GLArrayData.java | 10 ++-- src/jogl/classes/javax/media/opengl/GLBase.java | 2 +- src/jogl/classes/javax/media/opengl/GLContext.java | 6 +-- .../javax/media/opengl/GLDrawableFactory.java | 4 +- .../classes/javax/media/opengl/GLUniformData.java | 2 - .../javax/media/opengl/fixedfunc/GLMatrixFunc.java | 4 +- .../classes/com/jogamp/newt/opengl/GLWindow.java | 5 +- 15 files changed, 77 insertions(+), 76 deletions(-) (limited to 'src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java') diff --git a/nbproject/project.xml b/nbproject/project.xml index 31339c907..9f8a897bd 100755 --- a/nbproject/project.xml +++ b/nbproject/project.xml @@ -79,6 +79,10 @@ junit.run + + + javadoc + folder @@ -116,6 +120,7 @@ + diff --git a/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java b/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java index 126a303ab..ad230a415 100644 --- a/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java +++ b/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java @@ -35,8 +35,8 @@ public class ImmModeSink { * a ShaderState must be current, using ShaderState.glUseProgram(). * * @see #draw(GL, boolean) - * @see javax.media.opengl.glsl.ShaderState#glUseProgram(GL2ES2, boolean) - * @see javax.media.opengl.glsl.ShaderState#getCurrent() + * @see com.jogamp.opengl.util.glsl.ShaderState#glUseProgram(GL2ES2, boolean) + * @see com.jogamp.opengl.util.glsl.ShaderState#getCurrent() */ public static ImmModeSink createGLSL(GL gl, int glBufferUsage, int initialSize, int vComps, int vDataType, diff --git a/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java b/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java index f6d5f1999..4ca8ff197 100755 --- a/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java +++ b/src/jogl/classes/com/jogamp/opengl/util/PMVMatrix.java @@ -295,7 +295,7 @@ public class PMVMatrix implements GLMatrixFunc { } /** - * @param pname GL_MODELVIEW, GL_PROJECTION or GL.GL_TEXTURE + * @param matrixName GL_MODELVIEW, GL_PROJECTION or GL.GL_TEXTURE * @return the given matrix */ public final FloatBuffer glGetMatrixf(final int matrixName) { diff --git a/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java b/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java index c53cafdcb..b949f0e39 100755 --- a/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java +++ b/src/jogl/classes/com/jogamp/opengl/util/TGAWriter.java @@ -42,13 +42,11 @@ import java.nio.channels.*; /** * Utility class which helps take fast screenshots of OpenGL rendering - * results into Targa-format files. Used by the {@link - * com.jogamp.opengl.util.gl2.Screenshot Screenshot} class; can also be used - * in conjunction with the {@link com.jogamp.opengl.util.gl2.TileRenderer - * TileRenderer} class.

+ * results into Targa-format files. Used by the {@link com.jogamp.opengl.util.awt.Screenshot} + * class; can also be used in conjunction with the {@link com.jogamp.opengl.util.gl2.TileRenderer} class. */ - public class TGAWriter { + private static final int TARGA_HEADER_SIZE = 18; private FileChannel ch; 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 49a341cc6..430ed08ce 100644 --- a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java +++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderProgram.java @@ -5,7 +5,6 @@ import javax.media.opengl.*; import java.util.HashMap; import java.util.Iterator; -import java.nio.*; import java.io.PrintStream; public class ShaderProgram { @@ -104,16 +103,20 @@ public class ShaderProgram { * Refetches all previously bin/get attribute names * and resets all attribute data as well * - * @see getAttribLocation * @param gl * @param oldShaderID the to be replace Shader * @param newShader the new ShaderCode * @param verboseOut the optional verbose outputstream * @throws GLException is the program is not linked * - * @see #glRefetchAttribLocations - * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderState#glEnableVertexAttribArray + * @see ShaderState#glDisableVertexAttribArray + * @see ShaderState#glVertexAttribPointer + * @see ShaderState#getVertexAttribPointer + * @see ShaderState#glReleaseAllVertexAttributes + * @see ShaderState#glResetAllVertexAttributes + * @see ShaderState#glResetAllVertexAttributes + * @see ShaderState#glResetAllVertexAttributes */ public synchronized boolean glReplaceShader(GL2ES2 gl, int oldShaderID, ShaderCode newShader, PrintStream verboseOut) { if(!programLinked) throw new GLException("Program is not linked"); diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java index 33f6e210b..86f9251b7 100644 --- a/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java +++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/ShaderState.java @@ -2,14 +2,11 @@ package com.jogamp.opengl.util.glsl; import javax.media.opengl.*; -import com.jogamp.opengl.util.*; import com.jogamp.opengl.impl.Debug; import java.util.HashMap; import java.util.HashSet; import java.util.Iterator; -import java.nio.*; -import java.io.PrintStream; import java.security.*; public class ShaderState { @@ -25,8 +22,8 @@ public class ShaderState { /** * Fetches the current shader state from the thread local storage (TLS) * - * @see javax.media.opengl.glsl.ShaderState#glUseProgram(GL2ES2, boolean) - * @see javax.media.opengl.glsl.ShaderState#getCurrent() + * @see com.jogamp.opengl.util.glsl.ShaderState#glUseProgram(GL2ES2, boolean) + * @see com.jogamp.opengl.util.glsl.ShaderState#getCurrent() */ public static synchronized ShaderState getCurrent() { GLContext current = GLContext.getCurrent(); @@ -41,8 +38,8 @@ public class ShaderState { * Puts this ShaderState to to the thread local storage (TLS), * if on is true. * - * @see javax.media.opengl.glsl.ShaderState#glUseProgram(GL2ES2, boolean) - * @see javax.media.opengl.glsl.ShaderState#getCurrent() + * @see com.jogamp.opengl.util.glsl.ShaderState#glUseProgram(GL2ES2, boolean) + * @see com.jogamp.opengl.util.glsl.ShaderState#getCurrent() */ public synchronized void glUseProgram(GL2ES2 gl, boolean on) { if(on) { @@ -178,7 +175,7 @@ public class ShaderState { * @see #glGetAttribLocation * @see javax.media.opengl.GL2ES2#glGetAttribLocation * @see #getAttribLocation - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public void glBindAttribLocation(GL2ES2 gl, int index, String name) { if(null==shaderProgram) throw new GLException("No program is attached"); @@ -203,7 +200,7 @@ public class ShaderState { * @see #glGetAttribLocation * @see javax.media.opengl.GL2ES2#glGetAttribLocation * @see #getAttribLocation - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public int glGetAttribLocation(GL2ES2 gl, String name) { if(!shaderProgram.linked()) throw new GLException("Program is not linked"); @@ -240,17 +237,17 @@ public class ShaderState { * Even if the attribute is not found in the current shader, * it is stored in this state. * - * @returns false, if the name is not found, otherwise true + * @return false, if the name is not found, otherwise true * * @throws GLException if the program is not in use * * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public boolean glEnableVertexAttribArray(GL2ES2 gl, String name) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -281,17 +278,17 @@ public class ShaderState { * Even if the attribute is not found in the current shader, * it is removed from this state. * - * @returns false, if the name is not found, otherwise true + * @return false, if the name is not found, otherwise true * * @throws GLException if the program is not in use * * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public boolean glDisableVertexAttribArray(GL2ES2 gl, String name) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -322,17 +319,17 @@ public class ShaderState { * it's index will be set with the attribute's location, * if found. * - * @returns false, if the name is not found, otherwise true + * @return false, if the name is not found, otherwise true * * @throws GLException if the program is not in use * * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public boolean glVertexAttribPointer(GL2ES2 gl, GLArrayData data) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -367,15 +364,15 @@ public class ShaderState { /** * Get the vertex attribute data, previously set. * - * @returns the GLArrayData object, null if not previously set. + * @return the GLArrayData object, null if not previously set. * * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public GLArrayData getVertexAttribPointer(String name) { return (GLArrayData) vertexAttribMap2Data.get(name); @@ -390,11 +387,11 @@ public class ShaderState { * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public void glReleaseAllVertexAttributes(GL2ES2 gl) { if(null!=shaderProgram) { @@ -428,11 +425,11 @@ public class ShaderState { * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public void glDisableAllVertexAttributeArrays(GL2ES2 gl, boolean removeFromState) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -458,10 +455,10 @@ public class ShaderState { * @see #glEnableVertexAttribArray * @see #glDisableVertexAttribArray * @see #glVertexAttribPointer - * @see #getVertexAttributePointer + * @see #getVertexAttribPointer * @see #glReleaseAllVertexAttributes * @see #glResetAllVertexAttributes - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public void glResetAllVertexAttributes(GL2ES2 gl) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -520,7 +517,7 @@ public class ShaderState { * @see #glGetUniformLocation * @see javax.media.opengl.GL2ES2#glGetUniformLocation * @see #getUniformLocation - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ protected int glGetUniformLocation(GL2ES2 gl, String name) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -554,14 +551,14 @@ public class ShaderState { * if found. * * - * @returns false, if the name is not found, otherwise true + * @return false, if the name is not found, otherwise true * * @throws GLException if the program is not in use * * @see #glGetUniformLocation * @see javax.media.opengl.GL2ES2#glGetUniformLocation * @see #getUniformLocation - * @see #glReplaceShader + * @see ShaderProgram#glReplaceShader */ public boolean glUniform(GL2ES2 gl, GLUniformData data) { if(!shaderProgram.inUse()) throw new GLException("Program is not in use"); @@ -581,7 +578,7 @@ public class ShaderState { /** * Get the uniform data, previously set. * - * @returns the GLUniformData object, null if not previously set. + * @return the GLUniformData object, null if not previously set. */ public GLUniformData getUniform(String name) { return (GLUniformData) uniformMap2Data.get(name); diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/FixedFuncUtil.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/FixedFuncUtil.java index a7042c47a..f00357bfb 100644 --- a/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/FixedFuncUtil.java +++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/fixedfunc/FixedFuncUtil.java @@ -66,25 +66,25 @@ public class FixedFuncUtil { /** * String name for - * @see javax.media.opengl.GL#GL_VERTEX_ARRAY + * @see javax.media.opengl.GL2#GL_VERTEX_ARRAY */ public static final String mgl_Vertex = FixedFuncPipeline.mgl_Vertex; /** * String name for - * @see javax.media.opengl.GL#GL_NORMAL_ARRAY + * @see javax.media.opengl.GL2#GL_NORMAL_ARRAY */ public static final String mgl_Normal = FixedFuncPipeline.mgl_Normal; /** * String name for - * @see javax.media.opengl.GL#GL_COLOR_ARRAY + * @see javax.media.opengl.GL2#GL_COLOR_ARRAY */ public static final String mgl_Color = FixedFuncPipeline.mgl_Color; /** * String name for - * @see javax.media.opengl.GL#GL_TEXTURE_COORD_ARRAY + * @see javax.media.opengl.GL2#GL_TEXTURE_COORD_ARRAY */ public static final String mgl_MultiTexCoord = FixedFuncPipeline.mgl_MultiTexCoord; } diff --git a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java index 9741da737..a0eed50ea 100755 --- a/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java +++ b/src/jogl/classes/com/jogamp/opengl/util/glsl/sdk/CompileShader.java @@ -7,16 +7,17 @@ import com.jogamp.opengl.util.glsl.*; import java.io.*; import java.net.*; -/** Precompiles a shader into a vendor binary format. Input is the - resource name of the shader, such as - "com/jogamp/opengl/impl/glsl/fixed/shader/a.fp". - Output is "com/jogamp/opengl/impl/glsl/fixed/shader/bin/nvidia/a.bfp". - - All path and suffixes are determined by the ShaderCode class, - which ensures runtime compatibility. - - @see javax.media.opengl.glsl.ShaderCode - */ +/** + * Precompiles a shader into a vendor binary format. Input is the + * resource name of the shader, such as + * "com/jogamp/opengl/impl/glsl/fixed/shader/a.fp". + * Output is "com/jogamp/opengl/impl/glsl/fixed/shader/bin/nvidia/a.bfp". + * + * All path and suffixes are determined by the ShaderCode class, + * which ensures runtime compatibility. + * + * @see com.jogamp.opengl.util.glsl.ShaderCode + */ public abstract class CompileShader { diff --git a/src/jogl/classes/javax/media/opengl/GLArrayData.java b/src/jogl/classes/javax/media/opengl/GLArrayData.java index d17ee6a06..088c71bd8 100644 --- a/src/jogl/classes/javax/media/opengl/GLArrayData.java +++ b/src/jogl/classes/javax/media/opengl/GLArrayData.java @@ -21,10 +21,10 @@ public interface GLArrayData { * The index of the predefined array index, see list below, * or -1 in case of a shader attribute array. * - * @see javax.media.opengl.GL#GL_VERTEX_ARRAY - * @see javax.media.opengl.GL#GL_NORMAL_ARRAY - * @see javax.media.opengl.GL#GL_COLOR_ARRAY - * @see javax.media.opengl.GL#GL_TEXTURE_COORD_ARRAY + * @see javax.media.opengl.GL2#GL_VERTEX_ARRAY + * @see javax.media.opengl.GL2#GL_NORMAL_ARRAY + * @see javax.media.opengl.GL2#GL_COLOR_ARRAY + * @see javax.media.opengl.GL2#GL_TEXTURE_COORD_ARRAY */ public int getIndex(); @@ -49,7 +49,7 @@ public interface GLArrayData { * Sets the determined location of the shader attribute * This is usually done within ShaderState. * - * @see javax.media.opengl.glsl.ShaderState#glVertexAttribPointer(GL2ES2, GLArrayData) + * @see com.jogamp.opengl.util.glsl.ShaderState#glVertexAttribPointer(GL2ES2, GLArrayData) */ public void setLocation(int v); diff --git a/src/jogl/classes/javax/media/opengl/GLBase.java b/src/jogl/classes/javax/media/opengl/GLBase.java index be5a6dc4f..369907c22 100644 --- a/src/jogl/classes/javax/media/opengl/GLBase.java +++ b/src/jogl/classes/javax/media/opengl/GLBase.java @@ -220,7 +220,7 @@ public interface GLBase { * * @param glFunctionName the name of the OpenGL function (e.g., use * "glBindRenderbufferEXT" or "glBindRenderbuffer" to check if {@link - * #glBindRenderbuffer(int,int)} is available). + * GL#glBindRenderbuffer(int,int)} is available). */ public boolean isFunctionAvailable(String glFunctionName); diff --git a/src/jogl/classes/javax/media/opengl/GLContext.java b/src/jogl/classes/javax/media/opengl/GLContext.java index 3ca1cd317..1e52c2a65 100644 --- a/src/jogl/classes/javax/media/opengl/GLContext.java +++ b/src/jogl/classes/javax/media/opengl/GLContext.java @@ -137,14 +137,14 @@ public abstract class GLContext { * copied. mask contains the bitwise OR of the same * symbolic names that are passed to the GL command {@link * GL#glPushAttrib glPushAttrib}. The single symbolic constant - * {@link GL#GL_ALL_ATTRIB_BITS GL_ALL_ATTRIB_BITS} can be used to + * {@link GL2#GL_ALL_ATTRIB_BITS GL_ALL_ATTRIB_BITS} can be used to * copy the maximum possible portion of rendering state.

* * Not all values for GL state can be copied. For example, pixel * pack and unpack state, render mode state, and select and feedback * state are not copied. The state that can be copied is exactly the * state that is manipulated by the GL command {@link - * GL#glPushAttrib glPushAttrib}.

+ * GL2#glPushAttrib glPushAttrib}.

* * On most platforms, this context may not be current to any thread, * including the calling thread, when this method is called. Some @@ -165,7 +165,7 @@ public abstract class GLContext { * If no context is current, throw an GLException * * @return the current context's GL object on this thread - * @thows GLException if no context is current + * @throws GLException if no context is current */ public static GL getCurrentGL() throws GLException { GLContext glc = getCurrent(); diff --git a/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java b/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java index 58a0fabbc..d61ceb1f4 100644 --- a/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java +++ b/src/jogl/classes/javax/media/opengl/GLDrawableFactory.java @@ -186,10 +186,10 @@ public abstract class GLDrawableFactory { * The native platform's chosen Capabilties are referenced within the target * NativeWindow's AbstractGraphicsConfiguration.

* - * In case {@link javax.media.nativewindow.Capabilties#isOnscreen()} is true,
+ * In case {@link javax.media.nativewindow.Capabilities#isOnscreen()} is true,
* an onscreen GLDrawable will be realized. *

- * In case {@link javax.media.nativewindow.Capabilties#isOnscreen()} is false,
+ * In case {@link javax.media.nativewindow.Capabilities#isOnscreen()} is false,
* either a Pbuffer drawable is created if {@link javax.media.opengl.GLCapabilities#isPBuffer()} is true,
* or a simple offscreen drawable is creates. The latter is unlikely to be hardware accelerated.
*

diff --git a/src/jogl/classes/javax/media/opengl/GLUniformData.java b/src/jogl/classes/javax/media/opengl/GLUniformData.java index f628ce35a..9b0d5f151 100644 --- a/src/jogl/classes/javax/media/opengl/GLUniformData.java +++ b/src/jogl/classes/javax/media/opengl/GLUniformData.java @@ -10,7 +10,6 @@ public class GLUniformData { * * Number of objects is 1 * - * @param components number of elements of one object, ie 4 for GL_FLOAT_VEC4, */ public GLUniformData(String name, int val) { init(name, 1, new Integer(val)); @@ -21,7 +20,6 @@ public class GLUniformData { * * Number of objects is 1 * - * @param components number of elements of one object, ie 4 for GL_FLOAT_VEC4, */ public GLUniformData(String name, float val) { init(name, 1, new Float(val)); diff --git a/src/jogl/classes/javax/media/opengl/fixedfunc/GLMatrixFunc.java b/src/jogl/classes/javax/media/opengl/fixedfunc/GLMatrixFunc.java index 61757abde..b899f3c0a 100644 --- a/src/jogl/classes/javax/media/opengl/fixedfunc/GLMatrixFunc.java +++ b/src/jogl/classes/javax/media/opengl/fixedfunc/GLMatrixFunc.java @@ -6,8 +6,6 @@ package javax.media.opengl.fixedfunc; import java.nio.*; -import javax.media.opengl.*; - public interface GLMatrixFunc { public static final int GL_MATRIX_MODE = 0x0BA0; @@ -56,7 +54,7 @@ public interface GLMatrixFunc { /** * glMultMatrixf - * @param params the FloatBuffer's position remains unchanged, + * @param m the FloatBuffer's position remains unchanged, * which is the same behavior than the native JOGL GL impl */ public void glMultMatrixf(java.nio.FloatBuffer m) ; diff --git a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java index 800e38105..29a392f04 100644 --- a/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java +++ b/src/newt/classes/com/jogamp/newt/opengl/GLWindow.java @@ -58,8 +58,9 @@ public class GLWindow extends Window implements GLAutoDrawable { private Window window; private boolean runPumpMessages; - /** Constructor. Do not call this directly -- use {@link - create()} instead. */ + /** + * Constructor. Do not call this directly -- use {@link #create()} instead. + */ protected GLWindow(Window window, boolean ownerOfWinScrDpy) { this.ownerOfWinScrDpy = ownerOfWinScrDpy; this.window = window; -- cgit v1.2.3