/// <summary> /// Copies file lists from other SourceFilesClass to this. /// </summary> /// <param name="Other">Source object.</param> public void CopyFrom(SourceFilesClass Other) { CopyFromListToList(Other.MissingFiles, MissingFiles); CopyFromListToList(Other.CPPFiles, CPPFiles); CopyFromListToList(Other.CFiles, CFiles); CopyFromListToList(Other.CCFiles, CCFiles); CopyFromListToList(Other.MMFiles, MMFiles); CopyFromListToList(Other.RCFiles, RCFiles); CopyFromListToList(Other.OtherFiles, OtherFiles); }
/** Categorizes source files into per-extension buckets */ private static void CategorizeSourceFiles(IEnumerable<FileItem> InSourceFiles, SourceFilesClass OutSourceFiles) { foreach (var SourceFile in InSourceFiles) { string Extension = Path.GetExtension(SourceFile.AbsolutePath).ToUpperInvariant(); if (!SourceFile.bExists) { OutSourceFiles.MissingFiles.Add(SourceFile); } else if (Extension == ".CPP") { OutSourceFiles.CPPFiles.Add(SourceFile); } else if (Extension == ".C") { OutSourceFiles.CFiles.Add(SourceFile); } else if (Extension == ".CC") { OutSourceFiles.CCFiles.Add(SourceFile); } else if (Extension == ".MM" || Extension == ".M") { OutSourceFiles.MMFiles.Add(SourceFile); } else if (Extension == ".RC") { OutSourceFiles.RCFiles.Add(SourceFile); } else { OutSourceFiles.OtherFiles.Add(SourceFile); } } }