Salome HOME
Merge branch 'master' of newgeom:newgeom.git into BR_PYTHON_PLUGIN
[modules/shaper.git] / src / ModelAPI / ModelAPI_Plugin.h
index 5d2d0430ceec5c39db9222803d1f184a9869b76c..5b107d5a4730287c40d55d5c004a75887baa06da 100644 (file)
@@ -2,12 +2,12 @@
 // Created:     31 Mar 2014
 // Author:      Mikhail PONIKAROV
 
-#ifndef ModelAPI_Plugin_HeaderFile
-#define ModelAPI_Plugin_HeaderFile
+#ifndef ModelAPI_Plugin_H_
+#define ModelAPI_Plugin_H_
 
 #include "ModelAPI.h"
 #include <string>
-#include <boost/shared_ptr.hpp>
+#include <memory>
 
 class ModelAPI_Feature;
 
@@ -18,13 +18,14 @@ class ModelAPI_Feature;
 
 class MODELAPI_EXPORT ModelAPI_Plugin
 {
-public:
+ public:
   /// Creates the feature object of this plugin by the feature string ID
-  virtual boost::shared_ptr<ModelAPI_Feature> createFeature(std::string theFeatureID) = 0;
+  virtual std::shared_ptr<ModelAPI_Feature> createFeature(std::string theFeatureID) = 0;
 
-protected:
-  /// Is needed for python wrapping by swig
-  ModelAPI_Plugin() {};
+  /// To virtually destroy the fields of successors
+  virtual ~ModelAPI_Plugin()
+  {
+  }
 };
 
 #endif