1 // File: ModelAPI_Plugin.hxx
2 // Created: 31 Mar 2014
3 // Author: Mikhail PONIKAROV
5 #ifndef ModelAPI_Plugin_HeaderFile
6 #define ModelAPI_Plugin_HeaderFile
10 #include <boost/shared_ptr.hpp>
12 class ModelAPI_Feature;
14 /**\class ModelAPI_Plugin
16 * \brief Interface common for any plugin: allows to use plugin by the plugins manager.
19 class MODELAPI_EXPORT ModelAPI_Plugin
22 /// Creates the feature object of this plugin by the feature string ID
23 virtual boost::shared_ptr<ModelAPI_Feature> createFeature(std::string theFeatureID) = 0;
25 /// To virtually destroy the fields of successors
26 virtual ~ModelAPI_Plugin() {}
29 /// Is needed for python wrapping by swig