com.jogamp.common.os
Interface DynamicLibraryBundleInfo


public interface DynamicLibraryBundleInfo


Field Summary
static boolean DEBUG
           
 
Method Summary
 List getGlueLibNames()
           
 List getToolGetProcAddressFuncNameList()
          May return the native libraries
 List getToolLibNames()
           
 boolean shallLinkGlobal()
           
 boolean shallLookupGlobal()
           
 long toolDynamicLookupFunction(long toolGetProcAddressHandle, String funcName)
          May implement the lookup function using the Tools facility.
The actual function pointer is provided to allow proper bootstrapping of the ProcAddressTable.
 

Field Detail

DEBUG

static final boolean DEBUG
Method Detail

getToolLibNames

List getToolLibNames()
Returns:
a list of Tool library names or alternative library name lists.
  • GL/GLU example Unix: [ [ "libGL.so.1", "libGL.so", "GL" ], [ "libGLU.so", "GLU" ] ]
  • GL/GLU example Windows: [ "OpenGL32", "GLU32" ]
  • Cg/CgGL example: [ [ "libCg.so", "Cg" ], [ "libCgGL.so", "CgGL" ] ]

getGlueLibNames

List getGlueLibNames()
Returns:
a list of Glue library names.
  • GL: [ "nativewindow_x11", "jogl_gl2es12", "jogl_desktop" ]
  • NEWT: [ "nativewindow_x11", "newt" ]
  • Cg: [ "nativewindow_x11", "jogl_cg" ]

Only the last entry is crucial, ie all other are optional preload dependencies and may generate errors, which are ignored.

getToolGetProcAddressFuncNameList

List getToolGetProcAddressFuncNameList()
May return the native libraries
GetProcAddressFunc
names, the first found function is being used.
This could be eg:
 glXGetProcAddressARB, glXGetProcAddressARB 
.
If your Tool does not has this facility, just return null.


toolDynamicLookupFunction

long toolDynamicLookupFunction(long toolGetProcAddressHandle,
                               String funcName)
May implement the lookup function using the Tools facility.
The actual function pointer is provided to allow proper bootstrapping of the ProcAddressTable.


shallLinkGlobal

boolean shallLinkGlobal()
Returns:
true if the native library symbols shall be made available for symbol resolution of subsequently loaded libraries.

shallLookupGlobal

boolean shallLookupGlobal()
Returns:
true if the dynamic symbol lookup shall happen system wide, over all loaded libraries. Otherwise only the loaded native libraries are used for lookup, which shall be the default.