EEROS  0.4.1.0
API for the EEROS Real-Time Robotics Framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
XBoxInput.hpp
Go to the documentation of this file.
1 #ifndef ORG_EEROS_CONTROL_XBOXINPUT_HPP_
2 #define ORG_EEROS_CONTROL_XBOXINPUT_HPP_
3 
4 #include <string>
5 #include <thread>
8 #include <eeros/core/System.hpp>
9 #include <eeros/hal/Joystick.hpp>
10 #include <eeros/math/Matrix.hpp>
11 
12 namespace eeros {
13  namespace control {
14 
15  class XBoxInput: public eeros::control::Block1o<eeros::math::Vector4> {
16  public:
17  XBoxInput(std::string dev);
18  virtual ~XBoxInput();
19 
20  virtual void run();
21  virtual void setInitPos(eeros::math::Vector4 initPos);
22  virtual void setSpeedScaleFactor(double speedScale);
23 
24  inline void on_button(std::function<void(int, bool)> &&action)
25  {
26  j.on_button(std::move(action));
27  }
28 
29  double speedScaleFactor = 1.0;
30 
31  double xScale = 0.0001;
32  double yScale = 0.0001;
33  double zScale = 0.0001;
34  double rScale = 0.002;
35  double min_x = -0.03;
36  double max_x = 0.045;
37  double min_y = -0.03;
38  double max_y = 0.03;
39  double min_z = -0.053;
40  double max_z = -0.015;
41  double min_r = -2.8;
42  double max_r = 2.8;
43 
44  protected:
46 
48  std::thread* t;
49  };
50 
51  };
52 };
53 
54 #endif /* ORG_EEROS_CONTROL_XBOXINPUT_HPP_ */
double min_x
Definition: XBoxInput.hpp:35
eeros::hal::Joystick j
Definition: XBoxInput.hpp:47
double yScale
Definition: XBoxInput.hpp:32
void on_button(std::function< void(int, bool)> &&action)
Definition: XBoxInput.hpp:24
virtual void run()
Definition: XBoxInput.cpp:51
XBoxInput(std::string dev)
Definition: XBoxInput.cpp:37
double min_y
Definition: XBoxInput.hpp:37
double speedScaleFactor
Definition: XBoxInput.hpp:29
Definition: Block1o.hpp:12
double zScale
Definition: XBoxInput.hpp:33
double min_z
Definition: XBoxInput.hpp:39
virtual void setSpeedScaleFactor(double speedScale)
Definition: XBoxInput.cpp:95
double xScale
Definition: XBoxInput.hpp:31
virtual void on_button(std::function< void(int, bool)> action)
Definition: Joystick.cpp:67
double rScale
Definition: XBoxInput.hpp:34
double min_r
Definition: XBoxInput.hpp:41
Definition: XBoxInput.hpp:15
eeros::math::Matrix< 4, 4, double > axisScale
Definition: XBoxInput.hpp:45
Definition: Joystick.hpp:23
virtual ~XBoxInput()
Definition: XBoxInput.cpp:46
Definition: Matrix.hpp:15
double max_r
Definition: XBoxInput.hpp:42
double max_y
Definition: XBoxInput.hpp:38
virtual void setInitPos(eeros::math::Vector4 initPos)
Definition: XBoxInput.cpp:91
std::thread * t
Definition: XBoxInput.hpp:48
double max_z
Definition: XBoxInput.hpp:40
double max_x
Definition: XBoxInput.hpp:36