/**************************************************************************** * * (c) 2009-2020 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org> * * QGroundControl is licensed according to the terms in the file * COPYING.md in the root of the source code directory. * ****************************************************************************/#pragma once#include "QGCLoggingCategory.h"#include "QGCMAVLink.h"#include <QObject>Q_DECLARE_LOGGING_CATEGORY(ComponentInformationLog)classVehicle;classComponentInformation:publicQObject{Q_OBJECTpublic:ComponentInformation(Vehicle*vehicle,QObject*parent=nullptr);voidrequestVersionMetaData(Vehicle*vehicle);boolrequestParameterMetaData(Vehicle*vehicle);voidcomponentInformationReceived(constmavlink_message_t&message);boolmetaDataTypeSupported(COMP_METADATA_TYPEtype);private:Vehicle*_vehicle=nullptr;bool_versionMetaDataAvailable=false;bool_paramMetaDataAvailable=false;QList<COMP_METADATA_TYPE>_supportedMetaDataTypes;};