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)); }
private void TextBoxDecoded_OnDrop(object sender, DragEventArgs e) { DecodeViewModel viewModel = DataContext as DecodeViewModel; if (viewModel != null) { viewModel.LoadDecodedText(e.Data); } e.Handled = true; }
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()); }