/** returns new item from pool */ PoolItem *ObjectPool::obtainPoolItem() { for (int i = 0; i < _max_pool_count; ++i) { if (grabunused(i)) return getObjectAtPos(i); } return NULL; }
bool ObjectPool::obtainPoolItemAndRelease() { for (int i = 0; i < _max_pool_count; ++i) { if (grabunused(i)) { PoolItem *temp = getObjectAtPos(i); setused(i,0); return true; } } return false; }
bool IDManager::isHit(ivec2 pos, const void* obj) { return (getObjectAtPos(pos) == obj); }