private void btnLoad_Click(object sender, EventArgs e) { if (!IsWorking) { SetAsProcessing(); //ControlBridge.SetControlEnabledState(btnCreate, false); n = BigInteger.Parse(tbN.Text); //Logging.OutputFilename = DirectoryLocations.GetUniqueNameFromN(n) + ".LOG.txt"; //Logging.CreateLogFileIfNotExists(); string jsonFilename = Path.Combine(DirectoryLocations.GetSaveLocation(n), "GNFS.json"); Logging.LogMessage($"[Loading factorization progress from \"{jsonFilename}\"...]"); CancellationToken token = cancellationTokenSource.Token; new Thread(() => { GNFS localGnfs = GnfsUiBridge.LoadGnfs(n); SetGnfs(this, localGnfs); HaultAllProcessing(); ControlBridge.SetControlEnabledState(panelFunctions, true); Logging.LogMessage(); Logging.LogMessage("Counts/Quantities:"); Logging.LogMessage(); Logging.LogMessage($"Algebraic Factor Base (Quantity):\t{localGnfs.PrimeFactorBase.AlgebraicFactorBase.Count}"); Logging.LogMessage($"Rational Factor Base (Quantity):\t{localGnfs.PrimeFactorBase.RationalFactorBase.Count}"); Logging.LogMessage($"Quadratic Factor Base (Quantity):\t{localGnfs.PrimeFactorBase.QuadraticFactorBase.Count}"); Logging.LogMessage(); Logging.LogMessage($"Algebraic Factor Pairs (Quantity):\t{localGnfs.AlgebraicFactorPairCollection.Count}"); Logging.LogMessage($"Rational Factor Pairs (Quantity):\t{localGnfs.RationalFactorPairCollection.Count}"); Logging.LogMessage($"Quadratic Factor Pairs (Quantity):\t{localGnfs.QuadraticFactorPairCollection.Count}"); Logging.LogMessage(); Logging.LogMessage($" Smooth Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.SmoothRelationsCounter}"); Logging.LogMessage($" Rough Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.RoughRelations.Count}"); Logging.LogMessage($" Free Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.FreeRelationsCounter}"); Logging.LogMessage(); Logging.LogMessage("[Loading factorization progress complete]"); }).Start(); } }
private void btnLoad_Click(object sender, EventArgs e) { if (!IsWorking) { SetAsProcessing(); BigInteger n = N; string jsonFilename = Path.Combine(DirectoryLocations.GetSaveLocation(n), DirectoryLocations.SaveFilename); Logging.LogMessage($"[Loading factorization progress from \"{jsonFilename}\"...]"); CancellationToken token = _cancellationTokenSource.Token; new Thread(() => { GNFS localGnfs = GnfsUiBridge.LoadGnfs(n); SetGnfs(this, localGnfs); HaultAllProcessing(); ControlBridge.SetControlEnabledState(panelFunctions, true); Logging.LogMessage(); Logging.LogMessage("Counts/Quantities:"); Logging.LogMessage(); Logging.LogMessage($"Algebraic Factor Base (MaxValue):\t{localGnfs.PrimeFactorBase.AlgebraicFactorBaseMax}"); Logging.LogMessage($"Rational Factor Base (MaxValue):\t{localGnfs.PrimeFactorBase.RationalFactorBaseMax}"); Logging.LogMessage($"Quadratic Factor Base (MaxValue):\t{localGnfs.PrimeFactorBase.QuadraticFactorBaseMax}"); Logging.LogMessage(); Logging.LogMessage($"Algebraic Factor Pairs (Quantity):\t{localGnfs.AlgebraicFactorPairCollection.Count}"); Logging.LogMessage($"Rational Factor Pairs (Quantity):\t{localGnfs.RationalFactorPairCollection.Count}"); Logging.LogMessage($"Quadratic Factor Pairs (Quantity):\t{localGnfs.QuadraticFactorPairCollection.Count}"); Logging.LogMessage(); Logging.LogMessage($" Smooth Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.SmoothRelationsCounter}"); Logging.LogMessage($" Rough Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.RoughRelations.Count}"); Logging.LogMessage($" Free Relations (Quantity):\t{localGnfs.CurrentRelationsProgress.FreeRelationsCounter}"); Logging.LogMessage(); Logging.LogMessage("[Loading factorization progress complete]"); PrintCurrentCounts(); RefreshLoadSaveButtonState(); }).Start(); } }