Box2DX.Collision.PairManager.AddPair C# (CSharp) Метод

AddPair() приватный Метод

private AddPair ( int proxyId1, int proxyId2 ) : Pair
proxyId1 int
proxyId2 int
Результат Pair
		private Pair AddPair(int proxyId1, int proxyId2)
		{
			if (proxyId1 > proxyId2)
				Common.Math.Swap<int>(ref proxyId1, ref proxyId2);

			int hash = (int)(Hash((uint)proxyId1, (uint)proxyId2) & PairManager.TableMask);

			Pair pair = Find(proxyId1, proxyId2, (uint)hash);
			if (pair != null)
			{
				return pair;
			}

			Box2DXDebug.Assert(_pairCount < Settings.MaxPairs && _freePair != PairManager.NullPair);

			ushort pairIndex = _freePair;
			pair = _pairs[pairIndex];
			_freePair = pair.Next;

			pair.ProxyId1 = (ushort)proxyId1;
			pair.ProxyId2 = (ushort)proxyId2;
			pair.Status = 0;
			pair.UserData = null;
			pair.Next = _hashTable[hash];

			_hashTable[hash] = pairIndex;

			++_pairCount;

			return pair;
		}