| 1021 | } |
| 1022 | |
| 1023 | uint32_t AcquireInstanceIndex(HCollection hcollection) |
| 1024 | { |
| 1025 | Collection* collection = hcollection->m_Collection; |
| 1026 | dmMutex::Lock(collection->m_Mutex); |
| 1027 | uint32_t index = INVALID_INSTANCE_POOL_INDEX; |
| 1028 | if (collection->m_InstanceIdPool.Remaining() > 0) |
| 1029 | { |
| 1030 | index = collection->m_InstanceIdPool.Pop(); |
| 1031 | } |
| 1032 | dmMutex::Unlock(collection->m_Mutex); |
| 1033 | |
| 1034 | return index; |
| 1035 | } |
| 1036 | |
| 1037 | void ReleaseInstanceIndex(uint32_t index, Collection* collection) |
| 1038 | { |