private bool AddPeaks(IRawFile rawReader, int scan, SimplePeakChro chro, bool bIdentified) { var pkl = rawReader.GetPeakList(scan, chro.Mz - chro.MzTolerance, chro.Mz + chro.MzTolerance); if (pkl.Count == 0) { return(false); } var p = (from o in pkl where (o.Charge == chro.Charge) || (o.Charge == 0) orderby o.Intensity descending select o).FirstOrDefault(); if (null == p) { return(false); } var iit = rawReader.GetIonInjectionTime(scan); if (iit <= 0) { iit = 1.0; } chro.Peaks.Add(new ScanPeak() { Mz = p.Mz, Intensity = p.Intensity, Charge = p.Charge, Scan = scan, RetentionTime = rawReader.ScanToRetentionTime(scan), IonInjectionTime = iit, Identified = bIdentified }); return(true); }