| 336 | } |
| 337 | |
| 338 | Entity* Entity::create() { |
| 339 | auto& entities = SharedEntityPool.entities; |
| 340 | auto& usedIndices = SharedEntityPool.usedIndices; |
| 341 | auto& availableEntities = SharedEntityPool.availableEntities; |
| 342 | if (!availableEntities.empty()) { |
| 343 | Ref<Entity> entity = availableEntities.top(); |
| 344 | availableEntities.pop(); |
| 345 | entities[entity->getIndex()] = entity; |
| 346 | usedIndices.insert(entity->getIndex()); |
| 347 | return entity; |
| 348 | } |
| 349 | Entity* entity = Object::createNotNull<Entity>(s_cast<int>(entities.size())); |
| 350 | entities.push_back(entity); |
| 351 | usedIndices.insert(entity->getIndex()); |
| 352 | return entity; |
| 353 | } |
| 354 | |
| 355 | int Entity::getComIndex(String name) { |
| 356 | return SharedEntityPool.getIndex(name); |
nothing calls this directly
no test coverage detected