Comms refactor (prerequisite of libproxmark work) (#371)

* Refactor the comms code only from PR#346, without comms_globals.h.
* OSX: Add note for example serial port
This commit is contained in:
Michael Farrell 2017-10-27 06:54:27 +11:00 committed by pwpiwi
parent e17660d5f7
commit afdcb8c159
19 changed files with 540 additions and 334 deletions

View file

@ -11,11 +11,15 @@
#include "proxgui.h"
#include "proxguiqt.h"
#include "proxmark3.h"
#include "uart.h"
static ProxGuiQT *gui = NULL;
static WorkerThread *main_loop_thread = NULL;
WorkerThread::WorkerThread(char *script_cmds_file, char *script_cmd, bool usb_present) : script_cmds_file(script_cmds_file), script_cmd(script_cmd), usb_present(usb_present)
WorkerThread::WorkerThread(char *script_cmds_file, char *script_cmd,
bool usb_present, serial_port* sp)
: script_cmds_file(script_cmds_file), script_cmd(script_cmd),
usb_present(usb_present), sp(sp)
{
}
@ -24,7 +28,7 @@ WorkerThread::~WorkerThread()
}
void WorkerThread::run() {
main_loop(script_cmds_file, script_cmd, usb_present);
main_loop(script_cmds_file, script_cmd, usb_present, sp);
}
extern "C" void ShowGraphWindow(void)
@ -59,7 +63,9 @@ extern "C" void MainGraphics(void)
gui->MainLoop();
}
extern "C" void InitGraphics(int argc, char **argv, char *script_cmds_file, char *script_cmd, bool usb_present)
extern "C" void InitGraphics(int argc, char **argv, char *script_cmds_file,
char *script_cmd, bool usb_present,
serial_port* sp)
{
#ifdef Q_WS_X11
bool useGUI = getenv("DISPLAY") != 0;
@ -69,7 +75,7 @@ extern "C" void InitGraphics(int argc, char **argv, char *script_cmds_file, char
if (!useGUI)
return;
main_loop_thread = new WorkerThread(script_cmds_file, script_cmd, usb_present);
main_loop_thread = new WorkerThread(script_cmds_file, script_cmd, usb_present, sp);
gui = new ProxGuiQT(argc, argv, main_loop_thread);
}