summaryrefslogtreecommitdiffstats
path: root/src/java/com/jogamp/gluegen/JavaEmitter.java
diff options
context:
space:
mode:
authorSven Gothel <[email protected]>2011-07-18 03:48:41 +0200
committerSven Gothel <[email protected]>2011-07-18 03:48:41 +0200
commit92d6c9dc5fa72b01703456452c60822f36c14fff (patch)
treee55cbda96c4f9805b0f7303c6589edfa949e38b9 /src/java/com/jogamp/gluegen/JavaEmitter.java
parent8fc841257cae6b49399b29dfa53e3e834d27cabb (diff)
- Moved most types and StructLayout to runtime package:
com.jogamp.gluegen.cgram.types -> com.jogamp.gluegen.runtime.types This is required for desired runtime memory layout. - Split CompoundType to StructType + UnionType - StructLayout: - Utilizing SizeThunk alignment - Alignment 1) Natural type alignment 2) Add Size 3) Trailing padding w/ largest element alignment - Only perform memory layout once for type. Status: - Unit test passes w/ static MachineDescriptor64Bit - FIXME static 32bit is faulty, uses 64bit size/alignment - TODO runtime struct layout to please all platforms w/o worrying
Diffstat (limited to 'src/java/com/jogamp/gluegen/JavaEmitter.java')
-rw-r--r--src/java/com/jogamp/gluegen/JavaEmitter.java10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/java/com/jogamp/gluegen/JavaEmitter.java b/src/java/com/jogamp/gluegen/JavaEmitter.java
index d92e589..a3ee962 100644
--- a/src/java/com/jogamp/gluegen/JavaEmitter.java
+++ b/src/java/com/jogamp/gluegen/JavaEmitter.java
@@ -49,6 +49,14 @@ import java.util.*;
import java.text.MessageFormat;
import com.jogamp.gluegen.cgram.types.*;
+import com.jogamp.gluegen.runtime.types.CompoundType;
+import com.jogamp.gluegen.runtime.types.Field;
+import com.jogamp.gluegen.runtime.types.FunctionType;
+import com.jogamp.gluegen.runtime.types.PointerType;
+import com.jogamp.gluegen.runtime.types.SizeThunk;
+import com.jogamp.gluegen.runtime.types.StructLayout;
+import com.jogamp.gluegen.runtime.types.Type;
+
import java.nio.Buffer;
import java.util.logging.Logger;
@@ -1424,7 +1432,7 @@ public class JavaEmitter implements GlueEmitter {
private StructLayout getLayout() {
if (layout == null) {
- layout = StructLayout.createForCurrentPlatform();
+ layout = StructLayout.create(0);
}
return layout;
}