#include "mainwindow.h" #include #include #include #include #include #include #include "vhfmill.h" #include "vhfmillthread.h" #include "mainobject.h" int main(int argc, char *argv[]) { QApplication a(argc, argv); QCoreApplication::setOrganizationName("UVOS"); QCoreApplication::setOrganizationDomain("uvos.xyz"); QCoreApplication::setApplicationName("VHFMill"); QCoreApplication::setApplicationVersion("0.1"); QCommandLineParser parser; parser.setApplicationDescription("VHF mill cnc interface"); parser.addHelpOption(); parser.addVersionOption(); QCommandLineOption tcpOption(QStringList() << "t" << "tcp", QCoreApplication::translate("main", "Use Tcp connection")); parser.addOption(tcpOption); QCommandLineOption hostOption(QStringList() << "H" << "host", QCoreApplication::translate("main", "Set server host ip addres"), "adress"); parser.addOption(hostOption); QCommandLineOption portOption(QStringList() << "p" << "port", QCoreApplication::translate("main", "Set server Port in TCP mode or Serial port in serial mode"), "port"); parser.addOption(portOption); QCommandLineOption serialOption(QStringList() << "s" << "serial", QCoreApplication::translate("main", "Use serial connection")); parser.addOption(serialOption); QCommandLineOption settingsPathOption(QStringList() << "c" << "config", QCoreApplication::translate("main", "Set config file"), "configFilePath"); parser.addOption(settingsPathOption); QCommandLineOption secondaryOption(QStringList() << "e" << "secondary", QCoreApplication::translate("main", "Set if instance is not main instance")); parser.addOption(secondaryOption); parser.process(a); int port = 6856; QString serialPort("ttyUSB0"); QString host("127.0.0.1"); if(parser.isSet(hostOption)) host = parser.value(hostOption); if(parser.isSet(tcpOption) && parser.isSet(portOption)) port = parser.value(portOption).toInt(); else if(parser.isSet(portOption)) serialPort = parser.value(portOption); VhfMillThread vhfMillTread(parser.isSet(tcpOption), port, host, serialPort); MainObject mainObject(&a, &vhfMillTread); vhfMillTread.start(); int ret = a.exec(); vhfMillTread.exit(); return ret; }