Class BandSet.BandData

  • Enclosing class:
    BandSet

    public class BandSet.BandData
    extends java.lang.Object
    BandData represents information about a band, e.g. largest value etc and is used in the heuristics that calculate whether an alternative Codec could make the encoded band smaller.
    • Field Detail

      • band

        private final int[] band
      • smallest

        private int smallest
      • largest

        private int largest
      • smallestDelta

        private int smallestDelta
      • largestDelta

        private int largestDelta
      • deltaIsAscending

        private int deltaIsAscending
      • smallDeltaCount

        private int smallDeltaCount
      • averageAbsoluteDelta

        private double averageAbsoluteDelta
      • averageAbsoluteValue

        private double averageAbsoluteValue
      • distinctValues

        private java.util.Map<java.lang.Integer,​java.lang.Integer> distinctValues
    • Constructor Detail

      • BandData

        public BandData​(int[] band)
        Constructs a new instance of BandData. The band is then analysed.
        Parameters:
        band - the band of integers
    • Method Detail

      • anyNegatives

        public boolean anyNegatives()
        Returns true if any band elements are negative.
        Returns:
        true if any band elements are negative.
      • mainlyPositiveDeltas

        public boolean mainlyPositiveDeltas()
        Returns true if the band deltas are mainly positive (heuristic).
        Returns:
        true if the band deltas are mainly positive (heuristic).
      • mainlySmallDeltas

        public boolean mainlySmallDeltas()
        Returns true if the deltas between adjacent band elements are mainly small (heuristic).
        Returns:
        true if the deltas between adjacent band elements are mainly small (heuristic).
      • numDistinctValues

        public int numDistinctValues()
        Returns the total number of distinct values found in the band.
        Returns:
        the total number of distinct values found in the band.
      • wellCorrelated

        public boolean wellCorrelated()
        Returns true if the band is well correlated (i.e. would be suitable for a delta encoding) (heuristic).
        Returns:
        true if the band is well correlated (i.e. would be suitable for a delta encoding) (heuristic).