src/SpacenavReceiver.h
branchv_0
changeset 6 49560660d230
parent 4 1383ad1c4f57
child 9 d3716f03efcd
equal deleted inserted replaced
5:6ba51911d539 6:49560660d230
    20 #include <QObject>
    20 #include <QObject>
    21 #include <QThread>
    21 #include <QThread>
    22 
    22 
    23 #include "SpacenavWrapper.h"
    23 #include "SpacenavWrapper.h"
    24 
    24 
    25 Q_DECLARE_METATYPE(SpacenavWrapper::Event)
    25 Q_DECLARE_METATYPE(SpacenavWrapper::Event::MotionEvent)
       
    26 Q_DECLARE_METATYPE(SpacenavWrapper::Event::ButtonEvent)
    26 
    27 
    27 class SpacenavReceiver : public QThread {
    28 class SpacenavReceiver : public QThread {
    28 	Q_OBJECT
    29 	Q_OBJECT
    29 private:
    30 private:
    30 	SpacenavWrapper spnav;
    31 	SpacenavWrapper spnav;
    35 	}
    36 	}
    36 
    37 
    37 	void run() {
    38 	void run() {
    38 		while (true) {
    39 		while (true) {
    39 			SpacenavWrapper::Event e = spnav.waitEvent();
    40 			SpacenavWrapper::Event e = spnav.waitEvent();
    40 			emit spacenavEvent(e);
    41 			if (e.type == SpacenavWrapper::Event::Type::MOTION) emit spacenavMotionEvent(e.motion);
       
    42 			if (e.type == SpacenavWrapper::Event::Type::BUTTON) emit spacenavButtonEvent(e.button);
    41 		}
    43 		}
    42 	}
    44 	}
    43 
    45 
    44 signals:
    46 signals:
    45 	void spacenavEvent(SpacenavWrapper::Event e);
    47 	void spacenavMotionEvent(SpacenavWrapper::Event::MotionEvent e);
       
    48 	void spacenavButtonEvent(SpacenavWrapper::Event::ButtonEvent e);
    46 };
    49 };