/** * Creates a bitmap with the specified java.nio.IntBuffer backend. * The content of the IntBuffer is discarded. * * @param buffer data source */ public EWAHCompressedBitmap32(IntBuffer buffer) { this(new IntBufferWrapper(buffer)); }
@Override public void andLastWord(int mask) { andWord(this.actualSizeInWords - 1, mask); }
@Override public void collapse(int position, int length) { for(int i = 0; i < this.actualSizeInWords - position - length; ++i) { setWord(position + i, getWord(position + length + i)); } for(int i = 0; i < length; ++i) { removeLastWord(); } }
@Override public void clear() { this.actualSizeInWords = 1; setWord(0, 0); }
@Override public void negative_push_back(Buffer32 buffer, int start, int number) { for(int i = 0; i < number; ++i) { push_back(~buffer.getWord(start + i)); } }
@Override public int getLastWord() { return getWord(this.actualSizeInWords - 1); }
@Override public void orLastWord(int mask) { orWord(this.actualSizeInWords - 1, mask); }
@Override public void collapse(int position, int length) { for(int i = 0; i < this.actualSizeInWords - position - length; ++i) { setWord(position + i, getWord(position + length + i)); } for(int i = 0; i < length; ++i) { removeLastWord(); } }
@Override public void clear() { this.actualSizeInWords = 1; setWord(0, 0); }
@Override public void negative_push_back(Buffer32 buffer, int start, int number) { for(int i = 0; i < number; ++i) { push_back(~buffer.getWord(start + i)); } }
@Override public int getLastWord() { return getWord(this.actualSizeInWords - 1); }
@Override public void orLastWord(int mask) { orWord(this.actualSizeInWords - 1, mask); }
@Override public void setLastWord(int word) { setWord(this.actualSizeInWords - 1, word); }
@Override public IntBufferWrapper clone() throws CloneNotSupportedException { return new IntBufferWrapper(this.buffer, this.actualSizeInWords); }
@Override public void push_back(Buffer32 buffer, int start, int number) { for(int i = 0; i < number; ++i) { push_back(buffer.getWord(start + i)); } }
@Override public void andLastWord(int mask) { andWord(this.actualSizeInWords - 1, mask); }
@Override public void push_back(int word) { setWord(this.actualSizeInWords++, word); }