private void CreateCustIntervalTsv(string fileName) { if (string.IsNullOrEmpty(fileName)) { return; } var benchMark = new Benchmark(); var version = DataSourceVersionReader.GetSourceVersion(fileName); var reader = new CustomIntervalParser(new FileInfo(fileName), _refNamesDictionary); using (var writer = new IntervalTsvWriter(_outputDirectory, version, _genomeAssembly.ToString(), SaTsvCommon.CustIntervalSchemaVersion, reader.KeyName, ReportFor.AllVariants)) { foreach (var custInterval in reader.GetCustomIntervals()) { writer.AddEntry(custInterval.Chromosome.EnsemblName, custInterval.Start, custInterval.End, custInterval.GetJsonString()); } } var timeSpan = Benchmark.ToHumanReadable(benchMark.GetElapsedTime()); TsvWriterUtilities.WriteCompleteInfo("customInterval", fileName, timeSpan); }
private void CreateMitoMapSvTsv(IReadOnlyList <string> mitoMapSvFileNames) { if (mitoMapSvFileNames.Count == 0 || mitoMapSvFileNames.Any(string.IsNullOrEmpty)) { return; } var benchMark = new Benchmark(); var rootDirectory = new FileInfo(mitoMapSvFileNames[0]).Directory; var version = DataSourceVersionReader.GetSourceVersion(Path.Combine(rootDirectory.ToString(), "mitoMapSV")); var sequenceProvider = new ReferenceSequenceProvider(FileUtilities.GetReadStream(_compressedReferencePath)); sequenceProvider.LoadChromosome(new Chromosome("chrM", "MT", 24)); var mitoMapSvReaders = new List <MitoMapSvReader>(); foreach (var mitoMapFileName in mitoMapSvFileNames) { mitoMapSvReaders.Add(new MitoMapSvReader(new FileInfo(mitoMapFileName), sequenceProvider)); } var mergedMitoMapItems = MitoMapSvReader.MergeAndSort(mitoMapSvReaders); using (var writer = new IntervalTsvWriter(_outputDirectory, version, GenomeAssembly.rCRS.ToString(), SaTsvCommon.MitoMapSchemaVersion, InterimSaCommon.MitoMapTag, ReportFor.StructuralVariants)) CreateSvTsv(mergedMitoMapItems, writer); var timeSpan = Benchmark.ToHumanReadable(benchMark.GetElapsedTime()); TsvWriterUtilities.WriteCompleteInfo(InterimSaCommon.MitoMapTag, version.Version, timeSpan); }
private static void CreateSvTsv(IEnumerable <SupplementaryDataItem> siItems, IntervalTsvWriter writer) { foreach (var siItem in siItems) { var interval = siItem.GetSupplementaryInterval(); writer.AddEntry(interval.Chromosome.EnsemblName, interval.Start, interval.End, interval.GetJsonString()); } }
private void CreateSvTsv(string sourceName, string fileName) { if (string.IsNullOrEmpty(fileName)) { return; } var benchMark = new Benchmark(); //Console.WriteLine($"Creating TSV from {fileName}"); var dataSource = ""; var version = DataSourceVersionReader.GetSourceVersion(fileName); switch (sourceName) { case InterimSaCommon.DgvTag: dataSource = "DGV"; using (var writer = new IntervalTsvWriter(_outputDirectory, version, _genomeAssembly.ToString(), SaTsvCommon.DgvSchemaVersion, InterimSaCommon.DgvTag, ReportFor.StructuralVariants)) { var reader = new DgvReader(new FileInfo(fileName), _refNamesDictionary); CreateSvTsv(reader.GetDgvItems(), writer); } break; case InterimSaCommon.ClinGenTag: dataSource = "ClinGen"; using (var writer = new IntervalTsvWriter(_outputDirectory, version, _genomeAssembly.ToString(), SaTsvCommon.ClinGenSchemaVersion, InterimSaCommon.ClinGenTag, ReportFor.StructuralVariants)) { var reader = new ClinGenReader(new FileInfo(fileName), _refNamesDictionary); CreateSvTsv(reader.GetClinGenItems(), writer); } break; case InterimSaCommon.OnekSvTag: dataSource = "OnekSv"; using (var writer = new IntervalTsvWriter(_outputDirectory, version, _genomeAssembly.ToString(), SaTsvCommon.OneKgenSchemaVersion, InterimSaCommon.OnekSvTag, ReportFor.StructuralVariants)) { var reader = new OneKGenSvReader(new FileInfo(fileName), _refNamesDictionary); CreateSvTsv(reader.GetOneKGenSvItems(), writer); } break; default: Console.WriteLine("invalid source name"); break; } var timeSpan = Benchmark.ToHumanReadable(benchMark.GetElapsedTime()); TsvWriterUtilities.WriteCompleteInfo(dataSource, version.Version, timeSpan); }
public void CreateTsv() { var benchMark = new Benchmark(); const string dataSource = "COSMIC"; if (_cnvStream != null) { using (var writer = new IntervalTsvWriter(_outputDirectory, _version, _genomeAssembly.ToString(), SaTsvCommon.CosmicSvSchemaVersion, InterimSaCommon.CosmicCnvTag, ReportFor.StructuralVariants)) using (var cnvReader = new CosmicCnvReader(_cnvStream, _refNameToChorm, _genomeAssembly)) { foreach (var cnvEntry in cnvReader.GetEntries()) { writer.AddEntry(cnvEntry.Chromosome.EnsemblName, cnvEntry.Start, cnvEntry.End, cnvEntry.GetJsonString()); } } } var timeSpan = Benchmark.ToHumanReadable(benchMark.GetElapsedTime()); TsvWriterUtilities.WriteCompleteInfo(dataSource, _version.Version, timeSpan); }