NetworkEntityTracker.inl 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. /*
  2. * Copyright (c) Contributors to the Open 3D Engine Project.
  3. * For complete copyright and license terms please see the LICENSE at the root of this distribution.
  4. *
  5. * SPDX-License-Identifier: Apache-2.0 OR MIT
  6. *
  7. */
  8. #pragma once
  9. namespace Multiplayer
  10. {
  11. inline NetBindComponent* NetworkEntityTracker::GetNetBindComponent(AZ::Entity* rawEntity) const
  12. {
  13. auto found = m_netBindingMap.find(rawEntity);
  14. if (found != m_netBindingMap.end())
  15. {
  16. return found->second;
  17. }
  18. return nullptr;
  19. }
  20. inline NetworkEntityTracker::iterator NetworkEntityTracker::begin()
  21. {
  22. return m_entityMap.begin();
  23. }
  24. inline NetworkEntityTracker::const_iterator NetworkEntityTracker::begin() const
  25. {
  26. return m_entityMap.begin();
  27. }
  28. inline NetworkEntityTracker::iterator NetworkEntityTracker::end()
  29. {
  30. return m_entityMap.end();
  31. }
  32. inline NetworkEntityTracker::const_iterator NetworkEntityTracker::end() const
  33. {
  34. return m_entityMap.end();
  35. }
  36. inline NetworkEntityTracker::iterator NetworkEntityTracker::find(NetEntityId netEntityId)
  37. {
  38. return m_entityMap.find(netEntityId);
  39. }
  40. inline NetworkEntityTracker::const_iterator NetworkEntityTracker::find(NetEntityId netEntityId) const
  41. {
  42. return m_entityMap.find(netEntityId);
  43. }
  44. inline AZStd::size_t NetworkEntityTracker::size() const
  45. {
  46. return m_entityMap.size();
  47. }
  48. inline void NetworkEntityTracker::clear()
  49. {
  50. m_entityMap.clear();
  51. m_netEntityIdMap.clear();
  52. }
  53. inline uint32_t NetworkEntityTracker::GetChangeDirty(const AZ::Entity* entity) const
  54. {
  55. return (entity != nullptr) ? GetDeleteChangeDirty() : GetAddChangeDirty();
  56. }
  57. inline uint32_t NetworkEntityTracker::GetDeleteChangeDirty() const
  58. {
  59. return m_deleteChangeDirty;
  60. }
  61. inline uint32_t NetworkEntityTracker::GetAddChangeDirty() const
  62. {
  63. return m_addChangeDirty;
  64. }
  65. }