Beatmup
progress_tracking.cpp
Go to the documentation of this file.
1 /*
2  Beatmup image and signal processing library
3  Copyright (C) 2019, lnstadrum
4 
5  This program is free software: you can redistribute it and/or modify
6  it under the terms of the GNU General Public License as published by
7  the Free Software Foundation, either version 3 of the License, or
8  (at your option) any later version.
9 
10  This program is distributed in the hope that it will be useful,
11  but WITHOUT ANY WARRANTY; without even the implied warranty of
12  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  GNU General Public License for more details.
14 
15  You should have received a copy of the GNU General Public License
16  along with this program. If not, see <http://www.gnu.org/licenses/>.
17 */
18 
19 #include "progress_tracking.h"
20 #include <algorithm>
21 #include <cstdio>
22 
23 
25 
26 
27 void Beatmup::ProgressTracking::printOutProgressBar(const unsigned int barLength) const {
28  printf("\r[");
29  const unsigned int val = std::min(barLength - 2, progress * (barLength - 2) / maxProgress);
30  for (unsigned int i = 0; i < val; ++i)
31  printf("*");
32  for (unsigned int i = val; i < barLength - 2; ++i)
33  printf(" ");
34  printf("]");
35  fflush(stdout);
36 }
Progress tracking utility.
void printOutProgressBar(const unsigned int barLength=40) const
Prints a fancy progress bar to standard output.
static ProgressTracking DEVNULL
CustomPoint< numeric > min(const CustomPoint< numeric > &a, const CustomPoint< numeric > &b)
Definition: geometry.h:724
return(jlong) new Beatmup jlong jstring jint val