3#include <QtCore/QLoggingCategory>
4#include <QtCore/QJsonArray>
6#include <QtCore/QStringList>
7#include <QtCore/QTimer>
8#include <QtQmlIntegration/QtQmlIntegration>
28 explicit FactGroup(
int updateRateMsecs,
const QString &metaDataFile, QObject *parent =
nullptr,
bool ignoreCamelCase =
false);
29 explicit FactGroup(
int updateRateMsecs, QObject *parent =
nullptr,
bool ignoreCamelCase =
false);
33 Q_INVOKABLE
bool factExists(
const QString &name)
const;
37 Q_INVOKABLE
Fact *getFact(
const QString &name)
const;
41 Q_INVOKABLE
FactGroup *getFactGroup(
const QString &name)
const;
44 Q_INVOKABLE
void setLiveUpdates(
bool liveUpdates);
46 QStringList factNames()
const {
return _factNames; }
48 bool telemetryAvailable()
const {
return _telemetryAvailable; }
79 static QString _camelCase(
const QString &text);
82 const bool _ignoreCamelCase =
false;
83 bool _telemetryAvailable =
false;
Q_DECLARE_LOGGING_CATEGORY(AndroidSerialLog)
struct __mavlink_message mavlink_message_t
Used to group Facts together into an object hierarachy.
QMap< QString, Fact * > _nameToFactMap
void telemetryAvailableChanged(bool telemetryAvailable)
QMap< QString, FactMetaData * > _nameToFactMetaDataMap
virtual void _updateAllValues()
void _addFactGroup(FactGroup *factGroup)
void _setTelemetryAvailable(bool telemetryAvailable)
void factGroupNamesChanged()
void _addFactGroup(FactGroup *factGroup, const QString &name)
QMap< QString, FactGroup * > _nameToFactGroupMap
void _addFact(Fact *fact, const QString &name)
const int _updateRateMSecs
Update rate for Fact::valueChanged signals, 0: immediate update.
void _addFact(Fact *fact)
void _loadFromJsonArray(const QJsonArray &jsonArray)
A Fact is used to hold a single value within the system.