Documents > BPS V2 C++ API
bpsscalesplugin.h
Go to the documentation of this file.
00001 
00004 #ifndef BPSSCALESPLUGIN_H
00005 #define BPSSCALESPLUGIN_H
00006 
00007 #include "bpsgui_global.h"
00008 #include <QtPlugin>
00009 #include <QMap>
00010 
00011 class BpsDatastore;
00012 class BpsConfigWidget;
00013 class BpsScales;
00014 class BpsScalesEditWidget;
00015 class BpsSettings;
00016 
00021 class BPSGUI_EXPORT BpsScalesPlugin
00022 {
00023 public:
00027     virtual ~BpsScalesPlugin() {};
00028 
00032     virtual QString scalesId() const = 0;
00033 
00037     virtual QString scalesName() const = 0;
00038 
00044     virtual bool check(BpsDatastore* aDatastore) const = 0;
00045 
00053     virtual BpsConfigWidget* createConfigWidget(BpsDatastore* aDatastore, QWidget* aParent = 0) const = 0;
00054 
00061     virtual BpsScales* createScales(BpsDatastore* aDatastore, QObject* aParent = 0) const = 0;
00062 
00068     static QList<BpsScalesPlugin*> plugins(BpsDatastore* aDatastore);
00069 
00076     static BpsScalesPlugin* plugin(BpsDatastore* aDatastore, const QString& aId);
00077 };
00078 
00079 Q_DECLARE_INTERFACE(BpsScalesPlugin, "com.ibk-software.BPS2.BpsScalesPlugin/1.0")
00080 
00081 #endif // BPSSCALESPLUGIN_H