public void CreateNew(AEType _type) { AssignmentEntity newEntity = new AssignmentEntity(); int newID = 1000; while (mapSystem.assignmentEntityDictionary.ContainsKey(newID)) { newID++; } newEntity.aeID = newID; newEntity.aeType = _type; newEntity.floor = mapSystem.currentFloor.Value; newEntity.pos = Vector2.zero; newEntity.radius = .5f; newEntity.theta = 0; mapSystem.assignmentEntityDictionary.Add(newEntity.aeID, newEntity); AssignmentEntityRenderer newRenderer = _type == AEType.computer ? GameObject.Instantiate(assCompPrefab, mapSystem.coordinate) : GameObject.Instantiate(assWallPrefab, mapSystem.coordinate); newRenderer.Initialize(newEntity.aeID, infoSystem, mapSystem); mapSystem.SelectAssignmentEntityRenderer(newRenderer); }
private void TestAdd(AEType aeType) { const string ipv4 = "192.168.0.1"; const string maskv4 = "255.255.255.255"; const string localipv6 = "::1"; const string maskv6 = "ffff:ffff:ffff:ffff:ffff:ffff:ffff:ffff"; string outip, outmask; int initialEntries = 0; int numEntries = 0; // remove all existing entries first m_pAddressAccess.GetAccessEntryCount(aeType, out initialEntries); for (int i = initialEntries - 1; i >= 0; i--) { m_pAddressAccess.RemoveAccessEntry(aeType, i); } // add IPv4 entry m_pAddressAccess.AddAccessEntryEx(aeType, ipv4, maskv4); m_pAddressAccess.GetAccessEntryCount(aeType, out numEntries); Debug.Assert(numEntries == 1); m_pAddressAccess.GetAccessEntryEx(aeType, numEntries - 1, out outip, out outmask); Debug.Assert(ipv4 == outip); Debug.Assert(maskv4 == outmask); // remove IPv4 entry m_pAddressAccess.RemoveAccessEntry(aeType, numEntries - 1); m_pAddressAccess.GetAccessEntryCount(aeType, out numEntries); Debug.Assert(numEntries == 0); // add IPv6 entry m_pAddressAccess.AddAccessEntryEx(aeType, localipv6, maskv6); m_pAddressAccess.GetAccessEntryCount(aeType, out numEntries); Debug.Assert(numEntries == 1); m_pAddressAccess.GetAccessEntryEx(aeType, numEntries - 1, out outip, out outmask); Debug.Assert(localipv6 == outip); Debug.Assert(maskv6 == outmask); }
private void TestAdd(AEType aeType) { // 192.168.0.1 (0xC0A80001) in host int form const int hostip = -1062731775; // 255.255.255.255 (0xFFFFFFFF) in int form const int mask = -1; int initialEntries = 0; int numEntries = 0; m_pAddressAccess.GetAccessEntryCount(aeType, out initialEntries); for (int i = initialEntries - 1; i >= 0; i--) { m_pAddressAccess.RemoveAccessEntry(aeType, i); } int netip = IPAddress.HostToNetworkOrder((int)hostip); WMAddressAccessEntry accessEntry = new WMAddressAccessEntry(); accessEntry.dwIPAddress = netip; accessEntry.dwMask = mask; m_pAddressAccess.AddAccessEntry(aeType, ref accessEntry); m_pAddressAccess.GetAccessEntryCount(aeType, out numEntries); Debug.Assert(numEntries == 1); WMAddressAccessEntry outEntry; m_pAddressAccess.GetAccessEntry(aeType, numEntries - 1, out outEntry); Debug.Assert(outEntry.dwIPAddress == accessEntry.dwIPAddress); Debug.Assert(outEntry.dwMask == accessEntry.dwMask); m_pAddressAccess.RemoveAccessEntry(aeType, numEntries - 1); m_pAddressAccess.GetAccessEntryCount(aeType, out numEntries); Debug.Assert(numEntries == 0); }