Package org.bytedeco.javacpp
Class IntPointer
- java.lang.Object
-
- org.bytedeco.javacpp.Pointer
-
- org.bytedeco.javacpp.IntPointer
-
- All Implemented Interfaces:
java.lang.AutoCloseable
@Properties(inherit=javacpp.class) public class IntPointer extends Pointer
The peer class to native pointers and arrays ofint
, also used for UTF-32. All operations take into account the position and limit, when appropriate.
-
-
Nested Class Summary
-
Nested classes/interfaces inherited from class org.bytedeco.javacpp.Pointer
Pointer.CustomDeallocator, Pointer.Deallocator, Pointer.DeallocatorReference, Pointer.DeallocatorThread, Pointer.NativeDeallocator, Pointer.ProxyDeallocator, Pointer.ReferenceCounter
-
-
Field Summary
Fields Modifier and Type Field Description private static Logger
logger
-
Fields inherited from class org.bytedeco.javacpp.Pointer
address, capacity, deallocatorThread, limit, maxBytes, maxPhysicalBytes, maxRetries, position
-
-
Constructor Summary
Constructors Constructor Description IntPointer()
IntPointer(int... array)
Allocates enough memory for the array and copies it.IntPointer(long size)
Allocates a nativeint
array of the given size.IntPointer(java.lang.String s)
Allocates enough memory for encoding the String in UTF-32 and copies it.IntPointer(java.nio.IntBuffer buffer)
For direct buffers, callsPointer(Buffer)
, while for buffers backed with an array, allocates enough memory for the array and copies it.IntPointer(Pointer p)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private void
allocateArray(long size)
java.nio.IntBuffer
asBuffer()
Same asPointer.asByteBuffer()
, but can be overridden to return subclasses of Buffer.IntPointer
capacity(long capacity)
Sets the capacity and returns this.int
get()
IntPointer
get(int[] array)
IntPointer
get(int[] array, int offset, int length)
Reads a portion of the native array into a Java array.int
get(long i)
IntPointer
getPointer(long i)
ReturnsgetPointer(getClass(), i)
.java.lang.String
getString()
Returns the String, assuming a null-terminated string iflimit <= position
.int[]
getStringCodePoints()
Returns the code points, assuming a null-terminated string iflimit <= position
.IntPointer
limit(long limit)
Sets the limit and returns this.IntPointer
position(long position)
Sets the position and returns this.IntPointer
put(int j)
IntPointer
put(int... array)
IntPointer
put(int[] array, int offset, int length)
Writes a portion of a Java array into the native array.IntPointer
put(long i, int j)
Copies theint
value to the i-th element of a native array.IntPointer
putString(java.lang.String s)
Copies the String code points into native memory, including a terminating null int.int
sizeof()
Returns 1 for Pointer or BytePointer elseLoader.sizeof(getClass())
or -1 on error.-
Methods inherited from class org.bytedeco.javacpp.Pointer
address, asByteBuffer, availablePhysicalBytes, calloc, capacity, close, deallocate, deallocate, deallocateReferences, deallocator, deallocator, equals, fill, formatBytes, free, getDirectBufferAddress, getPointer, getPointer, getPointer, hashCode, init, interruptDeallocatorThread, isNull, isNull, limit, malloc, maxBytes, maxPhysicalBytes, memchr, memcmp, memcpy, memmove, memset, offsetAddress, offsetof, offsetof, parseBytes, physicalBytes, physicalBytesInaccurate, position, put, realloc, referenceCount, releaseReference, retainReference, setNull, sizeof, toString, totalBytes, totalCount, totalPhysicalBytes, withDeallocator, zero
-
-
-
-
Field Detail
-
logger
private static final Logger logger
-
-
Constructor Detail
-
IntPointer
public IntPointer(java.lang.String s)
Allocates enough memory for encoding the String in UTF-32 and copies it.- Parameters:
s
- the String to copy- See Also:
putString(String)
-
IntPointer
public IntPointer(int... array)
Allocates enough memory for the array and copies it.- Parameters:
array
- the array to copy- See Also:
put(int[])
-
IntPointer
public IntPointer(java.nio.IntBuffer buffer)
For direct buffers, callsPointer(Buffer)
, while for buffers backed with an array, allocates enough memory for the array and copies it.- Parameters:
buffer
- the Buffer to reference or copy- See Also:
put(int[])
-
IntPointer
public IntPointer(long size)
Allocates a nativeint
array of the given size.- Parameters:
size
- the number ofint
elements to allocate
-
IntPointer
public IntPointer()
- See Also:
Pointer()
-
IntPointer
public IntPointer(Pointer p)
- See Also:
Pointer(Pointer)
-
-
Method Detail
-
allocateArray
private void allocateArray(long size)
-
position
public IntPointer position(long position)
Description copied from class:Pointer
Sets the position and returns this. That makes thearray.position(i)
statement sort of equivalent to thearray[i]
statement in C++.- Overrides:
position
in classPointer
- Parameters:
position
- the new position- Returns:
- this
- See Also:
Pointer.position(long)
-
limit
public IntPointer limit(long limit)
Description copied from class:Pointer
Sets the limit and returns this. Used to limit the size of an operation on this object.- Overrides:
limit
in classPointer
- Parameters:
limit
- the new limit- Returns:
- this
- See Also:
Pointer.limit(long)
-
capacity
public IntPointer capacity(long capacity)
Description copied from class:Pointer
Sets the capacity and returns this. Should not be called more than once after allocation.- Overrides:
capacity
in classPointer
- Parameters:
capacity
- the new capacity- Returns:
- this
- See Also:
Pointer.capacity(long)
-
sizeof
public int sizeof()
Description copied from class:Pointer
Returns 1 for Pointer or BytePointer elseLoader.sizeof(getClass())
or -1 on error.
-
getPointer
public IntPointer getPointer(long i)
Description copied from class:Pointer
ReturnsgetPointer(getClass(), i)
.- Overrides:
getPointer
in classPointer
-
getStringCodePoints
public int[] getStringCodePoints()
Returns the code points, assuming a null-terminated string iflimit <= position
.
-
getString
public java.lang.String getString()
Returns the String, assuming a null-terminated string iflimit <= position
.
-
putString
public IntPointer putString(java.lang.String s)
Copies the String code points into native memory, including a terminating null int. Sets the limit to just before the terminating null code point.- Parameters:
s
- the String to copy- Returns:
- this
- See Also:
String.codePointAt(int)
,put(int[])
-
get
public int get()
- Returns:
get(0)
-
get
public int get(long i)
- Returns:
- the i-th
int
value of a native array
-
put
public IntPointer put(int j)
- Returns:
put(0, j)
-
put
public IntPointer put(long i, int j)
Copies theint
value to the i-th element of a native array.- Parameters:
i
- the index into the arrayj
- theint
value to copy- Returns:
- this
-
get
public IntPointer get(int[] array)
- Returns:
get(array, 0, array.length)
-
put
public IntPointer put(int... array)
- Returns:
put(array, 0, array.length)
-
get
public IntPointer get(int[] array, int offset, int length)
Reads a portion of the native array into a Java array.- Parameters:
array
- the array to write tooffset
- the offset into the array where to start writinglength
- the length of data to read and write- Returns:
- this
-
put
public IntPointer put(int[] array, int offset, int length)
Writes a portion of a Java array into the native array.- Parameters:
array
- the array to read fromoffset
- the offset into the array where to start readinglength
- the length of data to read and write- Returns:
- this
-
asBuffer
public final java.nio.IntBuffer asBuffer()
Description copied from class:Pointer
Same asPointer.asByteBuffer()
, but can be overridden to return subclasses of Buffer.- Overrides:
asBuffer
in classPointer
- Returns:
asByteBuffer().asIntBuffer()
- See Also:
BytePointer.asBuffer()
,ShortPointer.asBuffer()
,asBuffer()
,LongPointer.asBuffer()
,FloatPointer.asBuffer()
,DoublePointer.asBuffer()
,CharPointer.asBuffer()
-
-