Main Page | Modules | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

omgmodellerpluginregistry.h

Go to the documentation of this file.
00001 /***************************************************************************
00002                           omgmodellerpluginregistry.h    
00003            Singleton class for keeping track of loaded modeller plugins
00004                              -------------------
00005     begin                : Tues Dec 26 2006
00006     copyright            : (C) 2006 by Tim Sutton
00007     email                : tim@linfiniti.com
00008  ***************************************************************************/
00009 
00010 /***************************************************************************
00011  *                                                                         *
00012  *   This program is free software; you can redistribute it and/or modify  *
00013  *   it under the terms of the GNU General Public License as published by  *
00014  *   the Free Software Foundation; either version 2 of the License, or     *
00015  *   (at your option) any later version.                                   *
00016  *                                                                         *
00017  ***************************************************************************/
00018  /* $Id: omgmodellerpluginregistry.h 3512 2007-08-14 14:01:10Z timlinux $ */
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 }; // class OmgModellerPluginRegistry
00074 
00075 #endif //OMGMODELLERPLUGINREGISTRY_H
00076 

Generated on Mon Apr 28 15:08:59 2008 for openModellerDesktop by  doxygen 1.4.1-20050210