#include <QThread>
#include <QObject>
+#include <QMap>
#include <linux/input.h>
-
+#include <sys/time.h>
+#include <media_ctrl/mediactrl.h>
typedef struct input_event EV;
private:
bool m_isWorking;
+ void handle_event(const struct media_ctrl_event& ev);
+ void jog(const struct media_ctrl_event& ev);
+ void shuttle(const struct media_ctrl_event& ev);
+ void key(const struct media_ctrl_event& ev);
+
+#ifdef USE_DEPRECATED
void handle_event(EV ev);
void jog(unsigned int value);
void shuttle(int value);
void key(unsigned short code, unsigned int value);
+#endif
};
+typedef QMap<QString, QString> DeviceMap;
+typedef QMap<QString, QString>::iterator DeviceMapIter;
class JogShuttle: public QObject
{
-Q_OBJECT public:
+ Q_OBJECT
+public:
explicit JogShuttle(const QString &device, QObject * parent = 0);
~JogShuttle();
void stopDevice();
void initDevice(const QString &device);
+ static QString canonicalDevice(const QString& device);
+ static DeviceMap enumerateDevices(const QString& devPath);
+ static int keysCount(const QString& devPath);
protected:
virtual void customEvent(QEvent * e);