예제 #1
0
        private void btnOk_Click(object sender, EventArgs e)
        {
            SLSettings sbSettings = parentSBSettingsForm.ReadSLSettings();

            SettingFilesManager.SaveSBSettings(SettingFilesManager.SettingsFolderPath, sbSettings);
            Close();
        }
        private void InitValues()
        {
            //tbWorkspaceName.Text = slTestWorkspace.ToString();
            tbModelName.Text = slTestWorkspace.modelSettings.GetSimulinkModelName();


            criteriaTestSuites = TestWorkspaceDataProvider.GetTestWorkspaceDataProvider().
                                 LoadTestSuitesToSLTestWorkspace(slTestWorkspace.ToString());
            SLSettings slSettings = slTestWorkspace.slSettings;

            for (int i = 0; i < criteriaTestSuites.Keys.Count; ++i)
            {
                cmbCriteria.Items.Add(criteriaTestSuites.Keys.ElementAt(i));
            }
            cmbInputVars.Items.Clear();
            cmbCalVars.Items.Clear();
            Dictionary <string, List <SLTestCase> > outputtses = criteriaTestSuites[criteriaTestSuites.Keys.ElementAt(0)];
            List <SLTestCase> outputts = outputtses[outputtses.Keys.ElementAt(0)];

            for (int cnt = 0; cnt < outputts[0].inputSignals.Count; ++cnt)
            {
                cmbInputVars.Items.Add(outputts[0].inputSignals.Keys.ElementAt(cnt));
            }
            for (int cnt = 0; cnt < outputts[0].calibrationVars.Count; ++cnt)
            {
                cmbCalVars.Items.Add(outputts[0].calibrationVars.Keys.ElementAt(cnt));
            }
            cmbCriteria.SelectedIndex = 0;
        }
예제 #3
0
        public static void SaveSBSettings(string folderPath, SLSettings sbSettings)
        {
            XmlWriterSettings xmlSettings = new XmlWriterSettings();

            xmlSettings.Indent = true;

            if (!Directory.Exists(folderPath))
            {
                Directory.CreateDirectory(folderPath);
            }
            XmlWriter settingsWriter = XmlWriter.Create(folderPath + SBSettingsFileName, xmlSettings);

            settingsWriter.WriteStartElement("body");

            foreach (string criName in sbSettings.Criteria.Keys)
            {
                settingsWriter.WriteStartElement("Criterion");

                settingsWriter.WriteStartElement("Name");
                settingsWriter.WriteValue(criName);
                settingsWriter.WriteEndElement();

                settingsWriter.WriteStartElement("Budget");
                settingsWriter.WriteValue(sbSettings.Criteria[criName].ToString());
                settingsWriter.WriteEndElement();

                settingsWriter.WriteEndElement();
            }

            settingsWriter.WriteEndElement();
            settingsWriter.Close();
        }
예제 #4
0
        public static SLSettings LoadSBSettings(string folderPath)
        {
            SLSettings sbSettings = new
                                    SLSettings(false);

            XmlReaderSettings xmlSettings = new XmlReaderSettings();

            xmlSettings.ValidationType = ValidationType.None;

            XmlReader settingsReader = XmlReader.Create(folderPath + SBSettingsFileName, xmlSettings);

            while (settingsReader.Read())
            {
                if (settingsReader.NodeType == XmlNodeType.Element &&
                    settingsReader.Name == "Criterion")
                {
                    do
                    {
                        settingsReader.Read();
                    }while (settingsReader.Name != "Name");
                    settingsReader.Read();
                    string criterionName = settingsReader.Value;
                    do
                    {
                        settingsReader.Read();
                    }while (settingsReader.Name != "Budget");
                    settingsReader.Read();
                    int budget = Int16.Parse(settingsReader.Value);
                    sbSettings.Criteria[criterionName] = budget;
                    settingsReader.Read();
                }
            }
            settingsReader.Close();
            return(sbSettings);
        }
예제 #5
0
        private void btnExclude_Click(object sender, EventArgs e)
        {
            SLSettings settings = new SLSettings(true);

            settings.Reset();
            parentSLSettingsForm.LoadSLSettings(settings);
            btnApply_Click(null, null);
        }
예제 #6
0
        public SLSettings ReadSLSettings()
        {
            SLSettings slSettings = new SLSettings(true);

            slSettings.Criteria["Diversity"]  = (int)slODBudget.Value;
            slSettings.Criteria["Stability"]  = (int)slOSBudget.Value;
            slSettings.Criteria["Continuity"] = (int)slOCBudget.Value;
            return(slSettings);
        }
예제 #7
0
        private void cmbPortNums_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (cmbPortNames.SelectedIndex != cmbPortNums.SelectedIndex)
            {
                cmbPortNames.SelectedIndex = cmbPortNums.SelectedIndex;
            }
            SLSettings settings = new SLSettings(true);

            parentSLSettingsForm.LoadSLSettings(settings);
        }
예제 #8
0
 public SLTestWorkspace(String workspaceName)
     : base(workspaceName, FunctionTypeEnum.State_Based_Controller)
 {
     if (SettingFilesManager.SBSettingsExists(SettingFilesManager.SettingsFolderPath))
     {
         slSettings         = SettingFilesManager.LoadSBSettings(SettingFilesManager.SettingsFolderPath);
         advancedSBSettings = SettingFilesManager.LoadAdvancedSBSettings(SettingFilesManager.SettingsFolderPath);
     }
     else
     {
         slSettings         = new SLSettings(true);
         advancedSBSettings = new AdvancedSBSettings();
     }
 }
예제 #9
0
        public SLSettingsForm()
        {
            InitializeComponent();
            SLSettings sbSettings;

            if (SettingFilesManager.SBSettingsExists(SettingFilesManager.SettingsFolderPath))
            {
                sbSettings = SettingFilesManager.LoadSBSettings(SettingFilesManager.SettingsFolderPath);
            }
            else
            {
                sbSettings = new SLSettings(true);
            }

            parentSBSettingsForm = new ParentSLSettingsForm(this);
            parentSBSettingsForm.LoadSLSettings(sbSettings);
            this.Controls.Add(parentSBSettingsForm);
        }
예제 #10
0
 public void LoadSLSettings(SLSettings sbSettings)
 {
     slODBudget.Value = sbSettings.Criteria["Diversity"];
     slOSBudget.Value = sbSettings.Criteria["Stability"];
     slOCBudget.Value = sbSettings.Criteria["Continuity"];
 }