blob: 96b70f1ab8b2018aab0600c55922bd64a2866688 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
# This .cfg file is used to generate the interface to the EGL routines
# used internally by the EGLContext implementation.
JavaOutputDir ../build/gensrc/classes
NativeOutputDir ../build/gensrc/native/jogl/egl
Package com.sun.opengl.impl.egl
JavaClass EGL
Style allstatic
# Shouldn't matter which one of these we pick up
HierarchicalNativeOutput false
Include gl-common.cfg
# There are a few routines we don't handle yet
Ignore glGetBufferPointerv
# Use a ProcAddressTable so we dynamically look up the routines
EmitProcAddressTable true
ProcAddressTableClassName EGLProcAddressTable
GetProcAddressTableExpr _table
# Translate EGLBoolean as Java boolean
Opaque boolean EGLBoolean
# Implement the first argument to eglGetProcAddress as String instead
# of byte[]
ArgumentIsString eglGetProcAddress 0
ReturnsString eglQueryString
# Make eglGetProcAddress return an opaque long
Opaque long __EGLFuncPtr
# Force all of the methods to be emitted using dynamic linking so we
# don't need to link against any emulation library on the desktop or
# depend on the presence of an import library for a particular device
ForceProcAddressGen eglGetError
ForceProcAddressGen eglGetDisplay
ForceProcAddressGen eglInitialize
ForceProcAddressGen eglTerminate
ForceProcAddressGen eglQueryString
ForceProcAddressGen eglGetConfigs
ForceProcAddressGen eglChooseConfig
ForceProcAddressGen eglGetConfigAttrib
ForceProcAddressGen eglCreateWindowSurface
ForceProcAddressGen eglCreatePbufferSurface
ForceProcAddressGen eglCreatePixmapSurface
ForceProcAddressGen eglDestroySurface
ForceProcAddressGen eglQuerySurface
ForceProcAddressGen eglBindAPI
ForceProcAddressGen eglQueryAPI
ForceProcAddressGen eglWaitClient
ForceProcAddressGen eglReleaseThread
ForceProcAddressGen eglCreatePbufferFromClientBuffer
ForceProcAddressGen eglSurfaceAttrib
ForceProcAddressGen eglBindTexImage
ForceProcAddressGen eglReleaseTexImage
ForceProcAddressGen eglSwapInterval
ForceProcAddressGen eglCreateContext
ForceProcAddressGen eglDestroyContext
ForceProcAddressGen eglMakeCurrent
ForceProcAddressGen eglGetCurrentContext
ForceProcAddressGen eglGetCurrentSurface
ForceProcAddressGen eglGetCurrentDisplay
ForceProcAddressGen eglQueryContext
ForceProcAddressGen eglWaitGL
ForceProcAddressGen eglWaitNative
ForceProcAddressGen eglSwapBuffers
ForceProcAddressGen eglCopyBuffers
ForceProcAddressGen eglGetProcAddress
# Treat all of the EGL types as opaque longs
# Opaque long EGLConfig
Opaque long EGLContext
Opaque long EGLDisplay
Opaque long EGLSurface
Opaque long EGLNativeDisplayType
Opaque long EGLNativeWindowType
Opaque long EGLNativePixmapType
# Opaque long EGLClientBuffer
CustomCCode #include <EGL/egl.h>
Include intptr.cfg
CustomJavaCode EGL private static EGLProcAddressTable _table = new EGLProcAddressTable();
CustomJavaCode EGL public static void resetProcAddressTable(DynamicLookupHelper lookup) {
CustomJavaCode EGL GLProcAddressHelper.resetProcAddressTable(_table, lookup);
CustomJavaCode EGL }
# There are some #defines in egl.h that GlueGen and PCPP don't currently handle
CustomJavaCode EGL public static final long EGL_DEFAULT_DISPLAY = 0;
CustomJavaCode EGL public static final long EGL_NO_CONTEXT = 0;
CustomJavaCode EGL public static final long EGL_NO_DISPLAY = 0;
CustomJavaCode EGL public static final long EGL_NO_SURFACE = 0;
CustomJavaCode EGL public static final int EGL_DONT_CARE = -1;
CustomJavaCode EGL public static final int EGL_UNKNOWN = -1;
Import com.sun.gluegen.runtime.opengl.GLProcAddressHelper
|