Class BitUtil

java.lang.Object
org.opensearch.geometry.utils.BitUtil

public class BitUtil extends Object
Utilities for common Bit twiddling methods. Borrowed heavily from Lucene (org.apache.lucene.util.BitUtil).
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static long
    deinterleave(long b)
    Extract just the even-bits value as a long from the bit-interleaved value
    static final long
    flipFlop(long b)
    flip flops odd with even bits
    static long
    interleave(int even, int odd)
    Interleaves the first 32 bits of each long value

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • BitUtil

      public BitUtil()
  • Method Details

    • interleave

      public static long interleave(int even, int odd)
      Interleaves the first 32 bits of each long value

      Adapted from: bithacks.html#InterleaveBMN

    • deinterleave

      public static long deinterleave(long b)
      Extract just the even-bits value as a long from the bit-interleaved value
    • flipFlop

      public static final long flipFlop(long b)
      flip flops odd with even bits