public abstract class FunctionPointer extends Pointer
Generator create a native function type.
A C++ function object gets instantiated for each call to allocate()
as well. That function object can be accessed by annotating any method
parameter with ByVal or ByRef. By default, an actual
function pointer gets passed ByPtr.
To use FunctionPointer, subclass and add a native method named call()
or apply(), along with its return type and parameters, as well as the
usual native void allocate() method to support explicit allocation,
which is typically a requirement for callback functions. We can implement a
callback in Java by further subclassing and overriding call/apply().
If you have an address to a native function, it is also possible to call it
by defining a ValueSetter method with a single Pointer parameter,
along with native declarations for allocate() and call().
After allocating the object and setting the value, we can be call it from Java.
GeneratorPointer.CustomDeallocator, Pointer.Deallocator, Pointer.DeallocatorReference, Pointer.DeallocatorThread, Pointer.NativeDeallocator, Pointer.ProxyDeallocator, Pointer.ReferenceCounteraddress, capacity, deallocatorThread, limit, maxBytes, maxPhysicalBytes, maxRetries, position| Modifier | Constructor and Description |
|---|---|
protected |
FunctionPointer() |
protected |
FunctionPointer(Pointer p) |
address, asBuffer, asByteBuffer, availablePhysicalBytes, calloc, capacity, capacity, close, deallocate, deallocate, deallocateReferences, deallocator, deallocator, equals, fill, formatBytes, free, getDirectBufferAddress, getPointer, getPointer, getPointer, getPointer, hashCode, init, interruptDeallocatorThread, isNull, isNull, limit, limit, malloc, maxBytes, maxPhysicalBytes, memchr, memcmp, memcpy, memmove, memset, offsetAddress, offsetof, offsetof, parseBytes, physicalBytes, physicalBytesInaccurate, position, position, put, realloc, referenceCount, releaseReference, retainReference, setNull, sizeof, sizeof, toString, totalBytes, totalCount, totalPhysicalBytes, withDeallocator, zeroprotected FunctionPointer()
protected FunctionPointer(Pointer p)
Copyright © 2022. All rights reserved.