|
Slicer 4.2
Slicer is a multi-platform, free and open source software package for visualization and medical image computing
|
00001 /*============================================================================== 00002 00003 Program: 3D Slicer 00004 00005 Copyright (c) Kitware Inc. 00006 00007 See COPYRIGHT.txt 00008 or http://www.slicer.org/copyright/copyright.txt for details. 00009 00010 Unless required by applicable law or agreed to in writing, software 00011 distributed under the License is distributed on an "AS IS" BASIS, 00012 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 00013 See the License for the specific language governing permissions and 00014 limitations under the License. 00015 00016 This file was originally developed by Jean-Christophe Fillion-Robin, Kitware Inc. 00017 and was partially funded by NIH grant 3P41RR013218-12S1 00018 00019 ==============================================================================*/ 00020 00021 #ifndef __qSlicerLoadableModule_h 00022 #define __qSlicerLoadableModule_h 00023 00024 // CTK includes 00025 #include <ctkPimpl.h> 00026 00027 // SlicerQt includes 00028 #include "qSlicerAbstractModule.h" 00029 00030 #include "qSlicerBaseQTGUIExport.h" 00031 00032 class qSlicerLoadableModulePrivate; 00033 class qSlicerCorePythonManager; 00034 00035 class Q_SLICER_BASE_QTGUI_EXPORT qSlicerLoadableModule : public qSlicerAbstractModule 00036 { 00037 Q_OBJECT 00038 00039 public: 00040 00041 typedef qSlicerLoadableModule Self; 00042 typedef qSlicerAbstractModule Superclass; 00043 qSlicerLoadableModule(QObject *parent=0); 00044 virtual ~qSlicerLoadableModule(); 00045 00047 virtual QString helpText()const; 00048 virtual QString acknowledgementText()const; 00049 00060 static bool importModulePythonExtensions(qSlicerCorePythonManager * pythonManager, 00061 const QString& intDir, 00062 const QString& modulePath); 00063 00066 static bool addModuleToSlicerModules(qSlicerCorePythonManager * pythonManager, 00067 qSlicerAbstractModule *module, 00068 const QString& moduleName); 00069 00072 static bool addModuleNameToSlicerModuleNames(qSlicerCorePythonManager * pythonManager, 00073 const QString& moduleName); 00074 00075 protected: 00076 virtual void setup(); 00077 00078 protected: 00079 QScopedPointer<qSlicerLoadableModulePrivate> d_ptr; 00080 00081 private: 00082 Q_DECLARE_PRIVATE(qSlicerLoadableModule); 00083 Q_DISABLE_COPY(qSlicerLoadableModule); 00084 }; 00085 00086 Q_DECLARE_INTERFACE(qSlicerLoadableModule, 00087 "org.slicer.modules.loadable.qSlicerLoadableModule/1.0"); 00088 00089 #endif
1.7.4