Package jnr.ffi.byref
Class NativeLongByReference
- All Implemented Interfaces:
Serializable
,ByReference<NativeLong>
NativeLongByReference is used when the address of a primitive C long must be passed
as a parameter to a function.
For example, the following C code,
extern void get_a(long * ap);
long foo(void) {
long a;
// pass a reference to 'a' so get_a() can fill it out
get_a(&a);
return a;
}
Would be declared in java as
interface Lib {
void get_a(@Out NativeLongByReference ap);
}
and used like this
NativeLongByReference ap = new NativeLongByReference(); lib.get_a(ap); System.out.printf("a from lib=%d\n", a.longValue());
- See Also:
-
Field Summary
Fields inherited from class jnr.ffi.byref.AbstractNumberReference
value
-
Constructor Summary
ConstructorsConstructorDescriptionCreates a new reference to a native long value initialized to zero.NativeLongByReference
(long value) Creates a new reference to a native long valueNativeLongByReference
(NativeLong value) Creates a new reference to a native long value -
Method Summary
Modifier and TypeMethodDescriptionvoid
fromNative
(Runtime runtime, Pointer memory, long offset) Copies the long value from native memoryfinal int
nativeSize
(Runtime runtime) Gets the native size of type of reference in bytes.void
Copies the long value to native memoryMethods inherited from class jnr.ffi.byref.AbstractNumberReference
byteValue, checkNull, doubleValue, floatValue, getValue, intValue, longValue, shortValue
-
Constructor Details
-
NativeLongByReference
public NativeLongByReference()Creates a new reference to a native long value initialized to zero. -
NativeLongByReference
Creates a new reference to a native long value- Parameters:
value
- the initial native value
-
NativeLongByReference
public NativeLongByReference(long value) Creates a new reference to a native long value- Parameters:
value
- the initial native value
-
-
Method Details
-
toNative
Copies the long value to native memory- Parameters:
runtime
- the current runtime.memory
- the native memory buffer.offset
- the memory offset.
-
fromNative
Copies the long value from native memory- Parameters:
runtime
- the current runtime.memory
- the native memory buffer.offset
- the memory offset.
-
nativeSize
Gets the native size of type of reference in bytes.- Parameters:
runtime
- the current runtime.- Returns:
- the size of a byte in bytes
-