7#include <PhosphorAnimation/phosphoranimation_export.h>
125 std::chrono::nanoseconds
now()
const override;
135 friend class SignalAdapter;
152 mutable std::atomic<std::chrono::nanoseconds::rep> m_nowCache{0};
174 std::atomic<bool> m_renderLoopActive{
false};
175 QPointer<QQuickWindow> m_window;
176 std::unique_ptr<SignalAdapter> m_adapter;
Abstract clock interface for the motion runtime.
Definition IMotionClock.h:18
Qt Quick adapter implementing IMotionClock.
Definition QtQuickClock.h:114
const void * epochIdentity() const override
Opaque epoch identity for rebindClock compatibility.
void requestFrame() override
Schedule another paint tick. Idempotent within a single frame.
std::chrono::nanoseconds now() const override
Monotonically non-decreasing steady-clock reading (nanoseconds).
QtQuickClock(QQuickWindow *window)
Construct a clock bound to window.
QQuickWindow * window() const
The QQuickWindow this clock is bound to. May be null.
qreal refreshRate() const override
Nominal refresh rate in Hz, or zero if unknown.
Definition AnimatedValue.h:31