From 7863e4caa1d07aef348a437fe0a662db68fd7ac3 Mon Sep 17 00:00:00 2001 From: Aki Date: Sat, 21 May 2022 11:55:08 +0200 Subject: Added naive Timeline --- Timeline.cpp | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 Timeline.cpp (limited to 'Timeline.cpp') diff --git a/Timeline.cpp b/Timeline.cpp new file mode 100644 index 0000000..b6003e5 --- /dev/null +++ b/Timeline.cpp @@ -0,0 +1,40 @@ +#include "Timeline.h" + +#include +#include + + +Timeline::Timeline(const std::time_t start, const std::time_t end) : + m_start {start}, + m_end {static_cast(end - start)}, + m_current {0.0} +{ +} + + +std::time_t +Timeline::timestamp() const +{ + return m_start + m_current; +} + + +double +Timeline::current() const +{ + return m_current; +} + + +double +Timeline::progress() const +{ + return m_current / m_end; +} + + +double +Timeline::move(const double dt) +{ + return m_current = std::clamp(m_current + dt, 0.0, m_end); +} -- cgit v1.1