Class BucketList<E>

java.lang.Object
com.hypixel.hytale.common.collection.BucketList<E>
Direct Known Subclasses:
EntityList

public class BucketList<E> extends Object
  • Field Details

    • INITIAL_BUCKET_ITEM_ARRAY_SIZE

      public static final int INITIAL_BUCKET_ITEM_ARRAY_SIZE
      See Also:
    • CLOSER_TO_SELF

      public static final Comparator<BucketItem<?>> CLOSER_TO_SELF
    • EMPTY_INDICES

      protected static final byte[] EMPTY_INDICES
    • bucketItemPool

      protected BucketItemPool<E> bucketItemPool
    • buckets

      @Nullable protected BucketList.Bucket<E>[] buckets
    • bucketIndices

      protected byte[] bucketIndices
    • bucketCount

      protected int bucketCount
    • squaredMaxDistance

      protected int squaredMaxDistance
  • Constructor Details

  • Method Details

    • setBucketItemPool

      public void setBucketItemPool(@Nonnull BucketItemPool<E> bucketItemPool)
    • clear

      public void clear()
    • reset

      public void reset()
    • configure

      public void configure(@Nonnull int[] bucketRanges)
    • configure

      public void configure(@Nonnull int[] bucketRanges, int initialBucketItemArraySize)
    • configureWithPreSortedArray

      public void configureWithPreSortedArray(@Nonnull int[] bucketRanges)
    • configureWithPreSortedArray

      public void configureWithPreSortedArray(@Nonnull int[] bucketRanges, int initialBucketItemArraySize)
    • configureWithPresortedArray

      public void configureWithPresortedArray(@Nonnull it.unimi.dsi.fastutil.ints.IntArrayList bucketRanges, int initialBucketItemArraySize)
    • add

      public boolean add(@Nonnull E item, double squaredDistance)
    • getBucketCount

      public int getBucketCount()
    • getBucket

      @Nullable public BucketList.Bucket<E> getBucket(int index)
    • getFirstBucketIndex

      public int getFirstBucketIndex(int distanceSquared)
    • getLastBucketIndex

      public int getLastBucketIndex(int distanceSquared)
    • getClosestInRange

      @Nullable public E getClosestInRange(int minRange, int maxRange, @Nonnull Predicate<E> filter, @Nonnull BucketList.SortBufferProvider sortBufferProvider)
    • addBucketDistance

      public static void addBucketDistance(@Nonnull it.unimi.dsi.fastutil.ints.IntArrayList bucketRanges, int maxBucketCount, int distance)
    • addBucketDistance

      public static void addBucketDistance(@Nonnull it.unimi.dsi.fastutil.ints.IntArrayList bucketRanges, int maxBucketCount, int distance, int keepDistance)
    • area

      protected static int area(int inner, int outer)