Class Range

  • Direct Known Subclasses:
    Histogram

    public class Range
    extends Object
    Instances of the Range class provide a minimum and a maximum value of type double.
    • Constructor Detail

      • Range

        public Range()
        Constructs a new range object. Minimum and maximum are set to zero.
      • Range

        public Range​(double min,
                     double max)
        Constructs a new range object with the given minimum and maximum.
        Parameters:
        min - the minimum value
        max - the maximum value
    • Method Detail

      • getMin

        public double getMin()
        Gets the mimimum value.
        Returns:
        the mimimum value
      • setMin

        public void setMin​(double min)
        Sets the mimimum value.
        Parameters:
        min - the mimimum value
      • getMax

        public double getMax()
        Gets the maximum value.
        Returns:
        the maximum value
      • setMax

        public void setMax​(double max)
        Sets the maximum value.
        Parameters:
        max - the maximum value
      • setMinMax

        public void setMinMax​(double min,
                              double max)
        Sets the mimimum and maximum value.
        Parameters:
        min - the mimimum value
        max - the maximum value
      • isValid

        public boolean isValid()
        Checks if this range is valid.
        Returns:
        true if minimum value is greater than the maximum value
      • computeRangeByte

        public static Range computeRangeByte​(byte[] values,
                                             IndexValidator validator,
                                             Range range,
                                             ProgressMonitor pm)
        Computes the value range for the values in the given byte array. The array elements are interpreted as signed byte values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeUByte

        public static Range computeRangeUByte​(byte[] values,
                                              IndexValidator validator,
                                              Range range,
                                              ProgressMonitor pm)
        Computes the value range for the values in the given byte array. The array elements are interpreted as unsigned byte values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeShort

        public static Range computeRangeShort​(short[] values,
                                              IndexValidator validator,
                                              Range range,
                                              ProgressMonitor pm)
        Computes the value range for the values in the given short array. The array elements are interpreted as signed short values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeUShort

        public static Range computeRangeUShort​(short[] values,
                                               IndexValidator validator,
                                               Range range,
                                               ProgressMonitor pm)
        Computes the value range for the values in the given short array. The array elements are interpreted as unsigned short values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        Returns:
        the value range for the given array
      • computeRangeInt

        public static Range computeRangeInt​(int[] values,
                                            IndexValidator validator,
                                            Range range,
                                            ProgressMonitor pm)
        Computes the value range for the values in the given int array. The array elements are interpreted as signed int values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeUInt

        public static Range computeRangeUInt​(int[] values,
                                             IndexValidator validator,
                                             Range range,
                                             ProgressMonitor pm)
        Computes the value range for the values in the given int array. The array elements are interpreted as unsigned int values. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeFloat

        public static Range computeRangeFloat​(float[] values,
                                              IndexValidator validator,
                                              Range range,
                                              ProgressMonitor pm)
        Computes the value range for the values in the given float array. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeDouble

        public static Range computeRangeDouble​(double[] values,
                                               IndexValidator validator,
                                               Range range,
                                               ProgressMonitor pm)
        Computes the value range for the values in the given double array. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the array whose value range to compute
        validator - used to validate the array indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given array
      • computeRangeDouble

        public static Range computeRangeDouble​(double[] values,
                                               Range range)
        Computes the value range for the values in the given double array.
        Parameters:
        values - the array whose value range to compute
        range - if not null, used as return value, otherwise a new instance is created
        Returns:
        the value range for the given array
      • computeRangeDouble

        public static Range computeRangeDouble​(DoubleList values,
                                               IndexValidator validator,
                                               Range range,
                                               ProgressMonitor pm)
        Computes the value range for the values in the given Range.DoubleList. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.
        Parameters:
        values - the Range.DoubleList whose value range to compute
        validator - used to validate the indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given values
      • computeRangeGeneric

        public static Range computeRangeGeneric​(Object values,
                                                boolean unsigned,
                                                IndexValidator validator,
                                                Range range,
                                                ProgressMonitor pm)
        Computes the value range for the values in the given Object. Values at a given index i for which validator.validate(i) returns false are excluded from the computation.

        Supportet types for the values object:
        byte[], short[], int[], float[], double[], DoubleList
        Parameters:
        values - the Object whose value range to compute
        unsigned - if true interprete all the values as unsignet type.
        validator - used to validate the indexes, must not be null. Use IndexValidator.TRUE instead.
        range - if not null, used as return value, otherwise a new instance is created
        pm - a monitor to inform the user about progress
        Returns:
        the value range for the given values
        Throws:
        IllegalArgumentException - if the given object is not an istance of the supported types.