Tabnine Logo
IntSet
Code IndexAdd Tabnine to your IDE (free)

How to use
IntSet
in
com.badlogic.gdx.utils

Best Java code snippets using com.badlogic.gdx.utils.IntSet (Showing top 20 results out of 315)

origin: libgdx/libgdx

public void addAll (IntSet set) {
  ensureCapacity(set.size);
  IntSetIterator iterator = set.iterator();
  while (iterator.hasNext)
    add(iterator.next());
}
origin: libgdx/libgdx

public boolean equals (Object obj) {
  if (!(obj instanceof IntSet)) return false;
  IntSet other = (IntSet)obj;
  if (other.size != size) return false;
  if (other.hasZeroValue != hasZeroValue) return false;
  for (int i = 0, n = capacity + stashSize; i < n; i++)
    if (keyTable[i] != EMPTY && !other.contains(keyTable[i])) return false;
  return true;
}
origin: libgdx/libgdx

static public IntSet with (int... array) {
  IntSet set = new IntSet();
  set.addAll(array);
  return set;
}
origin: libgdx/libgdx

public void addAll (int[] array, int offset, int length) {
  ensureCapacity(length);
  for (int i = offset, n = i + length; i < n; i++)
    add(array[i]);
}
origin: libgdx/libgdx

private void addStash (int key) {
  if (stashSize == stashCapacity) {
    // Too many pushes occurred and the stash is full, increase the table size.
    resize(capacity << 1);
    addResize(key);
    return;
  }
  // Store key in the stash.
  int index = capacity + stashSize;
  keyTable[index] = key;
  stashSize++;
  size++;
}
origin: libgdx/libgdx

private void handleEvent (NativeEvent e) {
  if (e.getType().equals("mousedown")) {
    if (!e.getEventTarget().equals(canvas) || pressedButtons.contains(getButton(e.getButton()))) {
      float mouseX = getRelativeX(e, canvas);
      float mouseY = getRelativeY(e, canvas);
    this.justTouched = true;
    this.touched[0] = true;
    this.pressedButtons.add(getButton(e.getButton()));
    this.deltaX[0] = 0;
    this.deltaY[0] = 0;
    if (!pressedButtons.contains(getButton(e.getButton()))) return;
    this.pressedButtons.remove(getButton(e.getButton()));
    this.touched[0] = pressedButtons.size > 0;
    if (isCursorCatched()) {
          pressedKeySet.add(code);
          pressedKeyCount++;
          pressedKeys[code] = true;
        pressedKeySet.remove(code);
        pressedKeyCount--;
        pressedKeys[code] = false;
    IntSetIterator iterator = pressedKeySet.iterator();
        pressedKeySet.remove(code);
        pressedKeyCount--;
        pressedKeys[code] = false;
origin: libgdx/libgdx

  pressedButtons.add(event.button);
  justTouched = true;
} else {
  event.type = TouchEvent.TOUCH_UP;
  pressedButtons.remove(event.button);
origin: libgdx/libgdx

  if (key1 == EMPTY) {
    keyTable[index1] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
  index2 = hash2(evictedKey);
  key2 = keyTable[index2];
  if (key2 == EMPTY) {
    keyTable[index2] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
  index3 = hash3(evictedKey);
  key3 = keyTable[index3];
  if (key3 == EMPTY) {
    keyTable[index3] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
} while (true);
addStash(evictedKey);
origin: libgdx/libgdx

@Override
public void mousePressed (MouseEvent e) {
  synchronized (this) {
    TouchEvent event = usedTouchEvents.obtain();
    event.pointer = 0;
    event.x = e.getX();
    event.y = e.getY();
    event.type = TouchEvent.TOUCH_DOWN;
    event.button = toGdxButton(e.getButton());
    event.timeStamp = System.nanoTime();
    touchEvents.add(event);
    deltaX = event.x - touchX;
    deltaY = event.y - touchY;
    touchX = event.x;
    touchY = event.y;
    touchDown = true;
    pressedButtons.add(event.button);
    lwjglAwtCanvas.graphics.requestRendering();
  }
}
origin: libgdx/libgdx

@Override
public void mouseReleased (MouseEvent e) {
  synchronized (this) {
    TouchEvent event = usedTouchEvents.obtain();
    event.pointer = 0;
    event.x = e.getX();
    event.y = e.getY();
    event.button = toGdxButton(e.getButton());
    event.type = TouchEvent.TOUCH_UP;
    event.timeStamp = System.nanoTime();
    touchEvents.add(event);
    deltaX = event.x - touchX;
    deltaY = event.y - touchY;
    touchX = event.x;
    touchY = event.y;
    pressedButtons.remove(event.button);
    if (pressedButtons.size == 0) touchDown = false;
    lwjglAwtCanvas.graphics.requestRendering();
  }
}
origin: org.mini2Dx/mini2Dx-core

public IntSetSerializedCollection(IntSet collection) {
  super(collection);
  final IntSet.IntSetIterator intSetIterator = collection.iterator();
  while(intSetIterator.hasNext) {
    intArray.add(intSetIterator.next());
  }
}
origin: libgdx/libgdx

public void addAll (int... array) {
  addAll(array, 0, array.length);
}
origin: libgdx/libgdx

private void resize (int newSize) {
  int oldEndIndex = capacity + stashSize;
  capacity = newSize;
  threshold = (int)(newSize * loadFactor);
  mask = newSize - 1;
  hashShift = 31 - Integer.numberOfTrailingZeros(newSize);
  stashCapacity = Math.max(3, (int)Math.ceil(Math.log(newSize)) * 2);
  pushIterations = Math.max(Math.min(newSize, 8), (int)Math.sqrt(newSize) / 8);
  int[] oldKeyTable = keyTable;
  keyTable = new int[newSize + stashCapacity];
  int oldSize = size;
  size = hasZeroValue ? 1 : 0;
  stashSize = 0;
  if (oldSize > 0) {
    for (int i = 0; i < oldEndIndex; i++) {
      int key = oldKeyTable[i];
      if (key != EMPTY) addResize(key);
    }
  }
}
origin: libgdx/libgdx

private void handleEvent (NativeEvent e) {
  if (e.getType().equals("mousedown")) {
    if (!e.getEventTarget().equals(canvas) || pressedButtons.contains(getButton(e.getButton()))) {
      float mouseX = getRelativeX(e, canvas);
      float mouseY = getRelativeY(e, canvas);
    this.justTouched = true;
    this.touched[0] = true;
    this.pressedButtons.add(getButton(e.getButton()));
    this.deltaX[0] = 0;
    this.deltaY[0] = 0;
    if (!pressedButtons.contains(getButton(e.getButton()))) return;
    this.pressedButtons.remove(getButton(e.getButton()));
    this.touched[0] = pressedButtons.size > 0;
    if (isCursorCatched()) {
          pressedKeySet.add(code);
          pressedKeyCount++;
          pressedKeys[code] = true;
        pressedKeySet.remove(code);
        pressedKeyCount--;
        pressedKeys[code] = false;
    IntSetIterator iterator = pressedKeySet.iterator();
        pressedKeySet.remove(code);
        pressedKeyCount--;
        pressedKeys[code] = false;
origin: libgdx/libgdx

  pressedButtons.add(event.button);
  justTouched = true;
} else {
  event.type = TouchEvent.TOUCH_UP;
  pressedButtons.remove(event.button);
origin: libgdx/libgdx

public void addAll (int[] array, int offset, int length) {
  ensureCapacity(length);
  for (int i = offset, n = i + length; i < n; i++)
    add(array[i]);
}
origin: libgdx/libgdx

  if (key1 == EMPTY) {
    keyTable[index1] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
  index2 = hash2(evictedKey);
  key2 = keyTable[index2];
  if (key2 == EMPTY) {
    keyTable[index2] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
  index3 = hash3(evictedKey);
  key3 = keyTable[index3];
  if (key3 == EMPTY) {
    keyTable[index3] = evictedKey;
    if (size++ >= threshold) resize(capacity << 1);
    return;
} while (true);
addStash(evictedKey);
origin: libgdx/libgdx

@Override
public void mousePressed (MouseEvent e) {
  synchronized (this) {
    TouchEvent event = usedTouchEvents.obtain();
    event.pointer = 0;
    event.x = e.getX();
    event.y = e.getY();
    event.type = TouchEvent.TOUCH_DOWN;
    event.button = toGdxButton(e.getButton());
    event.timeStamp = System.nanoTime();
    touchEvents.add(event);
    deltaX = event.x - touchX;
    deltaY = event.y - touchY;
    touchX = event.x;
    touchY = event.y;
    touchDown = true;
    pressedButtons.add(event.button);
    lwjglAwtCanvas.graphics.requestRendering();
  }
}
origin: libgdx/libgdx

@Override
public void mouseReleased (MouseEvent e) {
  synchronized (this) {
    TouchEvent event = usedTouchEvents.obtain();
    event.pointer = 0;
    event.x = e.getX();
    event.y = e.getY();
    event.button = toGdxButton(e.getButton());
    event.type = TouchEvent.TOUCH_UP;
    event.timeStamp = System.nanoTime();
    touchEvents.add(event);
    deltaX = event.x - touchX;
    deltaY = event.y - touchY;
    touchX = event.x;
    touchY = event.y;
    pressedButtons.remove(event.button);
    if (pressedButtons.size == 0) touchDown = false;
    lwjglAwtCanvas.graphics.requestRendering();
  }
}
origin: libgdx/libgdx

private void addStash (int key) {
  if (stashSize == stashCapacity) {
    // Too many pushes occurred and the stash is full, increase the table size.
    resize(capacity << 1);
    addResize(key);
    return;
  }
  // Store key in the stash.
  int index = capacity + stashSize;
  keyTable[index] = key;
  stashSize++;
  size++;
}
com.badlogic.gdx.utilsIntSet

Javadoc

An unordered set that uses int keys. This implementation uses cuckoo hashing using 3 hashes, random walking, and a small stash for problematic keys. No allocation is done except when growing the table size.

This set performs very fast contains and remove (typically O(1), worst case O(log(n))). Add may be a bit slower, depending on hash collisions. Load factors greater than 0.91 greatly increase the chances the set will have to rehash to the next higher POT size.

Most used methods

  • add
    Returns true if the key was not already in the set.
  • contains
  • iterator
    Returns an iterator for the keys in the set. Remove is supported. Note that the same iterator instan
  • remove
    Returns true if the key was removed.
  • <init>
    Creates a new set identical to the specified set.
  • addAll
  • addResize
    Skips checks for existing keys.
  • addStash
  • clear
    Clears the set and reduces the size of the backing arrays to be the specified capacity if they are l
  • containsKeyStash
  • ensureCapacity
    Increases the size of the backing array to accommodate the specified number of additional items. Use
  • hash2
  • ensureCapacity,
  • hash2,
  • hash3,
  • push,
  • removeStash,
  • removeStashIndex,
  • resize

Popular in Java

  • Start an intent from android
  • setScale (BigDecimal)
  • putExtra (Intent)
  • getSupportFragmentManager (FragmentActivity)
  • Component (java.awt)
    A component is an object having a graphical representation that can be displayed on the screen and t
  • NumberFormat (java.text)
    The abstract base class for all number formats. This class provides the interface for formatting and
  • Collection (java.util)
    Collection is the root of the collection hierarchy. It defines operations on data collections and t
  • Properties (java.util)
    A Properties object is a Hashtable where the keys and values must be Strings. Each property can have
  • Random (java.util)
    This class provides methods that return pseudo-random values.It is dangerous to seed Random with the
  • BasicDataSource (org.apache.commons.dbcp)
    Basic implementation of javax.sql.DataSource that is configured via JavaBeans properties. This is no
  • Top plugins for Android Studio
Tabnine Logo
  • Products

    Search for Java codeSearch for JavaScript code
  • IDE Plugins

    IntelliJ IDEAWebStormVisual StudioAndroid StudioEclipseVisual Studio CodePyCharmSublime TextPhpStormVimGoLandRubyMineEmacsJupyter NotebookJupyter LabRiderDataGripAppCode
  • Company

    About UsContact UsCareers
  • Resources

    FAQBlogTabnine AcademyTerms of usePrivacy policyJava Code IndexJavascript Code Index
Get Tabnine for your IDE now