summaryrefslogtreecommitdiffstats
path: root/src/java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java')
-rw-r--r--src/java/com/jogamp/gluegen/runtime/Int64Buffer.java2
-rw-r--r--src/java/com/jogamp/gluegen/runtime/NativeBuffer.java48
-rw-r--r--src/java/com/jogamp/gluegen/runtime/PointerBuffer.java2
3 files changed, 50 insertions, 2 deletions
diff --git a/src/java/com/jogamp/gluegen/runtime/Int64Buffer.java b/src/java/com/jogamp/gluegen/runtime/Int64Buffer.java
index 98d0834..c110310 100644
--- a/src/java/com/jogamp/gluegen/runtime/Int64Buffer.java
+++ b/src/java/com/jogamp/gluegen/runtime/Int64Buffer.java
@@ -37,7 +37,7 @@ import java.nio.ByteBuffer;
* @author Michael Bien
* @author Sven Gothel
*/
-public abstract class Int64Buffer {
+public abstract class Int64Buffer implements NativeBuffer/*<PointerBuffer>*/ {
protected final ByteBuffer bb;
protected int capacity;
diff --git a/src/java/com/jogamp/gluegen/runtime/NativeBuffer.java b/src/java/com/jogamp/gluegen/runtime/NativeBuffer.java
new file mode 100644
index 0000000..d3587e3
--- /dev/null
+++ b/src/java/com/jogamp/gluegen/runtime/NativeBuffer.java
@@ -0,0 +1,48 @@
+
+/*
+ * Created on Tuesday, March 30 2010 18:22
+ */
+package com.jogamp.gluegen.runtime;
+
+import java.nio.ByteBuffer;
+
+/**
+ * Hardware independent container for various kinds of buffers.
+ *
+ * @author Michael Bien
+ * @author Sven Gothel
+ */
+/*public*/ interface NativeBuffer/*<B extends NativeBuffer>*/ { // make public as soon we support generics
+
+ public boolean hasRemaining();
+
+ public boolean isDirect();
+
+ public int limit();
+
+ public int position();
+
+ public int remaining();
+
+ public long[] array();
+
+ public int capacity();
+/*
+ public B rewind();
+
+ public B position(int newPos);
+
+ public B put(int index, long value);
+
+ public B put(long value);
+
+ public B put(B src);
+*/
+ public long get();
+
+ public long get(int idx);
+
+ public ByteBuffer getBuffer();
+
+
+}
diff --git a/src/java/com/jogamp/gluegen/runtime/PointerBuffer.java b/src/java/com/jogamp/gluegen/runtime/PointerBuffer.java
index 3ee7b54..e68fd72 100644
--- a/src/java/com/jogamp/gluegen/runtime/PointerBuffer.java
+++ b/src/java/com/jogamp/gluegen/runtime/PointerBuffer.java
@@ -43,7 +43,7 @@ import java.util.HashMap;
* @author Michael Bien
* @author Sven Gothel
*/
-public abstract class PointerBuffer {
+public abstract class PointerBuffer implements NativeBuffer/*<PointerBuffer>*/ {
protected final ByteBuffer bb;
protected int capacity;