New version of quadcopter software written to OO principles
Dependencies: mbed MODSERIAL filter mbed-rtos ConfigFile PID PPM FreeIMU_external_magnetometer TinyGPS
Diff: Status/Status.cpp
- Revision:
- 0:c6a85bb2a827
- Child:
- 2:969dfa4f2436
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Status/Status.cpp Wed Mar 04 18:50:37 2015 +0000 @@ -0,0 +1,145 @@ +#include "Status.h" + +Status::Status(){} + +Status::~Status(){} + +bool Status::initialise() +{ + setState(PREFLIGHT); +} + +bool Status::setState(State state) +{ + switch(state) + { + case PREFLIGHT: + setFlightMode(NOT_SET); + setBaseStationMode(STATUS); + setBatteryLevel(0); + setArmed(false); + setInitialised(false); + return true; + + case STANDBY: + + return true; + + + case GROUND_READY: + + return true; + + + case MANUAL: + + return true; + + + case STABILISED: + + return true; + + + case AUTO: + + return true; + + + case ABORT: + + return true; + + + case EMG_LAND: + + return true; + + + case EMG_OFF: + + return true; + + + case GROUND_ERROR: + + return true; + + + default: + + return false; + + } +} + +Status::State Status::getState() +{ + return _state; +} + +bool Status::setFlightMode(FlightMode flightMode) +{ + _flightMode = flightMode; + return true; +} + +Status::FlightMode Status::getFlightMode() +{ + return _flightMode; +} + +bool Status::setBaseStationMode(BaseStationMode baseStationMode) +{ + _baseStationMode = baseStationMode; + return true; +} + +Status::BaseStationMode Status::getBaseStationMode() +{ + return _baseStationMode; +} + +bool Status::setBatteryLevel(float batteryLevel) +{ + _batteryLevel = batteryLevel; + return true; +} + +float Status::getBatteryLevel() +{ + return _batteryLevel; +} + +bool Status::setArmed(bool armed) +{ + _armed = armed; + return true; +} + +bool Status::getArmed() +{ + return _armed; +} + +bool Status::setInitialised(bool initialised) +{ + _initialised = initialised; + return true; +} + +bool Status::getInitialised() +{ + return _initialised; +} + +bool Status::setRcConnected(bool rcConnected) +{ + _rcConnected = rcConnected; + return true; +} + +bool Status::getRcConnected() +{ + return _rcConnected; +} \ No newline at end of file