Beispiel #1
0
        private bool TryGetRetentionTimes(int fileId, string filePath, out LibraryRetentionTimes retentionTimes)
        {
            if (fileId < 0)
            {
                retentionTimes = null;
                return(false);
            }
            ILookup <Target, double?> timesLookup = _libraryEntries.ToLookup(
                entry => entry.Key.Target,
                entry =>
            {
                FileData fileData;
                if (!entry.FileDatas.TryGetValue(fileId, out fileData))
                {
                    return(null);
                }
                return(fileData.ApexTime);
            });
            var nonEmptyTimesDict = timesLookup
                                    .Where(grouping => grouping.Any(value => value.HasValue))
                                    .ToDictionary(grouping => grouping.Key, grouping => Tuple.Create(TimeSource.peak, grouping.OfType <double>().ToArray()));

            retentionTimes = new LibraryRetentionTimes(filePath, nonEmptyTimesDict);
            return(true);
        }
Beispiel #2
0
        public override bool TryGetRetentionTimes(MsDataFileUri filePath, out LibraryRetentionTimes retentionTimes)
        {
            int j = _librarySourceFiles.IndexOf(info => Equals(filePath.ToString(), info.FilePath));

            if (j != -1)
            {
                var source = _librarySourceFiles[j];
                ILookup <Target, double[]> timesLookup = _libraryEntries.ToLookup(
                    entry => entry.Key.Target,
                    entry => entry.RetentionTimesByFileId.GetTimes(source.Id));
                var timesDict = timesLookup.ToDictionary(
                    grouping => grouping.Key,
                    grouping =>
                {
                    var array = grouping.SelectMany(values => values).ToArray();
                    Array.Sort(array);
                    return(array);
                });
                var nonEmptyTimesDict = timesDict
                                        .Where(kvp => kvp.Value.Length > 0)
                                        .ToDictionary(kvp => kvp.Key, kvp => new Tuple <TimeSource, double[]>(TimeSource.peak, kvp.Value));

                retentionTimes = new LibraryRetentionTimes(filePath.ToString(), nonEmptyTimesDict);
                return(true);
            }

            return(base.TryGetRetentionTimes(filePath, out retentionTimes));
        }
Beispiel #3
0
        public override bool TryGetIrts(out LibraryRetentionTimes retentionTimes)
        {
            if (_libraryIrts == null || !_libraryIrts.Any())
            {
                retentionTimes = null;
                return(false);
            }

            var irtDictionary = new Dictionary <Target, Tuple <TimeSource, double[]> >();

            foreach (var irt in _libraryIrts)
            {
                if (!irtDictionary.ContainsKey(irt.Sequence))
                {
                    irtDictionary[irt.Sequence] = new Tuple <TimeSource, double[]>(irt.TimeSource, new [] { irt.Irt });
                }
            }
            retentionTimes = new LibraryRetentionTimes(null, irtDictionary);
            return(true);
        }
Beispiel #4
0
 public override bool TryGetIrts(out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return(false);
 }
Beispiel #5
0
 public override bool TryGetRetentionTimes(int fileIndex, out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return(false);
 }
Beispiel #6
0
 public override bool TryGetRetentionTimes(MsDataFileUri filePath, out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return(false);
 }
Beispiel #7
0
 /// <summary>
 /// Returns the times at which a peptide was found in a particular file.
 /// </summary>
 public double[] GetRetentionTimes(LibraryRetentionTimes retentionTimes, string sequence, ExplicitMods mods)
 {
     return (from typedSequence in GetTypedSequences(sequence, mods)
             from time in retentionTimes.GetRetentionTimes(typedSequence.ModifiedSequence)
             select time)
         .ToArray();
 }
Beispiel #8
0
 public override bool TryGetRetentionTimes(MsDataFileUri filePath, out LibraryRetentionTimes retentionTimes)
 {
     return(TryGetRetentionTimes(FindFileInList(filePath, _sourceFiles), filePath.ToString(), out retentionTimes));
 }
Beispiel #9
0
 public override bool TryGetRetentionTimes(int fileId, out LibraryRetentionTimes retentionTimes)
 {
     return(TryGetRetentionTimes(fileId, _sourceFiles[fileId], out retentionTimes));
 }
Beispiel #10
0
 public override bool TryGetRetentionTimes(int fileIndex, out LibraryRetentionTimes retentionTimes)
 {
     return(TryGetRetentionTimes(MsDataFileUri.Parse(_librarySourceFiles[fileIndex].FilePath), out retentionTimes));
 }
Beispiel #11
0
        public bool TryGetRetentionTimes(MsDataFileUri filePath, out LibraryRetentionTimes retentionTimes)
        {
            Assume.IsTrue(IsLoaded);

            foreach (Library lib in _libraries)
            {
                // Only one of the available libraries may claim ownership of the file
                // in question.
                if (lib != null && lib.TryGetRetentionTimes(filePath, out retentionTimes))
                    return true;
            }
            retentionTimes = null;
            return false;
        }
Beispiel #12
0
 public override bool TryGetRetentionTimes(int fileIndex, out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return false;
 }
Beispiel #13
0
 public override bool TryGetRetentionTimes(MsDataFileUri filePath, out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return false;
 }
Beispiel #14
0
 public override bool TryGetIrts(out LibraryRetentionTimes retentionTimes)
 {
     retentionTimes = null;
     return false;
 }