package openmods.utils;
import java.util.EnumSet;
import java.util.Iterator;
import java.util.Set;
import net.minecraftforge.common.util.ForgeDirection;
import openmods.utils.ByteUtils.CountingBitIterator;
public class DirUtils {
public static final Set<ForgeDirection> VALID_DIRECTIONS = EnumSet.complementOf(EnumSet.of(ForgeDirection.UNKNOWN));
private static class DirectionBitsetIterator extends CountingBitIterator<ForgeDirection> {
public DirectionBitsetIterator(int value) {
super(value);
}
@Override
protected ForgeDirection convert(int bit) {
return ForgeDirection.getOrientation(bit);
}
}
public static Iterator<ForgeDirection> bitsToValidDirs(int value) {
return new DirectionBitsetIterator(value & 0x3F);
}
public static Iterator<ForgeDirection> bitsToAllDirs(int value) {
return new DirectionBitsetIterator(value & 0x7F);
}
}