Package org.apache.sysds.runtime.controlprogram.caching

# Class CacheDataOutput

java.lang.Object
org.apache.sysds.runtime.controlprogram.caching.CacheDataOutput

All Implemented Interfaces:
  `DataOutput`, `MatrixBlockDataOutput`

public class CacheDataOutput extends Object implements DataOutput, MatrixBlockDataOutput
Custom DataOutput to serialize directly into the given byte array.

## Constructor Summary

Constructors
Constructor
Description
`CacheDataOutput(byte[] mem)`
`CacheDataOutput(int size)`

## Method Summary

Modifier and Type
Method
Description
`byte[]`
`getBytes()`
`void`
`write(byte[] b)`
`void`
`write(byte[] b, int off, int len)`
`void`
`write(int b)`
`void`
`writeBoolean(boolean v)`
`void`
`writeByte(int v)`
`void`
`writeBytes(String s)`
`void`
`writeChar(int v)`
`void`
`writeChars(String s)`
`void`
`writeDouble(double v)`
`void`
`writeDoubleArray(int len, double[] varr)`
Writes the double array of a dense block to the data output.
`void`
`writeFloat(float v)`
`void`
`writeInt(int v)`
`void`
`writeLong(long v)`
`void`
`writeShort(int v)`
`void`
`writeSparseRows(int rlen, SparseBlock rows)`
Writes the sparse rows array of a sparse block to the data output.
`void`
`writeUTF(String s)`

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

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

## Constructor Details

### CacheDataOutput

public CacheDataOutput(int size)

### CacheDataOutput

public CacheDataOutput(byte[] mem)

## Method Details

### write

public void write(int b) throws IOException

Specified by:
  `write` in interface `DataOutput`
Throws:
  `IOException`

### write

public void write(byte[] b) throws IOException

Specified by:
  `write` in interface `DataOutput`
Throws:
  `IOException`

### write

public void write(byte[] b, int off, int len) throws IOException

Specified by:
  `write` in interface `DataOutput`
Throws:
  `IOException`

### writeBoolean

public void writeBoolean(boolean v) throws IOException

Specified by:
  `writeBoolean` in interface `DataOutput`
Throws:
  `IOException`

### writeInt

public void writeInt(int v) throws IOException

Specified by:
  `writeInt` in interface `DataOutput`
Throws:
  `IOException`

### writeDouble

public void writeDouble(double v) throws IOException

Specified by:
  `writeDouble` in interface `DataOutput`
Throws:
  `IOException`

### writeByte

public void writeByte(int v) throws IOException

Specified by:
  `writeByte` in interface `DataOutput`
Throws:
  `IOException`

### writeBytes

public void writeBytes(String s) throws IOException

Specified by:
  `writeBytes` in interface `DataOutput`
Throws:
  `IOException`

### writeChar

public void writeChar(int v) throws IOException

Specified by:
  `writeChar` in interface `DataOutput`
Throws:
  `IOException`

### writeChars

public void writeChars(String s) throws IOException

Specified by:
  `writeChars` in interface `DataOutput`
Throws:
  `IOException`

### writeFloat

public void writeFloat(float v) throws IOException

Specified by:
  `writeFloat` in interface `DataOutput`
Throws:
  `IOException`

### writeLong

public void writeLong(long v) throws IOException

Specified by:
  `writeLong` in interface `DataOutput`
Throws:
  `IOException`

### writeShort

public void writeShort(int v) throws IOException

Specified by:
  `writeShort` in interface `DataOutput`
Throws:
  `IOException`

### writeUTF

public void writeUTF(String s) throws IOException

Specified by:
  `writeUTF` in interface `DataOutput`
Throws:
  `IOException`

### writeDoubleArray

public void writeDoubleArray(int len, double[] varr) throws IOException
Description copied from interface: `MatrixBlockDataOutput`
Writes the double array of a dense block to the data output.

Specified by:
  `writeDoubleArray` in interface `MatrixBlockDataOutput`
Parameters:
  `len` - ?
  `varr` - ?
Throws:
  `IOException` - if IOException occurs

### writeSparseRows

public void writeSparseRows(int rlen, SparseBlock rows) throws IOException
Description copied from interface: `MatrixBlockDataOutput`
Writes the sparse rows array of a sparse block to the data output.

Specified by:
  `writeSparseRows` in interface `MatrixBlockDataOutput`
Parameters:
  `rlen` - ?
  `rows` - sparse block
Throws:
  `IOException` - if IOException occurs

### getBytes

public byte[] getBytes()