private List <Analysis> CreateAnalysis(List <DataTypes.ISample> samples) { var psetFileList = new PSetDataFileList(); foreach (DataTypes.ISample sample in samples) { if (sample.HideOrShow) { List <string> sampleGroupTitles = sample.GetDefaultGroupingTitles(); List <string> sampleGroups = sample.GetDefaultSampleGroups(); psetFileList.SelectedFileName.Add(new BatchExtractorFileSelect(sample.FileName, sample.HideOrShow, sampleGroups, sampleGroupTitles)); } } InputParametersUtil.SavePSet(qualAppLogic, psetFileList, QualInMemoryMethod.ParamDataFileList); Console.WriteLine("Creating Analysis"); List <Analysis> Analyses = new List <Analysis>(); if (m_analysisFiles.Count <= 0) { return(Analyses); } AnalysisMethodLoadOptions loadMethod = AnalysisMethodLoadOptions.LoadFromWorklist; bool loadResults = false; bool runLoadTimeScripts = false; CmdOpenAnalysisFile cmdOpenAnalysis = new CmdOpenAnalysisFile (qualAppLogic, m_analysisFiles.ToArray(), loadMethod, loadResults, runLoadTimeScripts); ExecuteCommand(qualAppLogic, cmdOpenAnalysis); foreach (string analysisPath in m_analysisFiles) { Analysis anlysis = qualAppLogic.DataHeirarchy.AnalysisStore.Values.Cast <Analysis>().First(a => a.FilePath == analysisPath); Analyses.Add(anlysis); } Console.WriteLine("Analysis Creation Done"); return(Analyses); }
public List <DataTypes.CompoundGroup> GetCompoundGroups(List <string> analysisFiles) { try { qualAppLogic.AppExecutionMode = AppExecutionMode.WorkListAutomation; CmdInitializeApplication cmdInit = new CmdInitializeApplication(qualAppLogic); ExecuteCommand(qualAppLogic, cmdInit); QualFeatureConfig.InitRegistryFromAppConfig(); qualAppLogic.AppProgressEvent += new AppProgressEventHandler(OnAppProgressEvent); IAppState appState = qualAppLogic as IAppState; //appState.ThreadErrorReporter = m_messageReporter; AnalysisMethodLoadOptions loadMethod = GetAnalysisMethodLoadOptions(null); //if (analysisFiles.Count > 0) //{ bool loadResults = false; bool runLoadTimeScripts = false; CmdOpenAnalysisFile cmdOpenAnalysis = new CmdOpenAnalysisFile (qualAppLogic, analysisFiles.ToArray(), loadMethod, loadResults, runLoadTimeScripts); ExecuteCommand(qualAppLogic, cmdOpenAnalysis); RunScript(qualAppLogic, analysisFiles); IEnumerable <Agilent.MassSpectrometry.DataAnalysis.ICompoundGroup> cpdGroups = qualAppLogic.DataStore.CompoundGroups; List <DataTypes.CompoundGroup> compoundGroups = new List <DataTypes.CompoundGroup>(); foreach (Agilent.MassSpectrometry.DataAnalysis.ICompoundGroup cpdGroup in cpdGroups) { DataTypes.CompoundGroup compoundGroup = getICompoundGroup(cpdGroup, analysisFiles) as DataTypes.CompoundGroup; compoundGroups.Add(compoundGroup); } Console.ReadKey(); } catch (MSDAApplicationException msdaExep) { Console.WriteLine(msdaExep.Message); } catch (Exception e) { string analysisName = ""; for (int analysisInd = 0; analysisInd < analysisFiles.Count; analysisInd++) { if (analysisName == "") { analysisName = analysisFiles[analysisInd]; } else { analysisName = analysisName + " , " + analysisFiles[analysisInd]; } } Console.WriteLine(e.StackTrace); } return(null); }