From 8363df5da5794faf10478789954992cef0c0d50f Mon Sep 17 00:00:00 2001 From: Sven Gothel Date: Thu, 10 Oct 2013 13:16:39 +0200 Subject: Bug 852: Validate CPU sourced data API is allowed, throw exception if not. GLContext: isCPUSourcedAvail() -> isCPUDataSourcingAvail() --- src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java | 6 +++--- src/jogl/classes/javax/media/opengl/GLContext.java | 4 ++-- .../jogamp/opengl/util/glsl/fixedfunc/FixedFuncPipeline.java | 4 ++-- .../opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java | 1 - 4 files changed, 7 insertions(+), 8 deletions(-) (limited to 'src') diff --git a/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java b/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java index dbe916877..111e2509e 100644 --- a/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java +++ b/src/jogl/classes/com/jogamp/opengl/util/ImmModeSink.java @@ -522,9 +522,9 @@ public class ImmModeSink { gl.glDrawArrays(mode, 0, vElems); } } else { - // FIXME: Impl. VBO usage .. or unroll (see above)! - if( !gl.getContext().isCPUSourcedAvail() ) { - throw new GLException("CPU sourcing n/a w/ "+gl.getContext()); + // FIXME: Impl. VBO usage .. or unroll. + if( !gl.getContext().isCPUDataSourcingAvail() ) { + throw new GLException("CPU data sourcing n/a w/ "+gl.getContext()); } final int type; if(indices instanceof ByteBuffer) { diff --git a/src/jogl/classes/javax/media/opengl/GLContext.java b/src/jogl/classes/javax/media/opengl/GLContext.java index 3a72319bb..f4dbde6b2 100644 --- a/src/jogl/classes/javax/media/opengl/GLContext.java +++ b/src/jogl/classes/javax/media/opengl/GLContext.java @@ -1010,12 +1010,12 @@ public abstract class GLContext { } /** - * Indicates whether this GLContext allows CPU sourced data (indices, vertices ..) as opposed to a GPU buffer source (VBO), + * Indicates whether this GLContext allows CPU data sourcing (indices, vertices ..) as opposed to using a GPU buffer source (VBO), * e.g. {@link GL2#glDrawElements(int, int, int, java.nio.Buffer)}. *

Includes [GL2ES1, GLES2] == [ GL4bc, GL3bc, GL2, GLES1, GL2ES1, GLES2 ].

*

See Bug 852 - https://jogamp.org/bugzilla/show_bug.cgi?id=852

*/ - public final boolean isCPUSourcedAvail() { + public final boolean isCPUDataSourcingAvail() { return isGL2ES1() || isGLES2(); } diff --git a/src/jogl/classes/jogamp/opengl/util/glsl/fixedfunc/FixedFuncPipeline.java b/src/jogl/classes/jogamp/opengl/util/glsl/fixedfunc/FixedFuncPipeline.java index 173f7b3c6..5349745ea 100644 --- a/src/jogl/classes/jogamp/opengl/util/glsl/fixedfunc/FixedFuncPipeline.java +++ b/src/jogl/classes/jogamp/opengl/util/glsl/fixedfunc/FixedFuncPipeline.java @@ -744,8 +744,8 @@ public class FixedFuncPipeline { } } else { // FIXME: Impl. VBO usage .. or unroll (see above)! - if( !gl.getContext().isCPUSourcedAvail() ) { - throw new GLException("CPU sourcing n/a w/ "+gl.getContext()); + if( !gl.getContext().isCPUDataSourcingAvail() ) { + throw new GLException("CPU data sourcing n/a w/ "+gl.getContext()); } if( GL2ES1.GL_POINTS != mode ) { ((GLES2)gl).glDrawElements(mode, count, type, indices); diff --git a/src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java b/src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java index b2f72b7c3..69879ddb2 100644 --- a/src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java +++ b/src/test/com/jogamp/opengl/test/junit/jogl/demos/es2/newt/TestRedSquareES2NEWT.java @@ -35,7 +35,6 @@ import com.jogamp.opengl.test.junit.util.AWTRobotUtil; import com.jogamp.opengl.test.junit.util.MiscUtils; import com.jogamp.opengl.test.junit.util.UITestCase; import com.jogamp.opengl.test.junit.util.QuitAdapter; -import com.jogamp.opengl.test.junit.util.UITestCase.SnapshotGLEventListener; import com.jogamp.opengl.util.Animator; -- cgit v1.2.3