public static float decodeFloat32(PositionedByteRange src) {
    final byte header = src.get();
    assert header == FIXED_FLOAT32 || header == DESCENDING.apply(FIXED_FLOAT32);
    Order ord = header == FIXED_FLOAT32 ? ASCENDING : DESCENDING;
    int val = ord.apply(src.get()) & 0xff;
    for (int i = 1; i < 4; i++) {
      val = (val << 8) + (ord.apply(src.get()) & 0xff);
    }
    val ^= (~val >> (Integer.SIZE - 1)) | Integer.MIN_VALUE;
    return Float.intBitsToFloat(val);
  }
Decode a 32-bit floating point value using the fixed-length encoding.
@see #encodeFloat32(PositionedByteRange, float, Order)
hbase-common/src/main/java/org/apache/hadoop/hbase/util/OrderedBytes.java