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