JNA API 4.0.0

com.sun.jna
Class CallbackReference

java.lang.Object
  extended by java.lang.ref.Reference<T>
      extended by java.lang.ref.WeakReference
          extended by com.sun.jna.CallbackReference

 class CallbackReference
extends WeakReference

Provides a reference to an association between a native callback closure and a Java Callback closure.


Nested Class Summary
(package private) static class CallbackReference.AttachOptions
           
 
Field Summary
(package private) static Map allocations
           
(package private) static Map callbackMap
           
(package private)  Pointer cbstruct
           
(package private) static Map directCallbackMap
           
(package private)  Method method
           
(package private) static Map pointerCallbackMap
           
(package private)  CallbackProxy proxy
           
(package private)  Pointer trampoline
           
 
Method Summary
protected  void dispose()
          Free native resources associated with this callback.
protected  void finalize()
          Free native resources associated with this callback when GC'd.
(package private) static Class findCallbackClass(Class type)
          Find the first instance of an interface which implements the Callback interface or an interface derived from Callback, which defines an appropriate callback method.
static Callback getCallback(Class type, Pointer p)
          Return a Callback associated with the given function pointer.
static Pointer getFunctionPointer(Callback cb)
          Return a Pointer to the native function address for the given callback.
 Pointer getTrampoline()
          Obtain a pointer to the native glue code for this callback.
(package private) static void setCallbackThreadInitializer(Callback cb, CallbackThreadInitializer initializer)
           
 
Methods inherited from class java.lang.ref.Reference
clear, enqueue, get, isEnqueued
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

callbackMap

static final Map callbackMap

directCallbackMap

static final Map directCallbackMap

pointerCallbackMap

static final Map pointerCallbackMap

allocations

static final Map allocations

cbstruct

Pointer cbstruct

trampoline

Pointer trampoline

proxy

CallbackProxy proxy

method

Method method
Method Detail

setCallbackThreadInitializer

static void setCallbackThreadInitializer(Callback cb,
                                         CallbackThreadInitializer initializer)

getCallback

public static Callback getCallback(Class type,
                                   Pointer p)
Return a Callback associated with the given function pointer. If the pointer refers to a Java callback trampoline, return the original Java Callback. Otherwise, return a proxy to the native function pointer.

Throws:
IllegalStateException - if the given pointer has already been mapped to a callback of a different type.

findCallbackClass

static Class findCallbackClass(Class type)
Find the first instance of an interface which implements the Callback interface or an interface derived from Callback, which defines an appropriate callback method.


getTrampoline

public Pointer getTrampoline()
Obtain a pointer to the native glue code for this callback.


finalize

protected void finalize()
Free native resources associated with this callback when GC'd.

Overrides:
finalize in class Object

dispose

protected void dispose()
Free native resources associated with this callback.


getFunctionPointer

public static Pointer getFunctionPointer(Callback cb)
Return a Pointer to the native function address for the given callback.


JNA API 4.0.0

Copyright © 2007-2013 Timothy Wall. All Rights Reserved.