29 #ifndef UAVOBJECTUTILMANAGER_H
30 #define UAVOBJECTUTILMANAGER_H
37 #include "objectpersistence.h"
46 #include <QErrorMessage>
47 #include <firmwareiapobj.h>
59 int setHomeLocation(
double LLA[3],
bool save_to_sdcard);
60 int getHomeLocation(
bool &set,
double LLA[3]);
62 int getGPSPosition(
double LLA[3]);
65 QByteArray getBoardCPUSerial();
66 quint32 getFirmwareCRC();
67 QByteArray getBoardDescription();
72 QMap<QString, UAVObject::Metadata> readMetadata(metadataSetEnum metadataReadType);
73 QMap<QString, UAVObject::Metadata> readAllNonSettingsMetadata();
74 bool setMetadata(QMap<QString, UAVObject::Metadata>, metadataSetEnum metadataUpdateType);
75 bool setAllNonSettingsMetadata(QMap<QString, UAVObject::Metadata>);
76 bool resetMetadataToDefaults();
77 int getBoardRevision();
78 QString getFirmwareHash();
80 bool boardConfigured();
81 bool firmwareHashMatchesGcs();
84 FirmwareIAPObj::DataFields getFirmwareIap();
86 void saveCompleted(
int objectID,
bool status);
87 void completedMetadataWrite(
bool);
90 QQueue<UAVObject *> queue;
91 enum { IDLE, AWAITING_ACK, AWAITING_COMPLETED } saveState;
92 void saveNextObject();
96 QMap<UAVDataObject *, UAVObject::Metadata> metadataSendlist;
97 bool metadataSendSuccess;
99 void objectPersistenceTransactionCompleted(
UAVObject *obj,
bool success);
100 void objectPersistenceUpdated(
UAVObject *obj);
101 void objectPersistenceOperationFailed();
102 void metadataTransactionCompleted(
UAVObject *,
bool);
Core plugin system that manages the plugins, their life cycle and their registered objects...