qnode.hpp
Go to the documentation of this file.
00001 
00008 /*****************************************************************************
00009 ** Ifdefs
00010 *****************************************************************************/
00011 
00012 #ifndef %(package)s_QNODE_HPP_
00013 #define %(package)s_QNODE_HPP_
00014 
00015 /*****************************************************************************
00016 ** Includes
00017 *****************************************************************************/
00018 
00019 #include <ros/ros.h>
00020 #include <string>
00021 #include <QThread>
00022 #include <QStringListModel>
00023 
00024 
00025 /*****************************************************************************
00026 ** Namespaces
00027 *****************************************************************************/
00028 
00029 namespace %(package)s {
00030 
00031 /*****************************************************************************
00032 ** Class
00033 *****************************************************************************/
00034 
00035 class QNode : public QThread {
00036     Q_OBJECT
00037 public:
00038         QNode(int argc, char** argv );
00039         virtual ~QNode();
00040         bool init();
00041         bool init(const std::string &master_url, const std::string &host_url);
00042         void run();
00043 
00044         /*********************
00045         ** Logging
00046         **********************/
00047         enum LogLevel {
00048                  Debug,
00049                  Info,
00050                  Warn,
00051                  Error,
00052                  Fatal
00053          };
00054 
00055         QStringListModel* loggingModel() { return &logging_model; }
00056         void log( const LogLevel &level, const std::string &msg);
00057 
00058 Q_SIGNALS:
00059         void loggingUpdated();
00060     void rosShutdown();
00061 
00062 private:
00063         int init_argc;
00064         char** init_argv;
00065         ros::Publisher chatter_publisher;
00066     QStringListModel logging_model;
00067 };
00068 
00069 }  // namespace %(package)s
00070 
00071 #endif /* %(package)s_QNODE_HPP_ */


qt_create
Author(s): Daniel Stonier
autogenerated on Mon Oct 6 2014 03:58:09