public MinStatisticsCollector(ChromCacheMinimizer chromCacheMinimizer) { ChromCacheMinimizer = chromCacheMinimizer; var filePathToReplicateIndex = new Dictionary <MsDataFileUri, int>(); var results = Document.Settings.MeasuredResults; for (int i = 0; i < results.Chromatograms.Count; i++) { var chromatogramSet = results.Chromatograms[i]; foreach (var msDataFilePath in chromatogramSet.MSDataFilePaths) { filePathToReplicateIndex[msDataFilePath] = i; } } var cachedFiles = ChromCacheMinimizer.ChromatogramCache.CachedFiles; _fileIndexToReplicateIndex = new int[cachedFiles.Count]; bool hasOrphanFiles = false; for (int fileIndex = 0; fileIndex < cachedFiles.Count; fileIndex++) { int replicateIndex; if (filePathToReplicateIndex.TryGetValue(cachedFiles[fileIndex].FilePath, out replicateIndex)) { _fileIndexToReplicateIndex[fileIndex] = replicateIndex; } else { _fileIndexToReplicateIndex[fileIndex] = results.Chromatograms.Count; hasOrphanFiles = true; } } _replicates = new MinStatistics.Replicate[results.Chromatograms.Count + (hasOrphanFiles ? 1 : 0)]; for (int i = 0; i < results.Chromatograms.Count; i++) { _replicates[i].Name = results.Chromatograms[i].Name; } if (hasOrphanFiles) { _replicates[results.Chromatograms.Count].Name = "<Unmatched Files>"; // Not L10N? Function invoke uses? } foreach (var chromHeaderInfo in ChromCacheMinimizer.ChromGroupHeaderInfos) { _replicates[_fileIndexToReplicateIndex[chromHeaderInfo.FileIndex]].OriginalFileSize += GetFileSize(chromHeaderInfo); } }
public MinStatisticsCollector(ChromCacheMinimizer chromCacheMinimizer) { ChromCacheMinimizer = chromCacheMinimizer; var filePathToReplicateIndex = new Dictionary<MsDataFileUri, int>(); var results = Document.Settings.MeasuredResults; for (int i = 0; i < results.Chromatograms.Count; i++) { var chromatogramSet = results.Chromatograms[i]; foreach (var msDataFilePath in chromatogramSet.MSDataFilePaths) { filePathToReplicateIndex[msDataFilePath] = i; } } var cachedFiles = ChromCacheMinimizer.ChromatogramCache.CachedFiles; _fileIndexToReplicateIndex = new int[cachedFiles.Count]; bool hasOrphanFiles = false; for (int fileIndex = 0; fileIndex < cachedFiles.Count; fileIndex++) { int replicateIndex; if (filePathToReplicateIndex.TryGetValue(cachedFiles[fileIndex].FilePath, out replicateIndex)) { _fileIndexToReplicateIndex[fileIndex] = replicateIndex; } else { _fileIndexToReplicateIndex[fileIndex] = results.Chromatograms.Count; hasOrphanFiles = true; } } _replicates = new MinStatistics.Replicate[results.Chromatograms.Count + (hasOrphanFiles ? 1 : 0)]; for (int i = 0; i < results.Chromatograms.Count; i++ ) { _replicates[i].Name = results.Chromatograms[i].Name; } if (hasOrphanFiles) { _replicates[results.Chromatograms.Count].Name = "<Unmatched Files>"; // Not L10N? Function invoke uses? } foreach (var chromHeaderInfo in ChromCacheMinimizer.ChromGroupHeaderInfos) { _replicates[_fileIndexToReplicateIndex[chromHeaderInfo.FileIndex]].OriginalFileSize += GetFileSize(chromHeaderInfo); } }
public GridRowItem(ChromCacheMinimizer.MinStatistics.Replicate replicateStats) : this() { Name = replicateStats.Name; Size = new FileSize(replicateStats.OriginalFileSize); if (replicateStats.MinimizedRatio.HasValue) { MinimizedSize = Math.Round(replicateStats.MinimizedRatio.Value, 2); } }
void OnProgress(ChromCacheMinimizer.MinStatistics minStatistics) { lock(this) { CheckDisposed(); bool updateUi = _minStatistics == null || _minStatistics.PercentComplete != minStatistics.PercentComplete; _minStatistics = minStatistics; if (ReferenceEquals(_dlg.StatisticsCollector, this)) { if (updateUi && !_updatePending) { //_updatePending = true; try { _dlg.BeginInvoke(new Action(UpdateStatistics)); } catch (Exception x) { throw new ObjectDisposedException(_dlg.GetType().FullName, x); } } } } if (_longWaitBroker != null) { _longWaitBroker.ProgressValue = minStatistics.PercentComplete; if (_longWaitBroker.IsCanceled) { throw new ObjectDisposedException(GetType().FullName); } } }
private static ResultsTestDocumentContainer MinimizeCacheFile(SrmDocument document, ChromCacheMinimizer.Settings settings, string skyFilePath) { string skydFilePath = Path.ChangeExtension(skyFilePath, ChromatogramCache.EXT); ChromCacheMinimizer chromCacheMinimizer = document.Settings.MeasuredResults.GetChromCacheMinimizer(document); using (var fs = new FileSaver(skydFilePath)) using (var fsScans = new FileSaver(skydFilePath + ChromatogramCache.SCANS_EXT, true)) using (var fsPeaks = new FileSaver(skydFilePath + ChromatogramCache.PEAKS_EXT, true)) using (var fsScores = new FileSaver(skydFilePath + ChromatogramCache.SCORES_EXT, true)) { fs.Stream = File.OpenWrite(fs.SafeName); chromCacheMinimizer.Minimize(settings, null, fs.Stream, fsScans.FileStream, fsPeaks.FileStream, fsScores.FileStream); fs.Commit(); } using (var writer = new XmlTextWriter(skyFilePath, Encoding.UTF8) {Formatting = Formatting.Indented}) { var ser = new XmlSerializer(typeof (SrmDocument)); ser.Serialize(writer, document); writer.Flush(); writer.Close(); } var container = new ResultsTestDocumentContainer(document, skyFilePath, false); Assert.IsTrue(container.SetDocument(ResultsUtil.DeserializeDocument(skyFilePath), document, true)); return container; }