|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectcom.kenai.jffi.Invoker
public abstract class Invoker
Provides native function invocation facilities.
Method Summary | |
---|---|
static Invoker |
getInstance()
Gets the Invoker singleton. |
void |
invoke(CallContext ctx,
long function,
long returnBuffer,
long[] parameters)
Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer. |
void |
invoke(Function function,
long returnBuffer,
long[] parameters)
Invokes a function, with the parameters loaded into native memory buffers, and the function result is stored in a native memory buffer. |
abstract long |
invokeAddress(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function and returns a native memory address. |
abstract long |
invokeAddress(Function function,
HeapInvocationBuffer buffer)
Invokes a function and returns a native memory address. |
double |
invokeDouble(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 64 bit floating point value. |
double |
invokeDouble(Function function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 64 bit floating point value. |
float |
invokeFloat(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 32 bit floating point value. |
float |
invokeFloat(Function function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 32 bit floating point value. |
float |
invokeIIIrF(Function function,
int arg1,
int arg2,
int arg3)
Invokes a function with three integer arguments, and returns a 32 bit float. |
int |
invokeIIIrI(Function function,
int arg1,
int arg2,
int arg3)
Invokes a function with three integer arguments, and returns a 32 bit integer. |
float |
invokeIIrF(Function function,
int arg1,
int arg2)
Invokes a function with two integer arguments, and returns a 32 bit float. |
int |
invokeIIrI(Function function,
int arg1,
int arg2)
Invokes a function with two integer arguments, and returns a 32 bit integer. |
int |
invokeInt(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 32 bit integer value. |
int |
invokeInt(Function function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 32 bit integer value. |
float |
invokeIrF(Function function,
int arg1)
Invokes a function with one integer argument, and returns a 32 bit float. |
int |
invokeIrI(Function function,
int arg1)
Invokes a function with one integer argument, and returns a 32 bit integer. |
long |
invokeLLLLLLrL(Function function,
long arg1,
long arg2,
long arg3,
long arg4,
long arg5,
long arg6)
Invokes a function with six 64 bit integer arguments, and returns a 64 bit integer. |
long |
invokeLLLLLrL(Function function,
long arg1,
long arg2,
long arg3,
long arg4,
long arg5)
Invokes a function with five 64 bit integer arguments, and returns a 64 bit integer. |
long |
invokeLLLLrL(Function function,
long arg1,
long arg2,
long arg3,
long arg4,
long arg5)
Invokes a function with four 64 bit integer arguments, and returns a 64 bit integer. |
long |
invokeLLLrL(Function function,
long arg1,
long arg2,
long arg3)
Invokes a function with three 64 bit integer arguments, and returns a 64 bit integer. |
long |
invokeLLrL(Function function,
long arg1,
long arg2)
Invokes a function with two 64 bit integer arguments, and returns a 64 bit integer. |
long |
invokeLong(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 64 bit integer value. |
long |
invokeLong(Function function,
HeapInvocationBuffer buffer)
Invokes a function and returns a 64 bit integer value. |
long |
invokeLrL(Function function,
long arg1)
Invokes a function with one 64 bit integer argument, and returns a 64 bit integer. |
long |
invokeNNNNNNrN(Function function,
long arg1,
long arg2,
long arg3,
long arg4,
long arg5,
long arg6)
Invokes a function with six numeric arguments, and returns a numeric value. |
long |
invokeNNNNNrN(Function function,
long arg1,
long arg2,
long arg3,
long arg4,
long arg5)
Invokes a function with five numeric arguments, and returns a numeric value. |
long |
invokeNNNNrN(Function function,
long arg1,
long arg2,
long arg3,
long arg4)
Invokes a function with four numeric arguments, and returns a numeric value. |
long |
invokeNNNrN(Function function,
long arg1,
long arg2,
long arg3)
Invokes a function with three numeric arguments, and returns a numeric value. |
long |
invokeNNrN(Function function,
long arg1,
long arg2)
Invokes a function with two numeric arguments, and returns a numeric value. |
int |
invokeNoErrnoIIIrI(Function function,
int arg1,
int arg2,
int arg3)
Invokes a function with three integer arguments, and returns a 32 bit integer. |
int |
invokeNoErrnoIIrI(Function function,
int arg1,
int arg2)
Invokes a function with two integer arguments, and returns a 32 bit integer. |
int |
invokeNoErrnoIrI(Function function,
int arg1)
Invokes a function with one integer argument, and returns a 32 bit integer. |
int |
invokeNoErrnoVrI(Function function)
Invokes a function with no arguments, and returns a 32 bit integer. |
long |
invokeNrN(Function function,
long arg1)
Invokes a function with one numberic argument, and returns a numeric value. |
java.lang.Object |
invokeObject(Function function,
HeapInvocationBuffer buffer)
|
byte[] |
invokeStruct(CallContext ctx,
long function,
HeapInvocationBuffer buffer)
Invokes a function that returns a C struct by value. |
void |
invokeStruct(CallContext ctx,
long function,
HeapInvocationBuffer buffer,
byte[] returnBuffer,
int offset)
Invokes a function that returns a C struct by value. |
byte[] |
invokeStruct(Function function,
HeapInvocationBuffer buffer)
Invokes a function that returns a C struct by value. |
void |
invokeStruct(Function function,
HeapInvocationBuffer buffer,
byte[] returnBuffer,
int offset)
Invokes a function that returns a C struct by value. |
float |
invokeVrF(Function function)
Invokes a function with no arguments, and returns a 32 bit float. |
int |
invokeVrI(Function function)
Invokes a function with no arguments, and returns a 32 bit integer. |
long |
invokeVrL(Function function)
Invokes a function with no arguments, and returns a 64 bit integer. |
long |
invokeVrN(Function function)
Invokes a function with no arguments, and returns a numeric value. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Method Detail |
---|
public static final Invoker getInstance()
public final int invokeVrI(Function function)
function
- The Function to invoke.
public final float invokeVrF(Function function)
function
- The Function to invoke.
public final int invokeNoErrnoVrI(Function function)
function
- The Function to invoke.
public final int invokeIrI(Function function, int arg1)
function
- The Function to invoke.arg1
- A 32 bit integer argument.
public final int invokeNoErrnoIrI(Function function, int arg1)
function
- The Function to invoke.arg1
- A 32 bit integer argument.
public final float invokeIrF(Function function, int arg1)
function
- The Function to invoke.arg1
- A 32 bit integer argument.
public final int invokeIIrI(Function function, int arg1, int arg2)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.
public final int invokeNoErrnoIIrI(Function function, int arg1, int arg2)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.
public final float invokeIIrF(Function function, int arg1, int arg2)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.
public final int invokeIIIrI(Function function, int arg1, int arg2, int arg3)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.
public final int invokeNoErrnoIIIrI(Function function, int arg1, int arg2, int arg3)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.
public final float invokeIIIrF(Function function, int arg1, int arg2, int arg3)
function
- The Function to invoke.arg1
- The first 32 bit integer argument.arg2
- The second 32 bit integer argument.arg3
- The third 32 bit integer argument.
public final long invokeVrL(Function function)
function
- The Function to invoke.
public final long invokeLrL(Function function, long arg1)
function
- The Function to invoke.arg1
- The 64 bit integer argument.
public final long invokeLLrL(Function function, long arg1, long arg2)
function
- The Function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.
public final long invokeLLLrL(Function function, long arg1, long arg2, long arg3)
function
- The Function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.
public final long invokeLLLLrL(Function function, long arg1, long arg2, long arg3, long arg4, long arg5)
function
- The Function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.
public final long invokeLLLLLrL(Function function, long arg1, long arg2, long arg3, long arg4, long arg5)
function
- The Function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.
public final long invokeLLLLLLrL(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6)
function
- The Function to invoke.arg1
- The first 64 bit integer argument.arg2
- The second 64 bit integer argument.arg3
- The third 64 bit integer argument.arg4
- The fourth 64 bit integer argument.arg5
- The fifth 64 bit integer argument.arg6
- The sixth 64 bit integer argument.
public final long invokeVrN(Function function)
function
- The Function to invoke.
public final long invokeNrN(Function function, long arg1)
function
- The Function to invoke.arg1
- The numeric argument.
public final long invokeNNrN(Function function, long arg1, long arg2)
function
- The Function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.
public final long invokeNNNrN(Function function, long arg1, long arg2, long arg3)
function
- The Function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.
public final long invokeNNNNrN(Function function, long arg1, long arg2, long arg3, long arg4)
function
- The Function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg3
- The fourth numeric argument.
public final long invokeNNNNNrN(Function function, long arg1, long arg2, long arg3, long arg4, long arg5)
function
- The Function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.
public final long invokeNNNNNNrN(Function function, long arg1, long arg2, long arg3, long arg4, long arg5, long arg6)
function
- The Function to invoke.arg1
- The first numeric argument.arg2
- The second numeric argument.arg3
- The third numeric argument.arg4
- The fourth numeric argument.arg5
- The fifth numeric argument.arg6
- The sixth numeric argument.
public abstract long invokeAddress(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- A buffer containing the arguments to the function.
public abstract long invokeAddress(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.
public final int invokeInt(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- A buffer containing the arguments to the function.
public final int invokeInt(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.
public final long invokeLong(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- A buffer containing the arguments to the function.
public final long invokeLong(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.
public final float invokeFloat(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- A buffer containing the arguments to the function.
public final float invokeFloat(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.
public final double invokeDouble(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- A buffer containing the arguments to the function.
public final double invokeDouble(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context describing how to call the native function.function
- The address of the native function to invoke.buffer
- A buffer containing the arguments to the function.
public final byte[] invokeStruct(Function function, HeapInvocationBuffer buffer)
function
- The Function to invoke.buffer
- The parameter buffer.
public final byte[] invokeStruct(CallContext ctx, long function, HeapInvocationBuffer buffer)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- The parameter buffer.
public final void invokeStruct(Function function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset)
function
- The Function to invoke.buffer
- The parameter buffer.returnBuffer
- The output buffer to place the return value in.offset
- The offset within returnBuffer to place the return value.public final void invokeStruct(CallContext ctx, long function, HeapInvocationBuffer buffer, byte[] returnBuffer, int offset)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.buffer
- The parameter buffer.returnBuffer
- The output buffer to place the return value in.offset
- The offset within returnBuffer to place the return value.public final java.lang.Object invokeObject(Function function, HeapInvocationBuffer buffer)
public final void invoke(Function function, long returnBuffer, long[] parameters)
function
- The Function to invoke.returnBuffer
- The address of the native buffer to place the result
of the function call in.parameters
- An array of addresses of the function parameters.public final void invoke(CallContext ctx, long function, long returnBuffer, long[] parameters)
ctx
- The call context which describes how to call the native function.function
- The address of the native function to invoke.returnBuffer
- The address of the native buffer to place the result
of the function call in.parameters
- An array of addresses of the function parameters.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |