src/main/java/org/apache/sysds/runtime/compress/colgroup/ColGroupOffset.java
// generic decompression for OLE/RLE, to be overwritten for performance
generic decompression for OLE/RLE, to be overwritten for performance
generic decompression for OLE / RLE to be overwritten for performance
@Override
	public void decompressToBlock(MatrixBlock target, int[] colIndexTargets) {
		final int numCols = getNumCols();
		final int numVals = getNumValues();
		final double[] values = getValues();
		for(int i = 0; i < numVals; i++) {
			Iterator<Integer> decoder = getIterator(i);
			int valOff = i * numCols;
			while(decoder.hasNext()) {
				int row = decoder.next();
				for(int colIx = 0; colIx < numCols; colIx++) {
					int origMatrixColIx = getColIndex(colIx);
					int targetColIx = colIndexTargets[origMatrixColIx];
					target.quickSetValue(row, targetColIx, values[valOff + colIx]);
				}
			}
		}
	}
@ Override public void decompressToBlock ( MatrixBlock target , int [ ] colIndexTargets ) { final int numCols = getNumCols ( ) ; final int numVals = getNumValues ( ) ; final double [ ] values = getValues ( ) ; for ( int i = 0 ; i < numVals ; i ++ ) { Iterator < Integer > decoder = getIterator ( i ) ; int valOff = i * numCols ; while ( decoder . hasNext ( ) ) { int row = decoder . next ( ) ; for ( int colIx = 0 ; colIx < numCols ; colIx ++ ) { int origMatrixColIx = getColIndex ( colIx ) ; int targetColIx = colIndexTargets [ origMatrixColIx ] ; target . quickSetValue ( row , targetColIx , values [ valOff + colIx ] ) ; } } } }
generic decompression for OLE/RLE, to be overwritten for performance
generic decompression for OLE / RLE to be overwritten for performance
// Run through the bitmaps for this column group