Class CLongPointer

java.lang.Object
org.bytedeco.javacpp.Pointer
org.bytedeco.javacpp.CLongPointer
All Implemented Interfaces:
AutoCloseable

@Name("long") @Properties(inherit=javacpp.class) public class CLongPointer extends Pointer
The peer class to native pointers and arrays of long. All operations take into account the position and limit, when appropriate.

We need this class because platforms supported by Java do not all agree on the size of the native C++ long type, unlike int and short.

  • Field Details

    • logger

      private static final Logger logger
  • Constructor Details

    • CLongPointer

      public CLongPointer(long... array)
      Allocates enough memory for the array and copies it.
      Parameters:
      array - the array to copy
      See Also:
    • CLongPointer

      public CLongPointer(long size)
      Allocates a native long array of the given size.
      Parameters:
      size - the number of long elements to allocate
    • CLongPointer

      public CLongPointer()
      See Also:
    • CLongPointer

      public CLongPointer(Pointer p)
      See Also:
  • Method Details

    • allocateArray

      private void allocateArray(long size)
    • position

      public CLongPointer position(long position)
      Description copied from class: Pointer
      Sets the position and returns this. That makes the array.position(i) statement sort of equivalent to the array[i] statement in C++.
      Overrides:
      position in class Pointer
      Parameters:
      position - the new position
      Returns:
      this
      See Also:
    • limit

      public CLongPointer 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 class Pointer
      Parameters:
      limit - the new limit
      Returns:
      this
      See Also:
    • capacity

      public CLongPointer 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 class Pointer
      Parameters:
      capacity - the new capacity
      Returns:
      this
      See Also:
    • getPointer

      public CLongPointer getPointer(long i)
      Description copied from class: Pointer
      Returns getPointer(getClass(), i).
      Overrides:
      getPointer in class Pointer
    • get

      public long get()
      Returns:
      get(0)
    • get

      @Cast("long") public long get(long i)
      Returns:
      the i-th long value of a native array
    • put

      public CLongPointer put(long l)
      Returns:
      put(0, l)
    • put

      public CLongPointer put(long i, long l)
      Copies the long value to the i-th element of a native array.
      Parameters:
      i - the index into the array
      l - the long value to copy
      Returns:
      this
    • get

      public CLongPointer get(long[] array)
      Returns:
      get(array, 0, array.length)
    • put

      public CLongPointer put(long... array)
      Returns:
      put(array, 0, array.length)
    • get

      public CLongPointer get(long[] array, int offset, int length)
      Reads a portion of the native array into a Java array.
      Parameters:
      array - the array to write to
      offset - the offset into the array where to start writing
      length - the length of data to read and write
      Returns:
      this
    • put

      public CLongPointer put(long[] array, int offset, int length)
      Writes a portion of a Java array into the native array.
      Parameters:
      array - the array to read from
      offset - the offset into the array where to start reading
      length - the length of data to read and write
      Returns:
      this