org.apache.sysds.runtime.compress.utils

## Class MultiColBitmap

- java.lang.Object
- - org.apache.sysds.runtime.compress.utils.ABitmap
  - - org.apache.sysds.runtime.compress.utils.MultiColBitmap

-     public final class MultiColBitmap
      extends ABitmap

  Uncompressed representation of one or more columns in bitmap format.

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class org.apache.sysds.runtime.compress.utils.ABitmap

      `ABitmap.BitmapType`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `MultiColBitmap(int numCols, IntArrayList[] offsetsLists, double[][] values, int rows)`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getNumNonZerosInOffset(int idx)`
    `int` | `getNumValues()` Obtain number of distinct value groups in the column.
    `ABitmap.BitmapType` | `getType()`
    `double[][]` | `getValues()` Get all values without unnecessary allocations and copies.
    `double[]` | `getValues(int ix)` Obtain tuple of column values associated with index.
    `void` | `sortValuesByFrequency()`
    `String` | `toString()`

    - ### Methods inherited from class org.apache.sysds.runtime.compress.utils.ABitmap

      `containsZero, getNumColumns, getNumOffsets, getNumOffsets, getOffsetList, getOffsetsList, getZeroCounts`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### MultiColBitmap

          public MultiColBitmap(int numCols,
                                IntArrayList[] offsetsLists,
                                double[][] values,
                                int rows)

  - ### Method Detail

    - #### getValues

          public double[][] getValues()

      Get all values without unnecessary allocations and copies.
      Returns:
        dictionary of value tuples

    - #### getValues

          public double[] getValues(int ix)

      Obtain tuple of column values associated with index.
      Parameters:
        `ix` - index of a particular distinct value
      Returns:
        the tuple of column values associated with the specified index

    - #### getNumNonZerosInOffset

          public int getNumNonZerosInOffset(int idx)

      Specified by:
        `getNumNonZerosInOffset` in class `ABitmap`

    - #### getNumValues

          public int getNumValues()

      Description copied from class: `ABitmap`
      Obtain number of distinct value groups in the column. this number is also the number of bitmaps, since there is one bitmap per value
      Specified by:
        `getNumValues` in class `ABitmap`
      Returns:
        number of distinct value groups in the column;

    - #### sortValuesByFrequency

          public void sortValuesByFrequency()

      Specified by:
        `sortValuesByFrequency` in class `ABitmap`

    - #### toString

          public String toString()

      Overrides:
        `toString` in class `ABitmap`

    - #### getType

          public ABitmap.BitmapType getType()

      Specified by:
        `getType` in class `ABitmap`

Copyright © 2021 The Apache Software Foundation. All rights reserved.