# This .cfg file is used to generate the interface to the GLX routines # used internally by the X11GLContext implementation. Package jogamp.nativewindow.x11 JavaClass X11Lib Style AllStatic HierarchicalNativeOutput false JavaOutputDir gensrc/classes NativeOutputDir gensrc/native/X11 # Imports needed by all glue code Import java.nio.* Import java.util.* Import com.jogamp.nativewindow.util.Point Import com.jogamp.common.util.Bitfield # XID needs to be treated as a long for 32/64 bit compatibility Opaque long XID Opaque boolean Bool Opaque long Display * Opaque long Visual * Opaque long GLXContext Opaque long GLXFBConfig Opaque long void * ImmutableAccess XRenderDirectFormat ImmutableAccess XRenderPictFormat # ImmutableAccess XVisualInfo IncludeAs CustomJavaCode X11Lib x11-CustomJavaCode.java ArgumentIsString XOpenDisplay 0 ReturnsString XDisplayString ReturnValueCapacity XRenderFindVisualFormat sizeof(XRenderPictFormat) # We have Custom code for the following Ignore XGetVisualInfo Ignore XRenderFindVisualFormat ManuallyImplement XCloseDisplay ManuallyImplement XUnlockDisplay ManuallyImplement XLockDisplay # Helper routine to make the ReturnedArrayLength expression below work correctly CustomJavaCode X11Lib private static int getFirstElement(IntBuffer buf) { return buf.get(buf.position()); } CustomJavaCode X11Lib private static int getFirstElement(int[] arr, int offset) { return arr[offset]; } CustomJavaCode XVisualInfo public static XVisualInfo create(XVisualInfo s) { final ByteBuffer bb = Buffers.newDirectByteBuffer(s.getBuffer().capacity()); final XVisualInfo d = XVisualInfo.create(bb); d.getBuffer().put(s.getBuffer()); d.getBuffer().rewind(); s.getBuffer().rewind(); return d; } CustomJavaCode XVisualInfo public String toString() { CustomJavaCode XVisualInfo return "XVisualInfo[size "+size()+"/"+getBuffer().capacity()+", visual 0x"+Long.toHexString(getVisual())+ CustomJavaCode XVisualInfo ", visual-id 0x"+Long.toHexString(getVisualid())+", c-class "+getC_class()+", cmap-size "+getColormap_size()+", depth "+getDepth()+ CustomJavaCode XVisualInfo ", rgb["+Bitfield.Util.bitCount((int)getRed_mask())+", "+Bitfield.Util.bitCount((int)getRed_mask())+", "+Bitfield.Util.bitCount((int)getRed_mask())+" - "+getBits_per_rgb()+"]]"; CustomJavaCode XVisualInfo } CustomCCode #include CustomCCode #include CustomCCode #include CustomCCode #include CustomCCode #include CustomCCode #include CustomCCode #include