public static void MergeAll(List <string> files, string output, IProgressLog log) { PositionFile result = new PositionFile(); foreach (string fileName in files) { PositionFile posFile = new PositionFile(); log.AddString(String.Format("Reading {0}", fileName)); posFile.Load(fileName); log.AddString(String.Format("Merging {0}", fileName)); result.Merge(posFile); } log.AddString(String.Format("Writing {0}", output)); if (output.EndsWith(".csv")) { result.WriteCsv(output); } else { result.WriteKicad(output); } }
public void Merge(PositionFile other) { components.AddRange(other.UpdateReferences(ComputeDesignators())); }