@Override public PhEntryF<T> nextEntry() { double[] d = new double[dims]; PhEntry<T> e = iter.nextEntryReuse(); pre.post(e.getKey(), d); return new PhEntryF<>(d, e.getValue()); }
protected PhIteratorF(PhIteratorBase<T, ? extends PhEntry<T>> iter, int dims, PreProcessorPointF pre) { this.iter = iter; this.pre = pre; this.dims = dims; this.buffer = new PhEntryF<>(new double[dims], null); }
/** * Same as {@link #query(double[], double[])}, except that it returns a list * instead of an iterator. This may be faster for small result sets. * @param min min values * @param max max values * @return List of query results */ public List<PhEntryF<T>> queryAll(double[] min, double[] max) { return queryAll(min, max, Integer.MAX_VALUE, null, e -> new PhEntryF<T>(PhMapperK.toDouble(e.getKey()), e.getValue())); }