#include "PartSetPlugin_Plugin.h"
#include "PartSetPlugin_Part.h"
+#include "PartSetPlugin_Duplicate.h"
+#include "PartSetPlugin_Remove.h"
#include <ModelAPI_PluginManager.h>
#include <ModelAPI_Document.h>
ModelAPI_PluginManager::get()->registerPlugin(this);
}
-shared_ptr<ModelAPI_Feature> PartSetPlugin_Plugin::createFeature(string theFeatureID)
+FeaturePtr PartSetPlugin_Plugin::createFeature(string theFeatureID)
{
- if (theFeatureID == "Part") {
- return shared_ptr<ModelAPI_Feature>(new PartSetPlugin_Part);
+ if (theFeatureID == PartSetPlugin_Part::ID()) {
+ return FeaturePtr(new PartSetPlugin_Part);
}
- // feature of such kind is not found
- return shared_ptr<ModelAPI_Feature>();
+ if (theFeatureID == "duplicate") {
+ return FeaturePtr(new PartSetPlugin_Duplicate);
+ }
+ if (theFeatureID == "remove") {
+ return FeaturePtr(new PartSetPlugin_Remove);
+ }
+ // feature of such kind is not found
+ return FeaturePtr();
}