ACF $AcfVersion:0$
ITimeStamp.h
Go to the documentation of this file.
1// SPDX-License-Identifier: LGPL-2.1-or-later OR GPL-2.0-or-later OR GPL-3.0-or-later OR LicenseRef-ACF-Commercial
2#pragma once
3
4
5// Qt includes
6#include <QtCore/QDateTime>
7
8// ACF includes
9#include <istd/IChangeable.h>
10
11
12namespace istd
13{
14
15
21class ITimeStamp: virtual public istd::IChangeable
22{
23public:
28 {
29 CF_START_SET = 0xa623a
30 };
31
36 virtual void Start(double elapsedTime = 0) = 0;
37
41 virtual QDateTime GetStartTime() const = 0;
42
46 virtual double GetElapsed() const = 0;
47
51 virtual double GetTimeTo(const ITimeStamp& timer) const = 0;
52
56 virtual void WaitTo(double time) const = 0;
57
61 virtual double GetTimerResolution() const = 0;
62};
63
64
65} // namespace istd
66
67
68
Common interface for data model objects, which can be changed.
Definition IChangeable.h:28
Common interface for timer implementations.
Definition ITimeStamp.h:22
ChangeFlags
Data model change notification flags.
Definition ITimeStamp.h:28
virtual double GetElapsed() const =0
Return the time in seconds from start until this call.
virtual double GetTimeTo(const ITimeStamp &timer) const =0
Get time difference to second timer.
virtual double GetTimerResolution() const =0
Return the timer resolution in seconds.
virtual void WaitTo(double time) const =0
Wait for specific timer elapsed value is reached.
virtual void Start(double elapsedTime=0)=0
Start the timer.
virtual QDateTime GetStartTime() const =0
Get point in time of latest start.
Standard library.
Definition IComponent.h:17