Package hdf.hdf5lib

Class HDFNativeData

java.lang.Object
hdf.hdf5lib.HDFNativeData

public class HDFNativeData
extends java.lang.Object
This class encapsulates native methods to deal with arrays of numbers, converting from numbers to bytes and bytes to numbers.

These routines are used by class HDFArray to pass data to and from the HDF-5 library.

Methods xxxToByte() convert a Java array of primitive numbers (int, short, ...) to a Java array of bytes. Methods byteToXxx() convert from a Java array of bytes into a Java array of primitive numbers (int, short, ...)

Variant interfaces convert a section of an array, and also can convert to sub-classes of Java Number.

See also: hdf.hdf5lib.HDFArray.

  • Constructor Summary

    Constructors
    Constructor Description
    HDFNativeData()  
  • Method Summary

    Modifier and Type Method Description
    static byte[] byteToByte​(byte data)
    Convert a single byte into an array of one byte.
    static byte[] byteToByte​(java.lang.Byte data)
    Convert a single Byte object into an array of one byte.
    static double[] byteToDouble​(byte[] data)
    Convert an array of bytes into an array of double
    static double byteToDouble​(byte[] data, int start)
    Convert 8 bytes from an array of bytes into a single double
    static double[] byteToDouble​(int start, int len, byte[] data)
    Convert a range from an array of bytes into an array of double
    static float[] byteToFloat​(byte[] data)
    Convert an array of bytes into an array of floats
    static float byteToFloat​(byte[] data, int start)
    Convert 4 bytes from an array of bytes into a single float
    static float[] byteToFloat​(int start, int len, byte[] data)
    Convert a range from an array of bytes into an array of float
    static int[] byteToInt​(byte[] data)
    Convert an array of bytes into an array of ints
    static int byteToInt​(byte[] data, int start)
    Convert 4 bytes from an array of bytes into a single int
    static int[] byteToInt​(int start, int len, byte[] data)
    Convert a range from an array of bytes into an array of int
    static long[] byteToLong​(byte[] data)
    Convert an array of bytes into an array of long
    static long byteToLong​(byte[] data, int start)
    Convert 8 bytes from an array of bytes into a single long
    static long[] byteToLong​(int start, int len, byte[] data)
    Convert a range from an array of bytes into an array of long
    static java.lang.Object byteToNumber​(byte[] barray, java.lang.Object obj)
    Create a Number object from an array of bytes.
    static short[] byteToShort​(byte[] data)
    Convert an array of bytes into an array of shorts
    static short byteToShort​(byte[] data, int start)
    Convert 2 bytes from an array of bytes into a single short
    static short[] byteToShort​(int start, int len, byte[] data)
    Convert a range from an array of bytes into an array of short
    static byte[] doubleToByte​(double data)
    Convert a single double into an array of 8 bytes.
    static byte[] doubleToByte​(int start, int len, double[] data)
    Convert a range from an array of double into an array of bytes.
    static byte[] doubleToByte​(java.lang.Double data)
    Convert a single Double object into an array of 8 bytes.
    static byte[] floatToByte​(float data)
    Convert a single float into an array of 4 bytes.
    static byte[] floatToByte​(int start, int len, float[] data)
    Convert a range from an array of float into an array of bytes.
    static byte[] floatToByte​(java.lang.Float data)
    Convert a single Float object into an array of 4 bytes.
    static byte[] intToByte​(int data)
    Convert a single int into an array of 4 bytes.
    static byte[] intToByte​(int start, int len, int[] data)
    Convert a range from an array of int into an array of bytes.
    static byte[] intToByte​(java.lang.Integer data)
    Convert a single Integer object into an array of 4 bytes.
    static byte[] longToByte​(int start, int len, long[] data)
    Convert a range from an array of long into an array of bytes.
    static byte[] longToByte​(long data)
    Convert a single long into an array of 8 bytes.
    static byte[] longToByte​(java.lang.Long data)
    Convert a single Long object into an array of 8 bytes.
    static byte[] shortToByte​(int start, int len, short[] data)
    Convert a range from an array of short into an array of bytes.
    static byte[] shortToByte​(short data)
    Convert a single short into an array of 2 bytes.
    static byte[] shortToByte​(java.lang.Short data)
    Convert a single Short object into an array of 2 bytes.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • HDFNativeData

      public HDFNativeData()
  • Method Details

    • byteToInt

      public static int[] byteToInt​(byte[] data)
      Convert an array of bytes into an array of ints
      Parameters:
      data - The input array of bytes
      Returns:
      an array of int
    • byteToFloat

      public static float[] byteToFloat​(byte[] data)
      Convert an array of bytes into an array of floats
      Parameters:
      data - The input array of bytes
      Returns:
      an array of float
    • byteToShort

      public static short[] byteToShort​(byte[] data)
      Convert an array of bytes into an array of shorts
      Parameters:
      data - The input array of bytes
      Returns:
      an array of short
    • byteToLong

      public static long[] byteToLong​(byte[] data)
      Convert an array of bytes into an array of long
      Parameters:
      data - The input array of bytes
      Returns:
      an array of long
    • byteToDouble

      public static double[] byteToDouble​(byte[] data)
      Convert an array of bytes into an array of double
      Parameters:
      data - The input array of bytes
      Returns:
      an array of double
    • byteToInt

      public static int[] byteToInt​(int start, int len, byte[] data)
      Convert a range from an array of bytes into an array of int
      Parameters:
      start - The position in the input array of bytes to start
      len - The number of 'int' to convert
      data - The input array of bytes
      Returns:
      an array of 'len' int
    • byteToInt

      public static int byteToInt​(byte[] data, int start)
      Convert 4 bytes from an array of bytes into a single int
      Parameters:
      start - The position in the input array of bytes to start
      data - The input array of bytes
      Returns:
      The integer value of the bytes.
    • byteToShort

      public static short[] byteToShort​(int start, int len, byte[] data)
      Convert a range from an array of bytes into an array of short
      Parameters:
      start - The position in the input array of bytes to start
      len - The number of 'short' to convert
      data - The input array of bytes
      Returns:
      an array of 'len' short
    • byteToShort

      public static short byteToShort​(byte[] data, int start)
      Convert 2 bytes from an array of bytes into a single short
      Parameters:
      start - The position in the input array of bytes to start
      data - The input array of bytes
      Returns:
      The short value of the bytes.
    • byteToFloat

      public static float[] byteToFloat​(int start, int len, byte[] data)
      Convert a range from an array of bytes into an array of float
      Parameters:
      start - The position in the input array of bytes to start
      len - The number of 'float' to convert
      data - The input array of bytes
      Returns:
      an array of 'len' float
    • byteToFloat

      public static float byteToFloat​(byte[] data, int start)
      Convert 4 bytes from an array of bytes into a single float
      Parameters:
      start - The position in the input array of bytes to start
      data - The input array of bytes
      Returns:
      The float value of the bytes.
    • byteToLong

      public static long[] byteToLong​(int start, int len, byte[] data)
      Convert a range from an array of bytes into an array of long
      Parameters:
      start - The position in the input array of bytes to start
      len - The number of 'long' to convert
      data - The input array of bytes
      Returns:
      an array of 'len' long
    • byteToLong

      public static long byteToLong​(byte[] data, int start)
      Convert 8 bytes from an array of bytes into a single long
      Parameters:
      start - The position in the input array of bytes to start
      data - The input array of bytes
      Returns:
      The long value of the bytes.
    • byteToDouble

      public static double[] byteToDouble​(int start, int len, byte[] data)
      Convert a range from an array of bytes into an array of double
      Parameters:
      start - The position in the input array of bytes to start
      len - The number of 'double' to convert
      data - The input array of bytes
      Returns:
      an array of 'len' double
    • byteToDouble

      public static double byteToDouble​(byte[] data, int start)
      Convert 8 bytes from an array of bytes into a single double
      Parameters:
      start - The position in the input array of bytes to start
      data - The input array of bytes
      Returns:
      The double value of the bytes.
    • intToByte

      public static byte[] intToByte​(int start, int len, int[] data)
      Convert a range from an array of int into an array of bytes.
      Parameters:
      start - The position in the input array of int to start
      len - The number of 'int' to convert
      data - The input array of int
      Returns:
      an array of bytes
    • shortToByte

      public static byte[] shortToByte​(int start, int len, short[] data)
      Convert a range from an array of short into an array of bytes.
      Parameters:
      start - The position in the input array of int to start
      len - The number of 'short' to convert
      data - The input array of short
      Returns:
      an array of bytes
    • floatToByte

      public static byte[] floatToByte​(int start, int len, float[] data)
      Convert a range from an array of float into an array of bytes.
      Parameters:
      start - The position in the input array of int to start
      len - The number of 'float' to convert
      data - The input array of float
      Returns:
      an array of bytes
    • longToByte

      public static byte[] longToByte​(int start, int len, long[] data)
      Convert a range from an array of long into an array of bytes.
      Parameters:
      start - The position in the input array of int to start
      len - The number of 'long' to convert
      data - The input array of long
      Returns:
      an array of bytes
    • doubleToByte

      public static byte[] doubleToByte​(int start, int len, double[] data)
      Convert a range from an array of double into an array of bytes.
      Parameters:
      start - The position in the input array of double to start
      len - The number of 'double' to convert
      data - The input array of double
      Returns:
      an array of bytes
    • byteToByte

      public static byte[] byteToByte​(byte data)
      Convert a single byte into an array of one byte.

      (This is a trivial method.)

      Parameters:
      data - The input byte
      Returns:
      an array of bytes
    • byteToByte

      public static byte[] byteToByte​(java.lang.Byte data)
      Convert a single Byte object into an array of one byte.

      (This is an almost trivial method.)

      Parameters:
      data - The input Byte
      Returns:
      an array of bytes
    • intToByte

      public static byte[] intToByte​(int data)
      Convert a single int into an array of 4 bytes.
      Parameters:
      data - The input int
      Returns:
      an array of bytes
    • intToByte

      public static byte[] intToByte​(java.lang.Integer data)
      Convert a single Integer object into an array of 4 bytes.
      Parameters:
      data - The input Integer
      Returns:
      an array of bytes
    • shortToByte

      public static byte[] shortToByte​(short data)
      Convert a single short into an array of 2 bytes.
      Parameters:
      data - The input short
      Returns:
      an array of bytes
    • shortToByte

      public static byte[] shortToByte​(java.lang.Short data)
      Convert a single Short object into an array of 2 bytes.
      Parameters:
      data - The input Short
      Returns:
      an array of bytes
    • floatToByte

      public static byte[] floatToByte​(float data)
      Convert a single float into an array of 4 bytes.
      Parameters:
      data - The input float
      Returns:
      an array of bytes
    • floatToByte

      public static byte[] floatToByte​(java.lang.Float data)
      Convert a single Float object into an array of 4 bytes.
      Parameters:
      data - The input Float
      Returns:
      an array of bytes
    • longToByte

      public static byte[] longToByte​(long data)
      Convert a single long into an array of 8 bytes.
      Parameters:
      data - The input long
      Returns:
      an array of bytes
    • longToByte

      public static byte[] longToByte​(java.lang.Long data)
      Convert a single Long object into an array of 8 bytes.
      Parameters:
      data - The input Long
      Returns:
      an array of bytes
    • doubleToByte

      public static byte[] doubleToByte​(double data)
      Convert a single double into an array of 8 bytes.
      Parameters:
      data - The input double
      Returns:
      an array of bytes
    • doubleToByte

      public static byte[] doubleToByte​(java.lang.Double data)
      Convert a single Double object into an array of 8 bytes.
      Parameters:
      data - The input Double
      Returns:
      an array of bytes
    • byteToNumber

      public static java.lang.Object byteToNumber​(byte[] barray, java.lang.Object obj) throws HDF5Exception
      Create a Number object from an array of bytes.
      Parameters:
      barray - The bytes to be converted
      obj - Input object of the desired output class. Must be a sub-class of Number.
      Returns:
      A Object of the type of obj.
      Throws:
      HDF5Exception - - Error unsupported type.