Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
Valentin Platzgummer
qgroundcontrol
Commits
d4ac61cb
Commit
d4ac61cb
authored
Jan 24, 2019
by
Willian Galvani
Browse files
Allow FirmwarePlugin to adjust fact meta data
parent
730ab8fb
Changes
4
Hide whitespace changes
Inline
Side-by-side
src/FirmwarePlugin/APM/ArduSubFirmwarePlugin.cc
View file @
d4ac61cb
...
...
@@ -124,6 +124,9 @@ ArduSubFirmwarePlugin::ArduSubFirmwarePlugin(void):
}
_nameToFactGroupMap
.
insert
(
"APMSubInfo"
,
&
_infoFactGroup
);
_factRenameMap
[
QStringLiteral
(
"altitudeRelative"
)]
=
QStringLiteral
(
"Depth"
);
_factRenameMap
[
QStringLiteral
(
"flightTime"
)]
=
QStringLiteral
(
"Dive Time"
);
}
QList
<
MAV_CMD
>
ArduSubFirmwarePlugin
::
supportedMissionCommands
(
void
)
...
...
@@ -310,3 +313,14 @@ QString ArduSubFirmwarePlugin::vehicleImageOutline(const Vehicle* vehicle) const
{
return
vehicleImageOpaque
(
vehicle
);
}
void
ArduSubFirmwarePlugin
::
adjustMetaData
(
MAV_TYPE
vehicleType
,
FactMetaData
*
metaData
)
{
Q_UNUSED
(
vehicleType
);
if
(
!
metaData
)
{
return
;
}
if
(
_factRenameMap
.
contains
(
metaData
->
name
()))
{
metaData
->
setShortDescription
(
QString
(
_factRenameMap
[
metaData
->
name
()]));
}
}
src/FirmwarePlugin/APM/ArduSubFirmwarePlugin.h
View file @
d4ac61cb
...
...
@@ -137,11 +137,13 @@ public:
const
QVariantList
&
toolBarIndicators
(
const
Vehicle
*
vehicle
)
final
;
bool
adjustIncomingMavlinkMessage
(
Vehicle
*
vehicle
,
mavlink_message_t
*
message
)
final
;
virtual
QMap
<
QString
,
FactGroup
*>*
factGroups
(
void
)
final
;
void
adjustMetaData
(
MAV_TYPE
vehicleType
,
FactMetaData
*
metaData
)
override
final
;
private:
QVariantList
_toolBarIndicators
;
static
bool
_remapParamNameIntialized
;
QMap
<
QString
,
QString
>
_factRenameMap
;
static
FirmwarePlugin
::
remapParamNameMajorVersionMap_t
_remapParamName
;
void
_handleNamedValueFloat
(
mavlink_message_t
*
message
);
void
_handleMavlinkMessage
(
mavlink_message_t
*
message
);
...
...
src/FirmwarePlugin/FirmwarePlugin.h
View file @
d4ac61cb
...
...
@@ -309,6 +309,11 @@ public:
int
versionCompare
(
Vehicle
*
vehicle
,
QString
&
compare
);
int
versionCompare
(
Vehicle
*
vehicle
,
int
major
,
int
minor
,
int
patch
);
/// Allows the Firmware plugin to override the facts meta data.
/// @param vehicleType - Type of current vehicle
/// @param metaData - MetaData for fact
virtual
void
adjustMetaData
(
MAV_TYPE
vehicleType
,
FactMetaData
*
metaData
)
{
Q_UNUSED
(
vehicleType
);
Q_UNUSED
(
metaData
);};
// FIXME: Hack workaround for non pluginize FollowMe support
static
const
QString
px4FollowMeFlightMode
;
...
...
src/Vehicle/Vehicle.cc
View file @
d4ac61cb
...
...
@@ -278,6 +278,9 @@ Vehicle::Vehicle(LinkInterface* link,
}
_firmwarePlugin
->
initializeVehicle
(
this
);
for
(
auto
&
factName
:
factNames
())
{
_firmwarePlugin
->
adjustMetaData
(
vehicleType
,
getFact
(
factName
)
->
metaData
());
}
_sendMultipleTimer
.
start
(
_sendMessageMultipleIntraMessageDelay
);
connect
(
&
_sendMultipleTimer
,
&
QTimer
::
timeout
,
this
,
&
Vehicle
::
_sendMessageMultipleNext
);
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment