Top Fields Constructors Methods
com.jogamp.opengl.cg

public final Class CgDynamicLibraryBundleInfo

extends Object
implements DynamicLibraryBundleInfo
Class Inheritance
All Implemented Interfaces
com.jogamp.common.os.DynamicLibraryBundleInfo
Imports
com.jogamp.common.jvm.JNILibLoaderBase, com.jogamp.common.os.DynamicLibraryBundle, .DynamicLibraryBundleInfo, .Platform, com.jogamp.common.util.RunnableExecutor, com.jogamp.common.util.cache.TempJarCache, java.security.AccessController, .PrivilegedAction, java.util.*

Field Summary

Modifier and TypeField and Description
private static final List<String>

Constructor Summary

AccessConstructor and Description
protected

Method Summary

Modifier and TypeMethod and Description
public static final int
public final List<String>
getGlueLibNames()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getGlueLibNames.

If a SecurityManager is installed, user needs link permissions for the named libraries.
public final RunnableExecutor
getLibLoaderExecutor()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getLibLoaderExecutor.

Returns a suitable RunnableExecutor implementation, which is being used to load the tool and glue native libraries.
public final List<String>
public final List<List<String>>
getToolLibNames()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getToolLibNames.

If a SecurityManager is installed, user needs link permissions for the named libraries.
public final boolean
public final boolean
shallLookupGlobal()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.shallLookupGlobal.

If method returns true and if a SecurityManager is installed, user needs link permissions for all libraries, i.e. for new RuntimePermission("loadLibrary.*");!
public final long
toolGetProcAddress(final long toolGetProcAddressHandle, final String funcName)

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.toolGetProcAddress.

Tool has none
public final boolean
Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Field Detail

glueLibNamesback to summary
private static final List<String> glueLibNames

Constructor Detail

CgDynamicLibraryBundleInfoback to summary
protected CgDynamicLibraryBundleInfo()

Method Detail

getCgGlueLibIndexback to summary
public static final int getCgGlueLibIndex()
getGlueLibNamesback to summary
public final List<String> getGlueLibNames()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getGlueLibNames.

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.getGlueLibNames.

If a SecurityManager is installed, user needs link permissions for the named libraries.

Returns:List<String>

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.
Annotations
@Override
getLibLoaderExecutorback to summary
public final RunnableExecutor getLibLoaderExecutor()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getLibLoaderExecutor.

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.getLibLoaderExecutor.

Returns a suitable RunnableExecutor implementation, which is being used to load the tool and glue native libraries.

This allows the generic DynamicLibraryBundle implementation to load the native libraries on a designated thread.

An implementation may return DynamicLibraryBundle#getDefaultRunnableExecutor().

Annotations
@Override
getToolGetProcAddressFuncNameListback to summary
public final List<String> getToolGetProcAddressFuncNameList()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getToolGetProcAddressFuncNameList.

Tool has none

Annotations
@Override
getToolLibNamesback to summary
public final List<List<String>> getToolLibNames()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.getToolLibNames.

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.getToolLibNames.

If a SecurityManager is installed, user needs link permissions for the named libraries.

Returns:List<List<String>>

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" ] ]
  • Annotations
    @Override
shallLinkGlobalback to summary
public final boolean shallLinkGlobal()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.shallLinkGlobal.

Make Cg symbols available to CgGL

Returns:boolean

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.shallLinkGlobal.

true if the native library symbols shall be made available for symbol resolution of subsequently loaded libraries.

Annotations
@Override
shallLookupGlobalback to summary
public final boolean shallLookupGlobal()

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.shallLookupGlobal.

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.shallLookupGlobal.

If method returns true and if a SecurityManager is installed, user needs link permissions for all libraries, i.e. for new RuntimePermission("loadLibrary.*");!

Returns false.

Returns:boolean

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.

Annotations
@Override
toolGetProcAddressback to summary
public final long toolGetProcAddress(final long toolGetProcAddressHandle, final String funcName)

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.toolGetProcAddress.

Tool has none

Annotations
@Override
useToolGetProcAdressFirstback to summary
public final boolean useToolGetProcAdressFirst(final String funcName)

Implements com.jogamp.common.os.DynamicLibraryBundleInfo.useToolGetProcAdressFirst.

Returns:boolean

Doc from com.jogamp.common.os.DynamicLibraryBundleInfo.useToolGetProcAdressFirst.

true if toolGetProcAddress(long, String) shall be tried before the system loader for the given function lookup. Otherwise false. Default is true.

Annotations
@Override