package mikera.matrixx.impl;
public abstract class BaseStridedMatrix extends AStridedMatrix {
private static final long serialVersionUID = 4101975245958427299L;
protected final int rowStride;
protected final int colStride;
protected final int offset;
protected BaseStridedMatrix(double[] data, int rowCount, int columnCount,
int offset, int rowStride, int columnStride) {
super(data,rowCount,columnCount);
this.offset = offset;
this.rowStride = rowStride;
this.colStride = columnStride;
}
@Override
public final int rowStride() {
return rowStride;
}
@Override
public final int columnStride() {
return colStride;
}
@Override
public final int getArrayOffset() {
return offset;
}
@Override
public final double get(int i, int j) {
checkIndex(i,j);
return data[index(i,j)];
}
@Override
public final double unsafeGet(int i, int j) {
return data[index(i,j)];
}
@Override
protected final int index(int row, int col) {
return offset+(row*rowStride)+(col*colStride);
}
}
Ads help maintain this website.