private void MapBorderNode(BorderNode sourceModelBorderNode, NationalInstruments.Dfir.BorderNode dfirBorderNode) { if (dfirBorderNode != null) { _map.AddMapping(sourceModelBorderNode, dfirBorderNode); int i = 0; foreach (var terminal in sourceModelBorderNode.OuterTerminals) { MapTerminalAndType(terminal, dfirBorderNode.GetOuterTerminal(i)); ++i; } i = 0; foreach (var terminal in sourceModelBorderNode.InnerTerminals) { MapTerminalAndType(terminal, dfirBorderNode.GetInnerTerminal(0, i)); ++i; } } }
private void MapBorderNode(BorderNode sourceModelBorderNode, NationalInstruments.Dfir.BorderNode dfirBorderNode) { if (dfirBorderNode != null) { _map.AddMapping(sourceModelBorderNode, dfirBorderNode); int i = 0; foreach (var terminal in sourceModelBorderNode.OuterTerminals) { _map.MapTerminalAndType(terminal, dfirBorderNode.GetOuterTerminal(i)); ++i; } i = 0; foreach (var terminal in sourceModelBorderNode.InnerTerminals) { // TODO: won't work for border nodes with multiple inner terminals per diagram // also assumes that the border node has the same terminals on each diagram, which // won't be true for the pattern selector // Fortunately, for now, the only inner terminal on OptionPatternStructureSelector is on the first diagram _map.MapTerminalAndType(terminal, dfirBorderNode.GetInnerTerminal(i, 0)); ++i; } } }