public UIMFRun() { XYData = new XYData(); MSFileType = Globals.MSFileType.PNNL_UIMF; IMSScanSetCollection = new IMSScanSetCollection(); _framePressuresUnsmoothed = new Dictionary <int, double>(); //_frameTypeForMS1 = DataReader.FrameType.MS1; //default is MS1 }
public void BasePeakChromatogramTests() { var filename = @"D:\Data\UIMF\Sarc_P13_C10_1186_23Sep11_Cheetah_11-09-06.uimf"; var run = new RunFactory().CreateRun(filename); var scanSetCollection = new ScanSetCollection(); //scanSetCollection.Create(run, 500, 550,1,1); scanSetCollection.Create(run, run.MinLCScan, run.MaxLCScan, 1, 1); var imsScanSetCollection = new IMSScanSetCollection(); imsScanSetCollection.Create(run, 60, 250, 1, 1); var msgen = MSGeneratorFactory.CreateMSGenerator(run.MSFileType); var peakDet = new DeconToolsPeakDetectorV2(); peakDet.PeakToBackgroundRatio = 4; peakDet.SignalToNoiseThreshold = 2; peakDet.IsDataThresholded = true; var outputFile = @"C:\Users\d3x720\Documents\PNNL\My_DataAnalysis\2013\Saturation_Correction\chromOuput.txt"; using (var writer = new StreamWriter(outputFile)) { for (var lcscan = 0; lcscan < scanSetCollection.ScanSetList.Count; lcscan++) { Console.WriteLine("lcscan= " + lcscan); var scanSet = scanSetCollection.ScanSetList[lcscan]; run.CurrentScanSet = scanSet; var sb = new StringBuilder(); var numImsScans = imsScanSetCollection.ScanSetList.Count; for (var imsScan = 0; imsScan < numImsScans; imsScan++) { var imsscanSet = (IMSScanSet)imsScanSetCollection.ScanSetList[imsScan]; ((UIMFRun)run).CurrentIMSScanSet = imsscanSet; var basePeakIntensity = 0; try { msgen.Execute(run.ResultCollection); peakDet.Execute(run.ResultCollection); basePeakIntensity = GetMaxPeak(run.PeakList); } catch (Exception ex) { Console.WriteLine("skipping lcscan " + lcscan + " --- it is empty"); } sb.Append(basePeakIntensity); if (imsScan != numImsScans - 1) // if not the last value, add delimiter { sb.Append("\t"); } } writer.WriteLine(sb.ToString()); } } }