5.2 C2J Version 1.0\dag

As decribed in chapter 3.2.1 on page [*], we use C2J as our OpenGL wrapper functions generator. C2J is our JNI and MSJDirect file generator. C2J creates the java native function declarations and the C functions. C2J gets a modified Mesa-OpenGL header file as it's input and generates the java native declarations in one file, and the complete C functions in another file. C2J is written in an Extended Backus Naur Form (EBNF) of the JavaCC[9]parser generator. We modified the C parser provided with the JavaCC to write C2J.

The C2J syntax can seen in GL4Java/C2J/C2J.jj !

The C2J output files are glued with the other parts needed by the java class and the C definition-file to the complete sources.

The new C2J Version supports the following new features:

  1. Only the glGetString, gluGetString and gluErrorString functions must be written manualy now !!!!

  2. Better compatibility with GLvoid * arguments. This means
    	"byte[]", "short[]", "int[]",
    	"float[]", "double[]", "boolean[]", "long[]"
    
    functions are generated !

  3. Better MS-JDirect (MS-JVM) integeration !

The source files are:

C2J/C2J.jj the parser definition (input for JavaCC)
C2J/makefile the lokal makefile
C2J/gl-enum-auto.orig the OpenGL enumeration part, C2J input
C2J/gl-proto-auto.orig the OpenGL declaration part, C2J input
C2J/glu-enum-auto.orig the GLU enumeration part
C2J/glu-proto-auto.orig the GLU declarartion part
C2J/manual/gl-manualCoded.orig the GL manual coded C2J input
C2J/manual/glu-manualCoded.orig the GL manual coded C2J input part
C2J/manual/gl-enum-manualCoded.java the GL manual coded java part
C2J/manual/glu-enum-manualCoded.java the GLU manual coded java part
C2J/manual/glu-manualCodedImplJNI.c the GLU manual coded c part
C2J/manual/glu-manualCodedImplJNI.h the GLU manual coded c part
C2J/manual/glu-manualCodedImplJNI.java the GLU manual coded java part
C2J/manual/glu-manualCodedImplMSJVM.java the GLU manual coded java part
C2J/manual/glu-manualCodedVirt.java the GLU manual coded java part
C2J/manual/gl-manualCodedImplJNI.c the GL manual coded c part
C2J/manual/gl-manualCodedVirt.java the GL manual coded java part
C2J/manual/gl-manualCodedImplJNI.java the GL manual coded java part
C2J/manual/gl-manualCodedImplMSJVM.java the GL manual coded java part

sven goethel 2001-12-11