@Override public Dataset getData() { return (Dataset) super.getData(); }
@Override public void localize(final double[] position) { for (int i = 0; i < position.length; i++) position[i] = getDoublePosition(i); }
@Override public void localize(final float[] position) { for (int i = 0; i < position.length; i++) position[i] = getFloatPosition(i); }
@Override public void fwd(final int d) { setPosition(getLongPosition(d) + 1, d); }
@Override public void setPosition(final long position, final int d) { setPosition(position, getData().axis(d).type()); }
@Override public long getLongPosition(final int d) { return getLongPosition(getData().axis(d).type()); }
@Override public int getIntPosition(final int d) { return getIntPosition(getData().axis(d).type()); }
@Override public void initialize(final Data d) { if (data != null) { throw new IllegalStateException("Data already set"); } if (!isCompatible(d)) { throw new IllegalArgumentException("Incompatible data object: " + d); } if (getContext() != d.getContext()) { throw new IllegalArgumentException("Mismatched context: " + d); } data = d; data.incrementReferences(); pos = new HashMap<>(); }
@Override public int getIntPosition(final AxisType axis) { return (int) getLongPosition(axis); }
@Override public void setPosition(final long[] position) { for (int i = 0; i < position.length; i++) setPosition(position[i], i); }
@Override public void move(final long[] distance) { for (int i = 0; i < distance.length; i++) move(distance[i], i); }
@Override public void localize(final int[] position) { for (int i = 0; i < position.length; i++) position[i] = getIntPosition(i); }
@Override public void setSelected(final boolean isSelected) { if (selected != isSelected) { selected = isSelected; final DataViewSelectionEvent event = isSelected ? new DataViewSelectedEvent(this) : new DataViewDeselectedEvent(this); publish(event); } }
@Override public void bck(final int d) { setPosition(getLongPosition(d) - 1, d); }
@Override public void setPosition(final int position, final int d) { setPosition(position, getData().axis(d).type()); }
@Override public float getFloatPosition(final int d) { return getLongPosition(d); }
@Override public void setPosition(final int[] position) { for (int i = 0; i < position.length; i++) setPosition(position[i], i); }
@Override public void move(final int[] distance) { for (int i = 0; i < distance.length; i++) move(distance[i], i); }
@Override public void move(final int distance, final int d) { setPosition(getLongPosition(d) + distance, d); }
@Override public void localize(final long[] position) { for (int i = 0; i < position.length; i++) position[i] = getLongPosition(i); }