static final DynamicLibraryBundle dynamicLookupHelper;
static {
dynamicLookupHelper = AccessController.doPrivileged(new PrivilegedAction<DynamicLibraryBundle>() {
public DynamicLibraryBundle run() {
final DynamicLibraryBundle bundle = new DynamicLibraryBundle(new OVRDynamicLibraryBundleInfo());
if(null==bundle) {
throw new RuntimeException("Null DynamicLibraryBundle");
}
/** No native tool library to load
if(!bundle.isToolLibLoaded()) {
System.err.println("Couldn't load native OVR/JNI glue library");
return null;
} */
if(!bundle.isLibComplete()) {
System.err.println("Couldn't load native OVR/JNI glue library");
return null;
}
if( !initializeImpl() ) {
System.err.println("Native initialization failure of OVR/JNI glue library");
return null;
}
return bundle;
} } );
}
/**
* Accessor.
* @returns true if OVR library is available on this machine.
*/
public static boolean isAvailable() { return dynamicLookupHelper != null; }