/**************************************************************************** * * (c) 2009-2019 QGROUNDCONTROL PROJECT * * QGroundControl is licensed according to the terms in the file * COPYING.md in the root of the source code directory. * * @file * @brief Custom Firmware Plugin (PX4) * @author Gus Grubba * */ #include "CustomFirmwarePlugin.h" #include "CustomAutoPilotPlugin.h" #include "CustomCameraManager.h" #include "CustomCameraControl.h" //----------------------------------------------------------------------------- CustomFirmwarePlugin::CustomFirmwarePlugin() { for (int i = 0; i < _flightModeInfoList.count(); i++) { FlightModeInfo_t& info = _flightModeInfoList[i]; //-- Narrow the options to only these two if (info.name != _altCtlFlightMode && info.name != _posCtlFlightMode) { info.canBeSet = false; } } } //----------------------------------------------------------------------------- AutoPilotPlugin* CustomFirmwarePlugin::autopilotPlugin(Vehicle* vehicle) { return new CustomAutoPilotPlugin(vehicle, vehicle); } //----------------------------------------------------------------------------- QGCCameraManager* CustomFirmwarePlugin::createCameraManager(Vehicle *vehicle) { return new CustomCameraManager(vehicle); } //----------------------------------------------------------------------------- QGCCameraControl* CustomFirmwarePlugin::createCameraControl(const mavlink_camera_information_t* info, Vehicle *vehicle, int compID, QObject* parent) { return new CustomCameraControl(info, vehicle, compID, parent); } //----------------------------------------------------------------------------- const QVariantList& CustomFirmwarePlugin::toolBarIndicators(const Vehicle* vehicle) { Q_UNUSED(vehicle); if(_toolBarIndicatorList.size() == 0) { _toolBarIndicatorList.append(QVariant::fromValue(QUrl::fromUserInput("qrc:/toolbar/PairingIndicator.qml"))); _toolBarIndicatorList.append(QVariant::fromValue(QUrl::fromUserInput("qrc:/toolbar/GPSIndicator.qml"))); _toolBarIndicatorList.append(QVariant::fromValue(QUrl::fromUserInput("qrc:/toolbar/TelemetryRSSIIndicator.qml"))); _toolBarIndicatorList.append(QVariant::fromValue(QUrl::fromUserInput("qrc:/toolbar/RCRSSIIndicator.qml"))); _toolBarIndicatorList.append(QVariant::fromValue(QUrl::fromUserInput("qrc:/toolbar/BatteryIndicator.qml"))); } return _toolBarIndicatorList; }