equal
deleted
inserted
replaced
22 |
22 |
23 #include "SpacenavWrapper.h" |
23 #include "SpacenavWrapper.h" |
24 |
24 |
25 Q_DECLARE_METATYPE(SpacenavWrapper::Event::MotionEvent) |
25 Q_DECLARE_METATYPE(SpacenavWrapper::Event::MotionEvent) |
26 Q_DECLARE_METATYPE(SpacenavWrapper::Event::ButtonEvent) |
26 Q_DECLARE_METATYPE(SpacenavWrapper::Event::ButtonEvent) |
|
27 Q_DECLARE_METATYPE(SpacenavWrapper::ConnectionStatus) |
27 |
28 |
28 class SpacenavReceiver : public QThread { |
29 class SpacenavReceiver : public QThread { |
29 Q_OBJECT |
30 Q_OBJECT |
30 private: |
31 private: |
31 SpacenavWrapper spnav; |
32 SpacenavWrapper spnav; |
34 |
35 |
35 SpacenavReceiver() : QThread() { |
36 SpacenavReceiver() : QThread() { |
36 } |
37 } |
37 |
38 |
38 void run() { |
39 void run() { |
|
40 emit spacenavConnectionStatus(spnav.getConnectionStatus()); |
39 while (true) { |
41 while (true) { |
40 SpacenavWrapper::Event e = spnav.waitEvent(); |
42 SpacenavWrapper::Event e = spnav.waitEvent(); |
41 if (e.type == SpacenavWrapper::Event::Type::MOTION) emit spacenavMotionEvent(e.motion); |
43 if (e.type == SpacenavWrapper::Event::Type::MOTION) emit spacenavMotionEvent(e.motion); |
42 if (e.type == SpacenavWrapper::Event::Type::BUTTON) emit spacenavButtonEvent(e.button); |
44 if (e.type == SpacenavWrapper::Event::Type::BUTTON) emit spacenavButtonEvent(e.button); |
43 } |
45 } |
44 } |
46 } |
45 |
47 |
46 signals: |
48 signals: |
47 void spacenavMotionEvent(SpacenavWrapper::Event::MotionEvent e); |
49 void spacenavMotionEvent(SpacenavWrapper::Event::MotionEvent e); |
48 void spacenavButtonEvent(SpacenavWrapper::Event::ButtonEvent e); |
50 void spacenavButtonEvent(SpacenavWrapper::Event::ButtonEvent e); |
|
51 void spacenavConnectionStatus(SpacenavWrapper::ConnectionStatus s); |
49 }; |
52 }; |