# | Line 35 | Line 35 | |
---|---|---|
35 | * | |
36 | * [1] Meineke, et al., J. Comp. Chem. 26, 252-271 (2005). | |
37 | * [2] Fennell & Gezelter, J. Chem. Phys. 124, 234104 (2006). | |
38 | < | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 24107 (2008). |
38 | > | * [3] Sun, Lin & Gezelter, J. Chem. Phys. 128, 234107 (2008). |
39 | * [4] Kuang & Gezelter, J. Chem. Phys. 133, 164101 (2010). | |
40 | * [5] Vardeman, Stocker & Gezelter, J. Chem. Theory Comput. 7, 834 (2011). | |
41 | */ | |
42 | ||
43 | + | #ifdef IS_MPI |
44 | + | #include <mpi.h> |
45 | + | #endif |
46 | + | |
47 | #include <iostream> | |
48 | #include <cstdlib> | |
49 | ||
# | Line 55 | Line 59 | |
59 | #include <unistd.h> | |
60 | #endif | |
61 | ||
58 | – | #ifdef IS_MPI |
59 | – | #include <mpi.h> |
60 | – | #endif |
61 | – | |
62 | #include "utils/ProgressBar.hpp" | |
63 | ||
64 | using namespace std; | |
# | Line 72 | Line 72 | namespace OpenMD { | |
72 | ||
73 | void ProgressBar::clear() { | |
74 | #ifdef IS_MPI | |
75 | < | if (MPI::COMM_WORLD.Get_rank() == 0) { |
75 | > | int myRank; |
76 | > | MPI_Comm_rank( MPI_COMM_WORLD, &myRank); |
77 | > | if (myRank == 0) { |
78 | #endif | |
79 | cout << endl; | |
80 | cout.flush(); | |
# | Line 87 | Line 89 | namespace OpenMD { | |
89 | ||
90 | void ProgressBar::update() { | |
91 | ||
90 | – | int width; |
91 | – | |
92 | #ifdef IS_MPI | |
93 | < | if (MPI::COMM_WORLD.Get_rank() == 0) { |
93 | > | int myRank; |
94 | > | MPI_Comm_rank( MPI_COMM_WORLD, &myRank); |
95 | > | if (myRank == 0) { |
96 | #endif | |
97 | ||
98 | // only do the progress bar if we are actually running in a tty: | |
99 | if (isatty(fileno(stdout)) && (getenv("SGE_TASK_ID")==NULL)) { | |
100 | // get the window width: | |
101 | ||
102 | + | int width = 0; |
103 | #ifdef _MSC_VER | |
104 | CONSOLE_SCREEN_BUFFER_INFO csbi; | |
105 | HANDLE hConsole = GetStdHandle( STD_OUTPUT_HANDLE ); | |
106 | int ret = GetConsoleScreenBufferInfo(hConsole, &csbi); | |
107 | if(ret) { | |
108 | width = csbi.dwSize.X - 1; | |
109 | < | } |
109 | > | } |
110 | #else | |
111 | struct winsize w; | |
112 | ioctl(fileno(stdout), TIOCGWINSZ, &w); | |
# | Line 131 | Line 134 | namespace OpenMD { | |
134 | ||
135 | // compute the best estimate of the ending time: | |
136 | time_t current_ = time(NULL); | |
137 | < | time_t end_ = start_ + (current_ - start_) * (100.0/percent); |
137 | > | time_t end_ = static_cast<time_t>(start_ + (current_ - start_) * |
138 | > | (100.0/percent) ); |
139 | struct tm * ender = localtime(&end_); | |
140 | char buffer[22]; | |
141 | strftime(buffer, 22, "%a %b %d @ %I:%M %p", ender); |
– | Removed lines |
+ | Added lines |
< | Changed lines |
> | Changed lines |