Package org.apache.sysds.runtime.matrix.data

# Interface MatrixBlockDataOutput

All Known Implementing Classes:
  `CacheDataOutput`, `FastBufferedDataOutputStream`

public interface MatrixBlockDataOutput
Any data output that is intended to support fast serialization / write of entire blocks should implement this interface. On write of a matrix block we check if the output stream is an implementation of this interface, if yes we directly pass the entire block instead of value-by-value. Known implementation classes: - CacheDataOutput (cache serialization into in-memory write buffer) - FastBufferedDataOutputStream (cache eviction to local file system)

## Method Summary

Modifier and Type
Method
Description
`void`
`writeDoubleArray(int len, double[] varr)`
Writes the double array of a dense block to the data output.
`void`
`writeSparseRows(int rlen, SparseBlock rows)`
Writes the sparse rows array of a sparse block to the data output.

## Method Details

### writeDoubleArray

void writeDoubleArray(int len, double[] varr) throws IOException
Writes the double array of a dense block to the data output.

Parameters:
  `len` - ?
  `varr` - ?
Throws:
  `IOException` - if IOException occurs

### writeSparseRows

void writeSparseRows(int rlen, SparseBlock rows) throws IOException
Writes the sparse rows array of a sparse block to the data output.

Parameters:
  `rlen` - ?
  `rows` - sparse block
Throws:
  `IOException` - if IOException occurs