aboutsummaryrefslogtreecommitdiffstats
path: root/make/config/jogl/glu-gl2.cfg
blob: 7c8735ff11f44aa03d3f95030b6c6da28b8e170e (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
# This .cfg file provides common options used among gl2 GLU glue code
# generated for Jogl on all platforms.
JavaOutputDir gensrc/classes
NativeOutputDir gensrc/native/jogl/gl2

Style ImplOnly
ImplPackage com.jogamp.opengl.glu.gl2
ImplJavaClass GLUgl2
ParentClass GLUgl2 GLU

CustomCCode #include <stdio.h> /* android */
CustomCCode #if defined(WIN32)
CustomCCode   #define WIN32_LEAN_AND_MEAN
CustomCCode   #include <windows.h>
CustomCCode   #undef WIN32_LEAN_AND_MEAN
CustomCCode   #include <stddef.h>
CustomCCode #elif defined(__APPLE__)
CustomCCode   #include <inttypes.h>
CustomCCode   #include <jni.h>
CustomCCode   #include <machine/types.h>
CustomCCode #elif defined(__unix__)
CustomCCode   #include <inttypes.h>
CustomCCode #endif

EmitProcAddressTable true
ProcAddressTablePackage   com.jogamp.opengl.glu.gl2
ProcAddressTableClassName GLUgl2ProcAddressTable
GetProcAddressTableExpr   getGLUProcAddressTable()
AccessControl com.jogamp.opengl.glu.gl2.GLUgl2ProcAddressTable PACKAGE_PRIVATE

CustomCCode /* Include the OpenGL GLU header */
CustomCCode #include <GL/glu.h>

# Custom Java code for GLU class
IncludeAs CustomJavaCode GLUgl2 glu-CustomJavaCode-gl2.java
ManualStaticInitCall GLUgl2

# GLU needs access to the GLUtesselatorImpl class for GLUtesselator,
# to the Mipmap class for scaling and mipmap generation,
# and to the nurbs.* package for the NURBS functionality
Import jogamp.opengl.glu.nurbs.*
Import java.security.*
Import com.jogamp.gluegen.runtime.opengl.GLProcAddressResolver
Import jogamp.opengl.glu.gl2.nurbs.*
Import jogamp.opengl.glu.mipmap.Mipmap
Import com.jogamp.opengl.GL2
Import jogamp.opengl.gl2.ProjectDouble

#
# ------------------------
#        Mipmape
# ------------------------
#
# Ignore the C versions of the mipmap code in the public interface and
# use GKW's Java port instead. The bindings to the C entry points are
# still being left in for now, but only for debugging purposes and the
# intent is to remove them in a future release.

# Emit these entry points as private

AccessControl gluBuild1DMipmapLevels PRIVATE
AccessControl gluBuild1DMipmaps      PRIVATE
AccessControl gluBuild2DMipmapLevels PRIVATE
AccessControl gluBuild2DMipmaps      PRIVATE
AccessControl gluBuild3DMipmapLevels PRIVATE
AccessControl gluBuild3DMipmaps      PRIVATE
AccessControl gluScaleImage          PRIVATE

# Rename these methods in the implementing class

DelegateImplementation gluBuild1DMipmapLevels gluBuild1DMipmapLevelsC
DelegateImplementation gluBuild1DMipmaps      gluBuild1DMipmapsC
DelegateImplementation gluBuild2DMipmapLevels gluBuild2DMipmapLevelsC
DelegateImplementation gluBuild2DMipmaps      gluBuild2DMipmapsC
DelegateImplementation gluBuild3DMipmapLevels gluBuild3DMipmapLevelsC
DelegateImplementation gluBuild3DMipmaps      gluBuild3DMipmapsC
DelegateImplementation gluScaleImage          gluScaleImageC

Include glu-common.cfg