cgv
Loading...
Searching...
No Matches
progression.cxx
1
#include "progression.h"
2
3
#include <iostream>
4
5
namespace
cgv
{
7
namespace
utils {
8
10
progression::progression
()
11
{
12
enumerations = -1;
13
}
14
16
progression::progression
(
const
std::string& process,
size_t
total,
int
count)
17
{
18
init
(process, total, count);
19
}
20
22
void
progression::init
(
const
std::string& process,
size_t
total,
int
count)
23
{
24
if
(count > 0) {
25
std::cout << process <<
":"
; std::cout.flush();
26
percent = 0;
27
enumerations = 0;
28
next_shown = next_step = (total-1.1)/count;
29
percent_step = 100.0f/count;
30
}
31
else
32
enumerations = -1;
33
}
34
36
void
progression::step
()
37
{
38
if
(enumerations < 0)
39
return
;
40
if
(++enumerations > next_shown) {
41
next_shown += next_step;
42
percent += percent_step;
43
std::cout <<
" "
<< percent <<
"%"
;
44
if
(percent > 99.9f)
45
std::cout << std::endl;
46
else
47
std::cout.flush();
48
}
49
}
50
51
}
52
}
cgv
the cgv namespace
Definition
print.h:11
cgv::utils::progression::progression
progression()
create empty progression
Definition
progression.cxx:10
cgv::utils::progression::step
void step()
next iteration
Definition
progression.cxx:36
cgv::utils::progression::init
void init(const std::string &process, size_t total, int count)
reinitialize
Definition
progression.cxx:22
cgv
utils
progression.cxx
Generated by
1.9.8