package picard.util; /** * A utility class for dealing with unsigned types. This class is primarily used for promoting a value in an unsigned type to * the same value in the net larger type of the same form (e.g. Integer to Long) */ public class UnsignedTypeUtil { /** Convert an unsigned byte to a signed int */ public static int uByteToInt(final byte unsignedByte) { return unsignedByte & 0xFF; } /** Convert an unsigned byte to a signed short */ public static int uByteToShort(final byte unsignedByte) { return (short) unsignedByte & 0xFF; } /** Convert an unsigned short to an Int */ public static int uShortToInt(final short unsignedShort) { return unsignedShort & 0xFFFF; } /** Convert an unsigned int to a long */ public static long uIntToLong(final int unsignedInt) { return unsignedInt & 0xFFFFFFFFL; } }