## Uses of Interface
org.apache.sysds.runtime.compress.colgroup.indexes.IColIndex

Packages that use IColIndex
org.apache.sysds.runtime.compress.bitmap
org.apache.sysds.runtime.compress.cocode
org.apache.sysds.runtime.compress.colgroup
org.apache.sysds.runtime.compress.colgroup.dictionary
org.apache.sysds.runtime.compress.colgroup.functional
org.apache.sysds.runtime.compress.colgroup.indexes
org.apache.sysds.runtime.compress.colgroup.scheme
org.apache.sysds.runtime.compress.estim
org.apache.sysds.runtime.compress.estim.encoding
org.apache.sysds.runtime.compress.readers
org.apache.sysds.runtime.compress.utils

### Uses of IColIndex in org.apache.sysds.runtime.compress.bitmap

Methods in org.apache.sysds.runtime.compress.bitmap with parameters of type IColIndex
`static ABitmap` BitmapEncoder.`extractBitmap​(IColIndex colIndices, MatrixBlock rawBlock, boolean transposed, int estimatedNumberOfUniques, boolean sortedEntries)` Generate uncompressed bitmaps for a set of columns in an uncompressed matrix block.
`static ABitmap` BitmapEncoder.`extractBitmap​(IColIndex colIndices, MatrixBlock rawBlock, int estimatedNumberOfUniques, CompressionSettings cs)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.cocode

Constructors in org.apache.sysds.runtime.compress.cocode with parameters of type IColIndex
`ColIndexes​(IColIndex indexes)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.colgroup

Methods in org.apache.sysds.runtime.compress.colgroup that return IColIndex
`IColIndex` AColGroup.`getColIndices()` Obtain the offsets of the columns in the matrix block that make up the group

Methods in org.apache.sysds.runtime.compress.colgroup with parameters of type IColIndex
`static void` ColGroupUtils.`addMatrixToResult​(MatrixBlock tmp, MatrixBlock result, IColIndex colIndexes, int rl, int ru)`
`static double[]` ColGroupUtils.`binaryDefRowLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)` Calculate the result of performing the binary operation on an empty row to the left v op empty
`static double[]` ColGroupUtils.`binaryDefRowRight​(BinaryOperator op, double[] v, IColIndex colIndexes)` Calculate the result of performing the binary operation on an empty row to the right empty op v
`static AColGroup` ColGroupConst.`create​(IColIndex cols, double value)` Generate a constant column group.
`static AColGroup` ColGroupConst.`create​(IColIndex cols, double[] values)` Generate a constant column group.
`static AColGroup` ColGroupDDC.`create​(IColIndex colIndexes, ADictionary dict, AMapToData data, int[] cachedCounts)`
`static AColGroup` ColGroupDDCFOR.`create​(IColIndex colIndexes, ADictionary dict, AMapToData data, int[] cachedCounts, double[] reference)`
`static AColGroup` ColGroupLinearFunctional.`create​(IColIndex colIndices, double[] coefficents, int numRows)` Generate a linear functional column group.
`static AColGroup` ColGroupSDC.`create​(IColIndex colIndices, int numRows, ADictionary dict, double[] defaultTuple, AOffset offsets, AMapToData data, int[] cachedCounts)`
`static AColGroup` ColGroupSDCFOR.`create​(IColIndex colIndexes, int numRows, ADictionary dict, AOffset offsets, AMapToData data, int[] cachedCounts, double[] reference)`
`static AColGroup` ColGroupSDCSingle.`create​(IColIndex colIndexes, int numRows, ADictionary dict, double[] defaultTuple, AOffset offsets, int[] cachedCounts)`
`static AColGroup` ColGroupSDCSingleZeros.`create​(IColIndex colIndices, int numRows, ADictionary dict, AOffset offsets, int[] cachedCounts)`
`static AColGroup` ColGroupSDCZeros.`create​(IColIndex colIndices, int numRows, ADictionary dict, AOffset offsets, AMapToData data, int[] cachedCounts)`
`static AColGroup` ColGroupUncompressed.`create​(IColIndex colIndexes, MatrixBlock rawBlock, boolean transposed)` Main constructor for Uncompressed ColGroup.
`static void` ColGroupUtils.`outerProduct​(double[] leftRowSum, double[] rightColumnSum, IColIndex colIdxRight, double[] result, int nColR, int rl, int ru)`
`static void` ColGroupUtils.`outerProduct​(double[] leftRowSum, SparseBlock rightColSum, IColIndex colIdxRight, double[] result, int nColR, int rl, int ru)`
`abstract AColGroup` AColGroup.`rightMultByMatrix​(MatrixBlock right, IColIndex allCols)` Right matrix multiplication with this column group.
`AColGroup` ADictBasedColGroup.`rightMultByMatrix​(MatrixBlock right, IColIndex allCols)`
`AColGroup` ColGroupEmpty.`rightMultByMatrix​(MatrixBlock right, IColIndex allCols)`
`AColGroup` ColGroupLinearFunctional.`rightMultByMatrix​(MatrixBlock right, IColIndex allCols)`
`AColGroup` ColGroupUncompressed.`rightMultByMatrix​(MatrixBlock right, IColIndex allCols)`

Constructors in org.apache.sysds.runtime.compress.colgroup with parameters of type IColIndex
`ColGroupEmpty​(IColIndex colIndices)` Constructs an Constant Colum Group, that contains only one tuple, with the given value.

### Uses of IColIndex in org.apache.sysds.runtime.compress.colgroup.dictionary

Methods in org.apache.sysds.runtime.compress.colgroup.dictionary with parameters of type IColIndex
`abstract void` ADictionary.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)` Aggregates the columns into the target double array provided.
`void` Dictionary.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)`
`void` IdentityDictionary.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)`
`void` IdentityDictionarySlice.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)`
`void` MatrixBlockDictionary.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)`
`void` QDictionary.`aggregateCols​(double[] c, Builtin fn, IColIndex colIndexes)`
`abstract void` ADictionary.`aggregateColsWithReference​(double[] c, Builtin fn, IColIndex colIndexes, double[] reference, boolean def)` Aggregates the columns into the target double array provided.
`void` Dictionary.`aggregateColsWithReference​(double[] c, Builtin fn, IColIndex colIndexes, double[] reference, boolean def)`
`void` IdentityDictionary.`aggregateColsWithReference​(double[] c, Builtin fn, IColIndex colIndexes, double[] reference, boolean def)`
`void` MatrixBlockDictionary.`aggregateColsWithReference​(double[] c, Builtin fn, IColIndex colIndexes, double[] reference, boolean def)`
`void` QDictionary.`aggregateColsWithReference​(double[] c, Builtin fn, IColIndex colIndexes, double[] reference, boolean def)`
`abstract ADictionary` ADictionary.`binOpLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)` Apply binary row operation on the left side
`Dictionary` Dictionary.`binOpLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` IdentityDictionary.`binOpLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` MatrixBlockDictionary.`binOpLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` QDictionary.`binOpLeft​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`abstract ADictionary` ADictionary.`binOpLeftAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)` Apply binary row operation on the left side with one extra row evaluating with zeros.
`ADictionary` Dictionary.`binOpLeftAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` IdentityDictionary.`binOpLeftAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` MatrixBlockDictionary.`binOpLeftAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` QDictionary.`binOpLeftAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`abstract ADictionary` ADictionary.`binOpLeftWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)` Apply the binary operator such that each value is offset by the reference before application.
`Dictionary` Dictionary.`binOpLeftWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`ADictionary` IdentityDictionary.`binOpLeftWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`MatrixBlockDictionary` MatrixBlockDictionary.`binOpLeftWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`ADictionary` QDictionary.`binOpLeftWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`abstract ADictionary` ADictionary.`binOpRight​(BinaryOperator op, double[] v, IColIndex colIndexes)` Apply binary row operation on the right side.
`Dictionary` Dictionary.`binOpRight​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` IdentityDictionary.`binOpRight​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`MatrixBlockDictionary` MatrixBlockDictionary.`binOpRight​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` QDictionary.`binOpRight​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`abstract ADictionary` ADictionary.`binOpRightAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)` Apply binary row operation on the right side with one extra row evaluating with zeros.
`ADictionary` Dictionary.`binOpRightAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` IdentityDictionary.`binOpRightAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` MatrixBlockDictionary.`binOpRightAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`ADictionary` QDictionary.`binOpRightAndAppend​(BinaryOperator op, double[] v, IColIndex colIndexes)`
`abstract ADictionary` ADictionary.`binOpRightWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)` Apply the binary operator such that each value is offset by the reference before application.
`Dictionary` Dictionary.`binOpRightWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`ADictionary` IdentityDictionary.`binOpRightWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`MatrixBlockDictionary` MatrixBlockDictionary.`binOpRightWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`ADictionary` QDictionary.`binOpRightWithReference​(BinaryOperator op, double[] v, IColIndex colIndexes, double[] reference, double[] newReference)`
`abstract void` ADictionary.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)` Calculate the column product of the dictionary weighted by counts.
`void` Dictionary.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionary.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionarySlice.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)`
`void` MatrixBlockDictionary.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)`
`void` QDictionary.`colProduct​(double[] res, int[] counts, IColIndex colIndexes)`
`abstract void` ADictionary.`colProductWithReference​(double[] res, int[] counts, IColIndex colIndexes, double[] reference)` Calculate the column product of the dictionary weighted by counts.
`void` Dictionary.`colProductWithReference​(double[] res, int[] counts, IColIndex colIndexes, double[] reference)`
`void` IdentityDictionary.`colProductWithReference​(double[] res, int[] counts, IColIndex colIndexes, double[] reference)`
`void` MatrixBlockDictionary.`colProductWithReference​(double[] res, int[] counts, IColIndex colIndexes, double[] reference)`
`void` QDictionary.`colProductWithReference​(double[] res, int[] counts, IColIndex colIndexes, double[] reference)`
`abstract void` ADictionary.`colSum​(double[] c, int[] counts, IColIndex colIndexes)` Get the column sum of the values contained in the dictionary
`void` Dictionary.`colSum​(double[] c, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionary.`colSum​(double[] c, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionarySlice.`colSum​(double[] c, int[] counts, IColIndex colIndexes)`
`void` MatrixBlockDictionary.`colSum​(double[] c, int[] counts, IColIndex colIndexes)`
`void` QDictionary.`colSum​(double[] c, int[] counts, IColIndex colIndexes)`
`abstract void` ADictionary.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)` Get the column sum of the values contained in the dictionary
`void` Dictionary.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionary.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)`
`void` IdentityDictionarySlice.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)`
`void` MatrixBlockDictionary.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)`
`void` QDictionary.`colSumSq​(double[] c, int[] counts, IColIndex colIndexes)`
`abstract void` ADictionary.`colSumSqWithReference​(double[] c, int[] counts, IColIndex colIndexes, double[] reference)` Get the column sum of the values contained in the dictionary with an offset reference value added to each cell.
`void` Dictionary.`colSumSqWithReference​(double[] c, int[] counts, IColIndex colIndexes, double[] reference)`
`void` IdentityDictionary.`colSumSqWithReference​(double[] c, int[] counts, IColIndex colIndexes, double[] reference)`
`void` MatrixBlockDictionary.`colSumSqWithReference​(double[] c, int[] counts, IColIndex colIndexes, double[] reference)`
`void` QDictionary.`colSumSqWithReference​(double[] c, int[] counts, IColIndex colIndexes, double[] reference)`
`static void` DictLibMatrixMult.`MMDicts​(ADictionary left, ADictionary right, IColIndex rowsLeft, IColIndex colsRight, MatrixBlock result)` Matrix Multiply the two dictionaries, note that the left side is considered transposed but not allocated transposed making the multiplication a: t(left) %*% right
`static void` DictLibMatrixMult.`MMDictsWithScaling​(ADictionary left, ADictionary right, IColIndex leftRows, IColIndex rightColumns, MatrixBlock result, int[] counts)` Matrix multiply with scaling (left side transposed)
`abstract void` ADictionary.`multiplyScalar​(double v, double[] ret, int off, int dictIdx, IColIndex cols)` Multiply the v value with the dictionary entry at dictIdx and add it to the ret matrix at the columns specified in the int array.
`void` Dictionary.`multiplyScalar​(double v, double[] ret, int off, int dictIdx, IColIndex cols)`
`void` IdentityDictionary.`multiplyScalar​(double v, double[] ret, int off, int dictIdx, IColIndex cols)`
`void` MatrixBlockDictionary.`multiplyScalar​(double v, double[] ret, int off, int dictIdx, IColIndex cols)`
`void` QDictionary.`multiplyScalar​(double v, double[] ret, int off, int dictIdx, IColIndex cols)`
`abstract ADictionary` ADictionary.`preaggValuesFromDense​(int numVals, IColIndex colIndexes, IColIndex aggregateColumns, double[] b, int cut)` Pre Aggregate values for Right Matrix Multiplication.
`Dictionary` Dictionary.`preaggValuesFromDense​(int numVals, IColIndex colIndexes, IColIndex aggregateColumns, double[] b, int cut)`
`ADictionary` IdentityDictionary.`preaggValuesFromDense​(int numVals, IColIndex colIndexes, IColIndex aggregateColumns, double[] b, int cut)`
`MatrixBlockDictionary` MatrixBlockDictionary.`preaggValuesFromDense​(int numVals, IColIndex colIndexes, IColIndex aggregateColumns, double[] b, int cut)`
`ADictionary` QDictionary.`preaggValuesFromDense​(int numVals, IColIndex colIndexes, IColIndex aggregateColumns, double[] b, int cut)`
`static void` DictLibMatrixMult.`TSMMDictionaryWithScaling​(ADictionary dict, int[] counts, IColIndex rows, IColIndex cols, MatrixBlock ret)` Perform the full tsmm with the dictionary (allocating into the entire output matrix.)
`static void` DictLibMatrixMult.`TSMMToUpperTriangle​(ADictionary left, ADictionary right, IColIndex rowsLeft, IColIndex colsRight, MatrixBlock result)` Does two matrix multiplications in one go but only add to the upper triangle.
`static void` DictLibMatrixMult.`TSMMToUpperTriangleScaling​(ADictionary left, ADictionary right, IColIndex rowsLeft, IColIndex colsRight, int[] scale, MatrixBlock result)` Does two matrix multiplications in one go but only add to the upper triangle with scaling.

### Uses of IColIndex in org.apache.sysds.runtime.compress.colgroup.functional

Methods in org.apache.sysds.runtime.compress.colgroup.functional with parameters of type IColIndex
`static double[]` LinearRegression.`regressMatrixBlock​(MatrixBlock rawBlock, IColIndex colIndexes, boolean transposed)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.colgroup.indexes

Classes in org.apache.sysds.runtime.compress.colgroup.indexes that implement IColIndex
`class` `AColIndex`
`class` `ArrayIndex`
`class` `RangeIndex`
`class` `SingleIndex`
`class` `TwoIndex`

Fields in org.apache.sysds.runtime.compress.colgroup.indexes declared as IColIndex
`IColIndex` IColIndex.SliceResult.`ret` The already modified column index to return on slices

Methods in org.apache.sysds.runtime.compress.colgroup.indexes that return IColIndex
`IColIndex` ArrayIndex.`combine​(IColIndex other)`
`static IColIndex` ColIndexFactory.`combine​(List<AColGroup> gs)`
`IColIndex` IColIndex.`combine​(IColIndex other)` combine the indexes of this colIndex with another, it is expected that all calls to this contains unique indexes, and no copies of values.
`IColIndex` RangeIndex.`combine​(IColIndex other)`
`IColIndex` SingleIndex.`combine​(IColIndex other)`
`IColIndex` TwoIndex.`combine​(IColIndex other)`
`static IColIndex` ColIndexFactory.`create​(int nCol)`
`static IColIndex` ColIndexFactory.`create​(int[] indexes)`
`static IColIndex` ColIndexFactory.`create​(int l, int u)`
`static IColIndex` ColIndexFactory.`create​(IntArrayList indexes)`
`static IColIndex` ColIndexFactory.`read​(DataInput in)`
`IColIndex` ArrayIndex.`shift​(int i)`
`IColIndex` IColIndex.`shift​(int i)` Return a new column index where the values are shifted by the specified amount.
`IColIndex` RangeIndex.`shift​(int i)`

Methods in org.apache.sysds.runtime.compress.colgroup.indexes with parameters of type IColIndex
`IColIndex` ArrayIndex.`combine​(IColIndex other)`
`IColIndex` IColIndex.`combine​(IColIndex other)` combine the indexes of this colIndex with another, it is expected that all calls to this contains unique indexes, and no copies of values.
`IColIndex` RangeIndex.`combine​(IColIndex other)`
`IColIndex` SingleIndex.`combine​(IColIndex other)`
`IColIndex` TwoIndex.`combine​(IColIndex other)`
`boolean` AColIndex.`contains​(IColIndex a, IColIndex b)`
`boolean` IColIndex.`contains​(IColIndex a, IColIndex b)` This contains method is not strict since it only verifies one element is contained from each a and b.
`boolean` AColIndex.`containsStrict​(IColIndex a, IColIndex b)`
`boolean` IColIndex.`containsStrict​(IColIndex a, IColIndex b)` This contains both a and b ...
`boolean` ArrayIndex.`equals​(IColIndex other)`
`boolean` IColIndex.`equals​(IColIndex other)`
`boolean` RangeIndex.`equals​(IColIndex other)`
`boolean` SingleIndex.`equals​(IColIndex other)`
`boolean` TwoIndex.`equals​(IColIndex other)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.colgroup.scheme

Methods in org.apache.sysds.runtime.compress.colgroup.scheme with parameters of type IColIndex
`AColGroup` ConstScheme.`encode​(MatrixBlock data, IColIndex columns)`
`AColGroup` DDCScheme.`encode​(MatrixBlock data, IColIndex columns)`
`AColGroup` EmptyScheme.`encode​(MatrixBlock data, IColIndex columns)`
`AColGroup` ICLAScheme.`encode​(MatrixBlock data, IColIndex columns)` Encode a given matrix block into the scheme provided in the instance but overwrite what columns to use.

### Uses of IColIndex in org.apache.sysds.runtime.compress.estim

Methods in org.apache.sysds.runtime.compress.estim that return IColIndex
`IColIndex` CompressedSizeInfoColGroup.`getColumns()`

Methods in org.apache.sysds.runtime.compress.estim with parameters of type IColIndex
`CompressedSizeInfoColGroup` AComEst.`combine​(IColIndex combinedColumns, CompressedSizeInfoColGroup g1, CompressedSizeInfoColGroup g2)` Combine two analyzed column groups together.
`CompressedSizeInfoColGroup` AComEst.`getColGroupInfo​(IColIndex colIndexes)` Method for extracting Compressed Size Info of specified columns, together in a single ColGroup

`abstract CompressedSizeInfoColGroup`

AComEst.`getColGroupInfo​(IColIndex colIndexes, int estimate, int nrUniqueUpperBound)`

A method to extract the Compressed Size Info for a given list of columns, This method further limits the estimated number of unique values, since in some cases the estimated number of uniques is estimated higher than the number estimated in sub groups of the given colIndexes.

`CompressedSizeInfoColGroup` ComEstExact.`getColGroupInfo​(IColIndex colIndexes, int estimate, int nrUniqueUpperBound)`
`CompressedSizeInfoColGroup` ComEstSample.`getColGroupInfo​(IColIndex colIndexes, int estimate, int maxDistinct)`
`CompressedSizeInfoColGroup` AComEst.`getDeltaColGroupInfo​(IColIndex colIndexes)` Method for extracting info of specified columns as delta encodings (delta from previous rows values)

`abstract CompressedSizeInfoColGroup`

AComEst.`getDeltaColGroupInfo​(IColIndex colIndexes, int estimate, int nrUniqueUpperBound)`

A method to extract the Compressed Size Info for a given list of columns, This method further limits the estimated number of unique values, since in some cases the estimated number of uniques is estimated higher than the number estimated in sub groups of the given colIndexes.

`CompressedSizeInfoColGroup` ComEstExact.`getDeltaColGroupInfo​(IColIndex colIndexes, int estimate, int nrUniqueUpperBound)`
`CompressedSizeInfoColGroup` ComEstSample.`getDeltaColGroupInfo​(IColIndex colIndexes, int estimate, int maxDistinct)`

Constructors in org.apache.sysds.runtime.compress.estim with parameters of type IColIndex
`CompressedSizeInfoColGroup​(IColIndex columns, int nRows)` Create empty.
`CompressedSizeInfoColGroup​(IColIndex cols, int nVal, int nRow, AColGroup.CompressionType bestCompressionType)`
`CompressedSizeInfoColGroup​(IColIndex cols, EstimationFactors facts, long minSize, AColGroup.CompressionType bestCompressionType)`
`CompressedSizeInfoColGroup​(IColIndex cols, EstimationFactors facts, AColGroup.CompressionType bestCompressionType)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.estim.encoding

Methods in org.apache.sysds.runtime.compress.estim.encoding with parameters of type IColIndex
`static IEncode` EncodingFactory.`createFromMatrixBlock​(MatrixBlock m, boolean transposed, IColIndex rowCols)` Encode a list of columns together from the input matrix, as if it is cocoded.
`static IEncode` EncodingFactory.`createFromMatrixBlockDelta​(MatrixBlock m, boolean transposed, IColIndex rowCols)` Encode a full delta representation of the matrix input taking all rows into account.
`static IEncode` EncodingFactory.`createFromMatrixBlockDelta​(MatrixBlock m, boolean transposed, IColIndex rowCols, int sampleSize)` Encode a delta representation of the matrix input taking the first "sampleSize" rows into account.

### Uses of IColIndex in org.apache.sysds.runtime.compress.readers

Methods in org.apache.sysds.runtime.compress.readers with parameters of type IColIndex
`static ReaderColumnSelection` ReaderColumnSelection.`createReader​(MatrixBlock rawBlock, IColIndex colIndices, boolean transposed)`
`static ReaderColumnSelection` ReaderColumnSelection.`createReader​(MatrixBlock rawBlock, IColIndex colIndices, boolean transposed, int rl, int ru)`

### Uses of IColIndex in org.apache.sysds.runtime.compress.utils

Methods in org.apache.sysds.runtime.compress.utils with parameters of type IColIndex
`static MatrixBlock` Util.`extractValues​(double[] v, IColIndex colIndexes)`