aboutsummaryrefslogtreecommitdiff
path: root/src/modules/navigator/navigator_mode.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/modules/navigator/navigator_mode.h')
-rw-r--r--src/modules/navigator/navigator_mode.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/modules/navigator/navigator_mode.h b/src/modules/navigator/navigator_mode.h
index cbb53d91b..5c36af1fe 100644
--- a/src/modules/navigator/navigator_mode.h
+++ b/src/modules/navigator/navigator_mode.h
@@ -33,9 +33,10 @@
/**
* @file navigator_mode.h
*
- * Helper class for different modes in navigator
+ * Base class for different modes in navigator
*
* @author Julian Oes <julian@oes.ch>
+ * @author Anton Babushkin <anton.babushkin@me.com>
*/
#ifndef NAVIGATOR_MODE_H
@@ -65,12 +66,19 @@ public:
*/
virtual ~NavigatorMode();
+ bool run(bool active, struct position_setpoint_triplet_s *pos_sp_triplet);
+
/**
* This function is called while the mode is inactive
*/
virtual void on_inactive();
/**
+ * This function is called one time when mode become active, poos_sp_triplet must be initialized here
+ */
+ virtual void on_activation(struct position_setpoint_triplet_s *pos_sp_triplet);
+
+ /**
* This function is called while the mode is active
*
* @param position setpoint triplet to set
@@ -80,6 +88,8 @@ public:
protected:
Navigator *_navigator;
+
+private:
bool _first_run;
};