package com.dronecontrol.droneapi.helpers; public class BinaryDataHelper { public static int getUnsignedByteValue(byte by) { return (int) (by & 0xffL); } public static int getIntValue(byte[] data, int offset, int length) { int tempValue; int integerValue = 0; for (int i = length - 1; i >= 0; i--) { integerValue <<= 8; tempValue = data[offset + i] & 0xFF; integerValue |= tempValue; } return integerValue; } public static float getFloatValue(byte[] data, int offset, int length) { return Float.intBitsToFloat(getIntValue(data, offset, length)); } public static int getNormalizedIntValue(Float value) { if (value < -1.0f) { value = -1.0f; } else if (value > 1.0f) { value = 1.0f; } return Float.floatToIntBits(value); } public static boolean flagSet(int flagsValue, int index) { return (flagsValue & (1 << index)) != 0; } }