public void AddExperimentParameterToDatabase()
 {
     if (string.IsNullOrEmpty(_experimentParameter))
     {
         _menuManager.DisplayErrorMessage("You must use a valid name for an experiment parameter", "Add Experiment Parameter Menu", "Launcher");
     }
     else
     {
         _menuManager.ExperimentParameterList.Add(_experimentParameter);
         _launchManager.SynchroniseExperimentParametersWithDatabase();
         _log.CreateExperimentParameter(_launchManager.ExperimentSettings.Name, _experimentParameter);
         _launchManager.UpdateParameters();
         _menuManager.InstantiateAndShowMenu("Experiment Parameters Menu", "Launcher");
     }
 }
예제 #2
0
        /// <summary>
        /// This method allows to establish a correspondence between the parameters
        /// described in the database and in the experiment settings.
        ///
        /// This should be called whenever manually experiment parameters have been
        /// added within the EVE UI or within the Experiment Settings XML file.
        /// </summary>
        public void UpdateParameters()
        {
            var existingParams = LoggingManager.GetExperimentParameters(ExperimentSettings.Name);
            var requiredParams = ExperimentSettings.ParameterSettings.Parameters;

            foreach (var param in requiredParams)
            {
                if (!existingParams.Contains(param))
                {
                    LoggingManager.CreateExperimentParameter(ExperimentSettings.Name, param);
                }
            }
            foreach (var param in existingParams)
            {
                if (!requiredParams.Contains(param))
                {
                    requiredParams.Add(param);
                }
            }
            ExperimentSettings.ParameterSettings.Parameters = requiredParams;
            MenuManager.SetActiveParameters(requiredParams);
        }