Browse Source

RallyPoint support should be optional

QGC4.4
Don Gagne 9 years ago
parent
commit
1b29384e19
  1. 9
      src/FirmwarePlugin/APM/APMRallyPointManager.cc
  2. 2
      src/FirmwarePlugin/APM/APMRallyPointManager.h

9
src/FirmwarePlugin/APM/APMRallyPointManager.cc

@ -31,7 +31,7 @@ APMRallyPointManager::~APMRallyPointManager()
void APMRallyPointManager::sendToVehicle(const QList<QGeoCoordinate>& rgPoints) void APMRallyPointManager::sendToVehicle(const QList<QGeoCoordinate>& rgPoints)
{ {
if (_vehicle->isOfflineEditingVehicle()) { if (_vehicle->isOfflineEditingVehicle() || !rallyPointsSupported()) {
return; return;
} }
@ -53,7 +53,7 @@ void APMRallyPointManager::sendToVehicle(const QList<QGeoCoordinate>& rgPoints)
void APMRallyPointManager::loadFromVehicle(void) void APMRallyPointManager::loadFromVehicle(void)
{ {
if (_vehicle->isOfflineEditingVehicle() || _readTransactionInProgress) { if (_vehicle->isOfflineEditingVehicle() || !rallyPointsSupported() || _readTransactionInProgress) {
return; return;
} }
@ -144,3 +144,8 @@ bool APMRallyPointManager::inProgress(void) const
{ {
return _readTransactionInProgress || _writeTransactionInProgress; return _readTransactionInProgress || _writeTransactionInProgress;
} }
bool APMRallyPointManager::rallyPointsSupported(void) const
{
return _vehicle->parameterManager()->parameterExists(_vehicle->defaultComponentId(), _rallyTotalParam);
}

2
src/FirmwarePlugin/APM/APMRallyPointManager.h

@ -25,7 +25,7 @@ public:
bool inProgress (void) const final; bool inProgress (void) const final;
void loadFromVehicle (void) final; void loadFromVehicle (void) final;
void sendToVehicle (const QList<QGeoCoordinate>& rgPoints) final; void sendToVehicle (const QList<QGeoCoordinate>& rgPoints) final;
bool rallyPointsSupported (void) const final { return true; } bool rallyPointsSupported (void) const final;
QString editorQml(void) const final { return QStringLiteral("qrc:/FirmwarePlugin/APM/APMRallyPointEditor.qml"); } QString editorQml(void) const final { return QStringLiteral("qrc:/FirmwarePlugin/APM/APMRallyPointEditor.qml"); }

Loading…
Cancel
Save