MKInterface.hpp
Go to the documentation of this file.
00001 /*
00002  * MKInterface.hpp
00003  *
00004  *  Created on: Nov 23, 2011
00005  *      Author: mriedel
00006  */
00007 
00008 #ifndef MKINTERFACE_HPP_
00009 #define MKINTERFACE_HPP_
00010 
00011 #include <telekyb_defines/telekyb_defines.hpp>
00012 
00013 #include <tk_mkinterface/MKInterfaceOptions.hpp>
00014 #include <tk_mkinterface/MKData.hpp>
00015 
00016 #include <tk_mkinterface/MKInterfaceConnection.hpp>
00017 
00018 #include <tk_mkinterface/MKROSInterface.hpp>
00019 
00020 #include <tk_mkinterface/MKSafeMod.hpp>
00021 
00022 namespace TELEKYB_NAMESPACE {
00023 
00028 class MKInterface : public MKSafeModDeleagte {
00029 protected:
00030         MKInterfaceOptions options;
00031 
00032         // MKSafeMod
00033         MKSafeMod* safeModule;
00034 
00035         // Connection
00036         MKInterfaceConnection* connection;
00037 
00038         // ROS Interface
00039         MKROSInterface* rosInterface;
00040 
00041 
00042 public:
00043         MKInterface();
00044         virtual ~MKInterface();
00045 
00046         bool hasConnection() const;
00047         void handleCommand(double estMass, double pitch, double roll, double yawrate, double thrust);
00048 
00049         MKInterfaceConnection* getConnection() const;
00050 
00051         bool performDriftEstim();
00052 
00053         // MKSafeModListener
00054         void safeModDidBecomeActive();
00055         void safeModFinished();
00056 
00057         // Called by ROS Interface Timer. Emits Warning when Low. returns true if empty!
00058         bool checkBattery(MKInt& batteryValue, bool& landRequest);
00059 
00060         void setEmergency();
00061 
00062         const MKInterfaceOptions& getOptions() const;
00063 };
00064 
00065 }
00066 
00067 #endif /* MKINTERFACE_HPP_ */
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Defines


tk_mkinterface
Author(s): Martin Riedel
autogenerated on Wed Apr 24 2013 11:29:54