1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: ModelAPI_Plugin.hxx
4 // Created: 31 Mar 2014
5 // Author: Mikhail PONIKAROV
7 #ifndef ModelAPI_Plugin_H_
8 #define ModelAPI_Plugin_H_
14 class ModelAPI_Feature;
16 /**\class ModelAPI_Plugin
18 * \brief Interface common for any plugin: allows to use plugin by the plugins manager.
21 class MODELAPI_EXPORT ModelAPI_Plugin
24 /// Creates the feature object of this plugin by the feature string ID
25 virtual std::shared_ptr<ModelAPI_Feature> createFeature(std::string theFeatureID) = 0;
27 /// To virtually destroy the fields of successors
28 virtual ~ModelAPI_Plugin()
33 /// Is needed for python wrapping by swig