//Copy Constructor public TECSubScope(TECSubScope sourceSubScope, Dictionary <Guid, Guid> guidDictionary = null, ObservableListDictionary <ITECObject> characteristicReference = null) : this() { if (guidDictionary != null) { guidDictionary[_guid] = sourceSubScope.Guid; } foreach (IEndDevice device in sourceSubScope.Devices) { Devices.Add(device); } foreach (TECPoint point in sourceSubScope.Points) { var toAdd = new TECPoint(point); characteristicReference?.AddItem(point, toAdd); Points.Add(toAdd); } foreach (TECInterlockConnection interlock in sourceSubScope.Interlocks) { var toAdd = new TECInterlockConnection(interlock); characteristicReference?.AddItem(interlock, toAdd); Interlocks.Add(toAdd); } foreach (TECScopeBranch branch in sourceSubScope.ScopeBranches) { var toAdd = new TECScopeBranch(branch); characteristicReference?.AddItem(branch, toAdd); ScopeBranches.Add(toAdd); } this.copyPropertiesFromScope(sourceSubScope); }
public TECInterlockConnection(TECInterlockConnection source, Dictionary <Guid, Guid> guidDictionary = null) : this(source.ConnectionTypes) { this.copyPropertiesFromScope(source); this.connection = new ConnectionWrapper(source.connection, guidDictionary); subscribeToConnection(); }