Package com.itextpdf.text.pdf.qrcode
Class BitArray
- java.lang.Object
-
- com.itextpdf.text.pdf.qrcode.BitArray
-
public final class BitArray extends Object
A simple, fast array of bits, represented compactly by an array of ints internally.
- Since:
- 5.0.2
- Author:
- Sean Owen
-
-
Constructor Summary
Constructors Constructor Description BitArray(int size)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
clear()
Clears all bits (sets to false).void
flip(int i)
Flips bit i.boolean
get(int i)
int[]
getBitArray()
int
getSize()
boolean
isRange(int start, int end, boolean value)
Efficient method to check if a range of bits is set, or not set.void
reverse()
Reverses all bits in the array.void
set(int i)
Sets bit i.void
setBulk(int i, int newBits)
Sets a block of 32 bits, starting at bit i.String
toString()
-
-
-
Method Detail
-
getSize
public int getSize()
-
get
public boolean get(int i)
- Parameters:
i
- bit to get- Returns:
- true iff bit i is set
-
set
public void set(int i)
Sets bit i.- Parameters:
i
- bit to set
-
flip
public void flip(int i)
Flips bit i.- Parameters:
i
- bit to set
-
setBulk
public void setBulk(int i, int newBits)
Sets a block of 32 bits, starting at bit i.- Parameters:
i
- first bit to setnewBits
- the new value of the next 32 bits. Note again that the least-significant bit corresponds to bit i, the next-least-significant to i+1, and so on.
-
clear
public void clear()
Clears all bits (sets to false).
-
isRange
public boolean isRange(int start, int end, boolean value)
Efficient method to check if a range of bits is set, or not set.- Parameters:
start
- start of range, inclusive.end
- end of range, exclusivevalue
- if true, checks that bits in range are set, otherwise checks that they are not set- Returns:
- true iff all bits are set or not set in range, according to value argument
- Throws:
IllegalArgumentException
- if end is less than or equal to start
-
getBitArray
public int[] getBitArray()
- Returns:
- underlying array of ints. The first element holds the first 32 bits, and the least significant bit is bit 0.
-
reverse
public void reverse()
Reverses all bits in the array.
-
-