Ejemplo n.º 1
0
 public void Add(PeptideDocNode nodePep, ChromDataSet chromDataSet)
 {
     // If this is coming from the same PeptideDocNode, then just add it, otherwise
     // a merged copy of the PeptideDocNode needs to be created that includes
     // this new precursor.
     if (ReferenceEquals(nodePep, NodePep))
     {
         if (!FindAndMerge(chromDataSet))
         {
             // Not necessary to update children, because found in peptide
             AddDataSet(chromDataSet);
         }
         else
         {
             // Merging causes a change in the children
             UpdatePepChildren();
         }
     }
     // Unless we already have one of these
     else if (!HasEquivalentGroupNode(chromDataSet.NodeGroup))
     {
         if (!FindAndMerge(chromDataSet))
         {
             AddDataSet(chromDataSet);
         }
         // Change children no matter what, since this was not in the peptide
         UpdatePepChildren();
     }
     // Important not to lose iRT type
     if (nodePep.GlobalStandardType == PeptideDocNode.STANDARD_TYPE_IRT &&
         NodePep.GlobalStandardType != PeptideDocNode.STANDARD_TYPE_IRT)
     {
         NodePep = NodePep.ChangeStandardType(PeptideDocNode.STANDARD_TYPE_IRT);
     }
 }
Ejemplo n.º 2
0
 private bool FindAndMerge(ChromDataSet chromDataSet)
 {
     for (int i = 0; i < DataSets.Count; i++)
     {
         var nodeGroup = DataSets[i].NodeGroup;
         if (AreEquivalentGroups(nodeGroup, chromDataSet.NodeGroup))
         {
             DataSets[i].NodeGroup = nodeGroup.Merge(chromDataSet.NodeGroup);
             DataSets[i].Merge(chromDataSet);
             return(true);
         }
     }
     return(false);
 }
Ejemplo n.º 3
0
 public PeptideChromDataPeak(ChromDataSet data, ChromDataPeakList peakGroup)
 {
     Data      = data;
     PeakGroup = peakGroup;
 }
Ejemplo n.º 4
0
 private void AddDataSet(ChromDataSet chromDataSet)
 {
     Assume.IsTrue(DataSets.Count == 0 || DataSets[0].FirstKey.OptionalMaxTime == chromDataSet.FirstKey.OptionalMaxTime);
     DataSets.Add(chromDataSet);
 }
Ejemplo n.º 5
0
 private static IsotopeLabelType GetSafeLabelType(ChromDataSet dataSet)
 {
     return(dataSet.NodeGroup != null ? dataSet.NodeGroup.TransitionGroup.LabelType : null);
 }
Ejemplo n.º 6
0
 private static bool IsComparable(ChromDataSet dataSet)
 {
     return(dataSet.NodeGroup != null && dataSet.NodeGroup.RelativeRT != RelativeRT.Unknown);
 }