datastreamer_base.h
Go to the documentation of this file.
00001 #ifndef DATA_STREAMER_TEMPLATE_H
00002 #define DATA_STREAMER_TEMPLATE_H
00003 
00004 #include <QtPlugin>
00005 #include <QMenu>
00006 #include <mutex>
00007 #include "PlotJuggler/plotdata.h"
00008 
00009 
00010 class DataStreamer{
00011 
00012 public:
00013     DataStreamer(): _menu(NULL){}
00014 
00015     virtual PlotDataMap& getDataMap() = 0;
00016 
00017     virtual bool start(QString& default_configuration) = 0;
00018 
00019     virtual void shutdown() = 0;
00020 
00021     virtual void enableStreaming(bool enable) = 0;
00022 
00023     virtual bool isStreamingEnabled() const = 0;
00024 
00025     virtual ~DataStreamer() {}
00026 
00027     virtual const char* name() const = 0;
00028 
00029     virtual bool isDebugPlugin() { return false; }
00030 
00031     virtual void setParentMenu(QMenu* menu) { _menu = menu; }
00032 
00033     virtual QWidget* embeddedWidget() { return nullptr; }
00034 
00035 protected:
00036     QMenu* _menu;
00037 };
00038 
00039 QT_BEGIN_NAMESPACE
00040 
00041 #define DataStream_iid "com.icarustechnology.PlotJuggler.DataStreamer"
00042 
00043 Q_DECLARE_INTERFACE(DataStreamer, DataStream_iid)
00044 
00045 QT_END_NAMESPACE
00046 
00047 
00048 #endif
00049 


plotjuggler
Author(s): Davide Faconti
autogenerated on Fri Sep 1 2017 02:41:56