Changed MultiProgress into a template container class

This commit is contained in:
Pranav Srinivas Kumar
2019-12-17 20:14:05 -06:00
parent 92725d6cb2
commit 03000c8493
3 changed files with 6 additions and 6 deletions

View File

@@ -27,14 +27,13 @@ SOFTWARE.
#pragma once
#define NOMINMAX
#include <functional>
#include <indicators/progress_bar.hpp>
#include <vector>
namespace indicators {
template <size_t count> class MultiProgress {
template <typename Indicator, size_t count> class MultiProgress {
public:
void add_progress_bar(ProgressBar &bar) {
void add_progress_bar(Indicator &bar) {
_bars.push_back(bar);
bar._multi_progress_mode = true;
}
@@ -60,7 +59,7 @@ public:
private:
std::atomic<bool> _started{false};
std::mutex _mutex;
std::vector<std::reference_wrapper<ProgressBar>> _bars;
std::vector<std::reference_wrapper<Indicator>> _bars;
bool _all_completed() {
bool result{true};

View File

@@ -147,7 +147,7 @@ private:
std::mutex _mutex;
Color _foreground_color{indicators::Color::WHITE};
template <size_t count> friend class MultiProgress;
template <typename Indicator, size_t count> friend class MultiProgress;
std::atomic<bool> _multi_progress_mode{false};
std::ostream &_print_duration(std::ostream &os, std::chrono::nanoseconds ns) {