Esempio n. 1
0
        private void PreparingMultiGlycan(Dictionary<COL.GlycoLib.enumLabelingTag,float> argLabeling, List<string> argRawFiles )
        {
            //saveFileDialog1.Filter = "Excel Files (*.xslx)|*.xslx";
            //saveFileDialog1.Filter = "CSV Files (*.csv)|*.csv";

            DateTime time = DateTime.Now;             // Use current time
            string TimeFormat = "yyMMdd HHmm";            // Use this format
            if (DoLog)
            {
                Logger.WriteLog(System.Environment.NewLine + System.Environment.NewLine + "-----------------------------------------------------------");
                Logger.WriteLog("Start Process");
            }

            //saveFileDialog1.FileName = Path.GetDirectoryName(txtRawFile.Text) + "\\" + Path.GetFileNameWithoutExtension(txtRawFile.Text) + "-" + time.ToString(TimeFormat);

            if (txtRawFile.Text == "" || (rdoUserList.Checked && txtGlycanList.Text == "") || txtMaxLCTime.Text == "")
            {
                MessageBox.Show("Please check input values.");
                if (DoLog)
                {
                    Logger.WriteLog("End Process- because input value not complete");
                }
                return;
            }
            //folderBrowserDialog1.SelectedPath = txtRawFile.Text;
            string defaultOutputFolder = txtRawFile.Text + "\\" +DateTime.Now.ToString("yyMMdd-HHmm");
            if (!Directory.Exists(defaultOutputFolder))
            {
                Directory.CreateDirectory(defaultOutputFolder);
            }
            folderBrowserDialog1.SelectedPath = defaultOutputFolder;
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                string glycanlist = System.Windows.Forms.Application.StartupPath + "\\Default_Combination.csv";
                if (!rdoDefaultList.Checked)
                {
                    glycanlist = txtGlycanList.Text;
                }

                if (DoLog)
                {

                    Logger.WriteLog("Start initial program");

                }
                List<float> AdductMasses = new List<float>();
                Dictionary<float, string> AdductLabel = new Dictionary<float, string>();
                if (chkAdductK.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.Potassium);
                    AdductLabel.Add(MassLib.Atoms.Potassium, "K");
                }
                if (chkAdductNH4.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.NitrogenMass + 4 * MassLib.Atoms.HydrogenMass);
                    AdductLabel.Add(MassLib.Atoms.NitrogenMass + 4 * MassLib.Atoms.HydrogenMass, "NH4");
                }
                if (chkAdductNa.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.SodiumMass);
                    AdductLabel.Add(MassLib.Atoms.SodiumMass, "Na");
                }
                if (chkAdductProton.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.ProtonMass);
                    AdductLabel.Add(MassLib.Atoms.ProtonMass, "H");
                }
                float outMass = 0.0f;
                if (chkAdductUser.Checked && float.TryParse(txtAdductMass.Text, out outMass))
                {
                    AdductMasses.Add(outMass);
                    AdductLabel.Add(outMass, "User");
                }

                // MultiNGlycanESIMultiThreads MultiESIs = new MultiNGlycanESIMultiThreads(glycanlist, txtRawFile.Text, Convert.ToInt32(cboCPU.SelectedItem), _peakParameter, _transformParameters);
                MultiGlycanESI ESI = null;
                if (argLabeling.Count!=0)
                {
                    ESI = new MultiGlycanESI(txtRawFile.Text, 0,99999, glycanlist, Convert.ToDouble(txtPPM.Text), Convert.ToDouble(txtGlycanPPM.Text), chkPermethylated.Checked, chkReducedReducingEnd.Checked,cboSia.SelectedIndex, argLabeling, AdductLabel,AdductMasses, DoLog);
                }
                else
                {
                    ESI = new MultiGlycanESI(txtRawFile.Text,0, 99999, glycanlist, Convert.ToDouble(txtPPM.Text), Convert.ToDouble(txtGlycanPPM.Text), chkPermethylated.Checked, chkReducedReducingEnd.Checked, cboSia.SelectedIndex, DoLog);
                }
                ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.None;
                if (rdoDRAG.Checked)
                {
                    ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.DRAG;
                }
                else if (rdoMultiplePemrthylated.Checked)
                {
                    ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.MultiplexPermethylated;
                }

                ESI.MergeDifferentChargeIntoOne = chkMergeDffCharge.Checked;
                ESI.ExportFilePath = folderBrowserDialog1.SelectedPath;
                ESI.MaxLCBackMin = Convert.ToSingle(txtMaxLCTime.Text);
                ESI.MaxLCFrontMin = Convert.ToSingle(txtMinLCTime.Text);
                ESI.IsotopePPM = Convert.ToSingle(txtIsotopeEnvTolerence.Text);
                ESI.MininumIsotopePeakCount = Convert.ToInt32(txtIsotopeEnvMinPeakCount.Text);
                ESI.PeakSNRatio = Convert.ToSingle(txtSN.Text);
                ESI.IsMatchMonoisotopicOnly = chkMonoOnly.Checked;
                ESI.ApplyLinearRegLC = chkApplyLinearRegLC.Checked;
                ESI.ForceProtonatedGlycan = chkForceProtonated.Checked;
                ESI.MinPeakHeightPrecentage = Convert.ToSingle(txtMinPeakHeight.Text);
                if (chkAbundance.Checked)
                {
                    ESI.MinAbundance = Convert.ToDouble(txtAbundanceMin.Text);
                }
                else
                {
                    ESI.MinAbundance = 0;
                }
                if (chkMinLengthOfLC.Checked)
                {
                    ESI.MinLengthOfLC = Convert.ToSingle(txtScanCount.Text);
                }
                else
                {
                    ESI.MinLengthOfLC = 0;
                }

               // ESI.AdductMass = AdductMasses;
                //ESI.AdductMassToLabel = AdductLabel;
                ESI.IndividualImgs = chkIndividualImg.Checked;
                ESI.QuantificationImgs = chkQuantImgs.Checked;
                ESI.TotalLCTime = Convert.ToSingle(txtLCTime.Text);
                ESI.LCTimeTolerance = Convert.ToSingle(txtLCTolerance.Text) / 100.0f;
                if (DoLog)
                {
                    Logger.WriteLog("Initial program complete");
                }
                this.Visible = false;
                int concurrent = Convert.ToInt32(cboConcurrent.Text);
                frmBatchProcessing frmProcess = new frmBatchProcessing(ESI, argRawFiles,  concurrent,DoLog);
                frmProcess.ProtonatedResult = chkProtonatedResult.Checked;
                if (concurrent == 1)
                {
                    frmProcess.Size = new Size(370, 120);
                }
                else if (concurrent ==2)
                {
                    frmProcess.Size = new Size(370, 180);
                }
                else
                {
                    frmProcess.Size = new Size(370, 240);
                }
                frmProcess.ShowDialog();
                this.Visible = true;
                if (DoLog)
                {
                    Logger.WriteLog("Finish process");
                }
            }
        }
Esempio n. 2
0
        private void PreparingMultiGlycan(Dictionary <COL.GlycoLib.enumLabelingTag, float> argLabeling, List <string> argRawFiles)
        {
            //saveFileDialog1.Filter = "Excel Files (*.xslx)|*.xslx";
            //saveFileDialog1.Filter = "CSV Files (*.csv)|*.csv";

            DateTime time = DateTime.Now;             // Use current time

            //string TimeFormat = "yyMMdd HHmm";            // Use this format
            if (DoLog)
            {
                Logger.WriteLog(System.Environment.NewLine + System.Environment.NewLine + "-----------------------------------------------------------");
                Logger.WriteLog("Start Process");
            }

            //saveFileDialog1.FileName = Path.GetDirectoryName(txtRawFile.Text) + "\\" + Path.GetFileNameWithoutExtension(txtRawFile.Text) + "-" + time.ToString(TimeFormat);


            if (txtRawFile.Text == "" || (rdoUserList.Checked && txtGlycanList.Text == "") || txtMaxLCTime.Text == "")
            {
                MessageBox.Show("Please check input values.");
                if (DoLog)
                {
                    Logger.WriteLog("End Process- because input value not complete");
                }
                return;
            }
            //folderBrowserDialog1.SelectedPath = txtRawFile.Text;
            string defaultOutputFolder = txtRawFile.Text + "\\" + DateTime.Now.ToString("yyMMdd-HHmm");

            if (!Directory.Exists(defaultOutputFolder))
            {
                Directory.CreateDirectory(defaultOutputFolder);
            }
            folderBrowserDialog1.SelectedPath = defaultOutputFolder;
            if (folderBrowserDialog1.ShowDialog() == DialogResult.OK)
            {
                string glycanlist = System.Windows.Forms.Application.StartupPath + "\\Default_Combination.csv";
                if (!rdoDefaultList.Checked)
                {
                    glycanlist = txtGlycanList.Text;
                }

                if (DoLog)
                {
                    Logger.WriteLog("Start initial program");
                }
                List <float> AdductMasses = new List <float>();
                Dictionary <float, string> AdductLabel = new Dictionary <float, string>();
                if (chkAdductK.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.Potassium);
                    AdductLabel.Add(MassLib.Atoms.Potassium, "K");
                }
                if (chkAdductNH4.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.NitrogenMass + 4 * MassLib.Atoms.HydrogenMass);
                    AdductLabel.Add(MassLib.Atoms.NitrogenMass + 4 * MassLib.Atoms.HydrogenMass, "NH4");
                }
                if (chkAdductNa.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.SodiumMass);
                    AdductLabel.Add(MassLib.Atoms.SodiumMass, "Na");
                }
                if (chkAdductProton.Checked)
                {
                    AdductMasses.Add(MassLib.Atoms.ProtonMass);
                    AdductLabel.Add(MassLib.Atoms.ProtonMass, "H");
                }
                float outMass = 0.0f;
                if (chkAdductUser.Checked && float.TryParse(txtAdductMass.Text, out outMass))
                {
                    AdductMasses.Add(outMass);
                    AdductLabel.Add(outMass, "User");
                }

                // MultiNGlycanESIMultiThreads MultiESIs = new MultiNGlycanESIMultiThreads(glycanlist, txtRawFile.Text, Convert.ToInt32(cboCPU.SelectedItem), _peakParameter, _transformParameters);
                MultiGlycanESI ESI = null;
                if (argLabeling.Count != 0)
                {
                    ESI = new MultiGlycanESI(txtRawFile.Text, 0, 99999, glycanlist, Convert.ToDouble(txtPPM.Text), Convert.ToDouble(txtGlycanPPM.Text), chkPermethylated.Checked, chkReducedReducingEnd.Checked, cboSia.SelectedIndex, argLabeling, AdductLabel, AdductMasses, DoLog);
                }
                else
                {
                    ESI = new MultiGlycanESI(txtRawFile.Text, 0, 99999, glycanlist, Convert.ToDouble(txtPPM.Text), Convert.ToDouble(txtGlycanPPM.Text), chkPermethylated.Checked, chkReducedReducingEnd.Checked, cboSia.SelectedIndex, DoLog);
                }
                ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.None;
                if (rdoDRAG.Checked)
                {
                    ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.DRAG;
                }
                else if (rdoMultiplePemrthylated.Checked)
                {
                    ESI.LabelingMethod = GlycoLib.enumGlycanLabelingMethod.MultiplexPermethylated;
                }

                ESI.MergeDifferentChargeIntoOne = chkMergeDffCharge.Checked;
                ESI.ExportFilePath          = folderBrowserDialog1.SelectedPath;
                ESI.MaxLCBackMin            = Convert.ToSingle(txtMaxLCTime.Text);
                ESI.MaxLCFrontMin           = Convert.ToSingle(txtMinLCTime.Text);
                ESI.IsotopePPM              = Convert.ToSingle(txtIsotopeEnvTolerence.Text);
                ESI.MininumIsotopePeakCount = Convert.ToInt32(txtIsotopeEnvMinPeakCount.Text);
                ESI.PeakSNRatio             = Convert.ToSingle(txtSN.Text);
                ESI.IsMatchMonoisotopicOnly = chkMonoOnly.Checked;
                ESI.ApplyLinearRegLC        = chkApplyLinearRegLC.Checked;
                ESI.ForceProtonatedGlycan   = chkForceProtonated.Checked;
                ESI.MinPeakHeightPrecentage = Convert.ToSingle(txtMinPeakHeight.Text);
                if (chkAbundance.Checked)
                {
                    ESI.MinAbundance = Convert.ToDouble(txtAbundanceMin.Text);
                }
                else
                {
                    ESI.MinAbundance = 0;
                }
                if (chkMinLengthOfLC.Checked)
                {
                    ESI.MinLengthOfLC = Convert.ToSingle(txtScanCount.Text);
                }
                else
                {
                    ESI.MinLengthOfLC = 0;
                }


                // ESI.AdductMass = AdductMasses;
                //ESI.AdductMassToLabel = AdductLabel;
                ESI.IndividualImgs     = chkIndividualImg.Checked;
                ESI.QuantificationImgs = chkQuantImgs.Checked;
                ESI.TotalLCTime        = Convert.ToSingle(txtLCTime.Text);
                ESI.LCTimeTolerance    = Convert.ToSingle(txtLCTolerance.Text) / 100.0f;
                if (DoLog)
                {
                    Logger.WriteLog("Initial program complete");
                }
                this.Visible = false;
                int concurrent = Convert.ToInt32(cboConcurrent.Text);
                frmBatchProcessing frmProcess = new frmBatchProcessing(ESI, argRawFiles, concurrent, DoLog);
                frmProcess.ProtonatedResult = chkProtonatedResult.Checked;
                if (concurrent == 1)
                {
                    frmProcess.Size = new Size(370, 120);
                }
                else if (concurrent == 2)
                {
                    frmProcess.Size = new Size(370, 180);
                }
                else
                {
                    frmProcess.Size = new Size(370, 240);
                }
                frmProcess.ShowDialog();
                this.Visible = true;
                if (DoLog)
                {
                    Logger.WriteLog("Finish process");
                }
            }
        }