Class MapToByte

    • Constructor Detail

      • MapToByte

        public MapToByte​(int unique,
                         int size)
    • Method Detail

      • getIndex

        public int getIndex​(int n)
        Description copied from class: AMapToData
        Get the given index back as a integer
        Specified by:
        getIndex in class AMapToData
        Parameters:
        n - the index to get
        Returns:
        the value represented in that cell as integer
      • fill

        public void fill​(int v)
        Description copied from class: AMapToData
        Fill the map with a given value. NOTE! The value should be representable inside the map. This requirement is not checked.
        Specified by:
        fill in class AMapToData
        Parameters:
        v - the value to fill
      • getInMemorySize

        public long getInMemorySize()
        Description copied from class: AMapToData
        Get the in memory size of this Mapping object.
        Specified by:
        getInMemorySize in class AMapToData
        Returns:
        The size in Bytes.
      • getInMemorySize

        public static long getInMemorySize​(int dataLength)
      • getExactSizeOnDisk

        public long getExactSizeOnDisk()
        Description copied from class: AMapToData
        Get the size of this Mapping object on disk.
        Specified by:
        getExactSizeOnDisk in class AMapToData
        Returns:
        The on disk size in Bytes.
      • set

        public void set​(int n,
                        int v)
        Description copied from class: AMapToData
        Set the index to the value. NOTE! The value should be representable inside the map. This requirement is not checked.
        Specified by:
        set in class AMapToData
        Parameters:
        n - index to set.
        v - the value to set it to.
      • setAndGet

        public int setAndGet​(int n,
                             int v)
        Description copied from class: AMapToData
        Set the index to the value and get the contained value after.
        Specified by:
        setAndGet in class AMapToData
        Parameters:
        n - index to set.
        v - the value to set it to.
        Returns:
        v as encoded, note this value can be different that the one put in if the map is not able to represent the value
      • size

        public int size()
        Description copied from class: AMapToData
        The size of the Mapping object, signaling how many value cells are stored in this mapping object.
        Specified by:
        size in class AMapToData
        Returns:
        The length of the mapping object.
      • write

        public void write​(DataOutput out)
                   throws IOException
        Description copied from class: AMapToData
        Serialize this object to the DataOutput given.
        Specified by:
        write in class AMapToData
        Parameters:
        out - The object to serialize this object into.
        Throws:
        IOException - An IO exception if the Serialization fails.
      • replace

        public void replace​(int v,
                            int r)
        Description copied from class: AMapToData
        Replace v with r for all entries, NOTE! It is assumed that you call this correctly: - with two distinct values that is representable inside the given AMapToData.
        Specified by:
        replace in class AMapToData
        Parameters:
        v - The value to replace
        r - The value to put instead
      • copyInt

        public void copyInt​(int[] d)
        Description copied from class: AMapToData
        Copy the values of the given array into this. Note that this operation stops at the length of this AMapToData Therefore the given d length can not be longer than this size.
        Specified by:
        copyInt in class AMapToData
        Parameters:
        d - The array to copy
      • getCounts

        public int[] getCounts​(int[] ret)
        Description copied from class: AMapToData
        Get the number of counts of each unique value contained in this map. Note that in the case the mapping is shorter than number of rows the counts sum to the number of mapped values not the number of rows.
        Specified by:
        getCounts in class AMapToData
        Parameters:
        ret - The object to return.
        Returns:
        The counts
      • getUpperBoundValue

        public int getUpperBoundValue()
        Description copied from class: AMapToData
        Get the maximum value that is possible to allocate inside this map.
        Specified by:
        getUpperBoundValue in class AMapToData
        Returns:
        The maximum value.
      • countRuns

        public int countRuns()
        Description copied from class: AMapToData
        Count the number of runs inside the map.
        Specified by:
        countRuns in class AMapToData
        Returns:
        The number of runs
      • resize

        public AMapToData resize​(int unique)
        Description copied from class: AMapToData
        Reallocate the map, to a smaller instance if applicable. Note it does not change the length of the array, just the datatype. Note that it returns the input if the input is the smallest representation that fits, otherwise it will return something that is smaller.
        Specified by:
        resize in class AMapToData
        Parameters:
        unique - The number of tuples that should be supported in the resulting map
        Returns:
        The returned hopefully reduced map.
      • slice

        public AMapToData slice​(int l,
                                int u)
        Description copied from class: AMapToData
        Slice out the range from lower to upper from this map toData.
        Specified by:
        slice in class AMapToData
        Parameters:
        l - Low value to slice from
        u - high value to slice to (not inclusive)
        Returns:
        A new map containing only the values from the range.
      • getMaxPossible

        public int getMaxPossible()
        Description copied from class: AMapToData
        Get the maximum possible value to encode in this encoding. For instance in a bit you can encode 2 values
        Specified by:
        getMaxPossible in class AMapToData
        Returns:
        The maximum number of distinct values to encode
      • equals

        public boolean equals​(AMapToData e)
        Description copied from class: AMapToData
        Indicate if the given encoding is equivalent to this encoding
        Specified by:
        equals in class AMapToData
        Parameters:
        e - The other encoding to be compared with this
        Returns:
        If the encoding is equivalent
      • decompressToRange

        public void decompressToRange​(double[] c,
                                      int rl,
                                      int ru,
                                      int offR,
                                      double[] values)
        Overrides:
        decompressToRange in class AMapToData
      • decompressToRangeOff

        public void decompressToRangeOff​(double[] c,
                                         int rl,
                                         int ru,
                                         int offR,
                                         double[] values)
        Overrides:
        decompressToRangeOff in class AMapToData
      • decompressToRangeNoOff

        public void decompressToRangeNoOff​(double[] c,
                                           int rl,
                                           int ru,
                                           double[] values)
        Overrides:
        decompressToRangeNoOff in class AMapToData