| 441 | |
| 442 | template <typename BaseMap> |
| 443 | void NetElementMapWrapper<BaseMap>::addChangeData(ElementChange change) { |
| 444 | uint64_t currentVersion = m_netVersion ? m_netVersion->current() : 0; |
| 445 | starAssert(m_changeData.empty() || m_changeData.last().first <= currentVersion); |
| 446 | |
| 447 | m_changeData.append({currentVersion, std::move(change)}); |
| 448 | |
| 449 | m_changeDataLastVersion = max<int64_t>((int64_t)currentVersion - MaxChangeDataVersions, 0); |
| 450 | while (!m_changeData.empty() && m_changeData.first().first < m_changeDataLastVersion) |
| 451 | m_changeData.removeFirst(); |
| 452 | } |
| 453 | |
| 454 | template <typename BaseMap> |
| 455 | void NetElementMapWrapper<BaseMap>::addPendingChangeData(ElementChange change, float interpolationTime) { |