First Commit
This commit is contained in:
commit
3796ec5cd2
146 files changed
+4825
No files matched your search
@@ -0,0 +1,23 @@
|
||||
#pragma once
|
||||
#include <QtGlobal>
|
||||
|
||||
// 界面负责取得当前时间,模型只负责计算;测试可传入确定的毫秒数。
|
||||
class Countdown {
|
||||
public:
|
||||
enum class State { Ready, Running, Paused, Finished };
|
||||
explicit Countdown(qint64 durationMs = 300000);
|
||||
bool setDuration(qint64 durationMs);
|
||||
void start(qint64 nowMs);
|
||||
void pause(qint64 nowMs);
|
||||
void reset();
|
||||
void update(qint64 nowMs);
|
||||
qint64 remaining(qint64 nowMs) const;
|
||||
qint64 duration() const { return m_duration; }
|
||||
State state() const { return m_state; }
|
||||
private:
|
||||
qint64 m_duration;
|
||||
qint64 m_remainingAtStart;
|
||||
qint64 m_segmentStarted = 0;
|
||||
State m_state = State::Ready;
|
||||
};
|
||||
|
||||
Reference in new issue
Block a user