package buildcraft.core.lib.utils;
import java.util.BitSet;
public final class BitSetUtils {
private BitSetUtils() {
}
public static BitSet fromByteArray(byte[] bytes) {
BitSet bits = new BitSet(bytes.length * 8);
for (int i = 0; i < bytes.length * 8; i++) {
if ((bytes[i / 8] & (1 << (i % 8))) != 0) {
bits.set(i);
}
}
return bits;
}
public static byte[] toByteArray(BitSet bits) {
return toByteArray(bits, (bits.size() + 7) >> 3);
}
public static byte[] toByteArray(BitSet bits, int sizeInBytes) {
byte[] bytes = new byte[sizeInBytes];
for (int i = 0; i < bits.length(); i++) {
if (bits.get(i)) {
bytes[i / 8] |= 1 << (i % 8);
}
}
return bytes;
}
}