MCPcopy Create free account
hub / github.com/KTH-RPL/dufomap / ProgressBar

Method ProgressBar

src/indicators.hpp:1962–2015  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1960 Settings, typename std::decay<Args>::type...>::value,
1961 void *>::type = nullptr>
1962 explicit ProgressBar(Args &&... args)
1963 : settings_(
1964 details::get<details::ProgressBarOption::bar_width>(
1965 option::BarWidth{100}, std::forward<Args>(args)...),
1966 details::get<details::ProgressBarOption::prefix_text>(
1967 option::PrefixText{}, std::forward<Args>(args)...),
1968 details::get<details::ProgressBarOption::postfix_text>(
1969 option::PostfixText{}, std::forward<Args>(args)...),
1970 details::get<details::ProgressBarOption::start>(
1971 option::Start{"["}, std::forward<Args>(args)...),
1972 details::get<details::ProgressBarOption::end>(
1973 option::End{"]"}, std::forward<Args>(args)...),
1974 details::get<details::ProgressBarOption::fill>(
1975 option::Fill{"="}, std::forward<Args>(args)...),
1976 details::get<details::ProgressBarOption::lead>(
1977 option::Lead{">"}, std::forward<Args>(args)...),
1978 details::get<details::ProgressBarOption::remainder>(
1979 option::Remainder{" "}, std::forward<Args>(args)...),
1980 details::get<details::ProgressBarOption::max_postfix_text_len>(
1981 option::MaxPostfixTextLen{0}, std::forward<Args>(args)...),
1982 details::get<details::ProgressBarOption::completed>(
1983 option::Completed{false}, std::forward<Args>(args)...),
1984 details::get<details::ProgressBarOption::show_percentage>(
1985 option::ShowPercentage{false}, std::forward<Args>(args)...),
1986 details::get<details::ProgressBarOption::show_elapsed_time>(
1987 option::ShowElapsedTime{false}, std::forward<Args>(args)...),
1988 details::get<details::ProgressBarOption::show_remaining_time>(
1989 option::ShowRemainingTime{false}, std::forward<Args>(args)...),
1990 details::get<details::ProgressBarOption::saved_start_time>(
1991 option::SavedStartTime{false}, std::forward<Args>(args)...),
1992 details::get<details::ProgressBarOption::foreground_color>(
1993 option::ForegroundColor{Color::unspecified},
1994 std::forward<Args>(args)...),
1995 details::get<details::ProgressBarOption::font_styles>(
1996 option::FontStyles{std::vector<FontStyle>{}},
1997 std::forward<Args>(args)...),
1998 details::get<details::ProgressBarOption::min_progress>(
1999 option::MinProgress{0}, std::forward<Args>(args)...),
2000 details::get<details::ProgressBarOption::max_progress>(
2001 option::MaxProgress{100}, std::forward<Args>(args)...),
2002 details::get<details::ProgressBarOption::progress_type>(
2003 option::ProgressType{ProgressType::incremental},
2004 std::forward<Args>(args)...),
2005 details::get<details::ProgressBarOption::stream>(
2006 option::Stream{std::cout}, std::forward<Args>(args)...)) {
2007
2008 // if progress is incremental, start from min_progress
2009 // else start from max_progress
2010 const auto type = get_value<details::ProgressBarOption::progress_type>();
2011 if (type == ProgressType::incremental)
2012 progress_ = get_value<details::ProgressBarOption::min_progress>();
2013 else
2014 progress_ = get_value<details::ProgressBarOption::max_progress>();
2015 }
2016
2017 template <typename T, details::ProgressBarOption id>
2018 void set_option(details::Setting<T, id> &&setting) {

Callers

nothing calls this directly

Calls

no outgoing calls

Tested by

no test coverage detected