From 0eb6ad563825b97aec760a893db0eead10fe0ae6 Mon Sep 17 00:00:00 2001 From: Jesse Hall Date: Fri, 29 Mar 2013 15:20:45 -0700 Subject: [PATCH] Support "const GLChar*" and "const GLenum*" types Bug: 8566953 Change-Id: I349575e592e8b0d93d14237230b69bec4e04cf3e --- opengl/tools/glgen/src/CType.java | 3 ++- opengl/tools/glgen/src/JType.java | 4 ++++ 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/opengl/tools/glgen/src/CType.java b/opengl/tools/glgen/src/CType.java index 92950ea07..aba98afb9 100644 --- a/opengl/tools/glgen/src/CType.java +++ b/opengl/tools/glgen/src/CType.java @@ -70,7 +70,8 @@ public class CType { } public boolean isConstCharPointer() { - return isConst && isPointer && baseType.equals("char"); + return isConst && isPointer && + (baseType.equals("char") || baseType.equals("GLchar")); } public boolean isTypedPointer() { diff --git a/opengl/tools/glgen/src/JType.java b/opengl/tools/glgen/src/JType.java index 994e60905..795d833e1 100644 --- a/opengl/tools/glgen/src/JType.java +++ b/opengl/tools/glgen/src/JType.java @@ -46,6 +46,7 @@ public class JType { typeMapping.put(new CType("GLubyte", true, true), new JType("String", false, false)); typeMapping.put(new CType("char", false, true), new JType("byte")); typeMapping.put(new CType("char", true, true), new JType("String", false, false)); + typeMapping.put(new CType("GLchar", true, true), new JType("String", false, false)); typeMapping.put(new CType("int"), new JType("int")); // EGL primitive types @@ -80,6 +81,8 @@ public class JType { new JType("java.nio.IntBuffer", true, false)); typeMapping.put(new CType("GLenum", false, true), new JType("java.nio.IntBuffer", true, false)); + typeMapping.put(new CType("GLenum", true, true), + new JType("java.nio.IntBuffer", true, false)); typeMapping.put(new CType("GLfixed", false, true), new JType("java.nio.IntBuffer", true, false)); typeMapping.put(new CType("GLfixed", true, true), @@ -107,6 +110,7 @@ public class JType { arrayTypeMapping.put(new CType("GLboolean", false, true), new JType("boolean", false, true)); arrayTypeMapping.put(new CType("GLenum", false, true), new JType("int", false, true)); + arrayTypeMapping.put(new CType("GLenum", true, true), new JType("int", false, true)); arrayTypeMapping.put(new CType("GLfixed", true, true), new JType("int", false, true)); arrayTypeMapping.put(new CType("GLfixed", false, true), new JType("int", false, true)); arrayTypeMapping.put(new CType("GLfloat", false, true), new JType("float", false, true));