コード例 #1
0
        // private constant string COL_TAG = "Mass_Correction_Tag";
        // private constant string COL_COUNT = "Occurrence_Count";

        /// <summary>
        /// Look for the mod summary file for the given PSM results file
        /// </summary>
        /// <param name="datasetName"></param>
        /// <param name="psmResultsFilePath"></param>
        /// <param name="ascoreParams"></param>
        /// <returns>True if a mod summary file is found and successfully processed, otherwise false</returns>
        public bool ReadModSummary(
            string datasetName,
            string psmResultsFilePath,
            ParameterFileManager ascoreParams)
        {
            var psmResultsFile   = new FileInfo(psmResultsFilePath);
            var workingDirectory = psmResultsFile.Directory;

            if (workingDirectory == null)
            {
                return(false);
            }

            var modSummaryFileSpec = datasetName + "*ModSummary.txt";

            var modSummaryFiles = workingDirectory.GetFiles(modSummaryFileSpec).ToList();

            if (modSummaryFiles.Count == 0)
            {
                if (ascoreParams.DynamicMods.Count == 0)
                {
                    OnWarningEvent(string.Format(
                                       "ModSummary.txt file not found; PSMs may not be recognized properly;\nLooked for {0} in directory {1}",
                                       modSummaryFileSpec, PathUtils.CompactPathString(workingDirectory.FullName, 100)));
                }
                return(false);
            }

            var modSummaryFile = modSummaryFiles.First();

            var success = ReadModSummary(modSummaryFile, ascoreParams);

            return(success);
        }
コード例 #2
0
        /// <summary>
        /// Read mod information from the specified mod summary file
        /// </summary>
        /// <param name="modSummaryFile"></param>
        /// <param name="ascoreParams"></param>
        /// <returns>True if the mod summary file exists, otherwise false</returns>
        public bool ReadModSummary(FileInfo modSummaryFile, ParameterFileManager ascoreParams)
        {
            if (!modSummaryFile.Exists)
            {
                OnWarningEvent("File not found: " + modSummaryFile.FullName);
                return(false);
            }

            ascoreParams.DynamicMods.Clear();
            ascoreParams.StaticMods.Clear();
            ascoreParams.TerminiMods.Clear();

            var mods = Utilities.TextFileToDataTableAssignTypeString(modSummaryFile.FullName);

            for (var i = 0; i < mods.Rows.Count; i++)
            {
                switch ((string)mods.Rows[i][COL_TYPE])
                {
                case "T":
                    ascoreParams.TerminiMods.Add(ParseMod(mods, i));
                    break;

                case "S":
                    ascoreParams.StaticMods.Add(ParseMod(mods, i));
                    break;

                case "D":
                    ascoreParams.DynamicMods.Add(ParseDynamicMod(mods, i));
                    break;
                }
            }

            OnStatusEvent("Loaded modifications from: " + modSummaryFile.Name);

            foreach (var mod in ascoreParams.StaticMods)
            {
                OnStatusEvent(Utilities.GetModDescription("Static,   ", mod));
            }

            foreach (var mod in ascoreParams.DynamicMods)
            {
                OnStatusEvent(Utilities.GetModDescription("Dynamic,  ", mod));
            }

            foreach (var mod in ascoreParams.TerminiMods)
            {
                OnStatusEvent(Utilities.GetModDescription("Terminus, ", mod));
            }

            return(true);
        }