Joseph Roberts / Mbed 2 deprecated Quadcopter_mk2

Dependencies:   mbed MODSERIAL filter mbed-rtos ConfigFile PID PPM FreeIMU_external_magnetometer TinyGPS

Revision:
2:969dfa4f2436
Parent:
0:c6a85bb2a827
--- a/FlightController/RateController/RateController.h	Wed Mar 04 18:53:43 2015 +0000
+++ b/FlightController/RateController/RateController.h	Wed Apr 01 11:19:21 2015 +0000
@@ -2,6 +2,7 @@
 #include "Global.h"
 #include "PidWrapper.h"
 #include "ConfigFileWrapper.h"
+#include "NavigationController.h"
 
 #ifndef RateController_H
 #define RateController_H
@@ -9,18 +10,27 @@
 class RateController               
 {
   public:                  
-    RateController(); 
+    RateController(Sensors& sensors, NavigationController& navigationController, ConfigFileWrapper& configFileWrapper); 
     ~RateController();
     
-    bool initialise(Sensors& sensors, NavigationController& navigationController);
-    PidWrapper::PidOutputs compute();
+    PidWrapper::PidOutput compute();
+    void reset();
+    void setYawRatePidParameters(PidWrapper::PidParameter pidParameters);
+    void setPitchRatePidParameters(PidWrapper::PidParameter pidParameters);
+    void setRollRatePidParameters(PidWrapper::PidParameter pidParameters);
+    PidWrapper::RatePidState getRatePidState();
     
   private:
-    Sensors _sensors;
-    NavigationController _navigationController;
-    PidWrapper _yawRatePIDController;
-    PidWrapper _pitchRatePIDController;
-    PidWrapper _rollRatePIDController;
+    Sensors& _sensors;
+    NavigationController& _navigationController;
+    ConfigFileWrapper& _configFileWrapper;
+    PidWrapper _yawRatePidController;
+    PidWrapper _pitchRatePidController;
+    PidWrapper _rollRatePidController;
+    NavigationController::SetPoint _setPoints;
+    Imu::Rate _rate;
+    Imu::Angle _angle;
+    PidWrapper::PidOutput _pidOutputs;
 };
 
 #endif
\ No newline at end of file