## Uses of Class
org.apache.sysds.runtime.compress.CompressedMatrixBlock

- Packages that use CompressedMatrixBlock
  Package | Description
  --- | ---
  org.apache.sysds.runtime.compress |
  org.apache.sysds.runtime.compress.cost |
  org.apache.sysds.runtime.compress.lib |

- - ### Uses of CompressedMatrixBlock in org.apache.sysds.runtime.compress

    Methods in org.apache.sysds.runtime.compress that return CompressedMatrixBlock
    Modifier and Type | Method | Description
    --- | --- | ---
    `static CompressedMatrixBlock` | CompressedMatrixBlockFactory.`createConstant​(int numRows, int numCols, double value)` | Method for constructing a compressed matrix out of an constant input.
    `static CompressedMatrixBlock` | CompressedMatrixBlockFactory.`genUncompressedCompressedMatrixBlock​(MatrixBlock mb)` | Generate a CompressedMatrixBlock Object that contains a single uncompressed matrix block column group.
    `CompressedMatrixBlock` | CompressedMatrixBlock.`squash​(int k)` |

    Constructors in org.apache.sysds.runtime.compress with parameters of type CompressedMatrixBlock
    Constructor | Description
    --- | ---
    `CompressedMatrixBlock​(CompressedMatrixBlock that)` | Copy constructor taking that CompressedMatrixBlock and populate this new compressedMatrixBlock with pointers to the same columnGroups.

  - ### Uses of CompressedMatrixBlock in org.apache.sysds.runtime.compress.cost

    Methods in org.apache.sysds.runtime.compress.cost with parameters of type CompressedMatrixBlock
    Modifier and Type | Method | Description
    --- | --- | ---
    `double` | ACostEstimate.`getCost​(CompressedMatrixBlock cmb)` | Get cost of a compressed matrix block

  - ### Uses of CompressedMatrixBlock in org.apache.sysds.runtime.compress.lib

    Methods in org.apache.sysds.runtime.compress.lib that return CompressedMatrixBlock
    Modifier and Type | Method | Description
    --- | --- | ---
    `static CompressedMatrixBlock` | CLALibSquash.`squash​(CompressedMatrixBlock m, int k)` |

    Methods in org.apache.sysds.runtime.compress.lib with parameters of type CompressedMatrixBlock
    Modifier and Type | Method | Description
    --- | --- | ---
    `static MatrixBlock` | CLALibCompAgg.`aggregateUnary​(CompressedMatrixBlock inputMatrix, MatrixBlock result, AggregateUnaryOperator op, int blen, MatrixIndexes indexesIn, boolean inCP)` |
    `static MatrixBlock` | CLALibBinaryCellOp.`binaryOperationsLeft​(BinaryOperator op, CompressedMatrixBlock m1, MatrixBlock that, MatrixBlock result)` |
    `static MatrixBlock` | CLALibBinaryCellOp.`binaryOperationsRight​(BinaryOperator op, CompressedMatrixBlock m1, MatrixBlock that, MatrixBlock result)` |
    `static CM_COV_Object` | CLALibCMOps.`centralMoment​(CompressedMatrixBlock cmb, CMOperator op)` |
    `static void` | CLALibUtils.`combineConstColumns​(CompressedMatrixBlock in)` | Combine all column groups that are constant types, this include empty and const.
    `static MatrixBlock` | CLALibDecompress.`decompress​(CompressedMatrixBlock cmb, int k)` |
    `static void` | CLALibDecompress.`decompressTo​(CompressedMatrixBlock cmb, MatrixBlock ret, int rowOffset, int colOffset, int k)` |
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrix​(CompressedMatrixBlock right, MatrixBlock left, MatrixBlock ret, int k)` | Left multiplication with two CompressedMatrixBlock following the equation: ret = left %*% right
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed​(CompressedMatrixBlock right, CompressedMatrixBlock left, MatrixBlock ret, int k)` | Left multiplication with two CompressedMatrixBlock following the equation: ret = t(left) %*% right
    `static MatrixBlock` | CLALibLeftMultBy.`leftMultByMatrixTransposed​(CompressedMatrixBlock right, MatrixBlock left, MatrixBlock ret, int k)` | Left multiplication with a CompressedMatrixBlock on the right following the equation: ret = t(left) %*% right
    `static void` | CLALibTSMM.`leftMultByTransposeSelf​(CompressedMatrixBlock cmb, MatrixBlock ret, int k)` | Self left Matrix multiplication (tsmm) t(x) %*% x
    `static MatrixBlock` | CLALibMMChain.`mmChain​(CompressedMatrixBlock x, MatrixBlock v, MatrixBlock w, MatrixBlock out, MapMultChain.ChainType ctype, int k)` |
    `static MatrixBlock` | CLALibRexpand.`rexpand​(CompressedMatrixBlock in, MatrixBlock ret, double max, boolean rows, boolean cast, boolean ignore, int k)` |
    `static MatrixBlock` | CLALibRightMultBy.`rightMultByMatrix​(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k)` |
    `static MatrixBlock` | CLALibRightMultBy.`rightMultByMatrix​(CompressedMatrixBlock m1, MatrixBlock m2, MatrixBlock ret, int k, boolean allowOverlap)` |
    `static MatrixBlock` | CLALibScalar.`scalarOperations​(ScalarOperator sop, CompressedMatrixBlock m1, MatrixValue result)` |
    `static MatrixBlock` | CLALibSlice.`slice​(CompressedMatrixBlock cmb, int rl, int ru, int cl, int cu, boolean deep)` |
    `static CompressedMatrixBlock` | CLALibSquash.`squash​(CompressedMatrixBlock m, int k)` |
    `static MatrixBlock` | CLALibUnary.`unaryOperations​(CompressedMatrixBlock m, UnaryOperator op, MatrixValue result)` |