public final class HeapInvocationBuffer extends java.lang.Object implements InvocationBuffer
InvocationBuffer that packs its parameters onto
a java heap allocated buffer.| Constructor and Description |
|---|
HeapInvocationBuffer(CallInfo info)
Creates a new instance of HeapInvocationBuffer.
|
HeapInvocationBuffer(Function function)
Creates a new instance of HeapInvocationBuffer.
|
| Modifier and Type | Method and Description |
|---|---|
void |
putAddress(long value)
Adds a native address parameter.
|
void |
putArray(byte[] array,
int offset,
int length,
int flags)
Adds a java byte array as a pointer parameter.
|
void |
putArray(double[] array,
int offset,
int length,
int flags)
Adds a java double array as a pointer parameter.
|
void |
putArray(float[] array,
int offset,
int length,
int flags)
Adds a java float array as a pointer parameter.
|
void |
putArray(int[] array,
int offset,
int length,
int flags)
Adds a java int array as a pointer parameter.
|
void |
putArray(long[] array,
int offset,
int length,
int flags)
Adds a java long array as a pointer parameter.
|
void |
putArray(short[] array,
int offset,
int length,
int flags)
Adds a java short array as a pointer parameter.
|
void |
putByte(int value)
Adds an 8 bit integer parameter.
|
void |
putDirectBuffer(java.nio.Buffer value,
int offset,
int length)
Adds a java direct buffer as a pointer parameter.
|
void |
putDouble(double value)
Adds a 64 bit floating point parameter.
|
void |
putFloat(float value)
Adds a 32 bit floating point parameter.
|
void |
putInt(int value)
Adds a 32 bit integer parameter.
|
void |
putJNIEnvironment() |
void |
putJNIObject(java.lang.Object obj) |
void |
putLong(long value)
Adds a 64 bit integer parameter.
|
void |
putShort(int value)
Adds a 16 bit integer parameter.
|
void |
putStruct(byte[] struct,
int offset)
Adds a struct or union as a parameter.
|
void |
putStruct(long struct)
Adds a struct or union as a parameter.
|
public HeapInvocationBuffer(CallInfo info)
info - The call info that describes the function parameterspublic HeapInvocationBuffer(Function function)
function - The function that this buffer is going to be used with.public final void putByte(int value)
InvocationBufferputByte in interface InvocationBuffervalue - An 8 bit integer value to use as the parameter.public final void putShort(int value)
InvocationBufferputShort in interface InvocationBuffervalue - A 16 bit integer value to use as the parameter.public final void putInt(int value)
InvocationBufferputInt in interface InvocationBuffervalue - A 32 bit integer value to use as the parameter.public final void putLong(long value)
InvocationBufferputLong in interface InvocationBuffervalue - A 64 bit integer value to use as the parameter.public final void putFloat(float value)
InvocationBufferputFloat in interface InvocationBuffervalue - A 32 bit floating point value to use as the parameter.public final void putDouble(double value)
InvocationBufferputDouble in interface InvocationBuffervalue - A 64 bit floating point value to use as the parameter.public final void putAddress(long value)
InvocationBufferputAddress in interface InvocationBuffervalue - A native address value to use as the parameter.public final void putArray(byte[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putArray(short[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putArray(int[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putArray(long[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putArray(float[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putArray(double[] array,
int offset,
int length,
int flags)
InvocationBufferputArray in interface InvocationBufferarray - The java array to use as the pointer parameter.offset - The offset from the start of the array.length - The length of the array to use.flags - The flags to use (IN, OUT)public final void putDirectBuffer(java.nio.Buffer value,
int offset,
int length)
InvocationBufferputDirectBuffer in interface InvocationBuffervalue - The buffer to use as a pointer argument.offset - An offset to add to the buffer native address.length - The length of the buffer to use.public final void putStruct(byte[] struct,
int offset)
InvocationBufferputStruct in interface InvocationBufferstruct - A java byte array with the struct contents.offset - The offset from the start of the array.public final void putStruct(long struct)
InvocationBufferputStruct in interface InvocationBufferstruct - The native address to use as the struct contents.public final void putJNIEnvironment()
public final void putJNIObject(java.lang.Object obj)