Package 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 | Description
    --- | ---
    `DataCharacteristics()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Abstract Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `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​(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` | `set​(DataCharacteristics that)` |
    `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`