public IActionResult FecDecodePost(DecodeViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                viewModel.Error = "Input errors";
                return(View(viewModel));
            }

            var fecResult = FecHelpers.DecodePayload(viewModel.HexPayloadOriginal, viewModel.PreambleLength, viewModel.VirtualFillLength, viewModel.DualBasis);

            if (fecResult.Success)
            {
                viewModel.PayloadUncorrected   = fecResult.PayloadUncorrected;
                viewModel.BlockUncorrected     = fecResult.BlockUncorrected;
                viewModel.PayloadCorrected     = fecResult.PayloadCorrected;
                viewModel.BlockCorrected       = fecResult.BlockCorrected;
                viewModel.ErrorsCorrectedCount = fecResult.ErrorsCorrectedCount;
            }
            else
            {
                viewModel.Error = fecResult.Error;
                return(View(viewModel));
            }

            return(View(viewModel));
        }
Exemplo n.º 2
0
        private void TextBoxDecoded_OnDrop(object sender, DragEventArgs e)
        {
            DecodeViewModel viewModel = DataContext as DecodeViewModel;

            if (viewModel != null)
            {
                viewModel.LoadDecodedText(e.Data);
            }

            e.Handled = true;
        }
Exemplo n.º 3
0
        public IActionResult DecodePost(DecodeViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            // Preamble length is 16 because beacons have an Ax25 frame in the first 16 bytes which does not participate
            // in the FEC block.
            //
            var fecResult     = FecHelpers.DecodePayload(viewModel.HexPayloadOriginal, 16, 0, false);
            var beaconDecoded = BeaconDecoder.DecodeBeacon(fecResult.PayloadCorrected ?? fecResult.PayloadUncorrected);

            viewModel.FecDecodeResult = fecResult;
            viewModel.Acrux1Beacon    = beaconDecoded;

            return(View(viewModel));
        }
 public IActionResult FecEncodePost(DecodeViewModel viewModel)
 {
     return(View());
 }