示例#1
0
        /// <summary>
        /// The Thermo decon result filename is assumed to be the same as the spectra file name
        /// </summary>
        private static AnnotatedSpecies GetThermoDeconSpecies(string line, StreamReader reader, string fileName)
        {
            string[]   items      = line.Split(ItemDelimiter);
            int        numCharges = int.Parse(items[3]); // TODO: get this from header, not hardcoded
            List <int> chargeList = new List <int>();

            double mass        = double.Parse(items[MonoisotopicMassColumn]);
            string speciesName = items[SpeciesNameColumn] + " (" + mass.ToString("F1") + ")";
            double apexRt      = double.Parse(items[RetentionTimeColumn]);
            string rtRange     = items[FeatureRtStartColumn];
            double rtStart     = double.Parse(rtRange.Split('-')[0].Trim());
            double rtEnd       = double.Parse(rtRange.Split('-')[1].Trim());

            for (int i = 0; i < numCharges + 1; i++)
            {
                var nextLine        = reader.ReadLine();
                var chargeLineSplit = nextLine.Split(ItemDelimiter);

                if (chargeLineSplit[1].Trim().Equals("Charge State", StringComparison.OrdinalIgnoreCase))
                {
                    continue;
                }

                chargeList.Add(int.Parse(chargeLineSplit[1]));
            }

            var deconFeature = new DeconvolutionFeature(mass, apexRt, rtStart, rtEnd, chargeList, fileName);
            var species      = new AnnotatedSpecies(deconFeature);

            return(species);
        }
示例#2
0
        private static AnnotatedSpecies GetFlashDeconvSpecies(string line)
        {
            string[] items = line.Split(ItemDelimiter);

            string identifier = items[SpeciesNameColumn];
            double mass       = double.Parse(items[MonoisotopicMassColumn]);

            int    minChargeState = int.Parse(items[MinChargeColumn]);
            int    maxChargeState = int.Parse(items[MaxChargeColumn]);
            var    chargeList     = Enumerable.Range(minChargeState, maxChargeState - minChargeState + 1).ToList();
            double apexRt         = double.Parse(items[RetentionTimeColumn]) / 60;
            double rtStart        = double.Parse(items[FeatureRtStartColumn]) / 60;
            double rtEnd          = double.Parse(items[FeatureRtEndColumn]) / 60;
            string fileName       = items[SpectraFileNameColumn];
            var    deconFeature   = new DeconvolutionFeature(mass, apexRt, rtStart, rtEnd, chargeList, fileName);
            var    species        = new AnnotatedSpecies(deconFeature);

            return(species);
        }
示例#3
0
        private static AnnotatedSpecies GetProteoformExplorerSpecies(string line, StreamReader reader)
        {
            line = line.Replace("\"", string.Empty);
            string[] items = line.Split(ItemDelimiter);

            string identifier = items[SpeciesNameColumn];
            double mass       = double.Parse(items[MonoisotopicMassColumn]);
            int    charge     = int.Parse(items[ChargeColumn]);
            double apexRt     = double.Parse(items[RetentionTimeColumn]);
            string fileName   = items[SpectraFileNameColumn];
            int    scan       = int.Parse(items[ScanNumberColumn]);
            var    peaks      = items[PeaksListColumn].Split(',').Select(p => double.Parse(p)).ToList();

            var annotEnvelope = new AnnotatedEnvelope(scan, apexRt, charge, peaks);
            var deconFeature  = new DeconvolutionFeature(mass, apexRt, apexRt, apexRt, new List <int> {
                charge
            }, fileName, new List <AnnotatedEnvelope> {
                annotEnvelope
            });
            var species = new AnnotatedSpecies(deconFeature);

            return(species);
        }
 public AnnotatedSpecies(DeconvolutionFeature deconvolutionFeature, Identification identification)
 {
     SpeciesLabel         = identification.FullSequence;
     Identification       = identification;
     DeconvolutionFeature = deconvolutionFeature;
 }
 public AnnotatedSpecies(DeconvolutionFeature deconvolutionFeature)
 {
     SpeciesLabel         = deconvolutionFeature.MonoisotopicMass.ToString("F2");
     DeconvolutionFeature = deconvolutionFeature;
 }