You can subscribe to this list here.
| 2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(134) |
Sep
(52) |
Oct
(13) |
Nov
(342) |
Dec
(163) |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2003 |
Jan
(44) |
Feb
(62) |
Mar
(158) |
Apr
(38) |
May
(70) |
Jun
(58) |
Jul
(104) |
Aug
(207) |
Sep
(83) |
Oct
(122) |
Nov
(23) |
Dec
(49) |
| 2004 |
Jan
(119) |
Feb
(132) |
Mar
(192) |
Apr
(140) |
May
(77) |
Jun
(74) |
Jul
(201) |
Aug
(63) |
Sep
(102) |
Oct
(70) |
Nov
(173) |
Dec
(78) |
| 2005 |
Jan
(174) |
Feb
(197) |
Mar
(105) |
Apr
(59) |
May
(77) |
Jun
(43) |
Jul
(21) |
Aug
(18) |
Sep
(47) |
Oct
(37) |
Nov
(74) |
Dec
(50) |
| 2006 |
Jan
(44) |
Feb
(19) |
Mar
(32) |
Apr
(24) |
May
(31) |
Jun
(55) |
Jul
(138) |
Aug
(28) |
Sep
(12) |
Oct
(41) |
Nov
(58) |
Dec
(24) |
| 2007 |
Jan
(28) |
Feb
(14) |
Mar
(10) |
Apr
(68) |
May
(30) |
Jun
(26) |
Jul
(18) |
Aug
(63) |
Sep
(19) |
Oct
(29) |
Nov
(20) |
Dec
(10) |
| 2008 |
Jan
(38) |
Feb
(7) |
Mar
(37) |
Apr
(120) |
May
(41) |
Jun
(36) |
Jul
(39) |
Aug
(24) |
Sep
(28) |
Oct
(30) |
Nov
(36) |
Dec
(75) |
| 2009 |
Jan
(46) |
Feb
(22) |
Mar
(50) |
Apr
(70) |
May
(134) |
Jun
(105) |
Jul
(75) |
Aug
(34) |
Sep
(38) |
Oct
(34) |
Nov
(19) |
Dec
(20) |
| 2010 |
Jan
(11) |
Feb
(20) |
Mar
(65) |
Apr
(83) |
May
(104) |
Jun
(73) |
Jul
(78) |
Aug
(57) |
Sep
(43) |
Oct
(35) |
Nov
(9) |
Dec
(4) |
| 2011 |
Jan
(21) |
Feb
(11) |
Mar
(18) |
Apr
(10) |
May
(18) |
Jun
(15) |
Jul
(48) |
Aug
(25) |
Sep
(17) |
Oct
(45) |
Nov
(15) |
Dec
(12) |
| 2012 |
Jan
(21) |
Feb
(9) |
Mar
(12) |
Apr
(9) |
May
(9) |
Jun
(5) |
Jul
(1) |
Aug
(10) |
Sep
(12) |
Oct
(1) |
Nov
(28) |
Dec
(5) |
| 2013 |
Jan
(4) |
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| 2014 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
(2) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
| 2015 |
Jan
(1) |
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
(2) |
Nov
|
Dec
|
| 2016 |
Jan
(2) |
Feb
(1) |
Mar
(1) |
Apr
(1) |
May
(2) |
Jun
|
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
(1) |
Dec
|
| 2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
| S | M | T | W | T | F | S |
|---|---|---|---|---|---|---|
|
|
|
1
|
2
|
3
|
4
|
5
|
|
6
|
7
|
8
|
9
|
10
(1) |
11
|
12
(5) |
|
13
(5) |
14
|
15
|
16
(1) |
17
(1) |
18
|
19
|
|
20
|
21
|
22
|
23
|
24
|
25
|
26
|
|
27
|
28
(2) |
29
|
30
|
|
|
|
|
From: <jpi...@us...> - 2011-11-28 16:40:48
|
Revision: 3704
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3704&view=rev
Author: jpilgrim
Date: 2011-11-28 16:40:42 +0000 (Mon, 28 Nov 2011)
Log Message:
-----------
bug fix in Eclipes update site build:
native libraries are not copied from skeleton (where they are required for development purposes) anymore
Modified Paths:
--------------
trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml 2011-11-28 16:23:20 UTC (rev 3703)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml 2011-11-28 16:40:42 UTC (rev 3704)
@@ -81,6 +81,8 @@
<exclude name="**/.settings/**" />
<exclude name="**/.classpath" />
<exclude name="**/.project" />
+ <!-- do not copy native libraries -->
+ <exclude name="**/native/**" />
</fileset>
</copy>
<copy todir="${build.plugins}/org.lwjgl">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jpi...@us...> - 2011-11-28 16:23:30
|
Revision: 3703
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3703&view=rev
Author: jpilgrim
Date: 2011-11-28 16:23:20 +0000 (Mon, 28 Nov 2011)
Log Message:
-----------
Fixed a bug in the update site build script.
Wrong class name of LWJGL plugin activator was specified (org.lwjgl.eclipse.Activator, but correct
is org.lwjgl.Activator).
Now, the current date/time string is added as a qualifier to the LWJGL version, e.g., org.lwjgl_2.8.2.v20111128-1653 instead of org.lwjgl_2.8.2. This simplifies testing and discouples LWJGL versions from plugin versions.
Modified Paths:
--------------
trunk/LWJGL/eclipse-update/org.lwjgl.build/.classpath
trunk/LWJGL/eclipse-update/org.lwjgl.build/META-INF/MANIFEST.MF
trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml
trunk/LWJGL/eclipse-update/org.lwjgl.build/src/java/org/lwjgl/ant/NormalizeVersion.java
trunk/LWJGL/eclipse-update/org.lwjgl.build/test/java/org/lwjgl/ant/NormalizeVersionTest.java
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/.classpath
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/.classpath 2011-11-17 21:41:24 UTC (rev 3702)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/.classpath 2011-11-28 16:23:20 UTC (rev 3703)
@@ -1,8 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
+ <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+ <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="src" path="src/java"/>
<classpathentry kind="src" path="test/java"/>
- <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
- <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
<classpathentry kind="output" path="anttasks"/>
</classpath>
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/META-INF/MANIFEST.MF
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/META-INF/MANIFEST.MF 2011-11-17 21:41:24 UTC (rev 3702)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/META-INF/MANIFEST.MF 2011-11-28 16:23:20 UTC (rev 3703)
@@ -9,5 +9,6 @@
org.apache.tools.ant.types,
org.apache.tools.ant.types.selectors,
org.apache.tools.ant.util,
- org.junit;version="4.8.1"
+ org.junit;version="4"
Bundle-Vendor: Lightweight Java Game Library Project
+Require-Bundle: org.junit;bundle-version="4.8.1"
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml 2011-11-17 21:41:24 UTC (rev 3702)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/build.xml 2011-11-28 16:23:20 UTC (rev 3703)
@@ -54,7 +54,7 @@
<target name="init">
- <normalizeversion version="${version}" property="normversion" />
+ <normalizeversion version="${version}" property="normversion" addDateQualifier="yes" />
<echo>Building plugins for version ${version}, normalized version ${normversion}</echo>
</target>
@@ -209,7 +209,7 @@
Bundle-SymbolicName: org.lwjgl
Bundle-Version: ${normversion}
Bundle-Vendor: ${bundle.vendor}
-Bundle-Activator: org.lwjgl.eclipse.Activator
+Bundle-Activator: org.lwjgl.Activator
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime
Bundle-ActivationPolicy: lazy
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/src/java/org/lwjgl/ant/NormalizeVersion.java
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/src/java/org/lwjgl/ant/NormalizeVersion.java 2011-11-17 21:41:24 UTC (rev 3702)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/src/java/org/lwjgl/ant/NormalizeVersion.java 2011-11-28 16:23:20 UTC (rev 3703)
@@ -11,6 +11,9 @@
******************************************************************************/
package org.lwjgl.ant;
+import java.text.SimpleDateFormat;
+import java.util.Date;
+
import org.apache.tools.ant.BuildException;
import org.apache.tools.ant.Task;
@@ -24,7 +27,11 @@
*/
public class NormalizeVersion extends Task {
-
+ public final static String SEGMENTS[] = { "major", "minor", "service",
+ "qualifier" };
+
+ public final static String VERSION_QUALIFIER_PATTERN = "yyyyMMdd-HHmm";
+
/**
* name of the property to set
*/
@@ -32,7 +39,23 @@
protected String version;
+ protected boolean addDateQualifier = false;
+
/**
+ * @return the addQualifier
+ */
+ public boolean isAddDateQualifier() {
+ return addDateQualifier;
+ }
+
+ /**
+ * @param i_addQualifier the addQualifier to set
+ */
+ public void setAddDateQualifier(boolean i_addDateQualifier) {
+ addDateQualifier = i_addDateQualifier;
+ }
+
+ /**
* @return the property
*/
public String getProperty() {
@@ -57,7 +80,7 @@
* @param i_versionNumber the versionNumber to set
*/
public void setVersion(String version) {
- this.version =version;
+ this.version = version;
}
/**
@@ -72,6 +95,30 @@
if (version == null) {
throw new BuildException("attribute version missing");
}
+ String s = getVersion().trim();
+ int sn = 0;
+ boolean qualifier = false;
+ for (int i = 0; i < s.length(); i++) {
+ if (s.charAt(i) == '.') {
+ sn++;
+ } else {
+
+ qualifier = !Character.isDigit(s.charAt(i));
+ if (sn < 1 && !Character.isDigit(s.charAt(i))) {
+
+ throw new BuildException(
+ "Wrong version format, must contain only digits in the "
+ + SEGMENTS[sn] + " segment, was "
+ + s.substring(0, i) + ">>" + s.charAt(i)
+ + "<<" + s.substring(i + 1));
+
+ }
+ }
+ }
+ if ((sn > 2 || qualifier) && isAddDateQualifier()) {
+ throw new BuildException(
+ "Cannot add date qualifier, qualifier already specified");
+ }
}
/**
@@ -147,11 +194,11 @@
}
n.append(c);
}
-
}
+
if (!qualifier) {
- if (digits.length()>0) {
+ if (digits.length() > 0) {
if (snIndex > 0)
n.append('.');
n.append(digits);
@@ -166,8 +213,25 @@
case 2: // e.g. "1.2.beta
n.append(".0");
}
+ if (isAddDateQualifier())
+ n.append(createDateQualifier());
+ } else {
+ if (isAddDateQualifier()) {
+ throw new BuildException(
+ "Cannot add date qualifier, qualifier already specified");
+ }
}
+
return n.toString();
}
+ /**
+ * @return
+ */
+ private String createDateQualifier() {
+ return ".v"
+ + new SimpleDateFormat(VERSION_QUALIFIER_PATTERN)
+ .format(new Date());
+ }
+
}
Modified: trunk/LWJGL/eclipse-update/org.lwjgl.build/test/java/org/lwjgl/ant/NormalizeVersionTest.java
===================================================================
--- trunk/LWJGL/eclipse-update/org.lwjgl.build/test/java/org/lwjgl/ant/NormalizeVersionTest.java 2011-11-17 21:41:24 UTC (rev 3702)
+++ trunk/LWJGL/eclipse-update/org.lwjgl.build/test/java/org/lwjgl/ant/NormalizeVersionTest.java 2011-11-28 16:23:20 UTC (rev 3703)
@@ -67,5 +67,42 @@
}
+ @Test
+ public void testQualifier() {
+ NormalizeVersion t = new NormalizeVersion();
+ t.setProperty("normalized");
+ t.setAddDateQualifier(true);
+
+ t.setVersion("1");
+ String s = t.doExecute();
+ Assert.assertEquals(20, s.length());
+ Assert.assertTrue(s.startsWith("1.0.0"));
+
+ t.setVersion("1.2");
+ s = t.doExecute();
+ Assert.assertEquals(20, s.length());
+ Assert.assertTrue(s.startsWith("1.2.0"));
+
+ t.setVersion("1.2.3");
+ s = t.doExecute();
+ Assert.assertEquals(20, s.length());
+ Assert.assertTrue(s.startsWith("1.2.3"));
+
+ t.setVersion("2.8.2");
+ s = t.doExecute();
+ Assert.assertEquals(20, s.length());
+ Assert.assertTrue(s.startsWith("2.8.2"));
+ }
+
+ @Test(expected= BuildException.class) public void dateQualifierWithQualifier() {
+ NormalizeVersion t = new NormalizeVersion();
+ t.setProperty("normalized");
+ t.setAddDateQualifier(true);
+ t.setVersion("1.2.beta");
+ t.doExecute();
+ }
+
+
+
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-17 21:41:31
|
Revision: 3702
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3702&view=rev
Author: kappa1
Date: 2011-11-17 21:41:24 +0000 (Thu, 17 Nov 2011)
Log Message:
-----------
AppletLoader: fix uncaught null pointer exception
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-11-16 14:36:28 UTC (rev 3701)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-11-17 21:41:24 UTC (rev 3702)
@@ -1128,13 +1128,10 @@
return object;
} catch (Exception e) {
// failed to read file
- e.printStackTrace();
+ throw e;
} finally {
fis.close();
}
-
- // return null if failed to read file
- return null;
}
/**
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sp...@us...> - 2011-11-16 14:36:41
|
Revision: 3701
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3701&view=rev
Author: spasi
Date: 2011-11-16 14:36:28 +0000 (Wed, 16 Nov 2011)
Log Message:
-----------
Added support for OpenCL 1.2 [UNTESTED]
Modified Paths:
--------------
trunk/LWJGL/platform_build/build-generator.xml
trunk/LWJGL/src/java/org/lwjgl/opencl/CLBuildProgramCallback.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CLChecks.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CLContext.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CallbackUtil.java
trunk/LWJGL/src/java/org/lwjgl/opencl/InfoUtilFactory.java
trunk/LWJGL/src/java/org/lwjgl/util/generator/Utils.java
trunk/LWJGL/src/java/org/lwjgl/util/generator/opencl/CLPDCapabilitiesGenerator.java
trunk/LWJGL/src/native/common/extcl.h
trunk/LWJGL/src/native/common/extcl_types.h
trunk/LWJGL/src/native/common/org_lwjgl_opencl_CallbackUtil.c
trunk/LWJGL/src/templates/org/lwjgl/opencl/CL10.java
trunk/LWJGL/src/templates/org/lwjgl/opencl/CL11.java
trunk/LWJGL/src/templates/org/lwjgl/opencl/EXT_device_fission.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/ARB_separate_shader_objects.java
trunk/LWJGL/src/templates/org/lwjgl/opengl/GL41.java
Added Paths:
-----------
trunk/LWJGL/src/java/org/lwjgl/opencl/CLCompileProgramCallback.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CLLinkProgramCallback.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CLPrintfCallback.java
trunk/LWJGL/src/java/org/lwjgl/opencl/CLProgramCallback.java
trunk/LWJGL/src/templates/org/lwjgl/opencl/CL12.java
trunk/LWJGL/src/templates/org/lwjgl/opencl/CL12GL.java
Modified: trunk/LWJGL/platform_build/build-generator.xml
===================================================================
--- trunk/LWJGL/platform_build/build-generator.xml 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/platform_build/build-generator.xml 2011-11-16 14:36:28 UTC (rev 3701)
@@ -36,13 +36,10 @@
<include name="org/lwjgl/opencl/CLPlatform.java"/>
<include name="org/lwjgl/opencl/CLDevice.java"/>
<include name="org/lwjgl/opencl/CLContext.java"/>
- <include name="org/lwjgl/opencl/CLContextCallback.java"/>
<include name="org/lwjgl/opencl/CLCommandQueue.java"/>
<include name="org/lwjgl/opencl/CLMem.java"/>
- <include name="org/lwjgl/opencl/CLMemObjectDestructorCallback.java"/>
- <include name="org/lwjgl/opencl/CLBuildProgramCallback.java"/>
+ <include name="org/lwjgl/opencl/CL*Callback.java"/>
<include name="org/lwjgl/opencl/CLNativeKernel.java"/>
- <include name="org/lwjgl/opencl/CLEventCallback.java"/>
<include name="org/lwjgl/opencl/CLFunctionAddress.java"/>
</javac>
</target>
Modified: trunk/LWJGL/src/java/org/lwjgl/opencl/CLBuildProgramCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLBuildProgramCallback.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLBuildProgramCallback.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 2002-2010 LWJGL Project
+ * Copyright (c) 2002-2011 LWJGL Project
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@ -31,8 +31,6 @@
*/
package org.lwjgl.opencl;
-import org.lwjgl.PointerWrapperAbstract;
-
/**
* Instances of this class can be used to receive OpenCL program build notifications.
* A single CLBuildProgramCallback instance should only be used with programs created
@@ -40,37 +38,6 @@
*
* @author Spasi
*/
-public abstract class CLBuildProgramCallback extends PointerWrapperAbstract {
+public abstract class CLBuildProgramCallback extends CLProgramCallback {
- private CLContext context;
-
- protected CLBuildProgramCallback() {
- super(CallbackUtil.getBuildProgramCallback());
- }
-
- /**
- * Sets the context that contains the CLPrograms to which we're registered.
- *
- * @param context the CLContext object
- */
- void setContext(final CLContext context) {
- this.context = context;
- }
-
- /**
- * Called from native code.
- *
- * @param program_address the CLProgram object pointer
- */
- private void handleMessage(long program_address) {
- handleMessage(context.getCLProgram(program_address));
- }
-
- /**
- * The callback method.
- *
- * @param program the CLProgram object that was built
- */
- protected abstract void handleMessage(CLProgram program);
-
}
\ No newline at end of file
Modified: trunk/LWJGL/src/java/org/lwjgl/opencl/CLChecks.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLChecks.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLChecks.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -53,23 +53,23 @@
/**
* Calculates the number of bytes in the specified cl_mem buffer rectangle region.
*
- * @param origin the host origin
+ * @param offset the host offset
* @param region the rectangle region
* @param row_pitch the host row pitch
* @param slice_pitch the host slice pitch
*
* @return the region size in bytes
*/
- static int calculateBufferRectSize(final PointerBuffer origin, final PointerBuffer region, long row_pitch, long slice_pitch) {
+ static int calculateBufferRectSize(final PointerBuffer offset, final PointerBuffer region, long row_pitch, long slice_pitch) {
if ( !LWJGLUtil.CHECKS )
return 0;
- final long x = origin.get(0);
- final long y = origin.get(1);
- final long z = origin.get(2);
+ final long x = offset.get(0);
+ final long y = offset.get(1);
+ final long z = offset.get(2);
if ( LWJGLUtil.DEBUG && (x < 0 || y < 0 || z < 0) )
- throw new IllegalArgumentException("Invalid cl_mem host origin: " + x + ", " + y + ", " + z);
+ throw new IllegalArgumentException("Invalid cl_mem host offset: " + x + ", " + y + ", " + z);
final long w = region.get(0);
final long h = region.get(1);
Added: trunk/LWJGL/src/java/org/lwjgl/opencl/CLCompileProgramCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLCompileProgramCallback.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLCompileProgramCallback.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2002-2011 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * 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.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "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 THE COPYRIGHT OWNER 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.
+ */
+package org.lwjgl.opencl;
+
+/**
+ * Instances of this class can be used to receive OpenCL program compilation notifications.
+ * A single CLCompileProgramCallback instance should only be used with programs created
+ * in the same CLContext.
+ *
+ * @author Spasi
+ */
+public abstract class CLCompileProgramCallback extends CLProgramCallback {
+
+}
\ No newline at end of file
Modified: trunk/LWJGL/src/java/org/lwjgl/opencl/CLContext.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLContext.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLContext.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -49,11 +49,15 @@
private static final CLContextUtil util = (CLContextUtil)CLPlatform.getInfoUtilInstance(CLContext.class, "CL_CONTEXT_UTIL");
private final CLObjectRegistry<CLCommandQueue> clCommandQueues;
- private final CLObjectRegistry<CLMem> clMems;
- private final CLObjectRegistry<CLSampler> clSamplers;
- private final CLObjectRegistry<CLProgram> clPrograms;
- private final CLObjectRegistry<CLEvent> clEvents;
+ private final CLObjectRegistry<CLMem> clMems;
+ private final CLObjectRegistry<CLSampler> clSamplers;
+ private final CLObjectRegistry<CLProgram> clPrograms;
+ private final CLObjectRegistry<CLEvent> clEvents;
+ private long
+ contextCallback,
+ printfCallback;
+
CLContext(final long pointer, final CLPlatform platform) {
super(pointer, platform);
@@ -269,4 +273,50 @@
CLObjectRegistry<CLEvent> getCLEventRegistry() { return clEvents; }
+ private boolean checkCallback(final long callback, final int result) {
+ if ( result == 0 && (callback == 0 || isValid()) )
+ return true;
+
+ if ( callback != 0 )
+ CallbackUtil.deleteGlobalRef(callback);
+ return false;
+ }
+
+ /**
+ * Associates this context with the specified context callback reference. If the context
+ * is invalid, the callback reference is deleted. NO-OP if user_data is 0.
+ *
+ * @param callback the context callback pointer
+ */
+ void setContextCallback(final long callback) {
+ if ( checkCallback(callback, 0) )
+ this.contextCallback = callback;
+ }
+
+ /**
+ * Associates this context with the specified printf callback reference. If the context
+ * is invalid, the callback reference is deleted. NO-OP if user_data is 0.
+ *
+ * @param callback the printf callback pointer
+ */
+ void setPrintfCallback(final long callback, final int result) {
+ if ( checkCallback(callback, result) )
+ this.printfCallback = callback;
+ }
+
+ /**
+ * Decrements the context's reference count. If the reference
+ * count hits zero, it also deletes
+ * any callback objects associated with it.
+ */
+ void releaseImpl() {
+ if ( release() > 0 )
+ return;
+
+ if ( contextCallback != 0 )
+ CallbackUtil.deleteGlobalRef(contextCallback);
+ if ( printfCallback != 0 )
+ CallbackUtil.deleteGlobalRef(printfCallback);
+ }
+
}
\ No newline at end of file
Added: trunk/LWJGL/src/java/org/lwjgl/opencl/CLLinkProgramCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLLinkProgramCallback.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLLinkProgramCallback.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -0,0 +1,43 @@
+/*
+ * Copyright (c) 2002-2011 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * 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.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "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 THE COPYRIGHT OWNER 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.
+ */
+package org.lwjgl.opencl;
+
+/**
+ * Instances of this class can be used to receive OpenCL program linkage notifications.
+ * A single CLLinkProgramCallback instance should only be used with programs created
+ * in the same CLContext.
+ *
+ * @author Spasi
+ */
+public abstract class CLLinkProgramCallback extends CLProgramCallback {
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/java/org/lwjgl/opencl/CLPrintfCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLPrintfCallback.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLPrintfCallback.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -0,0 +1,51 @@
+/*
+ * Copyright (c) 2002-2011 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * 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.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "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 THE COPYRIGHT OWNER 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.
+ */
+package org.lwjgl.opencl;
+
+import org.lwjgl.PointerWrapperAbstract;
+
+/**
+ * Instances of this class can be used to receive OpenCL printf messages.
+ * Different CLContexts should use different CLPrintfCallback instances.
+ *
+ * @author Spasi
+ */
+public abstract class CLPrintfCallback extends PointerWrapperAbstract {
+
+ protected CLPrintfCallback() {
+ super(CallbackUtil.getPrintfCallback());
+ }
+
+ /** The callback method. */
+ protected abstract void handleMessage(String data);
+
+}
\ No newline at end of file
Added: trunk/LWJGL/src/java/org/lwjgl/opencl/CLProgramCallback.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CLProgramCallback.java (rev 0)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CLProgramCallback.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) 2002-2011 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * 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.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "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 THE COPYRIGHT OWNER 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.
+ */
+package org.lwjgl.opencl;
+
+import org.lwjgl.PointerWrapperAbstract;
+
+/**
+ * Base class for OpenCL program action notifications.
+ *
+ * @author Spasi
+ */
+abstract class CLProgramCallback extends PointerWrapperAbstract {
+
+ private CLContext context;
+
+ protected CLProgramCallback() {
+ super(CallbackUtil.getProgramCallback());
+ }
+
+ /**
+ * Sets the context that contains the CLPrograms to which we're registered.
+ *
+ * @param context the CLContext object
+ */
+ final void setContext(final CLContext context) {
+ this.context = context;
+ }
+
+ /**
+ * Called from native code.
+ *
+ * @param program_address the CLProgram object pointer
+ */
+ private void handleMessage(long program_address) {
+ handleMessage(context.getCLProgram(program_address));
+ }
+
+ /**
+ * The callback method.
+ *
+ * @param program the CLProgram object affected
+ */
+ protected abstract void handleMessage(CLProgram program);
+
+}
\ No newline at end of file
Modified: trunk/LWJGL/src/java/org/lwjgl/opencl/CallbackUtil.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/CallbackUtil.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/CallbackUtil.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -70,7 +70,7 @@
*
* @param ref the GlobalRef memory address.
*/
- private static native void deleteGlobalRef(long ref);
+ static native void deleteGlobalRef(long ref);
/**
* Deletes the global reference represented by user_data if an OpenCL error occured.
@@ -99,40 +99,6 @@
*/
static native long getContextCallback();
- /**
- * Associates the specified CLContext with the specified global reference. If the context
- * is invalid, the global reference is deleted. NO-OP if user_data is 0.
- *
- * @param context the CLContext to register
- * @param user_data the global reference pointer
- */
- static void registerCallback(final CLContext context, final long user_data) {
- if ( user_data == 0 )
- return;
-
- if ( context.isValid() )
- contextUserData.put(context, user_data);
- else
- deleteGlobalRef(user_data);
- }
-
- /**
- * Decrements the specified context's reference count, clears its association
- * with a CLContextCallback object if it exists and deletes the corresponding
- * global reference.
- *
- * @param context the CLContext to unregister
- */
- static void unregisterCallback(final CLContext context) {
- if ( context.release() > 0 )
- return;
-
- final Long user_data = contextUserData.remove(context);
-
- if ( user_data != null )
- deleteGlobalRef(user_data);
- }
-
/* [ Other callback functionality ]
The other callbacks are simpler. We create the GlobalRef before passing the callback,
we delete it when we receive the callback call.
@@ -150,7 +116,7 @@
*
* @return the callback function address
*/
- static native long getBuildProgramCallback();
+ static native long getProgramCallback();
/**
* Returns the memory address of the native function we pass to clEnqueueNativeKernel.
@@ -167,6 +133,13 @@
static native long getEventCallback();
/**
+ * Returns the memory address of the native function we pass to clSetPrintfCallback.
+ *
+ * @return the callback function address
+ */
+ static native long getPrintfCallback();
+
+ /**
* Returns the memory address of the native function we pass to clCreateContext(FromType),
* when <code>APPLEContextLoggingUtil.SYSTEM_LOG_CALLBACK</code> is used.
*
Modified: trunk/LWJGL/src/java/org/lwjgl/opencl/InfoUtilFactory.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opencl/InfoUtilFactory.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/opencl/InfoUtilFactory.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -123,7 +123,7 @@
Util.checkCLError(errcode_ret.get(0));
return __result;
} finally {
- CallbackUtil.registerCallback(__result, user_data);
+ if ( __result != null ) __result.setContextCallback(user_data);
}
}
Modified: trunk/LWJGL/src/java/org/lwjgl/util/generator/Utils.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/generator/Utils.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/util/generator/Utils.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -373,20 +373,22 @@
if ( param != null && p.getSimpleName().equals(param.getSimpleName()) )
break;
+ if ( p.getAnnotation(NullTerminated.class) != null )
+ continue;
+
final Class type = Utils.getJavaType(p.getType());
if ( type.equals(CharSequence.class) ) {
if ( offset == null )
offset = p.getSimpleName() + ".length()";
else
offset += " + " + p.getSimpleName() + ".length()";
- if ( p.getAnnotation(NullTerminated.class) != null ) offset += " + 1";
-
+ //if ( p.getAnnotation(NullTerminated.class) != null ) offset += " + 1";
} else if ( type.equals(CharSequence[].class) ) {
if ( offset == null )
offset = "APIUtil.getTotalLength(" + p.getSimpleName() + ")";
else
offset += " + APIUtil.getTotalLength(" + p.getSimpleName() + ")";
- if ( p.getAnnotation(NullTerminated.class) != null ) offset += " + " + p.getSimpleName() + ".length";
+ //if ( p.getAnnotation(NullTerminated.class) != null ) offset += " + " + p.getSimpleName() + ".length";
}
}
Modified: trunk/LWJGL/src/java/org/lwjgl/util/generator/opencl/CLPDCapabilitiesGenerator.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/generator/opencl/CLPDCapabilitiesGenerator.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/java/org/lwjgl/util/generator/opencl/CLPDCapabilitiesGenerator.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -51,7 +51,7 @@
// TODO: Add future versions here
private static final int[][] CL_VERSIONS = {
- { 1 }, // OpenCL 1
+ { 1, 2 }, // OpenCL 1
};
static void generateClassPrologue(final PrintWriter writer, final String name) {
Modified: trunk/LWJGL/src/native/common/extcl.h
===================================================================
--- trunk/LWJGL/src/native/common/extcl.h 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/native/common/extcl.h 2011-11-16 14:36:28 UTC (rev 3701)
@@ -61,9 +61,10 @@
typedef void (CL_CALLBACK * cl_create_context_callback)(const char *errinfo, const void *private_info, size_t cb, void *user_data);
typedef void (CL_CALLBACK * cl_mem_object_destructor_callback)(cl_mem memobj, void *user_data);
-typedef void (CL_CALLBACK * cl_build_program_callback)(cl_program program, void *user_data);
+typedef void (CL_CALLBACK * cl_program_callback)(cl_program program, void *user_data);
typedef void (CL_CALLBACK * cl_event_callback)(cl_event event, cl_int event_command_exec_status, void *user_data);
typedef void (CL_CALLBACK * cl_native_kernel_func)(void *args);
+typedef void (CL_CALLBACK * cl_printf_callback)(cl_context context, cl_uint printf_data_len, char *printf_data_ptr, void *user_data);
// -----------------[ Cross-platform functions ]-----------------
Modified: trunk/LWJGL/src/native/common/extcl_types.h
===================================================================
--- trunk/LWJGL/src/native/common/extcl_types.h 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/native/common/extcl_types.h 2011-11-16 14:36:28 UTC (rev 3701)
@@ -20,8 +20,10 @@
typedef cl_uint cl_device_local_mem_type;
typedef cl_bitfield cl_device_exec_capabilities;
typedef cl_bitfield cl_command_queue_properties;
+typedef intptr_t cl_device_partition_property;
+typedef cl_bitfield cl_device_affinity_domain;
-typedef intptr_t cl_context_properties;
+typedef intptr_t cl_context_properties;
typedef cl_uint cl_context_info;
typedef cl_uint cl_command_queue_info;
typedef cl_uint cl_channel_order;
@@ -29,6 +31,7 @@
typedef cl_bitfield cl_mem_flags;
typedef cl_uint cl_mem_object_type;
typedef cl_uint cl_mem_info;
+typedef cl_bitfield cl_mem_migration_flags;
typedef cl_uint cl_image_info;
typedef cl_uint cl_buffer_create_type;
typedef cl_uint cl_addressing_mode;
@@ -37,8 +40,12 @@
typedef cl_bitfield cl_map_flags;
typedef cl_uint cl_program_info;
typedef cl_uint cl_program_build_info;
+typedef cl_uint cl_program_binary_type;
typedef cl_int cl_build_status;
typedef cl_uint cl_kernel_info;
+typedef cl_uint cl_kernel_arg_info;
+typedef cl_uint cl_kernel_arg_address_qualifier;
+typedef cl_uint cl_kernel_arg_access_qualifier;
typedef cl_uint cl_kernel_work_group_info;
typedef cl_uint cl_event_info;
typedef cl_uint cl_command_type;
@@ -49,6 +56,19 @@
cl_channel_type image_channel_data_type;
} cl_image_format;
+typedef struct _cl_image_desc {
+ cl_mem_object_type image_type;
+ size_t image_width;
+ size_t image_height;
+ size_t image_depth;
+ size_t image_array_size;
+ size_t image_row_pitch;
+ size_t image_slice_pitch;
+ cl_uint num_mip_levels;
+ cl_uint num_samples;
+ cl_mem buffer;
+} cl_image_desc;
+
typedef struct _cl_buffer_region {
size_t origin;
size_t size;
@@ -63,7 +83,7 @@
// -----------------[ Extension typedefs ]-----------------
// EXT_device_fission
-typedef cl_bitfield cl_device_partition_property_ext;
+typedef cl_ulong cl_device_partition_property_ext;
// EXT_migrate_memobject
typedef cl_bitfield cl_mem_migration_flags_ext;
Modified: trunk/LWJGL/src/native/common/org_lwjgl_opencl_CallbackUtil.c
===================================================================
--- trunk/LWJGL/src/native/common/org_lwjgl_opencl_CallbackUtil.c 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/native/common/org_lwjgl_opencl_CallbackUtil.c 2011-11-16 14:36:28 UTC (rev 3701)
@@ -43,9 +43,10 @@
static jmethodID contextCallbackJ;
static jmethodID memObjectDestructorCallbackJ;
-static jmethodID buildProgramCallbackJ;
+static jmethodID programCallbackJ;
static jmethodID nativeKernelCallbackJ;
static jmethodID eventCallbackJ;
+static jmethodID printfCallbackJ;
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CallbackUtil_ncreateGlobalRef(JNIEnv *env, jclass clazz, jobject obj) {
return (intptr_t)(*env)->NewGlobalRef(env, obj);
@@ -113,13 +114,13 @@
return (jlong)(intptr_t)&memObjectDestructorCallback;
}
-// ----------------- [ MEM OBJECT DESTRUCTOR CALLBACK ] -----------------
+// ----------------- [ PROGRAM CALLBACK ] -----------------
-static void CL_CALLBACK buildProgramCallback(cl_program program, void *user_data) {
+static void CL_CALLBACK programCallback(cl_program program, void *user_data) {
JNIEnv *env = attachCurrentThread();
- if ( env != NULL && !(*env)->ExceptionOccurred(env) && buildProgramCallbackJ != NULL ) {
- (*env)->CallVoidMethod(env, (jobject)user_data, buildProgramCallbackJ,
+ if ( env != NULL && !(*env)->ExceptionOccurred(env) && programCallbackJ != NULL ) {
+ (*env)->CallVoidMethod(env, (jobject)user_data, programCallbackJ,
(jlong)(intptr_t)program
);
(*env)->DeleteGlobalRef(env, (jobject)user_data);
@@ -128,16 +129,16 @@
detachCurrentThread();
}
-JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CallbackUtil_getBuildProgramCallback(JNIEnv *env, jclass clazz) {
+JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CallbackUtil_getProgramCallback(JNIEnv *env, jclass clazz) {
// Cache the callback methodID
jclass callbackClass;
- if ( buildProgramCallbackJ == NULL ) {
- callbackClass = (*env)->FindClass(env, "org/lwjgl/opencl/CLBuildProgramCallback");
+ if ( programCallbackJ == NULL ) {
+ callbackClass = (*env)->FindClass(env, "org/lwjgl/opencl/CLProgramCallback");
if ( callbackClass != NULL )
- buildProgramCallbackJ = (*env)->GetMethodID(env, callbackClass, "handleMessage", "(J)V");
+ programCallbackJ = (*env)->GetMethodID(env, callbackClass, "handleMessage", "(J)V");
}
- return (jlong)(intptr_t)&buildProgramCallback;
+ return (jlong)(intptr_t)&programCallback;
}
// ----------------- [ NATIVE KERNEL CALLBACK ] -----------------
@@ -214,6 +215,32 @@
return (jlong)(intptr_t)&eventCallback;
}
+// ----------------- [ PRINTF CALLBACK ] -----------------
+
+static void CL_CALLBACK printfCallback(cl_context context, cl_uint printf_data_len, char *printf_data_ptr, void *user_data) {
+ JNIEnv *env = attachCurrentThread();
+
+ if ( env != NULL && !(*env)->ExceptionOccurred(env) && printfCallbackJ != NULL ) {
+ (*env)->CallVoidMethod(env, (jobject)user_data, printfCallbackJ,
+ NewStringNativeWithLength(env, printf_data_ptr, printf_data_len)
+ );
+ }
+
+ detachCurrentThread();
+}
+
+JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CallbackUtil_getPrintfCallback(JNIEnv *env, jclass clazz) {
+ // Cache the callback methodID
+ jclass callbackClass;
+ if ( printfCallbackJ == NULL ) {
+ callbackClass = (*env)->FindClass(env, "org/lwjgl/opencl/CLPrintfCallback");
+ if ( callbackClass != NULL )
+ printfCallbackJ = (*env)->GetMethodID(env, callbackClass, "handleMessage", "(Ljava/lang/String;)V");
+ }
+
+ return (jlong)(intptr_t)&printfCallback;
+}
+
// ----------------- [ APPLE_ContextLoggingFunctions CALLBACKS ] -----------------
JNIEXPORT jlong JNICALL Java_org_lwjgl_opencl_CallbackUtil_getLogMessageToSystemLogAPPLE(JNIEnv *env, jclass clazz) {
Modified: trunk/LWJGL/src/templates/org/lwjgl/opencl/CL10.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opencl/CL10.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/templates/org/lwjgl/opencl/CL10.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -399,7 +399,7 @@
// Create a GlobalRef to the callback object.
javaBeforeNative = "\t\tlong user_data = pfn_notify == null || pfn_notify.isCustom() ? 0 : CallbackUtil.createGlobalRef(pfn_notify);",
// Associate context with the GlobalRef, so we can delete it later.
- javaFinally = "\t\t\tCallbackUtil.registerCallback(__result, user_data);"
+ javaFinally = "\t\t\tif ( __result != null ) __result.setContextCallback(user_data);"
)
@Check(value = "errcode_ret", canBeNull = true)
@PointerWrapper(value = "cl_context", params = "APIUtil.getCLPlatform(properties)")
@@ -417,7 +417,7 @@
// Create a GlobalRef to the callback object.
javaBeforeNative = "\t\tlong user_data = pfn_notify == null || pfn_notify.isCustom() ? 0 : CallbackUtil.createGlobalRef(pfn_notify);",
// Associate context with the GlobalRef, so we can delete it later.
- javaFinally = "\t\t\tCallbackUtil.registerCallback(__result, user_data);"
+ javaFinally = "\t\t\tif ( __result != null ) __result.setContextCallback(user_data);"
)
@Check(value = "errcode_ret", canBeNull = true)
@PointerWrapper(value = "cl_context", params = "APIUtil.getCLPlatform(properties)")
@@ -434,7 +434,7 @@
// Create a GlobalRef to the callback object.
javaBeforeNative = "\t\tlong user_data = pfn_notify == null || pfn_notify.isCustom() ? 0 : CallbackUtil.createGlobalRef(pfn_notify);",
// Associate context with the GlobalRef, so we can delete it later.
- javaFinally = "\t\t\tCallbackUtil.registerCallback(__result, user_data);"
+ javaFinally = "\t\t\tif ( __result != null ) __result.setContextCallback(user_data);"
)
@Check(value = "errcode_ret", canBeNull = true)
@PointerWrapper(value = "cl_context", params = "APIUtil.getCLPlatform(properties)")
@@ -450,7 +450,7 @@
@Code(
javaBeforeNative = "\t\tAPIUtil.releaseObjects(context);",
- javaAfterNative = "\t\tif ( __result == CL_SUCCESS ) CallbackUtil.unregisterCallback(context);"
+ javaAfterNative = "\t\tif ( __result == CL_SUCCESS ) context.releaseImpl();"
)
@cl_int
int clReleaseContext(@PointerWrapper("cl_context") CLContext context);
@@ -511,7 +511,7 @@
@PointerWrapper("cl_mem") CLMem buffer,
@cl_bool int blocking_read,
@size_t long offset,
- @AutoSize("ptr") @size_t long cb,
+ @AutoSize("ptr") @size_t long size,
@OutParameter
@cl_byte
@cl_short
@@ -529,7 +529,7 @@
@PointerWrapper("cl_mem") CLMem buffer,
@cl_bool int blocking_write,
@size_t long offset,
- @AutoSize("ptr") @size_t long cb,
+ @AutoSize("ptr") @size_t long size,
@Const
@cl_byte
@cl_short
@@ -548,7 +548,7 @@
@PointerWrapper("cl_mem") CLMem dst_buffer,
@size_t long src_offset,
@size_t long dst_offset,
- @size_t long cb,
+ @size_t long size,
@AutoSize(value = "event_wait_list", canBeNull = true) @cl_uint int num_events_in_wait_list,
@Check(canBeNull = true) @Const @NativeType("cl_event") PointerBuffer event_wait_list,
@OutParameter @Check(value = "1", canBeNull = true) @NativeType("cl_event") PointerBuffer event);
@@ -556,13 +556,13 @@
@Code(javaAfterNative = "\t\tif ( __result != null ) command_queue.registerCLEvent(event);")
@Check(value = "errcode_ret", canBeNull = true)
@cl_void
- @AutoSize("cb")
+ @AutoSize("size")
ByteBuffer clEnqueueMapBuffer(@PointerWrapper("cl_command_queue") CLCommandQueue command_queue,
@PointerWrapper("cl_mem") CLMem buffer,
@cl_bool int blocking_map,
@NativeType("cl_map_flags") long map_flags,
@size_t long offset,
- @size_t long cb,
+ @size_t long size,
@AutoSize(value = "event_wait_list", canBeNull = true) @cl_uint int num_events_in_wait_list,
@Check(canBeNull = true) @Const @NativeType("cl_event") PointerBuffer event_wait_list,
@OutParameter @Check(value = "1", canBeNull = true) @NativeType("cl_event") PointerBuffer event,
@@ -855,7 +855,7 @@
@AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
@Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
@Check @NullTerminated @Const @cl_char ByteBuffer options,
- @PointerWrapper(value = "cl_build_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
@Constant("user_data") @PointerWrapper("void *") long user_data);
@Alternate("clBuildProgram")
@@ -872,7 +872,7 @@
@AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
@Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
@NullTerminated @Const CharSequence options,
- @PointerWrapper(value = "cl_build_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
@Constant("user_data") @PointerWrapper("void *") long user_data);
@Alternate("clBuildProgram")
@@ -889,7 +889,7 @@
@Constant("1") @cl_uint int num_devices,
@Constant(value = "APIUtil.getPointer(device)", keepParam = true) CLDevice device,
@NullTerminated @Const CharSequence options,
- @PointerWrapper(value = "cl_build_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLBuildProgramCallback pfn_notify,
@Constant("user_data") @PointerWrapper("void *") long user_data);
@cl_int
Modified: trunk/LWJGL/src/templates/org/lwjgl/opencl/CL11.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opencl/CL11.java 2011-11-13 21:21:52 UTC (rev 3700)
+++ trunk/LWJGL/src/templates/org/lwjgl/opencl/CL11.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -121,14 +121,14 @@
int clEnqueueReadBufferRect(@PointerWrapper("cl_command_queue") CLCommandQueue command_queue,
@PointerWrapper("cl_mem") CLMem buffer,
@cl_bool int blocking_read,
- @Const @Check("3") @NativeType("size_t") PointerBuffer buffer_origin,
- @Const @Check("3") @NativeType("size_t") PointerBuffer host_origin,
+ @Const @Check("3") @NativeType("size_t") PointerBuffer buffer_offset,
+ @Const @Check("3") @NativeType("size_t") PointerBuffer host_offset,
@Const @Check("3") @NativeType("size_t") PointerBuffer region,
@size_t long buffer_row_pitch,
@size_t long buffer_slice_pitch,
@size_t long host_row_pitch,
@size_t long host_slice_pitch,
- @OutParameter @Check("CLChecks.calculateBufferRectSize(host_origin, region, host_row_pitch, host_slice_pitch)")
+ @OutParameter @Check("CLChecks.calculateBufferRectSize(host_offset, region, host_row_pitch, host_slice_pitch)")
@cl_byte
@cl_short
@cl_int
@@ -144,14 +144,14 @@
int clEnqueueWriteBufferRect(@PointerWrapper("cl_command_queue") CLCommandQueue command_queue,
@PointerWrapper("cl_mem") CLMem buffer,
@cl_bool int blocking_write,
- @Const @Check("3") @NativeType("size_t") PointerBuffer buffer_origin,
- @Const @Check("3") @NativeType("size_t") PointerBuffer host_origin,
+ @Const @Check("3") @NativeType("size_t") PointerBuffer buffer_offset,
+ @Const @Check("3") @NativeType("size_t") PointerBuffer host_offset,
@Const @Check("3") @NativeType("size_t") PointerBuffer region,
@size_t long buffer_row_pitch,
@size_t long buffer_slice_pitch,
@size_t long host_row_pitch,
@size_t long host_slice_pitch,
- @Const @Check("CLChecks.calculateBufferRectSize(host_origin, region, host_row_pitch, host_slice_pitch)")
+ @Const @Check("CLChecks.calculateBufferRectSize(host_offset, region, host_row_pitch, host_slice_pitch)")
@cl_byte
@cl_short
@cl_int
Added: trunk/LWJGL/src/templates/org/lwjgl/opencl/CL12.java
===================================================================
--- trunk/LWJGL/src/templates/org/lwjgl/opencl/CL12.java (rev 0)
+++ trunk/LWJGL/src/templates/org/lwjgl/opencl/CL12.java 2011-11-16 14:36:28 UTC (rev 3701)
@@ -0,0 +1,445 @@
+/*
+ * Copyright (c) 2002-2008 LWJGL Project
+ * All rights reserved.
+ *
+ * Redistribution and use in source and binary forms, with or without
+ * modification, are permitted provided that the following conditions are
+ * met:
+ *
+ * * Redistributions of source code must retain the above copyright
+ * notice, this list of conditions and the following disclaimer.
+ *
+ * * 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.
+ *
+ * * Neither the name of 'LWJGL' nor the names of
+ * its contributors may be used to endorse or promote products derived
+ * from this software without specific prior written permission.
+ *
+ * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+ * "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 THE COPYRIGHT OWNER 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.
+ */
+package org.lwjgl.opencl;
+
+import org.lwjgl.PointerBuffer;
+import org.lwjgl.util.generator.*;
+import org.lwjgl.util.generator.opencl.*;
+
+import java.nio.Buffer;
+import java.nio.ByteBuffer;
+import java.nio.IntBuffer;
+import java.nio.LongBuffer;
+
+/** The core OpenCL 1.1 API */
+public interface CL12 {
+
+ /** Error Codes */
+ int CL_COMPILE_PROGRAM_FAILURE = -15,
+ CL_LINKER_NOT_AVAILABLE = -16,
+ CL_LINK_PROGRAM_FAILURE = -17,
+ CL_DEVICE_PARTITION_FAILED = -18,
+ CL_KERNEL_ARG_INFO_NOT_AVAILABLE = -19,
+ CL_INVALID_IMAGE_DESCRIPTOR = -65,
+ CL_INVALID_COMPILER_OPTIONS = -66,
+ CL_INVALID_LINKER_OPTIONS = -67,
+ CL_INVALID_DEVICE_PARTITION_COUNT = -68;
+
+ /** OpenCL Version */
+ int CL_VERSION_1_2 = 1;
+
+ /** cl_bool */
+ int CL_BLOCKING = CL10.CL_TRUE,
+ CL_NON_BLOCKING = CL10.CL_FALSE;
+
+ /** cl_device_type - bitfield */
+ int CL_DEVICE_TYPE_CUSTOM = (1 << 4);
+
+ /* cl_device_info */
+ int CL_DEVICE_DOUBLE_FP_CONFIG = 0x1032,
+ CL_DEVICE_LINKER_AVAILABLE = 0x103E,
+ CL_DEVICE_BUILT_IN_KERNELS = 0x103F,
+ CL_DEVICE_IMAGE_MAX_BUFFER_SIZE = 0x1040,
+ CL_DEVICE_IMAGE_MAX_ARRAY_SIZE = 0x1041,
+ CL_DEVICE_PARENT_DEVICE = 0x1042,
+ CL_DEVICE_PARTITION_MAX_SUB_DEVICES = 0x1043,
+ CL_DEVICE_PARTITION_PROPERTIES = 0x1044,
+ CL_DEVICE_PARTITION_AFFINITY_DOMAIN = 0x1045,
+ CL_DEVICE_PARTITION_TYPE = 0x1046,
+ CL_DEVICE_REFERENCE_COUNT = 0x1047,
+ CL_DEVICE_PREFERRED_INTEROP_USER_SYNC = 0x1048,
+ CL_DEVICE_PRINTF_BUFFER_SIZE = 0x1049;
+
+ /* cl_device_fp_config - bitfield */
+ int CL_FP_CORRECTLY_ROUNDED_DIVIDE_SQRT = (1 << 7);
+
+ /* cl_context_properties */
+ int CL_CONTEXT_INTEROP_USER_SYNC = 0x1085;
+
+ /* cl_device_partition_property */
+ int CL_DEVICE_PARTITION_EQUALLY = 0x1086,
+ CL_DEVICE_PARTITION_BY_COUNTS = 0x1087,
+ CL_DEVICE_PARTITION_BY_COUNTS_LIST_END = 0x0,
+ CL_DEVICE_PARTITION_BY_AFFINITY_DOMAIN = 0x1088;
+
+ /* cl_device_affinity_domain */
+ int CL_DEVICE_AFFINITY_DOMAIN_NUMA = (1 << 0),
+ CL_DEVICE_AFFINITY_DOMAIN_L4_CACHE = (1 << 1),
+ CL_DEVICE_AFFINITY_DOMAIN_L3_CACHE = (1 << 2),
+ CL_DEVICE_AFFINITY_DOMAIN_L2_CACHE = (1 << 3),
+ CL_DEVICE_AFFINITY_DOMAIN_L1_CACHE = (1 << 4),
+ CL_DEVICE_AFFINITY_DOMAIN_NEXT_PARTITIONABLE = (1 << 5);
+
+ /* cl_mem_flags - bitfield */
+ int CL_MEM_HOST_WRITE_ONLY = (1 << 7),
+ CL_MEM_HOST_READ_ONLY = (1 << 8),
+ CL_MEM_HOST_NO_ACCESS = (1 << 9);
+
+ /* cl_mem_migration_flags - bitfield */
+ int CL_MIGRATE_MEM_OBJECT_HOST = (1 << 0),
+ CL_MIGRATE_MEM_OBJECT_CONTENT_UNDEFINED = (1 << 1);
+
+ /* cl_mem_object_type */
+ int CL_MEM_OBJECT_IMAGE2D_ARRAY = 0x10F3,
+ CL_MEM_OBJECT_IMAGE1D = 0x10F4,
+ CL_MEM_OBJECT_IMAGE1D_ARRAY = 0x10F5,
+ CL_MEM_OBJECT_IMAGE1D_BUFFER = 0x10F6;
+
+ /* cl_image_info */
+ int CL_IMAGE_ARRAY_SIZE = 0x1117,
+ CL_IMAGE_BUFFER = 0x1118,
+ CL_IMAGE_NUM_MIP_LEVELS = 0x1119,
+ CL_IMAGE_NUM_SAMPLES = 0x111A;
+
+ /* cl_map_flags - bitfield */
+ int CL_MAP_WRITE_INVALIDATE_REGION = (1 << 2);
+
+ /* cl_program_info */
+ int CL_PROGRAM_NUM_KERNELS = 0x1167,
+ CL_PROGRAM_KERNEL_NAMES = 0x1168;
+
+ /* cl_program_build_info */
+ int CL_PROGRAM_BINARY_TYPE = 0x1184;
+
+ /* cl_program_binary_type */
+ int CL_PROGRAM_BINARY_TYPE_NONE = 0x0,
+ CL_PROGRAM_BINARY_TYPE_COMPILED_OBJECT = 0x1,
+ CL_PROGRAM_BINARY_TYPE_LIBRARY = 0x2,
+ CL_PROGRAM_BINARY_TYPE_EXECUTABLE = 0x4;
+
+ /* cl_kernel_info */
+ int CL_KERNEL_ATTRIBUTES = 0x1195;
+
+ /* cl_kernel_arg_info */
+ int CL_KERNEL_ARG_ADDRESS_QUALIFIER = 0x1196,
+ CL_KERNEL_ARG_ACCESS_QUALIFIER = 0x1197,
+ CL_KERNEL_ARG_TYPE_NAME = 0x1198,
+ CL_KERNEL_ARG_NAME = 0x1199;
+
+ /* cl_kernel_arg_address_qualifier */
+ int CL_KERNEL_ARG_ADDRESS_GLOBAL = 0x119A,
+ CL_KERNEL_ARG_ADDRESS_LOCAL = 0x119B,
+ CL_KERNEL_ARG_ADDRESS_CONSTANT = 0x119C,
+ CL_KERNEL_ARG_ADDRESS_PRIVATE = 0x119D;
+
+ /* cl_kernel_arg_access_qualifier */
+ int CL_KERNEL_ARG_ACCESS_READ_ONLY = 0x11A0,
+ CL_KERNEL_ARG_ACCESS_WRITE_ONLY = 0x11A1,
+ CL_KERNEL_ARG_ACCESS_READ_WRITE = 0x11A2,
+ CL_KERNEL_ARG_ACCESS_NONE = 0x11A3;
+
+ /* cl_kernel_work_group_info */
+ int CL_KERNEL_GLOBAL_WORK_SIZE = 0x11B5;
+
+ /* cl_command_type */
+ int CL_COMMAND_BARRIER = 0x1205,
+ CL_COMMAND_MIGRATE_MEM_OBJECTS = 0x1206,
+ CL_COMMAND_FILL_BUFFER = 0x1207,
+ CL_COMMAND_FILL_IMAGE = 0x1208;
+
+ @Code(javaAfterNative = "\t\tif ( __result == CL10.CL_SUCCESS ) device.retain();")
+ @cl_int
+ int clRetainDevice(@PointerWrapper("cl_device_id") CLDevice device);
+
+ /**
+ * Warning: LWJGL will not automatically release any objects associated with sub-devices.
+ * The user is responsible for tracking and releasing everything prior to calling this method.
+ *
+ * @param device the parent CLDevice
+ *
+ * @return the error code
+ */
+ @Code(
+ javaBeforeNative = "\t\tAPIUtil.releaseObjects(device);",
+ javaAfterNative = "\t\tif ( __result == CL10.CL_SUCCESS ) device.release();"
+ )
+ @cl_int
+ int clReleaseDevice(@PointerWrapper("cl_device_id") CLDevice device);
+
+ @Code(javaAfterNative = "\t\tif ( __result == CL10.CL_SUCCESS && out_devices != null ) in_device.registerSubCLDevices(out_devices);")
+ @cl_int
+ int clCreateSubDevices(
+ @PointerWrapper("cl_device_id") CLDevice in_device,
+ @NullTerminated @Const @NativeType("cl_device_partition_property") LongBuffer properties,
+ @AutoSize(value = "out_devices", canBeNull = true) @cl_uint int num_devices,
+ @OutParameter @Check(canBeNull = true) @NativeType("cl_device_id") PointerBuffer out_devices,
+ @OutParameter @Check(value = "1", canBeNull = true) @cl_uint IntBuffer num_devices_ret);
+
+ @Check(value = "errcode_ret", canBeNull = true)
+ @PointerWrapper(value = "cl_mem", params = "context")
+ CLMem clCreateImage(@PointerWrapper("cl_context") CLContext context,
+ @NativeType("cl_mem_flags") long flags,
+ @Check("2 * 4") @Const @NativeType("cl_image_format") ByteBuffer image_format,
+ @Check("3 * 4 + 7 * PointerBuffer.getPointerSize()") @Const @NativeType("cl_image_desc") ByteBuffer image_desc,
+ @Check
+ @cl_byte
+ @cl_short
+ @cl_int
+ @cl_float Buffer host_ptr,
+ @OutParameter @Check(value = "1", canBeNull = true) @cl_int IntBuffer errcode_ret);
+
+ @Check(value = "errcode_ret", canBeNull = true)
+ @PointerWrapper(value = "cl_program", params = "context")
+ CLProgram clCreateProgramWithBuiltInKernels(@PointerWrapper("cl_context") CLContext context,
+ @AutoSize("device_list") @cl_uint int num_devices,
+ @Check("1") @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @Check @Const @cl_char ByteBuffer kernel_names,
+ @OutParameter @Check(value = "1", canBeNull = true) @cl_int IntBuffer errcode_ret);
+
+ @Alternate("clCreateProgramWithBuiltInKernels")
+ @Check(value = "errcode_ret", canBeNull = true)
+ @PointerWrapper(value = "cl_program", params = "context")
+ CLProgram clCreateProgramWithBuiltInKernels(@PointerWrapper("cl_context") CLContext context,
+ @AutoSize("device_list") @cl_uint int num_devices,
+ @Check("1") @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ CharSequence kernel_names,
+ @OutParameter @Check(value = "1", canBeNull = true) @cl_int IntBuffer errcode_ret);
+
+ /** Single null-terminated header include name. */
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(program.getParent());",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(__result, user_data);"
+ )
+ @cl_int
+ int clCompileProgram(@PointerWrapper("cl_program") CLProgram program,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @Check @NullTerminated @Const @cl_char ByteBuffer options,
+ @Constant("1") @cl_uint int num_input_headers,
+ @Check("1") @Const @NativeType("cl_program") PointerBuffer input_header,
+ @NullTerminated @Check @Const @cl_char @Indirect ByteBuffer header_include_name,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLCompileProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data);
+
+ /** Multiple null-terminated header include names, one after the other. */
+ @Alternate(value = "clCompileProgram", nativeAlt = true, javaAlt = true)
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(program.getParent());",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(__result, user_data);"
+ )
+ @cl_int
+ int clCompileProgramMulti(@PointerWrapper("cl_program") CLProgram program,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @Check @NullTerminated @Const @cl_char ByteBuffer options,
+ @AutoSize("input_headers") @cl_uint int num_input_headers,
+ @Check("1") @Const @NativeType("cl_program") PointerBuffer input_headers,
+ @NullTerminated("input_headers.remaining()") @Check @Const @Indirect @cl_char @PointerArray("num_input_headers") ByteBuffer header_include_names,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLCompileProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data);
+
+ @Alternate(value = "clCompileProgram", nativeAlt = true)
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(program.getParent());",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(__result, user_data);"
+ )
+ @cl_int
+ int clCompileProgram3(@PointerWrapper("cl_program") CLProgram program,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @Check @NullTerminated @Const @cl_char ByteBuffer options,
+ @Constant("header_include_names.length") @cl_uint int num_input_headers,
+ @Check("header_include_names.length") @Const @NativeType("cl_program") PointerBuffer input_headers,
+ @NullTerminated @Check("1") @PointerArray(value = "num_input_headers") @Const @NativeType("cl_char") ByteBuffer[] header_include_names,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLCompileProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data);
+
+ @Alternate("clCompileProgram")
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(program.getParent());",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(__result, user_data);"
+ )
+ @cl_int
+ int clCompileProgram(@PointerWrapper("cl_program") CLProgram program,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @NullTerminated CharSequence options,
+ @Constant("1") @cl_uint int num_input_headers,
+ @Check("1") @Const @NativeType("cl_program") PointerBuffer input_header,
+ @NullTerminated @Const CharSequence header_include_name,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLCompileProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data);
+
+ @Alternate(value = "clCompileProgram", nativeAlt = true, skipNative = true)
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(program.getParent());",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(__result, user_data);"
+ )
+ @cl_int
+ int clCompileProgramMulti(@PointerWrapper("cl_program") CLProgram program,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @NullTerminated CharSequence options,
+ @AutoSize("input_header") @cl_uint int num_input_headers,
+ @Check("1") @Const @NativeType("cl_program") PointerBuffer input_header,
+ @NullTerminated @PointerArray(value = "num_input_headers") @Const CharSequence[] header_include_name,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLCompileProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data);
+
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(context);",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(errcode_ret.get(errcode_ret.position()), user_data);"
+ )
+ @Check(value = "errcode_ret", canBeNull = true)
+ @PointerWrapper(value = "cl_program", params = "context")
+ CLProgram clLinkProgram(@PointerWrapper("cl_context") CLContext context,
+ @AutoSize(value = "device_list", canBeNull = true) @cl_uint int num_devices,
+ @Check(canBeNull = true) @Const @NativeType("cl_device_id") PointerBuffer device_list,
+ @NullTerminated @Check @Const @cl_char ByteBuffer options,
+ @AutoSize("input_programs") @cl_uint int num_input_programs,
+ @Check @Const @NativeType("cl_program") PointerBuffer input_programs,
+ @PointerWrapper(value = "cl_program_callback", canBeNull = true) CLLinkProgramCallback pfn_notify,
+ @Constant("user_data") @PointerWrapper("void *") long user_data,
+ @OutParameter @Check("1") @cl_int IntBuffer errcode_ret);
+
+ @Alternate("clLinkProgram")
+ @Code(
+ tryBlock = true,
+ // Create a GlobalRef to the callback object.
+ javaBeforeNative = "\t\tlong user_data = CallbackUtil.createGlobalRef(pfn_notify);\n" +
+ "\t\tif ( pfn_notify != null ) pfn_notify.setContext(context);",
+ // Check if we need to delete the GlobalRef.
+ javaFinally = "\t\t\tCallbackUtil.checkCallback(errcode_ret.get(errcode_ret.position()), user_data);"
+ )
+ @Check(value = "errcode_ret", canBeNull = true)
+ @PointerWrapper(value = "cl_program", params = "context")
+ CLProgram clLinkProgram(@PointerWrapper("cl_context") CLContext context,
+ @AutoSize(val...
[truncated message content] |
|
From: <ma...@us...> - 2011-11-13 21:21:59
|
Revision: 3700
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3700&view=rev
Author: matzon
Date: 2011-11-13 21:21:52 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
adding changelogs
Modified Paths:
--------------
trunk/LWJGL/www/changelogs/full-changelog.txt
Added Paths:
-----------
trunk/LWJGL/www/changelogs/2.8.1-changelog.txt
trunk/LWJGL/www/changelogs/2.8.2-changelog.txt
Added: trunk/LWJGL/www/changelogs/2.8.1-changelog.txt
===================================================================
--- trunk/LWJGL/www/changelogs/2.8.1-changelog.txt (rev 0)
+++ trunk/LWJGL/www/changelogs/2.8.1-changelog.txt 2011-11-13 21:21:52 UTC (rev 3700)
@@ -0,0 +1,142 @@
+2011-10-15 21:13 matzon
+
+ * build.xml: add copy-nightly-binaries target to build file
+
+2011-10-15 20:25 matzon
+
+ * doc: adding javadoc to ignore list
+
+2011-10-15 20:24 matzon
+
+ * www/changelogs/2.7-changelog.txt,
+ www/changelogs/2.7.1-changelog.txt,
+ www/changelogs/2.8.0-changelog.txt,
+ www/changelogs/full-changelog.txt: syncing changelogs
+
+2011-10-15 20:22 matzon
+
+ * libs/macosx, libs/windows: adding binaries to ignore list
+
+2011-10-15 20:18 matzon
+
+ * maven/build.xml, maven/lwjgl-platform.pom: applying rubens latest
+ maven patches
+
+2011-10-14 15:00 spasi
+
+ * src/templates/org/lwjgl/opengles/IMG_multisampled_render_to_texture.java,
+ src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java,
+ src/templates/org/lwjgl/opengles/IMG_read_format.java,
+ src/templates/org/lwjgl/opengles/OES_EGL_sync.java: GLES
+ extension updates.
+
+2011-10-14 10:43 spasi
+
+ * src/java/org/lwjgl/opengl/DrawableGLES.java,
+ src/java/org/lwjgl/opengles/EGLDisplay.java,
+ src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java:
+ Updated GLES FullScreenWindowedTest to destroy/create Display on
+ mode change.
+
+2011-10-13 22:05 matzon
+
+ * src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: applied
+ patch by xranby to remove warnings
+
+2011-10-13 16:53 spasi
+
+ * src/java/org/lwjgl/util/generator/JNITypeTranslator.java,
+ src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java,
+ src/java/org/lwjgl/util/generator/SignatureTranslator.java: Fixed
+ signatures: CharSequence[] parameters and ByteBuffer returns.
+
+2011-10-12 22:31 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ create MediaTracker before requesting image in an attempt to fix
+ a logo loading issue.
+
+2011-10-12 22:15 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ provide a more meaningful error message when certificates do not
+ match.
+
+2011-10-12 22:07 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ don't output needless lzma.jar is missing message on console
+ unless a lzma file actually being loaded.
+
+2011-10-12 20:17 kappa1
+
+ * src/java/org/lwjgl/MacOSXSysImplementation.java: bump mac native
+ version due to recent changes to them
+
+2011-10-12 19:49 matzon
+
+ * src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java:
+ Updated test to be compatible with r3664
+
+2011-10-12 18:54 spasi
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/opengl/ContextType.java,
+ src/java/org/lwjgl/opengl/Display.java: Removed
+ org.lwjgl.opengles.PixelFormat dependency from Display.
+
+2011-10-12 18:05 spasi
+
+ * src/templates/org/lwjgl/opengles/NV_platform_binary.java: Added
+ support for NV_platform_binary.
+
+2011-10-12 17:58 spasi
+
+ * src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java,
+ src/native/common/common_tools.c,
+ src/native/common/common_tools.h,
+ src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c,
+ src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c,
+ src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c,
+ src/native/common/org_lwjgl_openal_ALC10.c,
+ src/native/common/org_lwjgl_openal_ALC11.c: Added @Optional
+ support for AL and GLES.
+
+2011-10-11 22:39 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java: minor tweak
+ to the order in which CALayer support is detected.
+
+2011-10-11 22:30 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java,
+ src/native/common/org_lwjgl_opengl_AWTSurfaceLock.c,
+ src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Limit
+ the use to CALayer only to when using Display.setParent(), an
+ AWTGLCanvas in non fullscreen mode.
+
+2011-10-11 21:51 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Remove
+ the use of Properties from Objective C code to allow binary
+ compatibility on OS X < 10.5
+
+2011-10-11 19:24 matzon
+
+ * src/java/org/lwjgl/opengl/Display.java: undoing r3539 to fix
+ issue with fullscreen
+
+2011-10-11 17:39 matzon
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/Sys.java: bumping version to 2.8.1
+
+2011-10-11 16:06 spasi
+
+ * build.xml, platform_build/build-definitions.xml,
+ platform_build/build-maven.xml: Fixed build to include missing
+ OpenGL ES classes on which Display depends.
+ Excluded desktop OpenGL extensions from the OpenGL ES build.
\ No newline at end of file
Added: trunk/LWJGL/www/changelogs/2.8.2-changelog.txt
===================================================================
--- trunk/LWJGL/www/changelogs/2.8.2-changelog.txt (rev 0)
+++ trunk/LWJGL/www/changelogs/2.8.2-changelog.txt 2011-11-13 21:21:52 UTC (rev 3700)
@@ -0,0 +1,94 @@
+2011-11-12 21:50 kappa1
+
+ * src/java/org/lwjgl/MacOSXSysImplementation.java: bump native
+ version number for OS X natives due to recent changes to them
+
+2011-11-12 21:31 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ minor tweak to show better update message when checking cache
+ files for changes
+
+2011-11-12 21:03 kappa1
+
+ * platform_build/macosx_ant/build.xml: Add the QuartzCore framework
+ to the list of frameworks available to the linker
+
+2011-11-12 20:45 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java: MacOS:
+ further limit CALayer to only be used when running as an Applet
+
+2011-11-12 19:01 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: MacOS:
+ remove the use of 'Blocks' in the Cocoa native code by switching
+ to 'Selectors', should allow natives to be binary compatible with
+ OS X 10.5 now.
+
+2011-11-10 18:46 spasi
+
+ * src/java/org/lwjgl/opengl/CallbackUtil.java,
+ src/java/org/lwjgl/opengl/Context.java,
+ src/java/org/lwjgl/opengl/GLContext.java: Changed CallbackUtil to
+ use ContextCapabilities instead of ContextGL.
+
+2011-10-30 14:44 kappa1
+
+ * src/java/org/lwjgl/opengl/LinuxDisplay.java,
+ src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: Fix
+ keyboard handling when running Display.setParent() as an
+ application on Linux. Thus allowing WM and system hot-keys to
+ function again when the LWJGL app has focus.
+
+2011-10-26 20:24 kappa1
+
+ * src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: Only set X
+ window hints on the Linux native display window when not using
+ Display.setParent()
+
+2011-10-25 17:42 spasi
+
+ * src/java/org/lwjgl/openal/ALC11.java: Changed manual null check
+ to a MemoryUtil.getAddressSafe call.
+
+2011-10-25 17:14 matzon
+
+ * libs/windows/OpenAL32.dll: upx compressed oal32
+
+2011-10-25 17:13 matzon
+
+ * libs/linux/libopenal.so, libs/linux/libopenal64.so,
+ libs/solaris/libopenal.so, libs/solaris/libopenal64.so,
+ libs/windows/OpenAL32.dll, libs/windows/OpenAL64.dll: Updating
+ OpenAL-Soft to latest (319f404)
+
+2011-10-21 22:50 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Fix
+ crash on Mac OS X when using Display.setParent() and switching
+ from fullscreen to windowed mode.
+
+2011-10-20 10:36 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ minor change to provided more information for some error
+ messages.
+
+2011-10-20 07:57 matzon
+
+ * src/java/org/lwjgl/openal/ALC11.java: fixed issue when NULL
+ (default) was passed in as a deviceName
+
+2011-10-18 17:23 matzon
+
+ * src/java/org/lwjgl/opengl/Display.java: make Display.destroy a
+ NOP if it hasn't been created yet
+
+2011-10-17 07:45 matzon
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/Sys.java: switching to 2.8.2
\ No newline at end of file
Modified: trunk/LWJGL/www/changelogs/full-changelog.txt
===================================================================
--- trunk/LWJGL/www/changelogs/full-changelog.txt 2011-11-13 21:20:42 UTC (rev 3699)
+++ trunk/LWJGL/www/changelogs/full-changelog.txt 2011-11-13 21:21:52 UTC (rev 3700)
@@ -1,8 +1,246 @@
+2011-11-12 21:50 kappa1
+
+ * src/java/org/lwjgl/MacOSXSysImplementation.java: bump native
+ version number for OS X natives due to recent changes to them
+
+2011-11-12 21:31 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ minor tweak to show better update message when checking cache
+ files for changes
+
+2011-11-12 21:03 kappa1
+
+ * platform_build/macosx_ant/build.xml: Add the QuartzCore framework
+ to the list of frameworks available to the linker
+
+2011-11-12 20:45 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java: MacOS:
+ further limit CALayer to only be used when running as an Applet
+
+2011-11-12 19:01 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: MacOS:
+ remove the use of 'Blocks' in the Cocoa native code by switching
+ to 'Selectors', should allow natives to be binary compatible with
+ OS X 10.5 now.
+
+2011-11-10 18:46 spasi
+
+ * src/java/org/lwjgl/opengl/CallbackUtil.java,
+ src/java/org/lwjgl/opengl/Context.java,
+ src/java/org/lwjgl/opengl/GLContext.java: Changed CallbackUtil to
+ use ContextCapabilities instead of ContextGL.
+
+2011-10-30 14:44 kappa1
+
+ * src/java/org/lwjgl/opengl/LinuxDisplay.java,
+ src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: Fix
+ keyboard handling when running Display.setParent() as an
+ application on Linux. Thus allowing WM and system hot-keys to
+ function again when the LWJGL app has focus.
+
+2011-10-26 20:24 kappa1
+
+ * src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: Only set X
+ window hints on the Linux native display window when not using
+ Display.setParent()
+
+2011-10-25 17:42 spasi
+
+ * src/java/org/lwjgl/openal/ALC11.java: Changed manual null check
+ to a MemoryUtil.getAddressSafe call.
+
+2011-10-25 17:14 matzon
+
+ * libs/windows/OpenAL32.dll: upx compressed oal32
+
+2011-10-25 17:13 matzon
+
+ * libs/linux/libopenal.so, libs/linux/libopenal64.so,
+ libs/solaris/libopenal.so, libs/solaris/libopenal64.so,
+ libs/windows/OpenAL32.dll, libs/windows/OpenAL64.dll: Updating
+ OpenAL-Soft to latest (319f404)
+
+2011-10-21 22:50 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Fix
+ crash on Mac OS X when using Display.setParent() and switching
+ from fullscreen to windowed mode.
+
+2011-10-20 10:36 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ minor change to provided more information for some error
+ messages.
+
+2011-10-20 07:57 matzon
+
+ * src/java/org/lwjgl/openal/ALC11.java: fixed issue when NULL
+ (default) was passed in as a deviceName
+
+2011-10-18 17:23 matzon
+
+ * src/java/org/lwjgl/opengl/Display.java: make Display.destroy a
+ NOP if it hasn't been created yet
+
+2011-10-17 07:45 matzon
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/Sys.java: switching to 2.8.2
+
+2011-10-15 21:13 matzon
+
+ * build.xml: add copy-nightly-binaries target to build file
+
+2011-10-15 20:25 matzon
+
+ * doc: adding javadoc to ignore list
+
+2011-10-15 20:24 matzon
+
+ * www/changelogs/2.7-changelog.txt,
+ www/changelogs/2.7.1-changelog.txt,
+ www/changelogs/2.8.0-changelog.txt,
+ www/changelogs/full-changelog.txt: syncing changelogs
+
+2011-10-15 20:22 matzon
+
+ * libs/macosx, libs/windows: adding binaries to ignore list
+
+2011-10-15 20:18 matzon
+
+ * maven/build.xml, maven/lwjgl-platform.pom: applying rubens latest
+ maven patches
+
+2011-10-14 15:00 spasi
+
+ * src/templates/org/lwjgl/opengles/IMG_multisampled_render_to_texture.java,
+ src/templates/org/lwjgl/opengles/IMG_multisamples_render_to_texture.java,
+ src/templates/org/lwjgl/opengles/IMG_read_format.java,
+ src/templates/org/lwjgl/opengles/OES_EGL_sync.java: GLES
+ extension updates.
+
+2011-10-14 10:43 spasi
+
+ * src/java/org/lwjgl/opengl/DrawableGLES.java,
+ src/java/org/lwjgl/opengles/EGLDisplay.java,
+ src/java/org/lwjgl/test/opengles/FullScreenWindowedTest.java:
+ Updated GLES FullScreenWindowedTest to destroy/create Display on
+ mode change.
+
+2011-10-13 22:05 matzon
+
+ * src/native/linux/opengl/org_lwjgl_opengl_Display.c,
+ src/native/linux/opengles/org_lwjgl_opengl_Display.c: applied
+ patch by xranby to remove warnings
+
+2011-10-13 16:53 spasi
+
+ * src/java/org/lwjgl/util/generator/JNITypeTranslator.java,
+ src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java,
+ src/java/org/lwjgl/util/generator/SignatureTranslator.java: Fixed
+ signatures: CharSequence[] parameters and ByteBuffer returns.
+
+2011-10-12 22:31 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ create MediaTracker before requesting image in an attempt to fix
+ a logo loading issue.
+
+2011-10-12 22:15 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ provide a more meaningful error message when certificates do not
+ match.
+
+2011-10-12 22:07 kappa1
+
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ don't output needless lzma.jar is missing message on console
+ unless a lzma file actually being loaded.
+
+2011-10-12 20:17 kappa1
+
+ * src/java/org/lwjgl/MacOSXSysImplementation.java: bump mac native
+ version due to recent changes to them
+
+2011-10-12 19:49 matzon
+
+ * src/java/org/lwjgl/test/opengles/MappedIndexedVBOTest.java:
+ Updated test to be compatible with r3664
+
+2011-10-12 18:54 spasi
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/opengl/ContextType.java,
+ src/java/org/lwjgl/opengl/Display.java: Removed
+ org.lwjgl.opengles.PixelFormat dependency from Display.
+
+2011-10-12 18:05 spasi
+
+ * src/templates/org/lwjgl/opengles/NV_platform_binary.java: Added
+ support for NV_platform_binary.
+
+2011-10-12 17:58 spasi
+
+ * src/java/org/lwjgl/util/generator/RegisterStubsGenerator.java,
+ src/native/common/common_tools.c,
+ src/native/common/common_tools.h,
+ src/native/common/opengles/org_lwjgl_opengles_EGLKHRFenceSync.c,
+ src/native/common/opengles/org_lwjgl_opengles_EGLKHRReusableSync.c,
+ src/native/common/opengles/org_lwjgl_opengles_EGLNVSync.c,
+ src/native/common/org_lwjgl_openal_ALC10.c,
+ src/native/common/org_lwjgl_openal_ALC11.c: Added @Optional
+ support for AL and GLES.
+
+2011-10-11 22:39 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java: minor tweak
+ to the order in which CALayer support is detected.
+
+2011-10-11 22:30 kappa1
+
+ * src/java/org/lwjgl/opengl/AWTSurfaceLock.java,
+ src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java,
+ src/native/common/org_lwjgl_opengl_AWTSurfaceLock.c,
+ src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Limit
+ the use to CALayer only to when using Display.setParent(), an
+ AWTGLCanvas in non fullscreen mode.
+
+2011-10-11 21:51 kappa1
+
+ * src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m: Remove
+ the use of Properties from Objective C code to allow binary
+ compatibility on OS X < 10.5
+
+2011-10-11 19:24 matzon
+
+ * src/java/org/lwjgl/opengl/Display.java: undoing r3539 to fix
+ issue with fullscreen
+
+2011-10-11 17:39 matzon
+
+ * platform_build/build-definitions.xml,
+ src/java/org/lwjgl/Sys.java: bumping version to 2.8.1
+
+2011-10-11 16:06 spasi
+
+ * build.xml, platform_build/build-definitions.xml,
+ platform_build/build-maven.xml: Fixed build to include missing
+ OpenGL ES classes on which Display depends.
+ Excluded desktop OpenGL extensions from the OpenGL ES build.
+
2011-10-08 20:33 kappa1
- * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
- add missing JavaDoc for al_lookup_threads, clean up natives if
- validation on them fails.
+ * src/java/org/lwjgl/util/applet/AppletLoader.java: AppletLoader:
+ add missing JavaDoc for al_lookup_threads, clean up natives if
+ validation on them fails.
2011-10-08 18:33 kappa1
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-11-13 21:20:49
|
Revision: 3699
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3699&view=rev
Author: matzon
Date: 2011-11-13 21:20:42 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
bumping to 2.8.3
Modified Paths:
--------------
trunk/LWJGL/platform_build/build-definitions.xml
trunk/LWJGL/src/java/org/lwjgl/Sys.java
Modified: trunk/LWJGL/platform_build/build-definitions.xml
===================================================================
--- trunk/LWJGL/platform_build/build-definitions.xml 2011-11-13 20:50:34 UTC (rev 3698)
+++ trunk/LWJGL/platform_build/build-definitions.xml 2011-11-13 21:20:42 UTC (rev 3699)
@@ -12,7 +12,7 @@
<property name="lwjgl.docs" location="doc" />
<property name="lwjgl.temp" location="temp" />
<property name="lwjgl.res" location="res" />
- <property name="lwjgl.version" value="2.8.2" />
+ <property name="lwjgl.version" value="2.8.3" />
<property name="lwjgl.web" location="www" />
<property name="opengl-template-pattern" value="org/lwjgl/opengl/GL*.java,org/lwjgl/opengl/ARB*.java,org/lwjgl/opengl/AMD*.java,org/lwjgl/opengl/APPLE*.java,org/lwjgl/opengl/ATI*.java,org/lwjgl/opengl/EXT*.java,org/lwjgl/opengl/NV*.java,org/lwjgl/opengl/NVX*.java,org/lwjgl/opengl/HP*.java,org/lwjgl/opengl/IBM*.java,org/lwjgl/opengl/SUN*.java,org/lwjgl/opengl/SGIS*.java,org/lwjgl/opengl/GREMEDY*.java"/>
Modified: trunk/LWJGL/src/java/org/lwjgl/Sys.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/Sys.java 2011-11-13 20:50:34 UTC (rev 3698)
+++ trunk/LWJGL/src/java/org/lwjgl/Sys.java 2011-11-13 21:20:42 UTC (rev 3699)
@@ -54,7 +54,7 @@
private static final String JNI_LIBRARY_NAME = "lwjgl";
/** Current version of library */
- private static final String VERSION = "2.8.2";
+ private static final String VERSION = "2.8.3";
private static final String POSTFIX64BIT = "64";
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-11-13 20:50:40
|
Revision: 3698
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3698&view=rev
Author: matzon
Date: 2011-11-13 20:50:34 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
tagging 2.8.2
Added Paths:
-----------
tags/lwjgl2.8.2/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-11-13 20:50:15
|
Revision: 3697
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3697&view=rev
Author: matzon
Date: 2011-11-13 20:50:09 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
fixing tag
Removed Paths:
-------------
tags/lwjgl2.8.2/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ma...@us...> - 2011-11-13 20:49:31
|
Revision: 3696
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3696&view=rev
Author: matzon
Date: 2011-11-13 20:49:25 +0000 (Sun, 13 Nov 2011)
Log Message:
-----------
tagging 2.8.2
Added Paths:
-----------
tags/lwjgl2.8.2/
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-12 21:51:02
|
Revision: 3695
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3695&view=rev
Author: kappa1
Date: 2011-11-12 21:50:55 +0000 (Sat, 12 Nov 2011)
Log Message:
-----------
bump native version number for OS X natives due to recent changes to them
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java
Modified: trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java 2011-11-12 21:31:00 UTC (rev 3694)
+++ trunk/LWJGL/src/java/org/lwjgl/MacOSXSysImplementation.java 2011-11-12 21:50:55 UTC (rev 3695)
@@ -42,7 +42,7 @@
* $Id$
*/
final class MacOSXSysImplementation extends J2SESysImplementation {
- private static final int JNI_VERSION = 21;
+ private static final int JNI_VERSION = 22;
static {
// Make sure AWT is properly initialized. This avoids hangs on Mac OS X 10.3
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-12 21:31:09
|
Revision: 3694
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3694&view=rev
Author: kappa1
Date: 2011-11-12 21:31:00 +0000 (Sat, 12 Nov 2011)
Log Message:
-----------
AppletLoader: minor tweak to show better update message when checking cache files for changes
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
Modified: trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-11-12 21:03:48 UTC (rev 3693)
+++ trunk/LWJGL/src/java/org/lwjgl/util/applet/AppletLoader.java 2011-11-12 21:31:00 UTC (rev 3694)
@@ -180,30 +180,33 @@
/** checking for already downloaded files */
public static final int STATE_CHECKING_CACHE = 4;
+
+ /** checking if any updates are available for cache files */
+ public static final int STATE_CHECKING_FOR_UPDATES = 5;
/** downloading packages */
- public static final int STATE_DOWNLOADING = 5;
+ public static final int STATE_DOWNLOADING = 6;
/** extracting packages */
- public static final int STATE_EXTRACTING_PACKAGES = 6;
+ public static final int STATE_EXTRACTING_PACKAGES = 7;
/** validating packages */
- public static final int STATE_VALIDATING_PACKAGES = 7;
+ public static final int STATE_VALIDATING_PACKAGES = 8;
/** updating the classpath */
- public static final int STATE_UPDATING_CLASSPATH = 8;
+ public static final int STATE_UPDATING_CLASSPATH = 9;
/** switching to real applet */
- public static final int STATE_SWITCHING_APPLET = 9;
+ public static final int STATE_SWITCHING_APPLET = 10;
/** initializing real applet */
- public static final int STATE_INITIALIZE_REAL_APPLET = 10;
+ public static final int STATE_INITIALIZE_REAL_APPLET = 11;
/** stating real applet */
- public static final int STATE_START_REAL_APPLET = 11;
+ public static final int STATE_START_REAL_APPLET = 12;
/** done */
- public static final int STATE_DONE = 12;
+ public static final int STATE_DONE = 13;
/** used to calculate length of progress bar */
protected volatile int percentage;
@@ -678,6 +681,8 @@
return "Determining packages to load";
case STATE_CHECKING_CACHE:
return "Calculating download size";
+ case STATE_CHECKING_FOR_UPDATES:
+ return "Checking for updates";
case STATE_DOWNLOADING:
return "Downloading packages";
case STATE_EXTRACTING_PACKAGES:
@@ -1343,6 +1348,7 @@
// if timestamps file exists, load it
if (timestampsFile.exists()) {
+ setState(STATE_CHECKING_FOR_UPDATES);
filesLastModified = readHashMapFile(timestampsFile);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-12 21:03:55
|
Revision: 3693
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3693&view=rev
Author: kappa1
Date: 2011-11-12 21:03:48 +0000 (Sat, 12 Nov 2011)
Log Message:
-----------
Add the QuartzCore framework to the list of frameworks available to the linker
Modified Paths:
--------------
trunk/LWJGL/platform_build/macosx_ant/build.xml
Modified: trunk/LWJGL/platform_build/macosx_ant/build.xml
===================================================================
--- trunk/LWJGL/platform_build/macosx_ant/build.xml 2011-11-12 20:45:35 UTC (rev 3692)
+++ trunk/LWJGL/platform_build/macosx_ant/build.xml 2011-11-12 21:03:48 UTC (rev 3693)
@@ -35,7 +35,7 @@
<target name="link">
<apply dir="${objdir}" parallel="true" executable="${linker}" os="Mac OS X" failonerror="true" skipemptyfilesets="true">
- <arg line="${linkerflags} -exported_symbols_list ../lwjgl.symbols -dynamiclib -o ${libname} -framework Foundation -framework AppKit -framework JavaVM -framework Carbon -framework OpenGL -framework JavaNativeFoundation -F/System/Library/Frameworks/JavaVM.framework/Frameworks"/>
+ <arg line="${linkerflags} -exported_symbols_list ../lwjgl.symbols -dynamiclib -o ${libname} -framework Foundation -framework AppKit -framework JavaVM -framework Carbon -framework OpenGL -framework QuartzCore -framework JavaNativeFoundation -F/System/Library/Frameworks/JavaVM.framework/Frameworks"/>
<fileset dir="${objdir}" includes="*.o"/>
</apply>
<apply dir="${objdir}" executable="strip" os="Mac OS X" failonerror="true">
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-12 20:45:41
|
Revision: 3692
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3692&view=rev
Author: kappa1
Date: 2011-11-12 20:45:35 +0000 (Sat, 12 Nov 2011)
Log Message:
-----------
MacOS: further limit CALayer to only be used when running as an Applet
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/AWTSurfaceLock.java
trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/AWTSurfaceLock.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/AWTSurfaceLock.java 2011-11-12 19:01:28 UTC (rev 3691)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/AWTSurfaceLock.java 2011-11-12 20:45:35 UTC (rev 3692)
@@ -32,6 +32,8 @@
package org.lwjgl.opengl;
import java.awt.Canvas;
+import java.awt.Component;
+import java.applet.Applet;
import java.nio.ByteBuffer;
import java.security.AccessController;
import java.security.PrivilegedActionException;
@@ -81,7 +83,7 @@
// due to performance..
// Allow the use of a Core Animation Layer only when using non fullscreen Display.setParent() or AWTGLCanvas
- final boolean allowCALayer = (Display.getParent() != null && !Display.isFullscreen()) || component instanceof AWTGLCanvas;
+ final boolean allowCALayer = ((Display.getParent() != null && !Display.isFullscreen()) || component instanceof AWTGLCanvas) && isApplet(component);
if (firstLockSucceeded)
return lockAndInitHandle(lock_buffer, component, allowCALayer);
@@ -105,4 +107,22 @@
}
private static native void nUnlock(ByteBuffer lock_buffer) throws LWJGLException;
+
+ /**
+ * This method will return true if the component is running in an applet
+ */
+ public boolean isApplet(Canvas component) {
+
+ Component parent = component.getParent();
+
+ while (parent != null) {
+ if (parent instanceof Applet) {
+ return true;
+ }
+ parent = parent.getParent();
+ }
+
+ // not an applet
+ return false;
+ }
}
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java 2011-11-12 19:01:28 UTC (rev 3691)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/MacOSXCanvasPeerInfo.java 2011-11-12 20:45:35 UTC (rev 3692)
@@ -51,7 +51,7 @@
protected void initHandle(Canvas component) throws LWJGLException {
// Allow the use of a Core Animation Layer only when using non fullscreen Display.setParent() or AWTGLCanvas
- final boolean allowCALayer = (Display.getParent() != null && !Display.isFullscreen()) || component instanceof AWTGLCanvas;
+ final boolean allowCALayer = ((Display.getParent() != null && !Display.isFullscreen()) || component instanceof AWTGLCanvas) && awt_surface.isApplet(component);
nInitHandle(awt_surface.lockAndGetHandle(component), getHandle(), allowCALayer);
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <ka...@us...> - 2011-11-12 19:01:34
|
Revision: 3691
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3691&view=rev
Author: kappa1
Date: 2011-11-12 19:01:28 +0000 (Sat, 12 Nov 2011)
Log Message:
-----------
MacOS: remove the use of 'Blocks' in the Cocoa native code by switching to 'Selectors', should allow natives to be binary compatible with OS X 10.5 now.
Modified Paths:
--------------
trunk/LWJGL/src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m
Modified: trunk/LWJGL/src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m
===================================================================
--- trunk/LWJGL/src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m 2011-11-10 18:46:43 UTC (rev 3690)
+++ trunk/LWJGL/src/native/macosx/org_lwjgl_opengl_MacOSXCanvasPeerInfo.m 2011-11-12 19:01:28 UTC (rev 3691)
@@ -62,7 +62,22 @@
@end
+// forward declaration
+@interface AttachLayerOnMainThread : NSObject {
+ MacOSXPeerInfo *peer_info;
+ JAWT_MacOSXDrawingSurfaceInfo *macosx_dsi;
+}
+- (void) attachLayer;
+
+- (MacOSXPeerInfo*) peer_info;
+- (JAWT_MacOSXDrawingSurfaceInfo) macosx_dsi;
+
+- (void) setPeer_info: (MacOSXPeerInfo*)input;
+- (void) setMacosx_dsi: (JAWT_MacOSXDrawingSurfaceInfo*)input;
+
+@end
+
JNIEXPORT void JNICALL Java_org_lwjgl_opengl_MacOSXCanvasPeerInfo_nInitHandle
(JNIEnv *env, jclass clazz, jobject lock_buffer_handle, jobject peer_info_handle, jboolean allowCALayer) {
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
@@ -97,18 +112,15 @@
}
if (macosx_dsi != NULL) {
- [JNFRunLoop performOnMainThreadWaiting:YES withBlock:^(){
- // attach the "root layer" to the AWT Canvas surface layers
- id <JAWT_SurfaceLayers> surfaceLayers = (id <JAWT_SurfaceLayers>)macosx_dsi;//dsi->platformInfo;
- if(surfaceLayers.layer == NULL) {
- PBufferGLLayer *caGLLayer = [[PBufferGLLayer new] autorelease];
- caGLLayer.peer_info = peer_info;
- caGLLayer.asynchronous = YES;
- caGLLayer.needsDisplayOnBoundsChange = YES;
- caGLLayer.opaque = YES;
- surfaceLayers.layer = caGLLayer;
- }
- }];
+
+ AttachLayerOnMainThread *attachLayerOnMainThread = [[AttachLayerOnMainThread new] autorelease];
+ attachLayerOnMainThread.peer_info = peer_info;
+ attachLayerOnMainThread.macosx_dsi = macosx_dsi;
+
+ [JNFRunLoop performOnMainThread:@selector(attachLayer)
+ on:attachLayerOnMainThread
+ withObject:nil
+ waitUntilDone:YES];
}
[pool release];
@@ -122,6 +134,40 @@
[pool release];
}
+// Object class to CALayer on AppKit Thread
+@implementation AttachLayerOnMainThread
+
+- (void) attachLayer {
+ // attach the "root layer" to the AWT Canvas surface layers
+ id <JAWT_SurfaceLayers> surfaceLayers = (id <JAWT_SurfaceLayers>)macosx_dsi;//dsi->platformInfo;
+ if(surfaceLayers.layer == NULL) {
+ PBufferGLLayer *caGLLayer = [[PBufferGLLayer new] autorelease];
+ caGLLayer.peer_info = peer_info;
+ caGLLayer.asynchronous = YES;
+ caGLLayer.needsDisplayOnBoundsChange = YES;
+ caGLLayer.opaque = YES;
+ surfaceLayers.layer = caGLLayer;
+ }
+}
+
+- (MacOSXPeerInfo*) peer_info {
+ return peer_info;
+}
+
+- (JAWT_MacOSXDrawingSurfaceInfo*) macosx_dsi {
+ return macosx_dsi;
+}
+
+- (void) setPeer_info: (MacOSXPeerInfo*)input {
+ peer_info = input;
+}
+
+- (void) setMacosx_dsi: (JAWT_MacOSXDrawingSurfaceInfo*)input {
+ macosx_dsi = input;
+}
+
+@end
+
// rotates a red square when asked to draw
@implementation PBufferGLLayer
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <sp...@us...> - 2011-11-10 18:46:50
|
Revision: 3690
http://java-game-lib.svn.sourceforge.net/java-game-lib/?rev=3690&view=rev
Author: spasi
Date: 2011-11-10 18:46:43 +0000 (Thu, 10 Nov 2011)
Log Message:
-----------
Changed CallbackUtil to use ContextCapabilities instead of ContextGL.
Modified Paths:
--------------
trunk/LWJGL/src/java/org/lwjgl/opengl/CallbackUtil.java
trunk/LWJGL/src/java/org/lwjgl/opengl/Context.java
trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/CallbackUtil.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/CallbackUtil.java 2011-10-30 14:44:52 UTC (rev 3689)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/CallbackUtil.java 2011-11-10 18:46:43 UTC (rev 3690)
@@ -42,9 +42,9 @@
final class CallbackUtil {
/** Context -> Long */
- private static final Map<ContextGL, Long> contextUserParamsARB = new HashMap<ContextGL, Long>();
+ private static final Map<ContextCapabilities, Long> contextUserParamsARB = new HashMap<ContextCapabilities, Long>();
/** Context -> Long */
- private static final Map<ContextGL, Long> contextUserParamsAMD = new HashMap<ContextGL, Long>();
+ private static final Map<ContextCapabilities, Long> contextUserParamsAMD = new HashMap<ContextCapabilities, Long>();
private CallbackUtil() {}
@@ -84,19 +84,19 @@
*
* @param userParam the global reference pointer
*/
- private static void registerContextCallback(final long userParam, final Map<ContextGL, Long> contextUserData) {
- ContextGL context = ContextGL.getCurrentContext();
- if ( context == null ) {
+ private static void registerContextCallback(final long userParam, final Map<ContextCapabilities, Long> contextUserData) {
+ ContextCapabilities caps = GLContext.getCapabilities();
+ if ( caps == null ) {
deleteGlobalRef(userParam);
throw new IllegalStateException("No context is current.");
}
- final Long userParam_old = contextUserData.remove(context);
+ final Long userParam_old = contextUserData.remove(caps);
if ( userParam_old != null )
deleteGlobalRef(userParam_old);
if ( userParam != 0 )
- contextUserData.put(context, userParam);
+ contextUserData.put(caps, userParam);
}
/**
@@ -104,12 +104,15 @@
*
* @param context the Context to unregister
*/
- static void unregisterCallbacks(final ContextGL context) {
- Long userParam = contextUserParamsARB.remove(context);
+ static void unregisterCallbacks(final Object context) {
+ // TODO: This is never called for custom contexts. Need to fix for LWJGL 3.0
+ final ContextCapabilities caps = GLContext.getCapabilities(context);
+
+ Long userParam = contextUserParamsARB.remove(caps);
if ( userParam != null )
deleteGlobalRef(userParam);
- userParam = contextUserParamsAMD.remove(context);
+ userParam = contextUserParamsAMD.remove(caps);
if ( userParam != null )
deleteGlobalRef(userParam);
}
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/Context.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/Context.java 2011-10-30 14:44:52 UTC (rev 3689)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/Context.java 2011-11-10 18:46:43 UTC (rev 3690)
@@ -32,7 +32,6 @@
package org.lwjgl.opengl;
import org.lwjgl.LWJGLException;
-import org.lwjgl.opengles.PowerManagementEventException;
/**
* @author Spasi
Modified: trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java
===================================================================
--- trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2011-10-30 14:44:52 UTC (rev 3689)
+++ trunk/LWJGL/src/java/org/lwjgl/opengl/GLContext.java 2011-11-10 18:46:43 UTC (rev 3690)
@@ -130,6 +130,17 @@
return getThreadLocalCapabilities();
}
+ /**
+ * Returns the capabilities instance associated with the specified context object.
+ *
+ * @param context the context object
+ *
+ * @return the capabilities instance
+ */
+ static ContextCapabilities getCapabilities(Object context) {
+ return capability_cache.get(context);
+ }
+
private static ContextCapabilities getThreadLocalCapabilities() {
return current_capabilities.get();
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|