Also, added a missing method on AutoPilotPlugin as a public
pure virtual method (the inheritances already implemented it as a
slot, so the new Signal syntax didn't worked because the base class
didn't had that method)
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
First commit of modernizarion of Qt signal connections,
the new signal connection is very userfull because of a few
nice things:
- it's checked at compile time instead of runtime
- it can connect to any function or method, so we don't need
to use slots anymore
- it's way faster because it doesn't need to work with string
comparisson, but it's basically a direct call.
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>
Users are getting confused because we are missing images. Will put back
new fancy version once we get new airframe config plus auto-generate of
images sorted out.
There are many ways of iterating over lists in C++/Qt.
In the specific case of QStrings, it is known [1] that using
foreach with const references avoids the creation of new
QString objects in each iteration, reducing the time consumed
by the loops.
[1] https://blog.qt.io/blog/2009/01/23/iterating-efficiently/
Signed-off-by: Anselmo L. S. Melo <anselmo.melo@intel.com>
This commit introduces the APM Airframe configuration. The interface
is the same as the PX4 one, but the way we deal with the uas is a bit different
Since the APM stack doesn't provide a xml with airframe definitions a
new one was created by hand with only the values that we need, wich will
trigger a download of the parameters file from the mavlink github
Now it correctly handles the FRAME variable and it's faster
regarding the download of the parameters for each type of Frame.
Only show Airframes for ArduCopter, not for ArduRover nor ArduPlane
Signed-off-by: Tomaz Canabrava <tomaz.canabrava@intel.com>