aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/mbien/opencl/InternalBufferUtil.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/mbien/opencl/InternalBufferUtil.java')
-rw-r--r--src/com/mbien/opencl/InternalBufferUtil.java39
1 files changed, 0 insertions, 39 deletions
diff --git a/src/com/mbien/opencl/InternalBufferUtil.java b/src/com/mbien/opencl/InternalBufferUtil.java
deleted file mode 100644
index a2573784..00000000
--- a/src/com/mbien/opencl/InternalBufferUtil.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.mbien.opencl;
-
-import java.lang.reflect.Field;
-import java.nio.Buffer;
-import sun.misc.Unsafe;
-
-/**
- *
- * @author Michael Bien
- */
-class InternalBufferUtil {
-
- private static final long addressFieldOffset;
- private static Unsafe unsafe;
-
- static {
- try {
- Field f = Buffer.class.getDeclaredField("address");
-
- Field[] fields = Unsafe.class.getDeclaredFields();
- for (int i = 0; i < fields.length; i++) {
- if (fields[i].getName().equals("theUnsafe")) {
- fields[i].setAccessible(true);
- unsafe = (Unsafe)fields[i].get(Unsafe.class);
- break;
- }
- }
-
- addressFieldOffset = unsafe.objectFieldOffset(f);
- } catch (Exception e) {
- throw new RuntimeException(e);
- }
- }
-
- public static long getDirectBufferAddress(Buffer buffer) {
- return ((buffer == null) ? 0 : unsafe.getLong(buffer, addressFieldOffset));
- }
-
-} \ No newline at end of file