event_slot.h
Go to the documentation of this file.
00001 #ifndef EVENT_SLOT_H
00002 #define EVENT_SLOT_H
00003 #include "robotican_gui.h"
00004 
00005 #include <sys/wait.h>
00006 #include <unistd.h>
00007 #include <cstdlib>
00008 #include <iostream>
00009 #include <cstdio>
00010 #include <memory>
00011 #include <ros/ros.h>
00012 #include <QThread>
00013 #include <QFuture>
00014 #include <boost/thread.hpp>
00015 #include <boost/chrono.hpp>
00016 #include <QtConcurrentRun>
00017 #include "led.h"
00018 #include "arm_move.h"
00019 #include <QMessageBox>
00020 
00021 #define TIMEOUT 1.0
00022 
00023 class EventSlot : public QThread {
00024 
00025     enum Status {CANCELED, WORKING, SUCCESS, FAIL};
00026 
00027 Q_OBJECT
00028 public:
00029     EventSlot();
00030     ~EventSlot();
00031     void initiate(Ui::MainWindow &guiHandle, QApplication &app);
00032     void moveArm();
00033 
00034 public Q_SLOTS:
00035     void setBatPwr(int val);
00036     void setLed(long int val, Led* led);
00037     void setMoveState(Status state);
00038     void closeApp();
00039     void moveArmToDrive();
00040     void moveArmToPreset();
00041 
00042 private:
00043     Ui::MainWindow * _guiHandle;
00044     QApplication * _app;
00045     ros::NodeHandle _nHandle;
00046     ArmMove* _arm;
00047     std::string _targetName;
00048     std::string _userMsg;
00049 
00050     double calcTimeOut(long int startTime, long int endTime);
00051     bool execMove();
00052 };
00053 
00054 
00055 #endif //EVENT_SLOT_H


robotican_gui
Author(s): eli
autogenerated on Tue Feb 21 2017 04:00:20