Merge pull request #1540 from paparazzi/flight_plan_modules

Load modules directly from a flight plan.

Mainly meant for specifying which nav modules to load directly in the flight plan.
This should make easier to set up the airframe file as it doesn't need to contain the modules needed only for some specific flight plans (where some nav routines are called that are provided by nav modules).
This commit is contained in:
Felix Ruess
2016-02-27 12:14:07 +01:00
9 changed files with 129 additions and 36 deletions
@@ -51,19 +51,6 @@
<define name="AIR_DATA_CALC_AMSL_BARO" value="TRUE"/>
</load>
<!-- extra navigation routines -->
<load name="nav_bungee_takeoff.xml"/>
<load name="nav_line.xml"/>
<load name="nav_line_border.xml"/>
<load name="nav_line_osam.xml"/>
<load name="nav_flower.xml"/>
<load name="nav_smooth.xml"/>
<load name="nav_survey_polygon.xml"/>
<load name="nav_survey_poly_osam.xml"/>
<load name="nav_survey_zamboni.xml"/>
<load name="nav_vertical_raster.xml"/>
<load name="nav_spiral.xml"/>
<load name="digital_cam_servo.xml">
<define name="DC_SHUTTER_SERVO" value="COMMAND_SHUTTER" />
</load>
+19 -1
View File
@@ -1,6 +1,6 @@
<!-- Paparazzi flight plan DTD -->
<!ELEMENT flight_plan (header?,waypoints,sectors?,variables?,includes?,exceptions?,blocks)>
<!ELEMENT flight_plan (header?,waypoints,sectors?,variables?,modules?,includes?,exceptions?,blocks)>
<!ELEMENT procedure (param*,header?,waypoints?,sectors?,exceptions?,blocks?)>
@@ -17,6 +17,11 @@
<!ELEMENT variables (variable*)>
<!ELEMENT variable EMPTY>
<!ELEMENT modules (module*)>
<!ELEMENT module (configure|define)*>
<!ELEMENT configure EMPTY>
<!ELEMENT define EMPTY>
<!ELEMENT includes (include*)>
<!ELEMENT exceptions (exception*)>
@@ -104,6 +109,19 @@ alt_unit CDATA #IMPLIED
alt_unit_coef CDATA #IMPLIED
values CDATA #IMPLIED>
<!ATTLIST modules>
<!ATTLIST module
name CDATA #REQUIRED
type CDATA #IMPLIED>
<!ATTLIST define
name CDATA #REQUIRED
value CDATA #IMPLIED>
<!ATTLIST configure
name CDATA #REQUIRED
value CDATA #REQUIRED>
<!ATTLIST blocks>
+14
View File
@@ -33,6 +33,20 @@
<corner name="S5"/>
</sector>
</sectors>
<modules>
<!-- extra navigation routines -->
<module name="nav" type="bungee_takeoff"/>
<module name="nav" type="line"/>
<module name="nav" type="line_border"/>
<module name="nav" type="line_osam"/>
<module name="nav" type="flower"/>
<module name="nav" type="smooth"/>
<module name="nav" type="survey_polygon"/>
<module name="nav" type="survey_poly_osam"/>
<module name="nav" type="survey_zamboni"/>
<module name="nav" type="vertical_raster"/>
<module name="nav" type="spiral"/>
</modules>
<exceptions/>
<blocks>
<block name="Wait GPS">