aboutsummaryrefslogtreecommitdiffstats
path: root/src/java/com/sun/gluegen/procaddress
Commit message (Collapse)AuthorAgeFilesLines
* Adden Config: 'NioOnly [__ALL__|<FuncName>]', fixed other __ALL__ logicSven Gothel2008-07-182-17/+4
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@102 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* - New config feature: 'IgnoreExtendedInterfaceSymbols <java class source file>'Sven Gothel2008-07-182-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | All enums and functions within the specified interface (or abstract class), will not be emitted in the resulting interface. This simplifies the GL profile config's a lot, as well reducing the footprint. - Adding JavaParser 'com.sun.gluegen.jgram.JavaParser', which collects enums and functions. - New config feature 'UnsupportedExceptionType <exception name>', which complements the 'RuntimeExceptionType <exception name>' feature. UnsupportedExceptionType's are thrown in case a function is not available. - Fix: BuildComposablePipeline - Method names are now unique by: - name, return type, modifiers and arguments - Cleanup: - mv: com.sun.gluegen.runtime.opengl.GLUnifiedName -> com.sun.gluegen.opengl.GLUnifiedName - contains only the compile time portion of the former - add: com.sun.gluegen.opengl.runtime.GLExtensionNames - contains the extension name handling - bulletproof GL function and GL enum recognition. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@101 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Simplifying ForceProcAddressGen and LocalProcAddressCallingConvention,Sven Gothel2008-07-062-2/+34
| | | | | | | | | | | | | while adding the generic function name '__ALL__'. This action applies to all generated functions then, hence it lowers the maintenance of the gluegen cfg files. Example: ForceProcAddressGen __ALL__ LocalProcAddressCallingConvention __ALL__ GL_APIENTRY git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@97 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed Windows-specific problem with locally generated function pointer Kenneth Russel2008-07-063-2/+37
| | | | | | | | | | | | | | typedefs where the calling convention was not specified. Provided new LocalProcAddressCallingConvention directive to allow developer to specify the calling convention on a per-function basis; used this in gl-es1.cfg and gl-es2.cfg. Changed GLEmitter to force the calling convention of the locally typedefed function pointers for OpenGL function name unification to GL_APIENTRY, compatible with OpenGL ES 1 and OpenGL ES 2. Changed generated native glue code to #define GL_APIENTRY appropriately on the desktop. Refactored custom C code. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@96 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added fine javadoc entries for aliased/unified GL functionsSven Gothel2008-07-051-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@94 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* GL Unification 2nd round.Sven Gothel2008-07-042-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Terminology: ARB Extensions: "GL2", "ARB", "OES", "OML" Vendor Extensions: "EXT", "NV", "ATI", "SGI", "SGIS", "SGIX", "HP", "IBM", "WIN" Pass-1 Unify ARB extensions with the same value Pass-2 Unify vendor extensions, if exist as an ARB extension with the same value. Pass-3 Emit Done: - Unification of GL enumerates - Unification of GL functions - dynamic extension lookup - .. TODO: - Break down GL.java: GL + GL2ES1ES2 (for future GL3, etc) - Add a GL2 small implementation, to only support the GL2ES2 subset, 'GL2SubES2' .. +++ - Fixed X11 build breakage of 'jawt' linkage. - Fixed NEWT native code mouse- and keyevent id's, missed sync while moving them from the bitfield notation. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@93 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* OpenGL Composable Pipeline:Sven Gothel2008-06-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | - Using GL.getContext() interface directly - Adding javax.media.opengl.* to imports ProcAddressEmitter, ProcAddressTable - Generated class implements gluegen runtime's ProcAddressTable, to allow generic access to 'getAddressFor(String functionName)' JavaConfiguration, JavaEmitter - NEW: ParentClass <ThisClass> <ParentClass>, to allow the implementing classes to extend a user spec one - NEW: AccessControl type 'PUBLIC_ABSTRACT", to allow a generated impl. class to be abstract. JavaType.getDescriptor() - Throw a meaningfull exception in case of an unknown type, ie a used type/struct, which could not be generated. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/branches/JOGL_2_SANDBOX@84 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed implementation of ArgumentIsString to work with wide-character Kenneth Russel2008-05-271-1/+2
| | | | | | | | | | | | | | null-terminated strings on Windows. Changed Windows dynamic linker to use LoadLibraryW which is the only variant available on Windows CE. Changed GetProcAddress to explicitly named GetProcAddressA; this is implicitly the only variant available on Windows XP. Tested by compiling gluegen-rt.dll for both Windows XP and Windows CE. Also brought dynlink-unix-CustomJavaCode.java in line with modifications that were apparently hand made to the UnixDynamicLinkerImpl and MacOSXDynamicLinkerImpl classes. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@79 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added support for passing outgoing arrays of compound types, including Kenneth Russel2008-05-262-7/+12
| | | | | | | | | | | non-const arrays of compound types and the associated copies back to Java, in support of constructs like eglChooseConfig. Generated code has been compiled but not yet tested. Refactorings to allow generated glue code using StructAccessors to work on Java ME / CDC / FP + JSR-239 NIO, as well as Java SE. Bug fix to ForceProcAddressGen. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@77 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed bug in handling of package-private native methods called through Kenneth Russel2007-06-291-4/+10
| | | | | | | procedure addresses git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@65 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Added GlueGenRuntimePackage to allow people to rename and incorporate Kenneth Russel2007-06-041-1/+1
| | | | | | | those helper classes into their apps git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@62 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Changed NativeLibrary.open() to accept boolean argument indicating Kenneth Russel2006-08-273-2/+39
| | | | | | | | | | | | | | | | | | whether to search the system path first; perhaps useful if applications ship only a backup version of native libraries associated with a particular Java binding. In the case of JOAL we plan to ship a recent OpenAL implementation so we will not need to search the system path first. Changed ForceProcAddressGen directive to force call-through-function-pointer semantics for the targeted function. Changed JOAL to not link directly against the OpenAL library at all, but instead to look up all entry points using the GlueGen NativeLibrary class (instead of the custom dlsym code, now removed) in particular to solve DSO versioning problems on Linux. Updated EAX binding to work with dynamically loading OpenAL. Tested on Windows so far; more testing needed on Linux in Java Web Start scenarios. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@42 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Did refactoring and made private fields protected in order to allow Kenneth Russel2006-03-061-4/+4
| | | | | | | subclassing git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@21 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Fixed line break in javadocKenneth Russel2006-02-111-1/+1
| | | | git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@14 a78bb65f-1512-4460-ba86-f6dc96a7bf27
* Moved GlueGen out of the JOGL workspace and into its own project. Kenneth Russel2006-01-154-0/+970
Restructured JOGL and JOAL build processes to separately invoke GlueGen's main build.xml before using it to generate their code. Refactored OS/CPU detection code into gluegen-cpptasks.xml build file in GlueGen workspace, which is now imported by both the JOGL and JOAL build processes. Unfortunately it seems to be somewhat difficult to completely factor out the C compiler configuration into the GlueGen workspace so this has been left for a later date. Added missed ALProcAddressLookup file to JOAL workspace. Updated JOGL and JOAL build documentation. More documentation for the GlueGen workspace is forthcoming. git-svn-id: file:///usr/local/projects/SUN/JOGL/git-svn/../svn-server-sync/gluegen/trunk@3 a78bb65f-1512-4460-ba86-f6dc96a7bf27