@Override public Bitmap clone() { try { return new EwahBitmapWrapper(bitmap.clone()); } catch (CloneNotSupportedException e) { throw new RuntimeException(e); } }
@Override public Bitmap flip(int rangeStart, int rangeEnd) { // synthesized with 2-upper-bounded NOTs // unfortunately, cannot be used with an immutable bitmap. // for that case, could synthesize from XOR and a mask for the range int savedSize = bitmap.sizeInBits(); EWAHCompressedBitmap temp = null; try { temp = (EWAHCompressedBitmap) bitmap.clone(); } catch (CloneNotSupportedException e) { } ; temp.setSizeInBits(rangeEnd, false); temp.not(); if (rangeStart != 0) { temp.setSizeInBits(rangeStart - 1, false); temp.not(); } temp.setSizeInBits(savedSize, false); return new EwahBitmapWrapper(temp); }
@Override public BufferedAndIterator clone() throws CloneNotSupportedException { BufferedAndIterator answer = (BufferedAndIterator) super.clone(); answer.buffer = this.buffer.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }
@Override public AnalysisFormat clone() { UVBitmapFormat uvf = new UVBitmapFormat(); uvf.value = this.value; try { uvf.bitmap = this.bitmap.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } return uvf; } }
@Override public BufferedAndIterator clone() throws CloneNotSupportedException { BufferedAndIterator answer = (BufferedAndIterator) super.clone(); answer.buffer = this.buffer.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }
@Override public BufferedXORIterator clone() throws CloneNotSupportedException { BufferedXORIterator answer = (BufferedXORIterator) super.clone(); answer.buffer = this.buffer.clone(); answer.hardbitmap = this.hardbitmap.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }
@Override public BufferedXORIterator clone() throws CloneNotSupportedException { BufferedXORIterator answer = (BufferedXORIterator) super .clone(); answer.buffer = this.buffer.clone(); answer.hardbitmap = this.hardBitmap.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }
@Override public BufferedXORIterator clone() throws CloneNotSupportedException { BufferedXORIterator answer = (BufferedXORIterator) super.clone(); answer.buffer = this.buffer.clone(); answer.hardbitmap = this.hardbitmap.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }
@Override public BufferedXORIterator clone() throws CloneNotSupportedException { BufferedXORIterator answer = (BufferedXORIterator) super .clone(); answer.buffer = this.buffer.clone(); answer.hardbitmap = this.hardBitmap.clone(); answer.ll = (LinkedList<IteratingRLW>) this.ll.clone(); return answer; }