Package org.apache.sysds.runtime.compress.colgroup.indexes

## Interface ColIndexFactory

    public interface ColIndexFactory

### Field Summary

Fields
`static org.apache.commons.logging.Log` `LOG`

### Method Summary

Static Methods
`static IColIndex` `combine​(List<? extends AColGroup> gs)`
`static IColIndex` `combine​(AColGroup a, AColGroup b)`
`static IColIndex` `combine​(IColIndex a, IColIndex b)`
`static IColIndex` `combineIndexes​(List<IColIndex> idx)`
`static IColIndex` `create​(int nCol)`
`static IColIndex` `create​(int[] indexes)`
`static IColIndex` `create​(int l, int u)` Create an Index range of the given values
`static IColIndex` `create​(IntArrayList indexes)`
`static IColIndex` `createI​(int... indexes)`
`static long` `estimateMemoryCost​(int nCol, boolean contiguous)`
`static IColIndex` `getColumnMapping​(IColIndex comb, IColIndex a)` Provide a mapping from a to the combined columns shifted over to column positions in the combined.
`static IColIndex` `read​(DataInput in)`

### Field Detail

#### LOG

    static final org.apache.commons.logging.Log LOG

### Method Detail

#### read

    static IColIndex read​(DataInput in)
                   throws IOException

Throws:
  `IOException`

#### createI

    static IColIndex createI​(int... indexes)

#### create

    static IColIndex create​(int[] indexes)

#### create

    static IColIndex create​(IntArrayList indexes)

#### create

    static IColIndex create​(int l,
                            int u)

Create an Index range of the given values

Parameters:
  `l` - Lower bound (inclusive)
  `u` - Upper bound (not inclusive)
Returns:
  An Index

#### create

    static IColIndex create​(int nCol)

#### estimateMemoryCost

    static long estimateMemoryCost​(int nCol,
                                   boolean contiguous)

#### combine

    static IColIndex combine​(List<? extends AColGroup> gs)

#### combineIndexes

    static IColIndex combineIndexes​(List<IColIndex> idx)

#### combine

    static IColIndex combine​(AColGroup a,
                             AColGroup b)

#### combine

    static IColIndex combine​(IColIndex a,
                             IColIndex b)

#### getColumnMapping

    static IColIndex getColumnMapping​(IColIndex comb,
                                      IColIndex a)

Provide a mapping from a to the combined columns shifted over to column positions in the combined. It is assumed that the caller always input an a that is contained in comb. it is not verified in the call that it is correct.

Parameters:
  `comb` - The combined indexes
  `a` - The indexes to look up
Returns:
  A column index mapping.