/// <summary> /// Create an object using the contents of the corresponding MzIdentML object /// </summary> /// <param name="sil"></param> /// <param name="idata"></param> public SpectrumIdentificationListObj(SpectrumIdentificationListType sil, IdentDataObj idata) : base(sil, idata) { Id = sil.id; Name = sil.name; _numSequencesSearched = sil.numSequencesSearched; NumSequencesSearchedSpecified = sil.numSequencesSearchedSpecified; _fragmentationTables = null; _spectrumIdentificationResults = null; if ((sil.FragmentationTable != null) && (sil.FragmentationTable.Count > 0)) { FragmentationTables = new IdentDataList <MeasureObj>(); foreach (var f in sil.FragmentationTable) { FragmentationTables.Add(new MeasureObj(f, IdentData)); } } if ((sil.SpectrumIdentificationResult != null) && (sil.SpectrumIdentificationResult.Count > 0)) { SpectrumIdentificationResults = new IdentDataList <SpectrumIdentificationResultObj>(); foreach (var sir in sil.SpectrumIdentificationResult) { SpectrumIdentificationResults.Add(new SpectrumIdentificationResultObj(sir, IdentData)); } } }
/// <summary> /// Create an object using the contents of the corresponding MzIdentML object /// </summary> /// <param name="sil"></param> /// <param name="idata"></param> public SpectrumIdentificationListObj(SpectrumIdentificationListType sil, IdentDataObj idata) : base(sil, idata) { Id = sil.id; Name = sil.name; _numSequencesSearched = sil.numSequencesSearched; NumSequencesSearchedSpecified = sil.numSequencesSearchedSpecified; FragmentationTables = new IdentDataList <MeasureObj>(1); SpectrumIdentificationResults = new IdentDataList <SpectrumIdentificationResultObj>(1); if (sil.FragmentationTable?.Count > 0) { FragmentationTables.AddRange(sil.FragmentationTable, f => new MeasureObj(f, IdentData)); } if (sil.SpectrumIdentificationResult?.Count > 0) { SpectrumIdentificationResults.AddRange(sil.SpectrumIdentificationResult, sir => new SpectrumIdentificationResultObj(sir, IdentData)); } }