diff options
author | Anton Babushkin <anton.babushkin@me.com> | 2014-06-25 17:13:47 +0200 |
---|---|---|
committer | Anton Babushkin <anton.babushkin@me.com> | 2014-06-25 17:31:12 +0200 |
commit | 9d3d5a30af0781b975d17c5d73796f593c78b6e4 (patch) | |
tree | 9f2a1ba7f627761f8aee9e6e45899914c7cbd60c /src/modules/navigator | |
parent | e0c78e51e3a5768014c73bed5cd087830d602227 (diff) | |
download | px4-firmware-9d3d5a30af0781b975d17c5d73796f593c78b6e4.tar.gz px4-firmware-9d3d5a30af0781b975d17c5d73796f593c78b6e4.tar.bz2 px4-firmware-9d3d5a30af0781b975d17c5d73796f593c78b6e4.zip |
navigator: move set_previous_pos_sp to MissionBlock class
Diffstat (limited to 'src/modules/navigator')
-rw-r--r-- | src/modules/navigator/mission.cpp | 12 | ||||
-rw-r--r-- | src/modules/navigator/mission.h | 6 | ||||
-rw-r--r-- | src/modules/navigator/mission_block.cpp | 9 | ||||
-rw-r--r-- | src/modules/navigator/mission_block.h | 5 |
4 files changed, 15 insertions, 17 deletions
diff --git a/src/modules/navigator/mission.cpp b/src/modules/navigator/mission.cpp index 9244063b1..becaa09e8 100644 --- a/src/modules/navigator/mission.cpp +++ b/src/modules/navigator/mission.cpp @@ -223,7 +223,7 @@ Mission::advance_mission() void Mission::set_mission_items(struct position_setpoint_triplet_s *pos_sp_triplet) { - set_previous_pos_setpoint(&pos_sp_triplet->current, &pos_sp_triplet->previous); + set_previous_pos_setpoint(pos_sp_triplet); /* try setting onboard mission item */ if (is_current_onboard_mission_item_set(&pos_sp_triplet->current)) { @@ -261,16 +261,6 @@ Mission::set_mission_items(struct position_setpoint_triplet_s *pos_sp_triplet) } } -void -Mission::set_previous_pos_setpoint(const struct position_setpoint_s *current_pos_sp, - struct position_setpoint_s *previous_pos_sp) -{ - /* reuse current setpoint as previous setpoint */ - if (current_pos_sp->valid) { - memcpy(previous_pos_sp, current_pos_sp, sizeof(struct position_setpoint_s)); - } -} - bool Mission::is_current_onboard_mission_item_set(struct position_setpoint_s *current_pos_sp) { diff --git a/src/modules/navigator/mission.h b/src/modules/navigator/mission.h index 322aaf96a..842c8c9ee 100644 --- a/src/modules/navigator/mission.h +++ b/src/modules/navigator/mission.h @@ -107,12 +107,6 @@ private: void set_mission_items(struct position_setpoint_triplet_s *pos_sp_triplet); /** - * Set previous position setpoint - */ - void set_previous_pos_setpoint(const struct position_setpoint_s *current_pos_sp, - struct position_setpoint_s *previous_pos_sp); - - /** * Try to set the current position setpoint from an onboard mission item * @return true if mission item successfully set */ diff --git a/src/modules/navigator/mission_block.cpp b/src/modules/navigator/mission_block.cpp index 08576750c..a8eec92ca 100644 --- a/src/modules/navigator/mission_block.cpp +++ b/src/modules/navigator/mission_block.cpp @@ -194,6 +194,15 @@ MissionBlock::mission_item_to_position_setpoint(const struct mission_item_s *ite } } +void +MissionBlock::set_previous_pos_setpoint(struct position_setpoint_triplet_s *pos_sp_triplet) +{ + /* reuse current setpoint as previous setpoint */ + if (pos_sp_triplet->current.valid) { + memcpy(&pos_sp_triplet->previous, &pos_sp_triplet->current, sizeof(struct position_setpoint_s)); + } +} + bool MissionBlock::set_loiter_item(bool reuse_current_pos_sp, struct position_setpoint_triplet_s *pos_sp_triplet) { diff --git a/src/modules/navigator/mission_block.h b/src/modules/navigator/mission_block.h index 47e6fe81f..a740deea4 100644 --- a/src/modules/navigator/mission_block.h +++ b/src/modules/navigator/mission_block.h @@ -82,6 +82,11 @@ public: */ void mission_item_to_position_setpoint(const mission_item_s *item, position_setpoint_s *sp); + /** + * Set previous position setpoint to current setpoint + */ + void set_previous_pos_setpoint(struct position_setpoint_triplet_s *pos_sp_triplet); + /** * Set a loiter item, if possible reuse the position setpoint, otherwise take the current position * |