public int getCompactSizeBytes()

in src/main/java/org/apache/datasketches/vector/matrix/Matrix.java [176:189]


  public int getCompactSizeBytes(final int rows, final int cols) {
    final int nRows = Math.min(rows, numRows_);
    final int nCols = Math.min(cols, numCols_);

    if ((nRows < 1) || (nCols < 1)) {
      return MatrixFamily.MATRIX.getMinPreLongs() * Long.BYTES;
    } else if ((nRows == numRows_) && (nCols == numCols_)) {
      return getSizeBytes();
    }

    final int preBytes = MatrixFamily.MATRIX.getMaxPreLongs() * Long.BYTES;
    final int mtxBytes = (nRows * nCols) * Double.BYTES;
    return preBytes + mtxBytes;
  }