![]() |
LINE Solver (C++)
Templated C++ port of the LINE queueing solver
|
Running progress log of a LINE solver run (the "solver console"). More...
#include <algorithm>#include <cctype>#include <chrono>#include <cstdarg>#include <cstdio>#include <string>#include <vector>Go to the source code of this file.
Classes | |
| class | line::util::LineConsole |
| class | line::util::LineConsole::Run |
| RAII guard: opens a run on construction, closes it on scope exit. More... | |
| class | line::util::LineConsole::Quiet |
| RAII guard that suppresses structure-compile detail while it lives. More... | |
| class | line::util::LineConsole::OwnModelCompile |
| Lift the compile detail rule while the run compiles its OWN model. More... | |
Namespaces | |
| namespace | line |
| namespace | line::util |
Enumerations | |
| enum class | line::util::VerboseLevel { line::util::SILENT = 0 , line::util::STD = 1 , line::util::DEBUG = 2 } |
| Session verbosity, the twin of MATLAB's VerboseLevel, jline.VerboseLevel and python's line_solver.constants.VerboseLevel. More... | |
Running progress log of a LINE solver run (the "solver console").
The console narrates what a solver is doing while it does it: reading the model, compiling the network structure, computing chains and demands, resolving the method, iterating, and closing with the figures of merit. Each line carries the elapsed time since the run started:
It prints no tables: the result table stays the caller's own printer. THE CONSOLE IS VerboseLevel::DEBUG: it narrates exactly when the run is at DEBUG and is silent at every lower level, and it never alters a numerical result. There is no separate console switch – the console was one, until it became clear that a running progress log IS what a debug verbosity is for, and two switches for one channel only let a session ask for DEBUG and get nothing. line-cli asks for it with -v debug; a library caller with set_verbose().
Nested runs (an inner solver driven by an ensemble) do not narrate: only the outermost run writes. Use is_active() to suppress a legacy print, owns_log() to emit.
Mirrors MATLAB matlab/src/io/LineConsole.m, jline.io.LineConsole and python line_solver/api/io/console.py.
Definition in file line_console.h.