private void AddTemplate(string moduleName, List <WirePath> wires, FIRRTLNode[] nodeOrder, FIRIO[] ioOrder) { RouteTemplate template = new RouteTemplate(wires, nodeOrder, ioOrder); lock (Templates) { Templates.Add(moduleName, template); } lock (Converters) { if (Converters.TryGetValue(moduleName, out var convs)) { foreach (var conv in convs) { conv.TemplateUpdated(template); } } } }
public void TemplateUpdated(RouteTemplate template) { Ctrl.PlaceWires(Convert(template)); }