Example #1
0
        public CaptureManager(IOnlineManager onlineManager)
        {
            this.onlineManager = onlineManager;

            table = new TableValues <byte, float>();
            table.ValueChanged    += TableOnValueChanged;
            table.PropertyChanged += TableOnPropertyChanged;

            onlineManager.FirmwareManager.OnOpenFirmware  += FirmwareManagerOnOpenFirmware;
            onlineManager.FirmwareManager.OnCloseFirmware += FirmwareManagerOnOpenFirmware;
            onlineManager.FirmwareManager.PropertyChanged += FirmwareManagerOnPropertyChanged;

            onlineManager.FirmwareManager.AutoCorrection += (sender, args) =>
            {
                if (!onlineManager.EnabledRamOnlineCorrection)
                {
                    return;
                }
                if (CapturedTable == null || CapturedTable.Address != args.Address)
                {
                    return;
                }

                CapturedTable.SetSource(args.Index, args.Source);
                args.Cancel = true;
            };

            SetEnabled();
        }
Example #2
0
        public void RestoreTable(IWin32Window owner)
        {
            if (CapturedTable == null)
            {
                return;
            }
            CapturedTable.SetRawBuffer(rawBuffer);
            CapturedTable.FirstInit();
            CapturedTable.FillValues();

            using (var progress = ProgressForm.ShowProgress(owner))
            {
                onlineManager.FirmwareManager.WriteRam(captureAddress, table.Address, rawBuffer);
                onlineManager.OltProtocol.StartCapture(exInfo.CaptureRamId);
                progress.Close();
            }
        }