mars
AuvMotion.hpp
Go to the documentation of this file.
1 /* Generated from orogen/lib/orogen/templates/tasks/Task.hpp */
2 
3 #ifndef SIMULATION_AUVMOTION_TASK_HPP
4 #define SIMULATION_AUVMOTION_TASK_HPP
5 
6 #include "mars/AuvMotionBase.hpp"
7 
8 namespace mars {
9 
24  class AuvMotion : public AuvMotionBase
25  {
26  friend class AuvMotionBase;
27  protected:
28  void update( double time ); //Mars-callback
29 
34  base::Vector6d gravity_buoyancy(const Eigen::Quaternion<double> q);
35 
36 
37  public:
42  AuvMotion(std::string const& name = "mars::AuvMotion");
43 
49  AuvMotion(std::string const& name, RTT::ExecutionEngine* engine);
50 
53  ~AuvMotion();
54 
69  bool configureHook();
70 
76  bool startHook();
77 
92  void updateHook();
93 
100  void errorHook();
101 
105  void stopHook();
106 
111  void cleanupHook();
112 
113  private:
114  base::MatrixXd TCM;
115  std::vector<double> thruster_coefficients;
116  base::Vector6d linearDamp;
117  base::Vector6d squareDamp;
118  base::Vector3d centerOfBuoyancy;
119  double voltage;
120 
121  };
122 }
123 
124 #endif
125 
void errorHook()
Definition: AuvMotion.cpp:111
The task context provides and requires services. It uses an ExecutionEngine to perform its functions...
Definition: AuvMotion.hpp:24
bool startHook()
Definition: AuvMotion.cpp:48
~AuvMotion()
Definition: AuvMotion.cpp:31
void update(double time)
Definition: AuvMotion.cpp:125
void updateHook()
Definition: AuvMotion.cpp:105
void stopHook()
Definition: AuvMotion.cpp:115
void cleanupHook()
Definition: AuvMotion.cpp:119
Definition: jointTypes.hpp:9
friend class AuvMotionBase
Definition: AuvMotion.hpp:26
bool configureHook()
The following lines are template definitions for the various state machine.
Definition: AuvMotion.cpp:41
AuvMotion(std::string const &name="mars::AuvMotion")
Definition: AuvMotion.cpp:9
base::Vector6d gravity_buoyancy(const Eigen::Quaternion< double > q)
Definition: AuvMotion.cpp:171