コード例 #1
0
        public static void Read(HangbankModel model)
        {
            string calibrationPath = GetCalibrationCsvFile();

            if (!File.Exists(calibrationPath))
            {
                // Default values are used.
                return;
            }

            var lines = File.ReadAllLines(GetCalibrationCsvFile());

            if (lines.Length == 0)
            {
                // Default values are used.
                return;
            }

            var split = lines[0].Trim().Split(',');

            if (split.Length == 4)
            {
                model.LinksOnbelast  = int.Parse(split[0]);
                model.LinksBelast    = int.Parse(split[1]);
                model.RechtsOnbelast = int.Parse(split[2]);
                model.RechtsBelast   = int.Parse(split[3]);
            }
        }
コード例 #2
0
        public TrainingUserControl(HangbankMainWindow mainWindow, HangbankModel model)
        {
            _mainWindow = mainWindow;
            Model       = model;

            InitialiseBindings();
            UpdateAxisLimits(0.0);

            var mapper = Mappers.Xy <MeasureModel>()
                         .X(mm => mm.T)
                         .Y(mm => mm.Moment);

            Charting.For <MeasureModel>(mapper);

            InitializeComponent();
            DataContext   = this;
            CurrentStatus = "Prepare to start...";

            Task.Factory.StartNew(() =>
            {
                // Give athletes 10 seconds before the training starts.
                Task.Delay(5000).Wait();
                _t0 = DateTime.Now;
                Start();
            });
        }
コード例 #3
0
        internal FrontPageUserControl(HangbankMainWindow mainWindow, HangbankModel model)
        {
            _mainWindow = mainWindow;
            _model      = model;

            InitializeComponent();
            DataContext = model;
        }
コード例 #4
0
        public static void Write(HangbankModel model)
        {
            var l = new List <string>
            {
                model.LinksOnbelast.ToString(),
                model.LinksBelast.ToString(),
                model.RechtsOnbelast.ToString(),
                model.RechtsBelast.ToString()
            };
            var s = string.Join(", ", l);

            File.WriteAllText(GetCalibrationCsvFile(), s);
        }
コード例 #5
0
        private void InitModel()
        {
            _model = new HangbankModel();
            _model.Listener.SerialPortName = "COM4";

            PersistenceTools.AssertPersistenceDirPresent();

            CalibrationPersister.Read(_model);

            _model.Athletes = new ObservableCollection <Athlete>(AthletePersister.Read());
            if (_model.Athletes.Count > 0)
            {
                _model.CurrentAthlete = _model.Athletes[0];
            }
        }
コード例 #6
0
 public ConfigurationUserControl(HangbankMainWindow mainWindow, HangbankModel model)
 {
     DataContext = model;
     _mainWindow = mainWindow;
     InitializeComponent();
 }