00001 #ifndef GLEXAMPLEPLUGIN_H 00002 #define GLEXAMPLEPLUGIN_H 00003 00004 #include <QtGui> 00005 #include <QApplication> 00006 #include <QObject> 00007 #include <QStringList> 00008 00009 // Standard plugin config 00010 #include <bbob_interfaces.h> 00011 00012 #include "gldialog.h" 00013 00014 class GlExamplePlugin : public QObject, public CoreInterface, 00015 public DisplayInterface 00016 { 00017 Q_OBJECT 00018 Q_INTERFACES(CoreInterface DisplayInterface) 00019 00020 GlExampleModule* FrameModule; 00021 GlExampleModule* PixelModule; 00022 00023 GLDialog* GlDlog; 00024 00025 00026 public: 00027 // DisplayInterface 00028 QStringList commands() const; 00029 QDockWidget* getDock(const QString &command); 00030 QWidget* getConfig(){return 0;}; 00031 00032 // CoreInterface 00033 void CoreInit(const BCore* core); 00034 void SaveSettings(); 00035 void LoadSettings(); 00036 void Module(const QString name, const QStringList params); 00037 00038 BBoB_Channel* ChannelPointer(QString mod, QString input) const; 00039 BBoB_Module* ModulePointer(const QString mod) const; 00040 QStringList ModuleList() const; 00041 QMap<QString, QString> ModuleParams(const QString name) const; 00042 QMap<QString, QString> ModuleInputs(const QString name) const; 00043 QMap<QString, QString> ModuleOutputs(const QString name) const; 00044 00045 QMap<QString, BBoB_Module*> Modules; 00046 void saveChannels(); 00047 00048 BCore* bcore; 00049 00050 private: 00051 QStringList commandList; 00052 00053 signals: 00054 void signalDock( QDockWidget* dockWidget); 00055 00056 }; 00057 00058 #endif 00059