From 8252be8a84c30fcd980538f17393a09d326186ed Mon Sep 17 00:00:00 2001
From: Jeffrey Phillips Freeman <jeffrey.freeman@syncleus.com>
Date: Mon, 17 Oct 2016 16:19:14 -0400
Subject: [PATCH] Added nbody example.

---
 examples/nbody/.gitignore                     |   2 -
 examples/nbody/.project                       |  17 ---
 examples/nbody/agent.sh                       |  10 --
 examples/nbody/build.xml                      | 124 ------------------
 examples/nbody/local.bat                      |  15 ---
 examples/nbody/local.sh                       |  10 --
 examples/nbody/nbody-agent.bat                |  16 ---
 examples/nbody/nbody.bat                      |  15 ---
 examples/nbody/nbody.sh                       |  10 --
 examples/nbody/seq.bat                        |  11 --
 examples/nbody/seq.sh                         |  10 --
 .../com/amd/aparapi/examples/nbody/duke.jpg   | Bin 6927 -> 0 bytes
 .../amd/aparapi/examples/nbody/particle.jpg   | Bin 1056 -> 0 bytes
 .../com/syncleus/aparapi/examples/All.java    |  12 ++
 .../aparapi/examples/nbody/Local.java         |  28 ++--
 .../aparapi/examples/nbody/Main.java          |  30 +++--
 .../syncleus}/aparapi/examples/nbody/Seq.java |  30 +++--
 .../nbody => src/main/resources}/moon.jpg     | Bin
 18 files changed, 71 insertions(+), 269 deletions(-)
 delete mode 100644 examples/nbody/.gitignore
 delete mode 100644 examples/nbody/.project
 delete mode 100644 examples/nbody/agent.sh
 delete mode 100644 examples/nbody/build.xml
 delete mode 100644 examples/nbody/local.bat
 delete mode 100644 examples/nbody/local.sh
 delete mode 100644 examples/nbody/nbody-agent.bat
 delete mode 100644 examples/nbody/nbody.bat
 delete mode 100644 examples/nbody/nbody.sh
 delete mode 100644 examples/nbody/seq.bat
 delete mode 100644 examples/nbody/seq.sh
 delete mode 100644 examples/nbody/src/com/amd/aparapi/examples/nbody/duke.jpg
 delete mode 100644 examples/nbody/src/com/amd/aparapi/examples/nbody/particle.jpg
 rename {examples/nbody/src/com/amd => src/main/java/com/syncleus}/aparapi/examples/nbody/Local.java (93%)
 rename {examples/nbody/src/com/amd => src/main/java/com/syncleus}/aparapi/examples/nbody/Main.java (92%)
 rename {examples/nbody/src/com/amd => src/main/java/com/syncleus}/aparapi/examples/nbody/Seq.java (92%)
 rename {examples/nbody/src/com/amd/aparapi/examples/nbody => src/main/resources}/moon.jpg (100%)

diff --git a/examples/nbody/.gitignore b/examples/nbody/.gitignore
deleted file mode 100644
index 99589744..00000000
--- a/examples/nbody/.gitignore
+++ /dev/null
@@ -1,2 +0,0 @@
-/.libs/
-/classes/
diff --git a/examples/nbody/.project b/examples/nbody/.project
deleted file mode 100644
index f3cf594d..00000000
--- a/examples/nbody/.project
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<projectDescription>
-	<name>nbody</name>
-	<comment></comment>
-	<projects>
-	</projects>
-	<buildSpec>
-		<buildCommand>
-			<name>org.eclipse.jdt.core.javabuilder</name>
-			<arguments>
-			</arguments>
-		</buildCommand>
-	</buildSpec>
-	<natures>
-		<nature>org.eclipse.jdt.core.javanature</nature>
-	</natures>
-</projectDescription>
diff --git a/examples/nbody/agent.sh b/examples/nbody/agent.sh
deleted file mode 100644
index 3a2ee372..00000000
--- a/examples/nbody/agent.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-java \
-  -agentpath:../../com.syncleus.aparapi.jni/dist/libaparapi_x86_64.so\
-  -Dcom.syncleus.aparapi.useAgent=true\
-  -Djava.library.path=../third-party/jogamp \
-  -Dcom.syncleus.aparapi.executionMode=$1 \
-  -Dbodies=$2 \
-  -Dheight=600 \
-  -Dwidth=600 \
-  -classpath ../third-party/jogamp/jogl-all.jar:../third-party/jogamp/gluegen-rt.jar:../../com.syncleus.aparapi/dist/aparapi.jar:nbody.jar \
-  com.syncleus.aparapi.examples.nbody.Main
diff --git a/examples/nbody/build.xml b/examples/nbody/build.xml
deleted file mode 100644
index ed4b7cd0..00000000
--- a/examples/nbody/build.xml
+++ /dev/null
@@ -1,124 +0,0 @@
-<?xml version="1.0"?>
-
-<project name="nbody" default="build" basedir=".">
-
-	<!-- Ideally this would be the latest version of Java but not everyone is going to have it installed -->
-	<!-- Additionally we want to avoid "Class not found: javac1.8" errors from old Ant versions (i.e. Eclipse) -->
-	<property name="build.compiler" value="javac1.7" />
-	<property name="ant.build.javac.source" value="1.7" />
-	<property name="ant.build.javac.target" value="1.7" />
-
-	<property name="libs.root" value="${basedir}/.libs" />
-
-	<property name="jogl.all.jar" value="jogl-all.jar" />
-	<property name="jogl.all.natives.macosx.jar" value="jogl-all-natives-macosx-universal.jar" />
-	<property name="jogl.all.natives.windows.i586.jar" value="jogl-all-natives-windows-i586.jar" />
-	<property name="jogl.all.natives.windows.amd64.jar" value="jogl-all-natives-windows-amd64.jar" />
-	<property name="jogl.all.natives.linux.i586.jar" value="jogl-all-natives-linux-i586.jar" />
-	<property name="jogl.all.natives.linux.amd64.jar" value="jogl-all-natives-linux-amd64.jar" />
-
-	<property name="gluegen.rt.jar" value="gluegen-rt.jar" />
-	<property name="gluegen.rt.natives.macosx.jar" value="gluegen-rt-natives-macosx-universal.jar" />
-	<property name="gluegen.rt.natives.windows.i586.jar" value="gluegen-rt-natives-windows-i586.jar" />
-	<property name="gluegen.rt.natives.windows.amd64.jar" value="gluegen-rt-natives-windows-amd64.jar" />
-	<property name="gluegen.rt.natives.linux.i586.jar" value="gluegen-rt-natives-linux-i586.jar" />
-	<property name="gluegen.rt.natives.linux.amd64.jar" value="gluegen-rt-natives-linux-amd64.jar" />
-
-	<property name="jogamp.url" value="http://jogamp.org/deployment/archive/rc/gluegen_52-joal_32-jogl_66-jocl_41/jar" />
-
-	<property name="jogl.all.url" value="${jogamp.url}/${jogl.all.jar}" />
-	<property name="jogl.all.natives.macosx.url" value="${jogamp.url}/${jogl.all.natives.macosx.jar}" />
-	<property name="jogl.all.natives.windows.i586.url" value="${jogamp.url}/${jogl.all.natives.windows.i586.jar}" />
-	<property name="jogl.all.natives.windows.amd64.url" value="${jogamp.url}/${jogl.all.natives.windows.amd64.jar}" />
-	<property name="jogl.all.natives.linux.i586.url" value="${jogamp.url}/${jogl.all.natives.linux.i586.jar}" />
-	<property name="jogl.all.natives.linux.amd64.url" value="${jogamp.url}/${jogl.all.natives.linux.amd64.jar}" />
-
-	<property name="gluegen.rt.url" value="${jogamp.url}/${gluegen.rt.jar}" />
-	<property name="gluegen.rt.natives.macosx.url" value="${jogamp.url}/${gluegen.rt.natives.macosx.jar}" />
-	<property name="gluegen.rt.natives.windows.i586.url" value="${jogamp.url}/${gluegen.rt.natives.windows.1586.jar}" />
-	<property name="gluegen.rt.natives.windows.amd64.url" value="${jogamp.url}/${gluegen.rt.natives.windows.amd64.jar}" />
-	<property name="gluegen.rt.natives.linux.i586.url" value="${jogamp.url}/${gluegen.rt.natives.linux.i586.jar}" />
-	<property name="gluegen.rt.natives.linux.amd64.url" value="${jogamp.url}/${gluegen.rt.natives.linux.amd64.jar}" />
-
-	<path id="compiler.class.path">
-		<pathelement path="../../com.syncleus.aparapi/dist/aparapi.jar" />
-		<pathelement path="${libs.root}/${jogl.all.jar}" />
-		<pathelement path="${libs.root}/${jogl.all.natives.macosx.jar}" />
-		<pathelement path="${libs.root}/${jogl.all.natives.windows.i586.jar}" />
-		<pathelement path="${libs.root}/${jogl.all.natives.windows.amd64.jar}" />
-		<pathelement path="${libs.root}/${jogl.all.natives.linux.i586.jar}" />
-		<pathelement path="${libs.root}/${jogl.all.natives.linux.amd64.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.natives.macosx.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.natives.windows.i586.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.natives.windows.amd64.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.natives.linux.i586.jar}" />
-		<pathelement path="${libs.root}/${gluegen.rt.natives.linux.amd64.jar}" />
-		<pathelement path="classes" />
-	</path>
-
-	<path id="runtime.class.path" cache="true">
-		<path refid="compiler.class.path" />
-		<pathelement path="${ant.project.name}.jar" />
-	</path>
-
-	<target name="install.deps">
-		<mkdir dir="${libs.root}" />
-		<!-- Cleanup all existing deps -->
-		<delete failonerror="false" includeEmptyDirs="true">
-			<fileset dir="${libs.root}" includes="*/" />
-		</delete>
-		<!-- Download and unzip requested deps -->
-		<get src="${jogl.all.url}" dest="${libs.root}/${jogl.all.jar}" />
-		<get src="${jogl.all.natives.macosx.url}" dest="${libs.root}/${jogl.all.natives.macosx.jar}" />
-		<get src="${jogl.all.natives.macosx.url}" dest="${libs.root}/${jogl.all.natives.windows.i586.jar}" />
-		<get src="${jogl.all.natives.macosx.url}" dest="${libs.root}/${jogl.all.natives.windows.amd64.jar}" />
-		<get src="${jogl.all.natives.macosx.url}" dest="${libs.root}/${jogl.all.natives.linux.i586.jar}" />
-		<get src="${jogl.all.natives.macosx.url}" dest="${libs.root}/${jogl.all.natives.linux.amd64.jar}" />
-		<get src="${gluegen.rt.url}" dest="${libs.root}/${gluegen.rt.jar}" />
-		<get src="${gluegen.rt.natives.macosx.url}" dest="${libs.root}/${gluegen.rt.natives.macosx.jar}" />
-		<get src="${gluegen.rt.natives.macosx.url}" dest="${libs.root}/${gluegen.rt.natives.windows.i586.jar}" />
-		<get src="${gluegen.rt.natives.macosx.url}" dest="${libs.root}/${gluegen.rt.natives.windows.amd64.jar}" />
-		<get src="${gluegen.rt.natives.macosx.url}" dest="${libs.root}/${gluegen.rt.natives.linux.i586.jar}" />
-		<get src="${gluegen.rt.natives.macosx.url}" dest="${libs.root}/${gluegen.rt.natives.linux.amd64.jar}" />
-	</target>
-
-	<target name="build" depends="clean">
-		<mkdir dir="classes" />
-		<javac srcdir="src" destdir="classes" debug="on" includeantruntime="false">
-			<classpath refid="compiler.class.path" />
-		</javac>
-		<copy todir="classes/com/amd/aparapi/examples/nbody" file="src/com/amd/aparapi/examples/nbody/particle.jpg" />
-		<jar jarfile="${ant.project.name}.jar" basedir="classes" />
-	</target>
-
-	<target name="clean">
-		<delete dir="classes" />
-		<delete file="${ant.project.name}.jar" />
-	</target>
-
-	<target name="run-jtp">
-		<java classname="com.syncleus.aparapi.examples.nbody.Main" fork="true">
-			<classpath refid="runtime.class.path" />
-			<sysproperty key="java.library.path" path="..\..\com.syncleus.aparapi.jni\dist;jogamp" />
-			<sysproperty key="com.syncleus.aparapi.executionMode" value="JTP" />
-			<sysproperty key="bodies" value="16384" />
-			<sysproperty key="height" value="800" />
-			<sysproperty key="width" value="800" />
-		</java>
-	</target>
-
-	<target name="run-gpu">
-		<java classname="com.syncleus.aparapi.examples.nbody.Main" fork="true">
-			<classpath refid="runtime.class.path" />
-			<sysproperty key="java.library.path" path="..\..\com.syncleus.aparapi.jni\dist;jogamp" />
-			<sysproperty key="com.syncleus.aparapi.executionMode" value="GPU" />
-			<sysproperty key="bodies" value="16384" />
-			<sysproperty key="height" value="800" />
-			<sysproperty key="width" value="800" />
-		</java>
-	</target>
-
-	<target name="run" depends="run-gpu" />
-
-</project>
diff --git a/examples/nbody/local.bat b/examples/nbody/local.bat
deleted file mode 100644
index 0ecc5a22..00000000
--- a/examples/nbody/local.bat
+++ /dev/null
@@ -1,15 +0,0 @@
-@echo off
-
-java ^
-  -Djava.library.path=..\..\com.syncleus.aparapi.jni\dist;..\third-party\jogamp ^
-  -Dcom.syncleus.aparapi.executionMode=%1 ^
-  -Dcom.syncleus.aparapi.enableShowGeneratedOpenCL=true ^
-  -Dcom.syncleus.aparapi.enableVerboseJNI=false ^
-  -Dcom.syncleus.aparapi.enableProfiling=true ^
-  -Dbodies=%2 ^
-  -Dheight=600 ^
-  -Dwidth=600 ^
-  -classpath ..\third-party\jogamp\gluegen-rt.jar;..\third-party\jogamp\jogl.all.jar;..\..\com.syncleus.aparapi\dist\aparapi.jar;nbody.jar ^
-  com.syncleus.aparapi.examples.nbody.Local
-
-
diff --git a/examples/nbody/local.sh b/examples/nbody/local.sh
deleted file mode 100644
index 0e58d8ec..00000000
--- a/examples/nbody/local.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-
-java \
-  -Djava.library.path=../../com.syncleus.aparapi.jni/dist:../third-party/jogamp \
-  -Dcom.syncleus.aparapi.executionMode=$1 \
-  -Dbodies=$2 \
-  -Dheight=600 \
-  -Dwidth=600 \
-  -classpath ../third-party/jogamp/jogl-all.jar:../third-party/jogamp/gluegen-rt.jar:../../com.syncleus.aparapi/dist/aparapi.jar:nbody.jar \
-  com.syncleus.aparapi.examples.nbody.Local
-
diff --git a/examples/nbody/nbody-agent.bat b/examples/nbody/nbody-agent.bat
deleted file mode 100644
index 84446a98..00000000
--- a/examples/nbody/nbody-agent.bat
+++ /dev/null
@@ -1,16 +0,0 @@
-@echo off
-
-java ^
-  -agentpath:../../com.syncleus.aparapi.jni/dist/aparapi_x86_64.dll ^
-  -Dcom.syncleus.aparapi.useAgent=true ^
-  -Djava.library.path=..\third-party\jogamp ^
-  -Dcom.syncleus.aparapi.executionMode=%1 ^
-  -Dcom.syncleus.aparapi.enableProfiling=false ^
-  -Dcom.syncleus.aparapi.enableShowGeneratedOpenCL=true ^
-  -Dbodies=%2 ^
-  -Dheight=600 ^
-  -Dwidth=600 ^
-  -classpath ..\third-party\jogamp\gluegen-rt.jar;..\third-party\jogamp\jogl-all.jar;..\..\com.syncleus.aparapi\dist\aparapi.jar;nbody.jar ^
-  com.syncleus.aparapi.examples.nbody.Main
-
-
diff --git a/examples/nbody/nbody.bat b/examples/nbody/nbody.bat
deleted file mode 100644
index 1a046cba..00000000
--- a/examples/nbody/nbody.bat
+++ /dev/null
@@ -1,15 +0,0 @@
-@echo off
-
-java ^
-  -Djava.library.path=..\..\com.syncleus.aparapi.jni\dist;..\third-party\jogamp ^
-  -Dcom.syncleus.aparapi.executionMode=%1 ^
-  -Dcom.syncleus.aparapi.enableProfiling=false ^
-  -Dcom.syncleus.aparapi.enableShowGeneratedOpenCL=true ^
-  -Dcom.syncleus.aparapi.logLevel=SEVERE ^
-  -Dbodies=%2 ^
-  -Dheight=600 ^
-  -Dwidth=600 ^
-  -classpath ..\third-party\jogamp\gluegen-rt.jar;..\third-party\jogamp\jogl-all.jar;..\..\com.syncleus.aparapi\dist\aparapi.jar;nbody.jar ^
-  com.syncleus.aparapi.examples.nbody.Main
-
-
diff --git a/examples/nbody/nbody.sh b/examples/nbody/nbody.sh
deleted file mode 100644
index f27a90d6..00000000
--- a/examples/nbody/nbody.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-
-java \
-  -Djava.library.path=../../com.syncleus.aparapi.jni/dist:../third-party/jogamp \
-  -Dcom.syncleus.aparapi.executionMode=$1 \
-  -Dbodies=$2 \
-  -Dheight=600 \
-  -Dwidth=600 \
-  -classpath ../third-party/jogamp/jogl-all.jar:../third-party/jogamp/gluegen-rt.jar:../../com.syncleus.aparapi/dist/aparapi.jar:nbody.jar \
-  com.syncleus.aparapi.examples.nbody.Main
-
diff --git a/examples/nbody/seq.bat b/examples/nbody/seq.bat
deleted file mode 100644
index 0258d331..00000000
--- a/examples/nbody/seq.bat
+++ /dev/null
@@ -1,11 +0,0 @@
-@echo off
-
-java ^
-  -Djava.library.path=..\third-party\jogamp ^
-  -Dbodies=%1 ^
-  -Dheight=600 ^
-  -Dwidth=600 ^
-  -classpath ..\third-party\jogamp\gluegen-rt.jar;..\third-party\jogamp\jogl-all.jar;nbody.jar ^
-  com.syncleus.aparapi.examples.nbody.Seq
-
-
diff --git a/examples/nbody/seq.sh b/examples/nbody/seq.sh
deleted file mode 100644
index ef067574..00000000
--- a/examples/nbody/seq.sh
+++ /dev/null
@@ -1,10 +0,0 @@
-
-java \
-  -Djava.library.path=../../com.syncleus.aparapi.jni/dist:../third-party/jogamp \
-  -Dcom.syncleus.aparapi.executionMode=$1 \
-  -Dbodies=$2 \
-  -Dheight=600 \
-  -Dwidth=600 \
-  -classpath ../third-party/jogamp/jogl-all.jar:../third-party/jogamp/gluegen-rt.jar:../../com.syncleus.aparapi/dist/aparapi.jar:nbody.jar \
-  com.syncleus.aparapi.examples.nbody.Seq
-
diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/duke.jpg b/examples/nbody/src/com/amd/aparapi/examples/nbody/duke.jpg
deleted file mode 100644
index 2729fd2fc9cef1a95cb291aa633fb037fd6cf9ab..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 6927
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

diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/particle.jpg b/examples/nbody/src/com/amd/aparapi/examples/nbody/particle.jpg
deleted file mode 100644
index 70e28ac5ea0a5ae58736f61f46ef5a326fbfbde0..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001

literal 1056
zcmex=<NpH&0WUXCHwH#VMg|WcWcYuZ!5PG(2!ITs$N-S${|6WZIT#ce6qp&67?=bZ
znFSgDA7PMZU|?j0n9TqMj7-cdtZeKYoLt;M1zQCem>8LvnOK-vSy@<ss%wGr3@n1I
zLW+itY{G$w>`H|qMvW5}awt1(JSZA;@q>zSQc)8pmzcPOq?D?fx`w8fiK&^ng{76V
zi>sTvho@I?NN8AiL}XNQN@`kqMrKxVNoiSmMP*fUOKV$uM`zch$y26In?7UatVN5L
zEM2yI#mZHiHgDOwZTpU$yAB;ba`f2o6DLnyx_ss8wd*%--g@}x@sp>|p1*kc>f@)+
zU%r0({^RE_kiQrinBhSN@fe!F1cClyVqsxsVF&q(k*OSrnFU!`6%E;h90S=C3x$=8
z8aYIqCNA7~kW<+>=!0ld(M2vX6_bamA3<IN`;0h`HId~rxW^Fwy2Zf5%m|D;W<dsf
zhJRuv{Cu8e50jnT-W{0txbbJtuj<nEbr<XeUr9~T`1Y;XcQ?!1-aa;~0>cBZY;CjZ
zTk7Py1Fqye%xyn2%T)1zLR;dG@9%2;FaP@apP?zP{-B=8`dh{BnJR7fZYpi{d^RuQ
zU@v3La}}P+FaJp@$R9u6VJCb)bE2opw@I$s)t~iFdA{LE)$b=s`|3XOHL9*YF-b9g
zc0<(!`x7U>{mK5V1~hZUe};n=U*6wrd-vMUWm}?*ua5Deb=P8qROEKPvEuuw&ivEu
z$Kpjt6DuoLaT|F(5bitUX8-H{`W5V+A0{8UR^|J5>1nOqt|qx#``khs&o5stQ~Kmn
z_OBg4lZ)yPhOetnTWe&Yo0qHHx}Z-o_kKb+V`00@bB5;^%3jAGJ=Xe2d`qH=U*VqQ
zIq9;W?B?3b{jj^c=uhC@jXg@SUM<NC)=U*o<`uuay#KL-{N?q3M6Uni@-%;IT3K0N
zT+Y*LlPi<e!=;qWWWadn@%GQ>MgQ#o<9j`M|L$EjOrJKM$b0hqdSl;L{SG_zd#?&N
roh;Ou-R@SVA~-)j=JVvf=gjNdvUk0{D=Fu$^6p)&bzSTW=KnVVV0)Pr

diff --git a/src/main/java/com/syncleus/aparapi/examples/All.java b/src/main/java/com/syncleus/aparapi/examples/All.java
index 8c9706f6..038dc2db 100644
--- a/src/main/java/com/syncleus/aparapi/examples/All.java
+++ b/src/main/java/com/syncleus/aparapi/examples/All.java
@@ -45,6 +45,9 @@ public class All {
         System.out.println(" 28) Javaone - Game of Life");
         System.out.println(" 29) Javaone - Mandlebrot");
         System.out.println(" 30) Javaone - NBody");
+        System.out.println(" 31) NBody");
+        System.out.println(" 32) NBody - Local");
+        System.out.println(" 33) NBody - Sequential");
         System.out.println();
 
         Scanner in = new Scanner(System.in);
@@ -165,6 +168,15 @@ public class All {
             case "30":
                 com.syncleus.aparapi.examples.javaonedemo.NBody.main(args);
                 break;
+            case "31":
+                com.syncleus.aparapi.examples.nbody.Main.main(args);
+                break;
+            case "32":
+                com.syncleus.aparapi.examples.nbody.Local.main(args);
+                break;
+            case "33":
+                com.syncleus.aparapi.examples.nbody.Seq.main(args);
+                break;
             default:
                 System.out.println("Invalid selection.");
         }
diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/Local.java b/src/main/java/com/syncleus/aparapi/examples/nbody/Local.java
similarity index 93%
rename from examples/nbody/src/com/amd/aparapi/examples/nbody/Local.java
rename to src/main/java/com/syncleus/aparapi/examples/nbody/Local.java
index 24d30567..9c76bd7d 100644
--- a/examples/nbody/src/com/amd/aparapi/examples/nbody/Local.java
+++ b/src/main/java/com/syncleus/aparapi/examples/nbody/Local.java
@@ -1,3 +1,13 @@
+/**
+ * This product currently only contains code developed by authors
+ * of specific components, as identified by the source code files.
+ *
+ * Since product implements StAX API, it has dependencies to StAX API
+ * classes.
+ *
+ * For additional credits (generally to people who reported problems)
+ * see CREDITS file.
+ */
 /*
 Copyright (c) 2010-2011, Advanced Micro Devices, Inc.
 All rights reserved.
@@ -46,15 +56,15 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
 
-import javax.media.opengl.GL;
-import javax.media.opengl.GL2;
-import javax.media.opengl.GLAutoDrawable;
-import javax.media.opengl.GLCapabilities;
-import javax.media.opengl.GLEventListener;
-import javax.media.opengl.GLException;
-import javax.media.opengl.awt.GLCanvas;
-import javax.media.opengl.fixedfunc.GLLightingFunc;
-import javax.media.opengl.glu.GLU;
+import com.jogamp.opengl.GL;
+import com.jogamp.opengl.GL2;
+import com.jogamp.opengl.GLAutoDrawable;
+import com.jogamp.opengl.GLCapabilities;
+import com.jogamp.opengl.GLEventListener;
+import com.jogamp.opengl.GLException;
+import com.jogamp.opengl.awt.GLCanvas;
+import com.jogamp.opengl.fixedfunc.GLLightingFunc;
+import com.jogamp.opengl.glu.GLU;
 import javax.swing.JButton;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/Main.java b/src/main/java/com/syncleus/aparapi/examples/nbody/Main.java
similarity index 92%
rename from examples/nbody/src/com/amd/aparapi/examples/nbody/Main.java
rename to src/main/java/com/syncleus/aparapi/examples/nbody/Main.java
index 2cfd32ab..5ca45361 100644
--- a/examples/nbody/src/com/amd/aparapi/examples/nbody/Main.java
+++ b/src/main/java/com/syncleus/aparapi/examples/nbody/Main.java
@@ -1,3 +1,13 @@
+/**
+ * This product currently only contains code developed by authors
+ * of specific components, as identified by the source code files.
+ *
+ * Since product implements StAX API, it has dependencies to StAX API
+ * classes.
+ *
+ * For additional credits (generally to people who reported problems)
+ * see CREDITS file.
+ */
 /*
 Copyright (c) 2010-2011, Advanced Micro Devices, Inc.
 All rights reserved.
@@ -46,16 +56,16 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
 
-import javax.media.opengl.GL;
-import javax.media.opengl.GL2;
-import javax.media.opengl.GLAutoDrawable;
-import javax.media.opengl.GLCapabilities;
-import javax.media.opengl.GLEventListener;
-import javax.media.opengl.GLException;
-import javax.media.opengl.GLProfile;
-import javax.media.opengl.awt.GLCanvas;
-import javax.media.opengl.fixedfunc.GLLightingFunc;
-import javax.media.opengl.glu.GLU;
+import com.jogamp.opengl.GL;
+import com.jogamp.opengl.GL2;
+import com.jogamp.opengl.GLAutoDrawable;
+import com.jogamp.opengl.GLCapabilities;
+import com.jogamp.opengl.GLEventListener;
+import com.jogamp.opengl.GLException;
+import com.jogamp.opengl.GLProfile;
+import com.jogamp.opengl.awt.GLCanvas;
+import com.jogamp.opengl.fixedfunc.GLLightingFunc;
+import com.jogamp.opengl.glu.GLU;
 import javax.swing.JButton;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/Seq.java b/src/main/java/com/syncleus/aparapi/examples/nbody/Seq.java
similarity index 92%
rename from examples/nbody/src/com/amd/aparapi/examples/nbody/Seq.java
rename to src/main/java/com/syncleus/aparapi/examples/nbody/Seq.java
index 4ba2d2a2..b2cb2529 100644
--- a/examples/nbody/src/com/amd/aparapi/examples/nbody/Seq.java
+++ b/src/main/java/com/syncleus/aparapi/examples/nbody/Seq.java
@@ -1,3 +1,13 @@
+/**
+ * This product currently only contains code developed by authors
+ * of specific components, as identified by the source code files.
+ *
+ * Since product implements StAX API, it has dependencies to StAX API
+ * classes.
+ *
+ * For additional credits (generally to people who reported problems)
+ * see CREDITS file.
+ */
 /*
 Copyright (c) 2010-2011, Advanced Micro Devices, Inc.
 All rights reserved.
@@ -46,16 +56,16 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.util.List;
 
-import javax.media.opengl.GL;
-import javax.media.opengl.GL2;
-import javax.media.opengl.GLAutoDrawable;
-import javax.media.opengl.GLCapabilities;
-import javax.media.opengl.GLEventListener;
-import javax.media.opengl.GLException;
-import javax.media.opengl.GLProfile;
-import javax.media.opengl.awt.GLCanvas;
-import javax.media.opengl.fixedfunc.GLLightingFunc;
-import javax.media.opengl.glu.GLU;
+import com.jogamp.opengl.GL;
+import com.jogamp.opengl.GL2;
+import com.jogamp.opengl.GLAutoDrawable;
+import com.jogamp.opengl.GLCapabilities;
+import com.jogamp.opengl.GLEventListener;
+import com.jogamp.opengl.GLException;
+import com.jogamp.opengl.GLProfile;
+import com.jogamp.opengl.awt.GLCanvas;
+import com.jogamp.opengl.fixedfunc.GLLightingFunc;
+import com.jogamp.opengl.glu.GLU;
 import javax.swing.JButton;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
diff --git a/examples/nbody/src/com/amd/aparapi/examples/nbody/moon.jpg b/src/main/resources/moon.jpg
similarity index 100%
rename from examples/nbody/src/com/amd/aparapi/examples/nbody/moon.jpg
rename to src/main/resources/moon.jpg
-- 
GitLab