GitHub - prakhar1989/progress-cpp: A flexible ASCII progress-bar for C++ (original) (raw)

Progress-CPP

A flexible ASCII progress bar for your console based C++ projects.

Usage

Progress is a header-only library and can be used by simply including the ProgressBar.hpp header file.

The bar takes the following options at initialization

#include "ProgressBar.hpp"

int main() {

const int limit = 10000;

// initialize the bar
ProgressBar progressBar(limit, 70);

for (int i = 0; i < limit; i++) {
    // record the tick
    ++progressBar;

    // display the bar
    progressBar.display();
}

// tell the bar to finish
progressBar.done();

}

The above code results in the following output

[===================>                                                 ] 29% 0.821s

Example

Refer to example.cpp file for an example usage. To run it,

$ mkdir build && cd build
$ cmake ..
$ make
$ ./ProgressBar

Or without cmake

$ g++ -O3 -I. main.cpp -Wall -std=c++11 -o ProgressBar
$ ./ProgressBar

CMake configuration

Cmake and project layout is inspired by github.com/TheLartians/ModernCppStarter.