Skip to content

Commit

Permalink
Update 4.0, add new 4.1 metadata
Browse files Browse the repository at this point in the history
  • Loading branch information
DonLakeFlyer committed Jul 22, 2021
1 parent 3d0d67a commit 6227c45
Show file tree
Hide file tree
Showing 10 changed files with 74,722 additions and 3,039 deletions.
12 changes: 12 additions & 0 deletions src/FirmwarePlugin/APM/APMFirmwarePlugin.cc
Expand Up @@ -661,6 +661,9 @@ QString APMFirmwarePlugin::_internalParameterMetaDataFile(Vehicle* vehicle)
case MAV_TYPE_TRICOPTER:
case MAV_TYPE_COAXIAL:
case MAV_TYPE_HELICOPTER:
if (vehicle->versionCompare(4, 1, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Copter.4.1.xml");
}
if (vehicle->versionCompare(4, 0, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Copter.4.0.xml");
}
Expand All @@ -680,6 +683,9 @@ QString APMFirmwarePlugin::_internalParameterMetaDataFile(Vehicle* vehicle)
case MAV_TYPE_VTOL_RESERVED4:
case MAV_TYPE_VTOL_RESERVED5:
case MAV_TYPE_FIXED_WING:
if (vehicle->versionCompare(4, 1, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Plane.4.1.xml");
}
if (vehicle->versionCompare(4, 0, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Plane.4.0.xml");
}
Expand All @@ -693,6 +699,9 @@ QString APMFirmwarePlugin::_internalParameterMetaDataFile(Vehicle* vehicle)

case MAV_TYPE_GROUND_ROVER:
case MAV_TYPE_SURFACE_BOAT:
if (vehicle->versionCompare(4, 1, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Rover.4.1.xml");
}
if (vehicle->versionCompare(4, 0, 0) >= 0) {
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Rover.4.0.xml");
}
Expand All @@ -705,6 +714,9 @@ QString APMFirmwarePlugin::_internalParameterMetaDataFile(Vehicle* vehicle)
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Rover.3.4.xml");

case MAV_TYPE_SUBMARINE:
if (vehicle->versionCompare(4, 1, 0) >= 0) { // 4.1.x
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Sub.4.1.xml");
}
if (vehicle->versionCompare(4, 0, 0) >= 0) { // 4.0.x
return QStringLiteral(":/FirmwarePlugin/APM/APMParameterFactMetaData.Sub.4.0.xml");
}
Expand Down
2,891 changes: 1,824 additions & 1,067 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Copter.4.0.xml

Large diffs are not rendered by default.

19,360 changes: 19,360 additions & 0 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Copter.4.1.xml

Large diffs are not rendered by default.

2,623 changes: 1,564 additions & 1,059 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Plane.4.0.xml

Large diffs are not rendered by default.

19,007 changes: 19,007 additions & 0 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Plane.4.1.xml

Large diffs are not rendered by default.

2,060 changes: 1,155 additions & 905 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Rover.4.0.xml

Large diffs are not rendered by default.

16,989 changes: 16,989 additions & 0 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Rover.4.1.xml

Large diffs are not rendered by default.

14,790 changes: 14,790 additions & 0 deletions src/FirmwarePlugin/APM/APMParameterFactMetaData.Sub.4.1.xml

Large diffs are not rendered by default.

25 changes: 17 additions & 8 deletions src/FirmwarePlugin/APM/APMParameterMetaData.cc
Expand Up @@ -113,7 +113,7 @@ QString APMParameterMetaData::mavTypeToString(MAV_TYPE vehicleTypeEnum)
break;
case MAV_TYPE_GROUND_ROVER:
case MAV_TYPE_SURFACE_BOAT:
vehicleName = "APMrover2";
vehicleName = "Rover";
break;
case MAV_TYPE_SUBMARINE:
vehicleName = "ArduSub";
Expand Down Expand Up @@ -143,7 +143,7 @@ void APMParameterMetaData::loadParameterFactMetaDataFile(const QString& metaData
}
_parameterMetaDataLoaded = true;

QRegExp parameterCategories = QRegExp("ArduCopter|ArduPlane|APMrover2|ArduSub|AntennaTracker");
QRegExp parameterCategories = QRegExp("ArduCopter|ArduPlane|APMrover2|Rover|ArduSub|AntennaTracker");
QString currentCategory;

qCDebug(APMParameterMetaDataLog) << "Loading parameter meta data:" << metaDataFile;
Expand Down Expand Up @@ -426,14 +426,23 @@ bool APMParameterMetaData::parseParameterAttributes(QXmlStreamReader& xml, APMFa

FactMetaData* APMParameterMetaData::getMetaDataForFact(const QString& name, MAV_TYPE vehicleType, FactMetaData::ValueType_t type)
{
const QString mavTypeString = mavTypeToString(vehicleType);
APMFactMetaDataRaw* rawMetaData = nullptr;
bool keepTrying = true;
QString mavTypeString = mavTypeToString(vehicleType);
APMFactMetaDataRaw* rawMetaData = nullptr;

// check if we have metadata for fact, use generic otherwise
if (_vehicleTypeToParametersMap[mavTypeString].contains(name)) {
rawMetaData = _vehicleTypeToParametersMap[mavTypeString][name];
} else if (_vehicleTypeToParametersMap["libraries"].contains(name)) {
rawMetaData = _vehicleTypeToParametersMap["libraries"][name];
while (keepTrying) {
if (_vehicleTypeToParametersMap[mavTypeString].contains(name)) {
rawMetaData = _vehicleTypeToParametersMap[mavTypeString][name];
} else if (_vehicleTypeToParametersMap["libraries"].contains(name)) {
rawMetaData = _vehicleTypeToParametersMap["libraries"][name];
}
if (!rawMetaData && mavTypeString == "Rover") {
// Hack city: Older versions of Rover have different name
mavTypeString = "APMrover2";
} else {
keepTrying = false;
}
}

FactMetaData *metaData = new FactMetaData(type, this);
Expand Down
4 changes: 4 additions & 0 deletions src/FirmwarePlugin/APM/APMResources.qrc
Expand Up @@ -46,18 +46,22 @@
<file alias="APMParameterFactMetaData.Plane.3.9.xml">APMParameterFactMetaData.Plane.3.9.xml</file>
<file alias="APMParameterFactMetaData.Plane.3.10.xml">APMParameterFactMetaData.Plane.3.10.xml</file>
<file alias="APMParameterFactMetaData.Plane.4.0.xml">APMParameterFactMetaData.Plane.4.0.xml</file>
<file alias="APMParameterFactMetaData.Plane.4.1.xml">APMParameterFactMetaData.Plane.4.1.xml</file>
<file alias="APMParameterFactMetaData.Copter.3.5.xml">APMParameterFactMetaData.Copter.3.5.xml</file>
<file alias="APMParameterFactMetaData.Copter.3.6.xml">APMParameterFactMetaData.Copter.3.6.xml</file>
<file alias="APMParameterFactMetaData.Copter.3.7.xml">APMParameterFactMetaData.Copter.3.7.xml</file>
<file alias="APMParameterFactMetaData.Copter.4.0.xml">APMParameterFactMetaData.Copter.4.0.xml</file>
<file alias="APMParameterFactMetaData.Copter.4.1.xml">APMParameterFactMetaData.Copter.4.1.xml</file>
<file alias="APMParameterFactMetaData.Rover.3.4.xml">APMParameterFactMetaData.Rover.3.4.xml</file>
<file alias="APMParameterFactMetaData.Rover.3.5.xml">APMParameterFactMetaData.Rover.3.5.xml</file>
<file alias="APMParameterFactMetaData.Rover.3.6.xml">APMParameterFactMetaData.Rover.3.6.xml</file>
<file alias="APMParameterFactMetaData.Rover.4.0.xml">APMParameterFactMetaData.Rover.4.0.xml</file>
<file alias="APMParameterFactMetaData.Rover.4.1.xml">APMParameterFactMetaData.Rover.4.1.xml</file>
<file alias="APMParameterFactMetaData.Sub.3.4.xml">APMParameterFactMetaData.Sub.3.4.xml</file>
<file alias="APMParameterFactMetaData.Sub.3.5.xml">APMParameterFactMetaData.Sub.3.5.xml</file>
<file alias="APMParameterFactMetaData.Sub.3.6.xml">APMParameterFactMetaData.Sub.3.6.xml</file>
<file alias="APMParameterFactMetaData.Sub.4.0.xml">APMParameterFactMetaData.Sub.4.0.xml</file>
<file alias="APMParameterFactMetaData.Sub.4.1.xml">APMParameterFactMetaData.Sub.4.1.xml</file>
<file alias="Copter.OfflineEditing.params">Copter3.6.OfflineEditing.params</file>
<file alias="Plane.OfflineEditing.params">Plane3.9.OfflineEditing.params</file>
<file alias="Rover.OfflineEditing.params">Rover3.5.OfflineEditing.params</file>
Expand Down

0 comments on commit 6227c45

Please sign in to comment.