BPS C++ API  2.24.4
bpsscalesplugin.h
Go to the documentation of this file.
1 
4 #ifndef BPSSCALESPLUGIN_H
5 #define BPSSCALESPLUGIN_H
6 
7 #include "bpsgui_global.h"
8 #include <QtPlugin>
9 #include <QMap>
10 
11 class BpsDatastore;
12 class BpsConfigWidget;
13 class BpsScales;
14 class BpsScalesEditWidget;
15 class BpsSettings;
16 
22 {
23 public:
27  virtual ~BpsScalesPlugin() {};
28 
32  virtual QString scalesId() const = 0;
33 
37  virtual QString scalesName() const = 0;
38 
44  virtual bool check(BpsDatastore* aDatastore) const = 0;
45 
53  virtual BpsConfigWidget* createConfigWidget(BpsDatastore* aDatastore, QWidget* aParent = nullptr) const = 0;
54 
61  virtual BpsScales* createScales(BpsDatastore* aDatastore, QObject* aParent = nullptr) const = 0;
62 
69 
76  static BpsScalesPlugin* plugin(BpsDatastore* aDatastore, const QString& aId);
77 };
78 
82 #define BpsScalesPlugin_IID "com.ibk-software.BPS2.BpsScalesPlugin/1.0"
83 
84 Q_DECLARE_INTERFACE(BpsScalesPlugin, BpsScalesPlugin_IID)
85 
86 #endif // BPSSCALESPLUGIN_H
Public include file for BPS GUI library macros.
#define BPSGUI_EXPORT
Declare class an import from the shared library.
Definition: bpsgui_global.h:22
Abstract configuration widget.
Definition: bpsconfigwidget.h:16
BPS datastore class.
Definition: bpsdatastore.h:61
Scales interface.
Definition: bpsscales.h:19
Virtual class for scales plugin of BPS Workplace.
Definition: bpsscalesplugin.h:22
virtual BpsScales * createScales(BpsDatastore *aDatastore, QObject *aParent=nullptr) const =0
Create a scales object and return a pointer to it.
virtual bool check(BpsDatastore *aDatastore) const =0
Check if plugin is available for usage, e.g.
static QList< BpsScalesPlugin * > plugins(BpsDatastore *aDatastore)
Get list of all scales plugins available for usage.
virtual BpsConfigWidget * createConfigWidget(BpsDatastore *aDatastore, QWidget *aParent=nullptr) const =0
Create the config widget and return a pointer to it.
virtual QString scalesId() const =0
static BpsScalesPlugin * plugin(BpsDatastore *aDatastore, const QString &aId)
Find the available scales plugin with the given ID.
virtual ~BpsScalesPlugin()
Virtual destructor.
Definition: bpsscalesplugin.h:27
#define BpsScalesPlugin_IID
IID of the plugin.
Definition: bpsscalesplugin.h:82
virtual QString scalesName() const =0
Query and edit settings.
Definition: bpssettings.h:17