timecodeplugin.h

Go to the documentation of this file.
00001 #ifndef TIMECODEPLUGIN_H
00002 #define TIMECODEPLUGIN_H
00003 
00004 #include <QApplication>
00005 #include <QObject>
00006 #include <QStringList>
00007 #include <QDockWidget>
00008 #include <QMultiHash>
00009 #include <QTime>
00010 #include <QTimer>
00011 
00012 
00013 
00014 // Standard plugin config
00015 #include <bbob_interfaces.h>
00016 
00017 #include "timedisplaydialog.h"
00018 #include "config_timecode.h"
00019 
00020 
00021 class TimeCodePlugin : public QObject,  public CoreInterface,
00022                                         public DisplayInterface,
00023                                         public MessageBusInterface
00024 {
00025     Q_OBJECT
00026     Q_INTERFACES(CoreInterface DisplayInterface MessageBusInterface)
00027 
00028     TimeDisplayDialog* TimeDlog;
00029     bool TimeD;
00030 
00031     QMultiHash<QString, QString>* messages;
00032 
00033     QTimer* timer;
00034     QTime*  timecode;
00035     int     Frames;
00036 
00037     // for search messages
00038     QString s1, s2;
00039     QStringList list;
00040 
00041 public:
00042 // CoreInterface
00043     void CoreInit(const BCore* core);
00044     void SaveSettings();
00045     void LoadSettings();
00046     void Module(const QString name, const QStringList params);
00047 
00048     BBoB_Channel* ChannelPointer(QString mod, QString input) const;
00049     BBoB_Module* ModulePointer(const QString mod) const;
00050     QStringList ModuleList() const;
00051     QMap<QString, QString> ModuleParams(const QString name) const;
00052     QMap<QString, QString> ModuleInputs(const QString name) const;
00053     QMap<QString, QString> ModuleOutputs(const QString name) const;
00054 
00055     QMap<QString, BBoB_Module*> Modules;
00056     void saveChannels();
00057 
00058     BCore* bcore;
00059 
00060 // MessageBusInterface
00061     bool loadBus(const int ID);
00062     QString BusName();
00063 
00064     void BitBus(const int FromID, const int bit );
00065     void ByteBus(const int FromID, const int byte );
00066     void StringBus(const int FromID, const QString str );
00067 
00068     int MyID;
00069 
00070 // Message Processing
00071     const QString remote_protocol() { return QString("timecode|"); };
00072     void remote_data( QString );
00073 
00074 // DisplayInterface
00075     QStringList commands() const;
00076     QDockWidget* getDock(const QString &command);
00077     QWidget* getConfig();
00078 
00079 public slots:
00080     //void getTime();
00081     void setTime();
00082 signals:
00083     void newTime(int hour, int minute, int second, int frame);
00084 
00085 };
00086 
00087 #endif
00088 

Generated on Sun Oct 28 22:51:29 2007 for BBoB by  doxygen 1.5.3