private void TestReadMzML(FileSystemInfo mzMLFile, int expectedSpectra) { var methodName = MethodBase.GetCurrentMethod().Name; Utils.ShowStarting(methodName, mzMLFile.Name); var timer = new Stopwatch(); timer.Start(); var reader = new MzMLReader(mzMLFile.FullName); var constTime = timer.Elapsed; Console.WriteLine(@"Constructor time: " + constTime); var numSpectra = reader.NumSpectra; var metaTime = timer.Elapsed - constTime; Console.WriteLine(@"Metadata read time: " + metaTime); var spectra = reader.ReadAllSpectra(); var spectraCount = spectra.Count(); timer.Stop(); reader.Close(); Console.WriteLine(@"Spectra Read time: " + (timer.Elapsed - metaTime)); Console.WriteLine(@"Time: " + timer.Elapsed); Assert.AreEqual(expectedSpectra, numSpectra, "NumSpectra"); Assert.AreEqual(expectedSpectra, spectraCount, "SpectraCount"); }
/// <summary> /// Gets the appropriate IMassSpecDataReader for the supplied path. /// It is recommended that "NormalizeDatasetPath" be called prior to calling this function, and that the returned string be used instead of the original path /// </summary> /// <param name="filePath"></param> /// <returns></returns> /// <remarks>It is recommended that "NormalizeDatasetPath" be called prior to calling this function, and that the returned string be used instead of the original path</remarks> public static IMassSpecDataReader GetMassSpecDataReader(string filePath) { filePath = NormalizeDatasetPath(filePath); var type = GetMassSpecDataType(filePath); IMassSpecDataReader reader = null; switch (type) { case MassSpecDataType.XCaliburRun: reader = new XCaliburReader(filePath); break; case MassSpecDataType.MzMLFile: reader = new MzMLReader(filePath); break; case MassSpecDataType.PbfFile: reader = new PbfLcMsRun(filePath); break; case MassSpecDataType.Unknown: if (_pwizAvailable) { reader = new ProteoWizardReader(filePath); } break; } return(reader); }
public void MzMLIndexedReadTest(string inputFileRelativePath, int expectedSpectra) { if (!TestPath.FindInputFile(inputFileRelativePath, out var sourceFile)) { Console.WriteLine("File not found: " + inputFileRelativePath); return; } var reader = new MzMLReader(Path.Combine(TestPath.ExtTestDataDirectory, sourceFile.FullName)); //mzMLType mzMLData = reader.Read(); var mzMLData = new MSData(reader.Read()); Console.WriteLine("Spectrum count: " + mzMLData.Run.SpectrumList.Spectra.Count); Assert.AreEqual(expectedSpectra, mzMLData.Run.SpectrumList.Spectra.Count, "Spectrum count"); }
public void MzMLIndexedReadTest(string inputFileRelativePath, int expectedSpectra) { if (!TestPath.FindInputFile(inputFileRelativePath, out var sourceFile)) { Console.WriteLine("File not found: " + inputFileRelativePath); return; } var reader = new MzMLReader(sourceFile.FullName); var mzMLData = reader.Read(); Console.WriteLine("Spectrum count: " + mzMLData.run.spectrumList.count); Console.WriteLine("Array length: " + mzMLData.run.spectrumList.spectrum.Count); Assert.AreEqual(expectedSpectra.ToString(), mzMLData.run.spectrumList.count, "Spectrum Count"); Assert.AreEqual(expectedSpectra, mzMLData.run.spectrumList.spectrum.Count, "Array length"); }
public void MzMLIndexedReadTest(string path, int expectedSpectra) { var sourceFile = new FileInfo(Path.Combine(TestPath.ExtTestDataDirectory, path)); if (!sourceFile.Exists) { Console.WriteLine("File not found: " + sourceFile.FullName); return; } var reader = new MzMLReader(Path.Combine(TestPath.ExtTestDataDirectory, sourceFile.FullName)); //mzMLType mzMLData = reader.Read(); var mzMLData = new MSData(reader.Read()); Console.WriteLine("Spectrum count: " + mzMLData.Run.SpectrumList.Spectra.Count); Assert.AreEqual(expectedSpectra, mzMLData.Run.SpectrumList.Spectra.Count, "Spectrum count"); }
public void MzMLIndexedReadTest(string path, int expectedSpectra) { var sourceFile = new FileInfo(Path.Combine(TestPath.ExtTestDataDirectory, path)); if (!sourceFile.Exists) { Console.WriteLine("File not found: " + sourceFile.FullName); return; } var reader = new MzMLReader(sourceFile.FullName); var mzMLData = reader.Read(); Console.WriteLine("Spectrum count: " + mzMLData.run.spectrumList.count); Console.WriteLine("Array length: " + mzMLData.run.spectrumList.spectrum.Count); Assert.AreEqual(expectedSpectra.ToString(), mzMLData.run.spectrumList.count, "Spectrum Count"); Assert.AreEqual(expectedSpectra, mzMLData.run.spectrumList.spectrum.Count, "Array length"); }
public void MzMLWriteTest(string inPath, string outFolderName, int expectedSpectra) { var sourceFile = new FileInfo(Path.Combine(TestPath.ExtTestDataDirectory, inPath)); if (!sourceFile.Exists) { Console.WriteLine("File not found: " + sourceFile.FullName); return; } if (sourceFile.DirectoryName == null) { throw new DirectoryNotFoundException("Cannot determine the parent folder of " + sourceFile.FullName); } var outFolder = new DirectoryInfo(Path.Combine(sourceFile.DirectoryName, outFolderName)); if (!outFolder.Exists) { outFolder.Create(); } var outFile = new FileInfo(Path.Combine(outFolder.FullName, sourceFile.Name)); var reader = new MzMLReader(Path.Combine(TestPath.ExtTestDataDirectory, inPath)); var mzMLData = reader.Read(); Console.WriteLine("Spectrum count: " + mzMLData.run.spectrumList.count); Console.WriteLine("Array length: " + mzMLData.run.spectrumList.spectrum.Count); Assert.AreEqual(expectedSpectra.ToString(), mzMLData.run.spectrumList.count, "Spectrum Count"); Assert.AreEqual(expectedSpectra, mzMLData.run.spectrumList.spectrum.Count, "Array length"); var writer = new MzMLWriter(Path.Combine(TestPath.ExtTestDataDirectory, outFile.FullName)) { MzMLType = MzMLSchemaType.MzML }; writer.Write(mzMLData); }
/// <summary> /// Gets the appropriate IMassSpecDataReader for the supplied path. /// It is recommended that "NormalizeDatasetPath" be called prior to calling this function, and that the returned string be used instead of the original path /// </summary> /// <param name="filePath"></param> /// <returns></returns> /// <remarks>It is recommended that "NormalizeDatasetPath" be called prior to calling this function, and that the returned string be used instead of the original path</remarks> public static IMassSpecDataReader GetMassSpecDataReader(string filePath) { filePath = NormalizeDatasetPath(filePath); var type = GetMassSpecDataType(filePath); IMassSpecDataReader reader = null; switch (type) { case MassSpecDataType.XCaliburRun: reader = new XCaliburReader(filePath); break; case MassSpecDataType.MzMLFile: reader = new MzMLReader(filePath); break; case MassSpecDataType.PbfFile: reader = new PbfLcMsRun(filePath); break; case MassSpecDataType.DeconvolutedPbfFile: reader = new DPbfLcMsRun(filePath); break; case MassSpecDataType.Unknown: if (_pwizAvailable) { reader = new ProteoWizardReader(filePath); } else { ConsoleMsgUtils.ShowWarning(string.Format("WARNING: Could not find a reader for file \"{0}\"." + " Is MSFileReader and/or ProteoWizard installed?", filePath)); } break; } return(reader); }
[TestCase(@"\\proto-2\UnitTest_Files\InformedProteomics_TestFiles\MZML\VA139IMSMS_compressed.mzML", 3145)] // Centroid, Agilent QTOF, compressed binary data public void TestReadMzML(string filePath, int expectedSpectra) { var methodName = MethodBase.GetCurrentMethod().Name; TestUtils.ShowStarting(methodName, filePath); Stopwatch timer = new Stopwatch(); timer.Start(); var reader = new MzMLReader(filePath); var constTime = timer.Elapsed; Console.WriteLine(@"Constructor time: " + constTime); var numSpectra = reader.NumSpectra; var metaTime = timer.Elapsed - constTime; Console.WriteLine(@"Metadata read time: " + metaTime); var spectra = reader.ReadAllSpectra(); var spectraCount = spectra.Count(); timer.Stop(); Console.WriteLine(@"Spectra Read time: " + (timer.Elapsed - metaTime)); Console.WriteLine(@"Time: " + timer.Elapsed); Assert.AreEqual(expectedSpectra, numSpectra, "NumSpectra"); Assert.AreEqual(expectedSpectra, spectraCount, "SpectraCount"); Assert.AreEqual(numSpectra, spectraCount, "NumSpectra vs. SpectraCount"); reader.Close(); }
public MainViewModel() { /*/ * Window mainWindow; * Canvas myParentCanvas; * Canvas myCanvas1; * Canvas myCanvas2; * Canvas myCanvas3; * * // Create the application's main window * mainWindow = new Window(); * mainWindow.Title = "Canvas Sample"; * * // Create the Canvas * myParentCanvas = new Canvas(); * myParentCanvas.Width = 400; * myParentCanvas.Height = 400; * * // Define child Canvas elements * myCanvas1 = new Canvas(); * myCanvas1.Background = Brushes.Red; * myCanvas1.Height = 100; * myCanvas1.Width = 100; * Canvas.SetTop(myCanvas1, 0); * Canvas.SetLeft(myCanvas1, 0); * * myCanvas2 = new Canvas(); * myCanvas2.Background = Brushes.Green; * myCanvas2.Height = 100; * myCanvas2.Width = 100; * Canvas.SetTop(myCanvas2, 100); * Canvas.SetLeft(myCanvas2, 100); * * myCanvas3 = new Canvas(); * myCanvas3.Background = Brushes.Blue; * myCanvas3.Height = 100; * myCanvas3.Width = 100; * Canvas.SetTop(myCanvas3, 50); * Canvas.SetLeft(myCanvas3, 50); * * // Add child elements to the Canvas' Children collection * myParentCanvas.Children.Add(myCanvas1); * myParentCanvas.Children.Add(myCanvas2); * myParentCanvas.Children.Add(myCanvas3); * * // Add the parent Canvas as the Content of the Window Object * mainWindow.Content = myParentCanvas; * mainWindow.Show(); * /*/ const string datasetPathName = @"..\..\..\ExampleData\2016-07-28_QC-digest_HCD_01"; const string identFile = datasetPathName + "_msgfplus.mzid.gz"; const string dataFileFixed = datasetPathName + "_FIXED.mzML.gz"; Console.WriteLine("Loading data from {0}", identFile); var reader = new MzIdentMLReader(); var psmResults = reader.Read(identFile); var haveScanTimes = reader.HaveScanTimes; var dataFileExists = false; if (File.Exists(dataFileFixed)) { Console.WriteLine(); Console.WriteLine("Loading data from {0}", dataFileFixed); var mzML = new MzMLReader(dataFileFixed); mzML.ReadSpectraData(psmResults); dataFileExists = true; haveScanTimes = true; } //this.OrigScanId = IdentDataPlotter.ScatterPlot(scanData, "ScanIdInt", "PpmError", "Scan Number: Original", OxyColors.Blue); //this.OrigCalcMz = IdentDataPlotter.ScatterPlot(scanData, "CalcMz", "PpmError", "M/Z: Original", OxyColors.Green); //this.FixScanId = IdentDataPlotter.ScatterPlot(scanData, "ScanIdInt", "PpmErrorFixed", "Scan Number: Refined", OxyColors.Blue); //this.FixCalcMz = IdentDataPlotter.ScatterPlot(scanData, "CalcMz", "PpmErrorFixed", "M/Z: Refined", OxyColors.Green); //this.OrigPpmErrorHist = IdentDataPlotter.Histogram(scanData, "PpmError", "Original", OxyColors.Blue, 0.5); //this.FixPpmErrorHist = IdentDataPlotter.Histogram(scanData, "PpmErrorFixed", "Refined", OxyColors.Green, 0.5); var options = new ErrorCharterOptions(); var plotter = new IdentDataPlotter(options, datasetPathName); plotter.GeneratePNGPlots(psmResults, dataFileExists, haveScanTimes); AllVis = plotter.ErrorScatterPlotBitmap; ErrHist = plotter.ErrorHistogramBitmap; }