public override int GetHashCode()
 {
     unchecked
     {
         var hashCode = EntityGuid.GetHashCode();
         hashCode = (hashCode * 397) ^ AttributeGuid.GetHashCode();
         hashCode = (hashCode * 397) ^ (TagName != null ? TagName.GetHashCode() : 0);
         return(hashCode);
     }
 }
Example #2
0
        private void AddEntityToGuidCache(Entity entity, EntityGuid guid)
        {
            if (!EntityManager.Exists(entity) || guid == EntityGuid.Null)
            {
                return;
            }

            if (m_EntityGuidCache == null)
            {
                m_EntityGuidCache = new Entity[m_EntityCacheSize];
            }

            var hash  = (uint)guid.GetHashCode();
            var index = hash % m_EntityCacheSize;

            m_EntityGuidCache[index] = entity;
        }
Example #3
0
        private Entity GetEntityFromGuidCache(EntityGuid guid)
        {
            if (m_EntityGuidCache == null || guid == EntityGuid.Null)
            {
                return(Entity.Null);
            }

            var hash   = (uint)guid.GetHashCode();
            var index  = hash % m_EntityCacheSize;
            var entity = m_EntityGuidCache[index];

            if (GetEntityGuid(entity) != guid)
            {
                m_EntityGuidCache[index] = Entity.Null;
                return(Entity.Null);
            }

            return(entity);
        }
Example #4
0
 public override int GetHashCode()
 {
     return(EntityGuid.GetHashCode());
 }