コード例 #1
0
        /// <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));
            }
        }