jnr.ffi
Class FFIProvider

java.lang.Object
  extended by jnr.ffi.FFIProvider
Direct Known Subclasses:
Provider

public abstract class FFIProvider
extends Object

This class defines the facilities a jaffl FFI provider must provide.


Constructor Summary
protected FFIProvider()
           
 
Method Summary
abstract  Runtime getRuntime()
          Gets the default Runtime for this provider
abstract
<T> T
loadLibrary(Class<T> interfaceClass, Map<LibraryOption,?> libraryOptions, String... libraryNames)
          Loads a native library and links the methods defined in interfaceClass to native methods in the library.
abstract
<T> T
loadLibrary(String libraryName, Class<T> interfaceClass, Map<LibraryOption,?> libraryOptions)
          Loads a native library and links the methods defined in interfaceClass to native methods in the library.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FFIProvider

protected FFIProvider()
Method Detail

getRuntime

public abstract Runtime getRuntime()
Gets the default Runtime for this provider


loadLibrary

public abstract <T> T loadLibrary(String libraryName,
                                  Class<T> interfaceClass,
                                  Map<LibraryOption,?> libraryOptions)
Loads a native library and links the methods defined in interfaceClass to native methods in the library.

Parameters:
libraryName - the name of the library to load
interfaceClass - the interface that describes the native library interface
libraryOptions - options
Returns:
an instance of interfaceclass that will call the native methods.

loadLibrary

public abstract <T> T loadLibrary(Class<T> interfaceClass,
                                  Map<LibraryOption,?> libraryOptions,
                                  String... libraryNames)
Loads a native library and links the methods defined in interfaceClass to native methods in the library.

Parameters:
interfaceClass - the interface that describes the native library interface
libraryOptions - options
libraryNames - the list of libraries to load
Returns:
an instance of interfaceclass that will call the native methods.


Copyright © 2012. All Rights Reserved.