Changed to adhere to the new documentation structure outlined here: http://qt-project.org/wiki/Qt_Documentation_Structure Change-Id: I634e086c7d55abfac3680144cbbe97059fcbea4f Reviewed-by: Jerome Pasion <jerome.pasion@digia.com>
44 lines
1.2 KiB
Plaintext
44 lines
1.2 KiB
Plaintext
The QML painting rate is calculated by the FrequencyMonitor class, which
|
|
turns a stream of events (received via the notify() slot), into an
|
|
instantaneous and an averaged frequency:
|
|
|
|
\quotefromfile video/snippets/frequencymonitor/frequencymonitor.h
|
|
\skipto class FrequencyMonitor : public QObject
|
|
\printuntil Q_OBJECT
|
|
\skipto Q_PROPERTY(qreal instantaneousFrequency
|
|
\printuntil averageFrequencyChanged)
|
|
\skipto public
|
|
\printuntil :
|
|
\dots
|
|
\skipto static void qmlRegisterType
|
|
\printuntil ;
|
|
\skipto public slots
|
|
\printuntil notify();
|
|
\skipto };
|
|
\printline };
|
|
|
|
The FrequencyMonitor class is exposed to QML like this
|
|
|
|
\quotefromfile video/snippets/frequencymonitor/frequencymonitordeclarative.cpp
|
|
\skipto FrequencyMonitor::qmlRegisterType
|
|
\printuntil }
|
|
|
|
and its data is displayed by defining a QML item called FrequencyItem, like this:
|
|
|
|
\quotefromfile video/snippets/frequencymonitor/qml/frequencymonitor/FrequencyItem.qml
|
|
\skipto import FrequencyMonitor
|
|
\printuntil id: root
|
|
\dots
|
|
\skipto function notify
|
|
\printuntil id: monitor
|
|
\skipto onAverageFrequencyChanged
|
|
\printuntil {
|
|
\skipto averageFrequencyText
|
|
\printuntil /^\}/
|
|
|
|
The result looks like this:
|
|
|
|
\image video-qml-paint-rate.png
|
|
|
|
|