]> git.zerfleddert.de Git - proxmark3-svn/blobdiff - client/proxguiqt.h
Comms refactor (prerequisite of libproxmark work) (#371)
[proxmark3-svn] / client / proxguiqt.h
index aa3b5b355e55ee03caeca0f4c84bc377b5a7d244..4b2b2a2773054db7f24d38c7c090ea28b71b0bc8 100644 (file)
@@ -11,6 +11,9 @@
 #ifndef PROXGUI_QT
 #define PROXGUI_QT
 
+#include <stdint.h>
+#include <string.h>
+
 #include <QApplication>
 #include <QPushButton>
 #include <QObject>
@@ -18,6 +21,7 @@
 #include <QPainter>
 #include <QtGui>
 
+#include "uart.h"
 #include "ui/ui_overlays.h"
 /**
  * @brief The actual plot, black area were we paint the graph
@@ -35,6 +39,7 @@ private:
        int xCoordOf(int i, QRect r );
        int yCoordOf(int v, QRect r, int maxVal);
        int valueOf_yCoord(int y, QRect r, int maxVal);
+       void setMaxAndStart(int *buffer, int len, QRect plotRect);
        QColor getColor(int graphNum);
 public:
        Plot(QWidget *parent = 0);
@@ -84,6 +89,19 @@ class ProxWidget : public QWidget
                void vchange_dthr_down(int v);
 };
 
+class WorkerThread : public QThread {
+               Q_OBJECT;
+       public:
+               WorkerThread(char*, char*, bool, serial_port*);
+               ~WorkerThread();
+               void run();
+       private:
+               char *script_cmds_file = NULL;
+               char *script_cmd = NULL;
+               bool usb_present;
+               serial_port *sp = NULL;
+};
+
 class ProxGuiQT : public QObject
 {
        Q_OBJECT;
@@ -94,9 +112,10 @@ class ProxGuiQT : public QObject
                int argc;
                char **argv;
                void (*main_func)(void);
+               WorkerThread *proxmarkThread;
        
        public:
-               ProxGuiQT(int argc, char **argv);
+               ProxGuiQT(int argc, char **argv, WorkerThread *wthread);
                ~ProxGuiQT(void);
                void ShowGraphWindow(void);
                void RepaintGraphWindow(void);
@@ -108,10 +127,12 @@ class ProxGuiQT : public QObject
                void _RepaintGraphWindow(void);
                void _HideGraphWindow(void);
                void _Exit(void);
+               void _StartProxmarkThread(void);
        signals:
                void ShowGraphWindowSignal(void);
                void RepaintGraphWindowSignal(void);
                void HideGraphWindowSignal(void);
                void ExitSignal(void);
 };
+
 #endif // PROXGUI_QT
Impressum, Datenschutz