ClikaRT::progress::ProgressBar
class
Header: ClikaRT/progress/progress.h
A standalone determinate progress bar over an arbitrary [min, max] range.
Member functions
ProgressBar()
ProgressBar()
an unstarted bar (first drive draws it)
Declared in ClikaRT/progress/progress.h, line 64
~ProgressBar()
~ProgressBar()
destructor
Declared in ClikaRT/progress/progress.h, line 65
ProgressBar(ProgressBar)
ProgressBar(ProgressBar&& other) noexcept
move-construct
Declared in ClikaRT/progress/progress.h, line 66
operator=(ProgressBar)
ProgressBar& operator=(ProgressBar&& other) noexcept
move-assign
Declared in ClikaRT/progress/progress.h, line 67
ProgressBar(ProgressBar)
ProgressBar(const ProgressBar&) =delete
Declared in ClikaRT/progress/progress.h, line 68
operator=(ProgressBar)
ProgressBar& operator=(const ProgressBar&) =delete
Declared in ClikaRT/progress/progress.h, line 69
total()
ProgressBar& total(double max)
upper bound (default 100)
Declared in ClikaRT/progress/progress.h, line 72
min()
ProgressBar& min(double value)
lower bound (default 0)
Declared in ClikaRT/progress/progress.h, line 73
width()
ProgressBar& width(int cells)
bar cells; 0 = auto-fit (default)
Declared in ClikaRT/progress/progress.h, line 74
prefix()
ProgressBar& prefix(std::string_view text)
text before the bar
Declared in ClikaRT/progress/progress.h, line 75
postfix()
ProgressBar& postfix(std::string_view text)
text after the bar
Declared in ClikaRT/progress/progress.h, line 76
color()
ProgressBar& color(Color c)
bar color
Declared in ClikaRT/progress/progress.h, line 77
unit()
ProgressBar& unit(std::string_view u)
rate/count unit (default "it")
Declared in ClikaRT/progress/progress.h, line 78
as_bytes()
ProgressBar& as_bytes(bool on = true)
humanize counts/rate as bytes
Declared in ClikaRT/progress/progress.h, line 79
smoothing_window()
ProgressBar& smoothing_window(std::size_t n)
Average the rate/ETA over the last n updates (a sliding window) so the displayed speed doesn't jump each tick; n == 0 keeps EMA smoothing.
Declared in ClikaRT/progress/progress.h, line 82
ascii()
ProgressBar& ascii(bool on = true)
force the ASCII glyph set
Declared in ClikaRT/progress/progress.h, line 83
transient()
ProgressBar& transient(bool on = true)
erase the bar on done()
Declared in ClikaRT/progress/progress.h, line 84
block()
ProgressBar& block(bool on = true)
smooth sub-cell (block-eighth) fill
Declared in ClikaRT/progress/progress.h, line 85
show_percent()
ProgressBar& show_percent(bool on = true)
show percent complete
Declared in ClikaRT/progress/progress.h, line 86
show_count()
ProgressBar& show_count(bool on = true)
n/total
Declared in ClikaRT/progress/progress.h, line 87
show_elapsed()
ProgressBar& show_elapsed(bool on = true)
show elapsed time
Declared in ClikaRT/progress/progress.h, line 88
show_eta()
ProgressBar& show_eta(bool on = true)
show time remaining
Declared in ClikaRT/progress/progress.h, line 89
show_rate()
ProgressBar& show_rate(bool on = true)
show rate (unit/s)
Declared in ClikaRT/progress/progress.h, line 90
set_progress()
void set_progress(double value)
absolute progress, clamped to [min, max]
Declared in ClikaRT/progress/progress.h, line 93
tick()
void tick(double n = 1.0)
advance by n
Declared in ClikaRT/progress/progress.h, line 94
set_total()
void set_total(double max)
change the total mid-run
Declared in ClikaRT/progress/progress.h, line 95
set_postfix()
void set_postfix(std::string_view text)
update the postfix mid-run
Declared in ClikaRT/progress/progress.h, line 96
mark_completed()
void mark_completed()
jump to 100%
Declared in ClikaRT/progress/progress.h, line 97
done()
void done()
finalize (leave the line, or erase if transient)
Declared in ClikaRT/progress/progress.h, line 98
value()
double value() const
current progress value
Declared in ClikaRT/progress/progress.h, line 100
total_value()
double total_value() const
the configured total
Declared in ClikaRT/progress/progress.h, line 101
completed()
bool completed() const
whether the bar finished (done / mark_completed)
Declared in ClikaRT/progress/progress.h, line 102