コード例 #1
0
ファイル: frmMain.cs プロジェクト: yehudaot/BA1510
        private void savePowerCalibTable(DataGridView grid)
        {
            SaveFileDialog sfd = new SaveFileDialog();

            sfd.DefaultExt = "txt";
            sfd.Filter     = "Calibration Text File (*.json)|*.json|All files (*.*)|*.*";
            if (sfd.ShowDialog() != DialogResult.OK)
            {
                log.Error("a file must be selected!");
                return;
            }

            PowerCalibrationTable tbl = new PowerCalibrationTable();

            int i = 0;

            foreach (DataGridViewRow r in grid.Rows)
            {
                tbl.PA_GAIN_VALUES[i++] = Convert.ToUInt16(r.Cells["Value"].Value);
            }

            String jsonString = JsonConvert.SerializeObject(tbl);

            File.WriteAllText(sfd.FileName, jsonString);
        }
コード例 #2
0
ファイル: frmMain.cs プロジェクト: yehudaot/BA1510
        private void loadPowerCalibTable(DataGridView grid)
        {
            OpenFileDialog ofd = new OpenFileDialog();

            ofd.DefaultExt = "txt";
            ofd.Filter     = "Calibration Text File (*.json)|*.json|All files (*.*)|*.*";
            if (ofd.ShowDialog() != DialogResult.OK)
            {
                log.Error("a file must be selected!");
                return;
            }

            try
            {
                grid.Rows.Clear();
                PowerCalibrationTable tbl = JsonConvert.DeserializeObject <PowerCalibrationTable>(File.ReadAllText(ofd.FileName));

                int i = 0;
                foreach (UInt16 u in tbl.PA_GAIN_VALUES)
                {
                    grid.Rows.Add(i++, u);
                }
            }
            catch (Exception ex)
            {
                log.Error("Could not open the selected file!", ex);
            }
        }
コード例 #3
0
ファイル: frmMain.cs プロジェクト: yehudaot/BA1510
        private void setPowerCalibTable(DataGridView grid, CalibrationTable.TableType tableType)
        {
            PowerCalibrationTable tbl = new PowerCalibrationTable();
            int i = 0;

            foreach (DataGridViewRow row in grid.Rows)
            {
                tbl.PA_GAIN_VALUES[i++] = Convert.ToUInt16(row.Cells["Value"].Value);
            }

            Scenario.ScenarioResult r = new SingleMessageSingleDeviceScenario("Set " + tableType.ToString() + " Calibration Data", new SetCalibrationTableMessage(tbl, tableType), true, false, device).run();
            if (r != null && r.result == Scenario.ScenarioResult.RunResult.Pass)
            {
                AckResponse resp = (AckResponse)r.resultObj;
                log.Info("got an ack response opcode: " + resp.opcode.ToString());
            }
        }
コード例 #4
0
ファイル: frmMain.cs プロジェクト: yehudaot/BA1510
        private void getPowerCalibTable(DataGridView grid, CalibrationTable.TableType tableType)
        {
            Scenario.ScenarioResult r = new SingleMessageSingleDeviceScenario("Get " + tableType.ToString() + " Calibration Data", new GetCalibrationTableMessage(tableType), true, false, device).run();
            if (r != null && r.result == Scenario.ScenarioResult.RunResult.Pass)
            {
                GetCalibrationTableResponse resp = (GetCalibrationTableResponse)r.resultObj;
                PowerCalibrationTable       tbl  = (PowerCalibrationTable)resp.table;

                try
                {
                    grid.Rows.Clear();

                    for (int i = 0; i < tbl.PA_GAIN_VALUES.Length; i++)
                    {
                        grid.Rows.Add(i.ToString(), tbl.PA_GAIN_VALUES[i]);
                    }
                }
                catch (Exception ex)
                {
                    log.Error("Could not load calibration data!", ex);
                }
            }
        }