Documents > BPS V2 C++ API
bpssignals.h
Go to the documentation of this file.
00001 
00004 #ifndef BPSSIGNALS_H
00005 #define BPSSIGNALS_H
00006 
00007 #include "bpscore_global.h"
00008 #include <QMap>
00009 #include <QObject>
00010 
00014 typedef QMap<int,bool> BpsSignalsMap;
00015 
00023 class BPSCORE_EXPORT BpsSignals : public QObject
00024 {
00025     Q_OBJECT
00026     BPS_PRIVATE(BpsSignals)
00027 
00028 public:
00032     BpsSignals(QObject* aParent=0);
00033 
00037     virtual ~BpsSignals();
00038 
00044     void setConfig(const QMap<QString,QString>& aConfig);
00045 
00050     QMap<QString,QString> config() const;
00051 
00055     virtual int inputsCount() const = 0;
00056 
00060     virtual int outputsCount() const = 0;
00061 
00066     virtual void setOutputs(const BpsSignalsMap& aOutputs) = 0;
00067 
00072     virtual void readInputs() = 0;
00073 
00074 signals:
00075 
00080     void setOutputsOk(const BpsSignalsMap& aOutputs);
00081 
00086     void setOutputsError(const QString& aMessage);
00087 
00092     void readInputsOk(const BpsSignalsMap& aInputs);
00093 
00098     void readInputsError(const QString& aMessage);
00099 
00103     void ok();
00104 
00109     void error(const QString& aMessage);
00110 };
00111 
00112 #endif // BPSSIGNALS_H