Salome HOME
Fix for the issue #1928
[modules/shaper.git] / src / FeaturesPlugin / FeaturesPlugin_Plugin.cpp
index 54b0021f0a8bdaf51151f27e9aec857875a20381..a602a866f13ed57947021155a9d7ec7851a31922 100644 (file)
@@ -6,12 +6,12 @@
 #include <FeaturesPlugin_Extrusion.h>
 #include <FeaturesPlugin_ExtrusionCut.h>
 #include <FeaturesPlugin_ExtrusionFuse.h>
-#include <FeaturesPlugin_Group.h>
 #include <FeaturesPlugin_Intersection.h>
 #include <FeaturesPlugin_Translation.h>
 #include <FeaturesPlugin_Partition.h>
 #include <FeaturesPlugin_Pipe.h>
 #include <FeaturesPlugin_Placement.h>
+#include <FeaturesPlugin_Recover.h>
 #include <FeaturesPlugin_RemoveSubShapes.h>
 #include <FeaturesPlugin_Revolution.h>
 #include <FeaturesPlugin_RevolutionCut.h>
@@ -27,8 +27,6 @@
 
 #include <memory>
 
-using namespace std;
-
 // the only created instance of this plugin
 static FeaturesPlugin_Plugin* MY_FEATURES_INSTANCE = new FeaturesPlugin_Plugin();
 
@@ -60,12 +58,14 @@ FeaturesPlugin_Plugin::FeaturesPlugin_Plugin()
                               new FeaturesPlugin_ValidatorUnionSelection);
   aFactory->registerValidator("FeaturesPlugin_ValidatorUnionArguments",
                               new FeaturesPlugin_ValidatorUnionArguments);
+  aFactory->registerValidator("FeaturesPlugin_ValidatorConcealedResult",
+                              new FeaturesPlugin_ValidatorConcealedResult);
 
   // register this plugin
   ModelAPI_Session::get()->registerPlugin(this);
 }
 
-FeaturePtr FeaturesPlugin_Plugin::createFeature(string theFeatureID)
+FeaturePtr FeaturesPlugin_Plugin::createFeature(std::string theFeatureID)
 {
   if (theFeatureID == FeaturesPlugin_Extrusion::ID()) {
     return FeaturePtr(new FeaturesPlugin_Extrusion);
@@ -77,8 +77,6 @@ FeaturePtr FeaturesPlugin_Plugin::createFeature(string theFeatureID)
     return FeaturePtr(new FeaturesPlugin_Translation);
   } else if (theFeatureID == FeaturesPlugin_Boolean::ID()) {
     return FeaturePtr(new FeaturesPlugin_Boolean);
-  } else if (theFeatureID == FeaturesPlugin_Group::ID()) {
-    return FeaturePtr(new FeaturesPlugin_Group);
   } else if (theFeatureID == FeaturesPlugin_Intersection::ID()) {
     return FeaturePtr(new FeaturesPlugin_Intersection);
   } else if (theFeatureID == FeaturesPlugin_Partition::ID()) {
@@ -87,6 +85,8 @@ FeaturePtr FeaturesPlugin_Plugin::createFeature(string theFeatureID)
     return FeaturePtr(new FeaturesPlugin_Pipe);
   } else if (theFeatureID == FeaturesPlugin_Placement::ID()) {
     return FeaturePtr(new FeaturesPlugin_Placement);
+  } else if (theFeatureID == FeaturesPlugin_Recover::ID()) {
+    return FeaturePtr(new FeaturesPlugin_Recover);
   } else if (theFeatureID == FeaturesPlugin_ExtrusionCut::ID()) {
     return FeaturePtr(new FeaturesPlugin_ExtrusionCut);
   } else if (theFeatureID == FeaturesPlugin_ExtrusionFuse::ID()) {