public bool Import(Stream stream, out IEnumerable <ExperimentTable> experiments) { if (stream == null) { throw new ArgumentNullException(nameof(stream)); } experiments = default(IEnumerable <ExperimentTable>); var result = new List <ExperimentTable>(); var reader = new StreamReader(stream); string line = ""; try { while ((line = reader.ReadLine()) != null) { var array = ParseUshorts(line); var experiment = new ExperimentTable(); experiment.SetArray(array); result.Add(experiment); } } catch (ArgumentException) { return(false); } experiments = result; return(true); }
public ExperimentTableViewModel(ExperimentTable table) { Experimenent = table ?? throw new ArgumentNullException(nameof(table)); InitializeArray(); PropertyChanged += ExperimentTableViewModelChanged; UpdateArray(); }
private void AddExperiment(ExperimentTable experiment) { var viewModel = new ExperimentTableViewModel(experiment); experiments.Add(viewModel); view.BindExperimentViewModel(viewModel); view.SelectedExperiment = viewModel; }
public void ExperimentTableConvertersTestsFullTest() { // Arrange var table = new ExperimentTable() { ExperimentNumber = 1, FrequencyIndex = (ulong)0x1122334455, StausOfRelay = RelayStatus.Relay1 | RelayStatus.Relay3 | RelayStatus.Relay6, Silence1 = 0x12, NoiseLength = 0x23, Silence2 = 0x34, PhaseOfAPulse = 0x0b, APulseStart = 0x06, APulseContinue = 0x56, SilenceA = 0x6789, BPulsePhase = 0x0c, BPulseContinue = 0x0346, SilenceB = 0x3578, RepeatB = 0x54, EchoLength = 0x45, RepeatExp = 0x67, DelayExp = 0x2756, DelayRecord = 0x8576, }; // Apply byte[] byteTable = ExperimentTableConverters.GetBytes(table); Assert.IsNotNull(byteTable); var resultTable = ExperimentTableConverters.GetTable(byteTable, true); // Assert Assert.AreEqual(table.ExperimentNumber, resultTable.ExperimentNumber); Assert.AreEqual(table.FrequencyIndex, resultTable.FrequencyIndex); Assert.AreEqual(table.GetRelayCode(), resultTable.GetRelayCode()); Assert.AreEqual(table.Silence1, resultTable.Silence1); Assert.AreEqual(table.NoiseLength, resultTable.NoiseLength); Assert.AreEqual(table.CalibrationsNumber, resultTable.CalibrationsNumber); Assert.AreEqual(table.Silence2, resultTable.Silence2); Assert.AreEqual(table.PhaseOfAPulse, resultTable.PhaseOfAPulse); Assert.AreEqual(table.APulseStart, resultTable.APulseStart); Assert.AreEqual(table.APulseContinue, resultTable.APulseContinue); Assert.AreEqual(table.SilenceA, resultTable.SilenceA); Assert.AreEqual(table.BPulsePhase, resultTable.BPulsePhase); Assert.AreEqual(table.BPulseContinue, resultTable.BPulseContinue); Assert.AreEqual(table.SilenceB, resultTable.SilenceB); Assert.AreEqual(table.EchoLength, resultTable.EchoLength); Assert.AreEqual(table.RepeatB, resultTable.RepeatB); Assert.AreEqual(table.RepeatExp, resultTable.RepeatExp); Assert.AreEqual(table.DelayExp, resultTable.DelayExp); Assert.AreEqual(table.DelayRecord, resultTable.DelayRecord); Assert.AreEqual(table.AdditionalWord, resultTable.AdditionalWord); }
private static void ExportExperiment(Stream stream, ExperimentTable experiment) { var array = experiment.GetArray(); using (var writer = new StreamWriter(stream, Encoding.Unicode, 1024, true)) { for (int i = 0; i < array.Length; i++) { var current = array[i].ToString("X4") + " "; writer.Write(current); } writer.Write(Environment.NewLine); } }
internal void AddExperiment() { view.ExperimentViewVisible = true; var experiment = new ExperimentTable() { ExperimentNumber = (ushort)experiments.Count }; AddExperiment(experiment); //var viewModel = new ExperimentTableViewModel(experimentTable); //experiments.Add(viewModel); //view.BindExperimentViewModel(viewModel); //view.SelectedExperiment = viewModel; }