Esempio n. 1
0
 public void removeAll() {
   final int count = mObjects.getCount();
   final Object[] objectArray = mObjects.getArray();
   for (int i = 0; i < count; i++) {
     mPendingRemovals.add((BaseObject) objectArray[i]);
   }
   mPendingAdditions.clear();
 }
Esempio n. 2
0
 @Override
 public void reset() {
   commitUpdates();
   final int count = mObjects.getCount();
   for (int i = 0; i < count; i++) {
     BaseObject object = mObjects.get(i);
     object.reset();
   }
 }
 public void invalidateHardwareBuffers() {
   if (sSystemRegistry.contextParameters.supportsVBOs) {
     final int count = mGridList.getCount();
     for (int x = 0; x < count; x++) {
       Grid grid = mGridList.get(x);
       grid.invalidateHardwareBuffers();
     }
   }
 }
Esempio n. 4
0
 @Override
 public void update(float timeDelta, BaseObject parent) {
   commitUpdates();
   final int count = mObjects.getCount();
   if (count > 0) {
     final Object[] objectArray = mObjects.getArray();
     for (int i = 0; i < count; i++) {
       BaseObject object = (BaseObject) objectArray[i];
       object.update(timeDelta, this);
     }
   }
 }
Esempio n. 5
0
 /**
  * Finds a child object by its type. Note that this may invoke the class loader and therefore may
  * be slow.
  *
  * @param classObject The class type to search for (e.g. BaseObject.class).
  * @return
  */
 public <T> T findByClass(Class<T> classObject) {
   T object = null;
   final int count = mObjects.getCount();
   for (int i = 0; i < count; i++) {
     BaseObject currentObject = mObjects.get(i);
     if (currentObject.getClass() == classObject) {
       object = classObject.cast(currentObject);
       break;
     }
   }
   return object;
 }
Esempio n. 6
0
  public void commitUpdates() {
    final int additionCount = mPendingAdditions.getCount();
    if (additionCount > 0) {
      final Object[] additionsArray = mPendingAdditions.getArray();
      for (int i = 0; i < additionCount; i++) {
        BaseObject object = (BaseObject) additionsArray[i];
        mObjects.add(object);
      }
      mPendingAdditions.clear();
    }

    final int removalCount = mPendingRemovals.getCount();
    if (removalCount > 0) {
      final Object[] removalsArray = mPendingRemovals.getArray();

      for (int i = 0; i < removalCount; i++) {
        BaseObject object = (BaseObject) removalsArray[i];
        mObjects.remove(object, true);
      }
      mPendingRemovals.clear();
    }
  }
Esempio n. 7
0
 /** Returns the count after the next commitUpdates() is called. */
 public final int getConcreteCount() {
   return mObjects.getCount() + mPendingAdditions.getCount() - mPendingRemovals.getCount();
 }
Esempio n. 8
0
 public final int getCount() {
   return mObjects.getCount();
 }
Esempio n. 9
0
 public void remove(BaseObject object) {
   mPendingRemovals.add(object);
 }
Esempio n. 10
0
 public void add(BaseObject object) {
   mPendingAdditions.add(object);
 }
Esempio n. 11
0
 public final BaseObject get(int index) {
   return mObjects.get(index);
 }
Esempio n. 12
0
 public void removeAll() {
   mGridList.clear();
 }
Esempio n. 13
0
 public void add(Grid grid) {
   mGridList.add(grid);
 }