org.apache.sysds.runtime.meta

## Class DataCharacteristics

- java.lang.Object
- - org.apache.sysds.runtime.meta.DataCharacteristics

All Implemented Interfaces:
  Serializable

Direct Known Subclasses:
  MatrixCharacteristics, TensorCharacteristics

    public abstract class DataCharacteristics
    extends Object
    implements Serializable

See Also:
  Serialized Form

### Constructor Summary

Constructors
Constructor and Description
`DataCharacteristics()`

### Method Summary

All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
`static void` `aggregateBinary(DataCharacteristics dim1, DataCharacteristics dim2, AggregateBinaryOperator op, DataCharacteristics dimOut)`
`static void` `aggregateUnary(DataCharacteristics dim, AggregateUnaryOperator op, DataCharacteristics dimOut)`
`boolean` `colsKnown()`
`boolean` `dimsKnown()`
`boolean` `dimsKnown(boolean includeNnz)`
`abstract boolean` `equalDims(Object anObject)`
`abstract boolean` `equals(Object anObject)`
`int` `getBlocksize()`
`long` `getCols()`
`long` `getDim(int i)`
`long[]` `getDims()`
`int[]` `getIntDims()`
`long` `getLength()`
`long[]` `getLongDims()`
`long` `getNonZeros()`
`long` `getNonZerosBound()`
`long` `getNumBlocks()`
`long` `getNumBlocks(int i)`
`long` `getNumColBlocks()`
`int` `getNumDims()`
`long` `getNumRowBlocks()`
`long` `getRows()`
`double` `getSparsity()`
`abstract int` `hashCode()`
`boolean` `isNoEmptyBlocks()`
`boolean` `isUltraSparse()`
`boolean` `mightHaveEmptyBlocks()`
`boolean` `nnzKnown()`
`static void` `reorg(DataCharacteristics dim, ReorgOperator op, DataCharacteristics dimOut)`
`boolean` `rowsKnown()`
`DataCharacteristics` `set(DataCharacteristics that)`
`DataCharacteristics` `set(long[] dims, int blocksize)`
`DataCharacteristics` `set(long[] dims, int blocksize, long nnz)`
`DataCharacteristics` `set(long nr, long nc, int blen)`
`DataCharacteristics` `set(long nr, long nc, int blen, long nnz)`
`DataCharacteristics` `setBlocksize(int blen)`
`DataCharacteristics` `setCols(long clen)`
`DataCharacteristics` `setDim(int i, long dim)`
`DataCharacteristics` `setDimension(long nr, long nc)`
`DataCharacteristics` `setDims(long[] dims)`
`DataCharacteristics` `setNoEmptyBlocks(boolean flag)`
`DataCharacteristics` `setNonZeros(long nnz)`
`DataCharacteristics` `setNonZerosBound(long nnz)`
`DataCharacteristics` `setRows(long rlen)`

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

`getClass, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### DataCharacteristics

    public DataCharacteristics()

### Method Detail

#### set

    public DataCharacteristics set(long nr,
                                   long nc,
                                   int blen)

#### set

    public DataCharacteristics set(long nr,
                                   long nc,
                                   int blen,
                                   long nnz)

#### set

    public DataCharacteristics set(long[] dims,
                                   int blocksize)

#### set

    public DataCharacteristics set(long[] dims,
                                   int blocksize,
                                   long nnz)

#### set

    public DataCharacteristics set(DataCharacteristics that)

#### getRows

    public long getRows()

#### setRows

    public DataCharacteristics setRows(long rlen)

#### getCols

    public long getCols()

#### setCols

    public DataCharacteristics setCols(long clen)

#### getLength

    public long getLength()

#### getBlocksize

    public int getBlocksize()

#### setBlocksize

    public DataCharacteristics setBlocksize(int blen)

#### setNoEmptyBlocks

    public DataCharacteristics setNoEmptyBlocks(boolean flag)

#### isNoEmptyBlocks

    public boolean isNoEmptyBlocks()

#### getNumBlocks

    public long getNumBlocks()

#### getNumRowBlocks

    public long getNumRowBlocks()

#### getNumColBlocks

    public long getNumColBlocks()

#### setDimension

    public DataCharacteristics setDimension(long nr,
                                            long nc)

#### getNumDims

    public int getNumDims()

#### getDim

    public long getDim(int i)

#### getDims

    public long[] getDims()

#### getLongDims

    public long[] getLongDims()

#### getIntDims

    public int[] getIntDims()

#### setDim

    public DataCharacteristics setDim(int i,
                                      long dim)

#### setDims

    public DataCharacteristics setDims(long[] dims)

#### getNumBlocks

    public long getNumBlocks(int i)

#### setNonZeros

    public DataCharacteristics setNonZeros(long nnz)

#### getNonZeros

    public long getNonZeros()

#### setNonZerosBound

    public DataCharacteristics setNonZerosBound(long nnz)

#### getNonZerosBound

    public long getNonZerosBound()

#### getSparsity

    public double getSparsity()

#### dimsKnown

    public boolean dimsKnown()

#### dimsKnown

    public boolean dimsKnown(boolean includeNnz)

#### rowsKnown

    public boolean rowsKnown()

#### colsKnown

    public boolean colsKnown()

#### nnzKnown

    public boolean nnzKnown()

#### isUltraSparse

    public boolean isUltraSparse()

#### mightHaveEmptyBlocks

    public boolean mightHaveEmptyBlocks()

#### reorg

    public static void reorg(DataCharacteristics dim,
                             ReorgOperator op,
                             DataCharacteristics dimOut)

#### aggregateUnary

    public static void aggregateUnary(DataCharacteristics dim,
                                      AggregateUnaryOperator op,
                                      DataCharacteristics dimOut)

#### aggregateBinary

    public static void aggregateBinary(DataCharacteristics dim1,
                                       DataCharacteristics dim2,
                                       AggregateBinaryOperator op,
                                       DataCharacteristics dimOut)

#### equalDims

    public abstract boolean equalDims(Object anObject)

#### equals

    public abstract boolean equals(Object anObject)

Overrides:
  `equals` in class `Object`

#### hashCode

    public abstract int hashCode()

Overrides:
  `hashCode` in class `Object`