#ifndef SHUTTLE_H
#define SHUTTLE_H
-#include <qthread.h>
+#include <QThread>
#include <QObject>
#include <linux/input.h>
typedef struct input_event EV;
-class ShuttleThread : public QThread {
+class ShuttleThread : public QThread
+{
public:
virtual void run();
- void init(QObject *parent, QString device);
+ void init(QObject *parent, const QString &device);
QObject *m_parent;
int shuttlevalue;
+ int shuttlecounter;
unsigned short jogvalue;
bool isWorking();
- bool stop_me;
+ volatile bool stop_me;
+ QString m_device;
private:
- QString m_device;
bool m_isWorking;
void handle_event(EV ev);
- void jogshuttle(unsigned short code, unsigned int value);
void jog(unsigned int value);
void shuttle(int value);
void key(unsigned short code, unsigned int value);
};
-class JogShuttle: public QObject {
+class JogShuttle: public QObject
+{
Q_OBJECT public:
- explicit JogShuttle(QString device, QObject * parent = 0);
+ explicit JogShuttle(const QString &device, QObject * parent = 0);
~JogShuttle();
void stopDevice();
- void initDevice(QString device);
+ void initDevice(const QString &device);
protected:
virtual void customEvent(QEvent * e);
ShuttleThread m_shuttleProcess;
signals:
- void rewind1();
- void forward1();
- void rewind(double);
- void forward(double);
- void stop();
+ void jogBack();
+ void jogForward();
+ void shuttlePos(int);
void button(int);
};