77 auto totalTimeStart = std::chrono::steady_clock::now();
89 std::size_t proceduresDone = 0;
92 for (
int procIndex = 0; procIndex <
program.procedureCount();
96 if (proceduresToProcess.size() > 0 &&
97 proceduresToProcess.find(proc.
name()) ==
98 proceduresToProcess.end())
101 if (proceduresToIgnore.size() > 0 &&
102 proceduresToIgnore.find(proc.
name()) !=
103 proceduresToIgnore.end())
106 auto currentTimeStart = std::chrono::steady_clock::now();
107 std::size_t totalProcedures = 0;
110 if (proceduresToProcess.size() > 0) {
111 totalProcedures = proceduresToProcess.size();
113 totalProcedures =
program.procedureCount();
116 totalProcedures -= proceduresToIgnore.size();
119 <<
"procedure: " << proc.
name()
120 << (boost::format(
" (%d/%d)")
121 % (proceduresDone + 1) % totalProcedures).str();
127 long currentElapsed =
128 std::chrono::duration_cast<std::chrono::seconds>(
129 std::chrono::steady_clock::now() - currentTimeStart)
132 std::chrono::duration_cast<std::chrono::seconds>(
133 std::chrono::steady_clock::now() - totalTimeStart)
135 long eta =
static_cast<long>(
136 (totalElapsed / proceduresDone) *
137 (totalProcedures - proceduresDone));
139 << (boost::format(
" %d min %d s. Total %d min %d s. ETA in "
141 (currentElapsed / 60) % (currentElapsed % 60) %
142 (totalElapsed / 60) % (totalElapsed % 60) % (eta / 60) %