/** * Aggregate the iterators using a bitmap buffer. * * @param al iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in 64-bit words * @return xor aggregate */ public static IteratingRLW bufferedxor(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedXORIterator(basell, bufSize)); }
/** * Aggregate the iterators using a bitmap buffer. * * @param al iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in 64-bit words * @return xor aggregate */ public static IteratingRLW bufferedxor(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedXORIterator(basell, bufSize)); }
/** * Aggregate the iterators using a bitmap buffer. * * @param al set of iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in * 64-bit words (per input iterator) * @return and aggregate */ public static IteratingRLW bufferedand(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedAndIterator(basell, bufSize)); }
/** * Aggregate the iterators using a bitmap buffer. * * @param al iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in * 64-bit words * @return or aggregate */ public static IteratingRLW bufferedor(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedORIterator(basell, bufSize)); }
/** * Aggregate the iterators using a bitmap buffer. * * @param al iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in * 64-bit words * @return or aggregate */ public static IteratingRLW bufferedor(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedORIterator(basell, bufSize)); }
/** * Aggregate the iterators using a bitmap buffer. * * @param al set of iterators to aggregate * @param bufSize size of the internal buffer used by the iterator in * 64-bit words (per input iterator) * @return and aggregate */ public static IteratingRLW bufferedand(final int bufSize, final IteratingRLW... al) { if (al.length == 0) throw new IllegalArgumentException("Need at least one iterator"); if (al.length == 1) return al[0]; final LinkedList<IteratingRLW> basell = new LinkedList<IteratingRLW>(); Collections.addAll(basell, al); return new BufferedIterator(new BufferedAndIterator(basell, bufSize)); }