mirror of
https://github.com/p-ranav/indicators.git
synced 2025-12-16 04:18:51 +08:00
Use floats for remaining time math
This commit is contained in:
@@ -200,7 +200,9 @@ private:
|
|||||||
|
|
||||||
if (saved_start_time) {
|
if (saved_start_time) {
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed.count() * max_progress / progress_) : 0);
|
progress_ > 0 ? static_cast<long long>(float(elapsed.count()) *
|
||||||
|
max_progress / progress_)
|
||||||
|
: 0);
|
||||||
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -255,8 +255,8 @@ private:
|
|||||||
|
|
||||||
if (saved_start_time) {
|
if (saved_start_time) {
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed_.count() *
|
progress_ > 0 ? static_cast<long long>(float(elapsed_.count()) *
|
||||||
(max_progress / progress_))
|
max_progress / progress_)
|
||||||
: 0);
|
: 0);
|
||||||
auto remaining = eta > elapsed_ ? (eta - elapsed_) : (elapsed_ - eta);
|
auto remaining = eta > elapsed_ ? (eta - elapsed_) : (elapsed_ - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
|
|||||||
@@ -195,7 +195,9 @@ public:
|
|||||||
else
|
else
|
||||||
os << " [";
|
os << " [";
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed.count() * max_progress / progress_) : 0);
|
progress_ > 0 ? static_cast<long long>(float(elapsed.count()) *
|
||||||
|
max_progress / progress_)
|
||||||
|
: 0);
|
||||||
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
os << "]";
|
os << "]";
|
||||||
|
|||||||
@@ -1788,8 +1788,8 @@ private:
|
|||||||
|
|
||||||
if (saved_start_time) {
|
if (saved_start_time) {
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed_.count() *
|
progress_ > 0 ? static_cast<long long>(float(elapsed_.count()) *
|
||||||
(max_progress / progress_))
|
max_progress / progress_)
|
||||||
: 0);
|
: 0);
|
||||||
auto remaining = eta > elapsed_ ? (eta - elapsed_) : (elapsed_ - eta);
|
auto remaining = eta > elapsed_ ? (eta - elapsed_) : (elapsed_ - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
@@ -2089,8 +2089,8 @@ private:
|
|||||||
|
|
||||||
if (saved_start_time) {
|
if (saved_start_time) {
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed.count() *
|
progress_ > 0 ? static_cast<long long>(float(elapsed.count()) *
|
||||||
(max_progress / progress_))
|
max_progress / progress_)
|
||||||
: 0);
|
: 0);
|
||||||
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
@@ -2798,8 +2798,8 @@ public:
|
|||||||
else
|
else
|
||||||
os << " [";
|
os << " [";
|
||||||
auto eta = std::chrono::nanoseconds(
|
auto eta = std::chrono::nanoseconds(
|
||||||
progress_ > 0 ? static_cast<long long>(elapsed.count() *
|
progress_ > 0 ? static_cast<long long>(float(elapsed.count()) *
|
||||||
(max_progress / progress_))
|
max_progress / progress_)
|
||||||
: 0);
|
: 0);
|
||||||
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
auto remaining = eta > elapsed ? (eta - elapsed) : (elapsed - eta);
|
||||||
details::write_duration(os, remaining);
|
details::write_duration(os, remaining);
|
||||||
|
|||||||
Reference in New Issue
Block a user