GlueGen: com.jogamp.common.os.DynamicLibraryBundle Class Reference

GlueGen v2.6.0-rc-20250822 GlueGen, Native Binding Generator for Java™ (public API).

Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
com.jogamp.common.os.DynamicLibraryBundle Class Reference

Provides bundling of:
More...

Inheritance diagram for com.jogamp.common.os.DynamicLibraryBundle:
Collaboration diagram for com.jogamp.common.os.DynamicLibraryBundle:

## Classes

class | GlueJNILibLoader
| Inherit access.

## Public Member Functions

| DynamicLibraryBundle (final DynamicLibraryBundleInfo info)
| Instantiates and loads all `NativeLibrary`s incl. More...
final void | destroy ()
| Unload all `NativeLibrary`s, and remove all references. More...
final boolean | isLibComplete ()
final int | getToolLibNumber ()
final int | getToolLibLoadedNumber ()
final boolean | isToolLibComplete ()
final boolean | isToolLibLoaded ()
final boolean | isToolLibLoaded (final int i)
final boolean | isOpen ()
| Returns true if library is loaded and open, otherwise false. More...
final List< NativeLibrary > | getToolLibraries ()
| Returns list of `NativeLibrary`s for each `DynamicLibraryBundleInfo#getToolLibNames()` in the same size and order. More...
final NativeLibrary | getToolLibrary (final int i)
| Returns `NativeLibrary` at given index of all `DynamicLibraryBundleInfo#getToolLibNames()` in the same size and order. More...
final int | getGlueLibNumber ()
final int | getGlueLibLoadedNumber ()
final boolean | isGlueLibComplete ()
final boolean | isGlueLibLoaded (final int i)
final DynamicLibraryBundleInfo | getBundleInfo ()
final long | getToolGetProcAddressHandle ()
final void | claimAllLinkPermission () throws SecurityException
final void | releaseAllLinkPermission () throws SecurityException
final long | dynamicLookupFunction (final String funcName) throws SecurityException
| Returns the function handle for function 'funcName'. More...
final boolean | isFunctionAvailable (final String funcName) throws SecurityException
| Queries whether function 'funcName' is available. More...
void | claimAllLinkPermission () throws SecurityException
void | releaseAllLinkPermission () throws SecurityException
boolean | isOpen ()
| Returns true if library is loaded and open, otherwise false. More...
long | dynamicLookupFunction (String funcName) throws SecurityException
| Returns the function handle for function 'funcName'. More...
boolean | isFunctionAvailable (String funcName) throws SecurityException
| Queries whether function 'funcName' is available. More...

## Static Public Member Functions

static RunnableExecutor | getDefaultRunnableExecutor ()
| Returns an AWT-EDT `RunnableExecutor` implementation if AWT is available, otherwise `RunnableExecutor#currentThreadExecutor`. More...

## Protected Member Functions

final long | retrieveToolGetProcAddressHandle () throws SecurityException

## Static Protected Member Functions

static final NativeLibrary | loadFirstAvailable (final List< String > libNames, final boolean searchOSSystemPath, final boolean searchSystemPathFirst, final ClassLoader loader, final boolean global, final String symbolName) throws SecurityException

## Protected Attributes

final List< NativeLibrary > | toolLibraries

## Additional Inherited Members

Static Public Attributes inherited from com.jogamp.common.os.DynamicLookupHelper
static final boolean | DEBUG = Debug.debug("NativeLibrary")
static final boolean | DEBUG_LOOKUP = Debug.debug("NativeLibrary.Lookup")

## Detailed Description

Provides bundling of:

- The to-be-glued native library, eg OpenGL32.dll. From here on this is referred as the Tool.
- The JNI glue-code native library, eg jogl_desktop.dll. From here on this is referred as the Glue

An `DynamicLibraryBundleInfo` instance is being passed in the constructor, providing the required information about the tool and glue libraries. The ClassLoader of it's implementation is also being used to help locating the native libraries.

An instance provides a complete `com.jogamp.common.os.DynamicLookupHelper` to `reset` the `com.jogamp.gluegen.runtime.ProcAddressTable`.
At construction, it:

- loads the Tool native library via `NativeLibrary's open method`
- loads the `Glue native library`
- resolves the Tool's `GetProcAddress`. (optional)

Definition at line 61 of file DynamicLibraryBundle.java.

## Constructor & Destructor Documentation

## ◆ DynamicLibraryBundle()

com.jogamp.common.os.DynamicLibraryBundle.DynamicLibraryBundle | ( | final DynamicLibraryBundleInfo | info | ) |

Instantiates and loads all `NativeLibrary`s incl.

JNI libraries.

The ClassLoader of the `DynamicLibraryBundleInfo` implementation class is being used to help locating the native libraries.

Definition at line 93 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## Member Function Documentation

## ◆ claimAllLinkPermission()

final void com.jogamp.common.os.DynamicLibraryBundle.claimAllLinkPermission | ( |  | ) | throws SecurityException

Exceptions

  SecurityException | if user is not granted access for the library set.

Implements com.jogamp.common.os.DynamicLookupHelper.

Definition at line 414 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## ◆ destroy()

final void com.jogamp.common.os.DynamicLibraryBundle.destroy | ( |  | ) |

Unload all `NativeLibrary`s, and remove all references.

Definition at line 159 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ dynamicLookupFunction()

final long com.jogamp.common.os.DynamicLibraryBundle.dynamicLookupFunction | ( | final String | funcName | ) | throws SecurityException

Returns the function handle for function 'funcName'.

Exceptions

  SecurityException | if user is not granted access for the library set.

Implements com.jogamp.common.os.DynamicLookupHelper.

Definition at line 433 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ getBundleInfo()

final DynamicLibraryBundleInfo com.jogamp.common.os.DynamicLibraryBundle.getBundleInfo | ( |  | ) |

Definition at line 262 of file DynamicLibraryBundle.java.

## ◆ getDefaultRunnableExecutor()

static RunnableExecutor com.jogamp.common.os.DynamicLibraryBundle.getDefaultRunnableExecutor | ( |  | ) |

static

Returns an AWT-EDT `RunnableExecutor` implementation if AWT is available, otherwise `RunnableExecutor#currentThreadExecutor`.

Definition at line 82 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getGlueLibLoadedNumber()

final int com.jogamp.common.os.DynamicLibraryBundle.getGlueLibLoadedNumber | ( |  | ) |

Definition at line 240 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getGlueLibNumber()

final int com.jogamp.common.os.DynamicLibraryBundle.getGlueLibNumber | ( |  | ) |

Definition at line 236 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getToolGetProcAddressHandle()

final long com.jogamp.common.os.DynamicLibraryBundle.getToolGetProcAddressHandle | ( |  | ) |

Definition at line 264 of file DynamicLibraryBundle.java.

## ◆ getToolLibLoadedNumber()

final int com.jogamp.common.os.DynamicLibraryBundle.getToolLibLoadedNumber | ( |  | ) |

Definition at line 188 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getToolLibNumber()

final int com.jogamp.common.os.DynamicLibraryBundle.getToolLibNumber | ( |  | ) |

Definition at line 184 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getToolLibraries()

final List< NativeLibrary > com.jogamp.common.os.DynamicLibraryBundle.getToolLibraries | ( |  | ) |

Returns list of `NativeLibrary`s for each `DynamicLibraryBundleInfo#getToolLibNames()` in the same size and order.

May contain elements with `null` for not loaded libs.

Definition at line 223 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ getToolLibrary()

final NativeLibrary com.jogamp.common.os.DynamicLibraryBundle.getToolLibrary | ( | final int | i | ) |

Returns `NativeLibrary` at given index of all `DynamicLibraryBundleInfo#getToolLibNames()` in the same size and order.

May return `null` if not loaded.

Definition at line 229 of file DynamicLibraryBundle.java.

## ◆ isFunctionAvailable()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isFunctionAvailable | ( | final String | funcName | ) | throws SecurityException

Queries whether function 'funcName' is available.

Exceptions

  SecurityException | if user is not granted access for the library set.

Implements com.jogamp.common.os.DynamicLookupHelper.

Definition at line 461 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## ◆ isGlueLibComplete()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isGlueLibComplete | ( |  | ) |

Returns
  true if the last entry has been loaded, while ignoring the preload dependencies. Otherwise false.

See also
  DynamicLibraryBundleInfo::getGlueLibNames()

Definition at line 251 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ isGlueLibLoaded()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isGlueLibLoaded | ( | final int | i | ) |

Definition at line 255 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ isLibComplete()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isLibComplete | ( |  | ) |

Definition at line 180 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ isOpen()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isOpen | ( |  | ) |

Returns true if library is loaded and open, otherwise false.

Implements com.jogamp.common.os.DynamicLookupHelper.

Definition at line 217 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## ◆ isToolLibComplete()

final boolean com.jogamp.common.os.DynamicLibraryBundle.isToolLibComplete | ( |  | ) |

Returns
  true if all tool libraries are loaded, otherwise false.

See also
  DynamicLibraryBundleInfo::getToolLibNames()

Definition at line 198 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## ◆ isToolLibLoaded() [1/2]

final boolean com.jogamp.common.os.DynamicLibraryBundle.isToolLibLoaded | ( |  | ) |

Definition at line 205 of file DynamicLibraryBundle.java.

Here is the caller graph for this function:

## ◆ isToolLibLoaded() [2/2]

final boolean com.jogamp.common.os.DynamicLibraryBundle.isToolLibLoaded | ( | final int | i | ) |

Definition at line 209 of file DynamicLibraryBundle.java.

## ◆ loadFirstAvailable()

static final NativeLibrary com.jogamp.common.os.DynamicLibraryBundle.loadFirstAvailable | ( | final List< String > | libNames,
|  | final boolean | searchOSSystemPath,
|  | final boolean | searchSystemPathFirst,
|  | final ClassLoader | loader,
|  | final boolean | global,
|  | final String | symbolName
| ) |  | throws SecurityException

staticprotected

Definition at line 281 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## ◆ releaseAllLinkPermission()

final void com.jogamp.common.os.DynamicLibraryBundle.releaseAllLinkPermission | ( |  | ) | throws SecurityException

Exceptions

  SecurityException | if user is not granted access for the library set.

Implements com.jogamp.common.os.DynamicLookupHelper.

Definition at line 423 of file DynamicLibraryBundle.java.

Here is the call graph for this function:

## ◆ retrieveToolGetProcAddressHandle()

final long com.jogamp.common.os.DynamicLibraryBundle.retrieveToolGetProcAddressHandle | ( |  | ) | throws SecurityException

protected

Definition at line 266 of file DynamicLibraryBundle.java.

Here is the call graph for this function:
Here is the caller graph for this function:

## Member Data Documentation

## ◆ toolLibraries

final List<NativeLibrary> com.jogamp.common.os.DynamicLibraryBundle.toolLibraries

protected

Definition at line 65 of file DynamicLibraryBundle.java.

The documentation for this class was generated from the following file:

- src/java/com/jogamp/common/os/DynamicLibraryBundle.java