00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #ifndef OMGMODELLERPLUGINREGISTRY_H
00021 #define OMGMODELLERPLUGINREGISTRY_H
00022
00023 #include "omgmodellerplugininterface.h"
00024 #include <QMap>
00025
00026 class QString;
00027 class QStringList;
00032 class OMG_LIB_EXPORT OmgModellerPluginRegistry : public QObject
00033 {
00034 Q_OBJECT;
00035
00036 public:
00037
00039 static OmgModellerPluginRegistry * instance();
00043 const int count();
00044
00052 OmgModellerPluginInterface* getPlugin(QString thePluginName="");
00056 QStringList names();
00057
00058 signals:
00059
00060
00061 protected:
00062
00064 OmgModellerPluginRegistry( QObject * parent = 0 );
00065
00066 private:
00067
00068 static OmgModellerPluginRegistry* mpInstance;
00069
00070 QMap<QString,OmgModellerPluginInterface*> mPluginsMap;
00071
00072
00073 };
00074
00075 #endif //OMGMODELLERPLUGINREGISTRY_H
00076