]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/SketchPlugin/SketchPlugin_MacroBSpline.h
Salome HOME
Issue #17347: B-Splines in Sketcher
[modules/shaper.git] / src / SketchPlugin / SketchPlugin_MacroBSpline.h
index d8a0e5b89d5cdc20282c099485ed3f7794f8745d..78ef86823877ee1ded1e063035f92f05f35ca459 100644 (file)
@@ -105,6 +105,9 @@ public:
   /// Use plugin manager for features creation
   SketchPlugin_MacroBSpline();
 
+protected:
+  SketchPlugin_MacroBSpline(bool isPeriodic);
+
 private:
   FeaturePtr createBSplineFeature();
 
@@ -117,4 +120,29 @@ private:
   bool myIsPeriodic;
 };
 
+
+/**\class SketchPlugin_MacroBSpline
+* \ingroup Plugins
+* \brief Feature for creation of the new B-spline in Sketch.
+*/
+class SketchPlugin_MacroBSplinePeriodic : public SketchPlugin_MacroBSpline
+{
+public:
+  /// B-spline macro feature kind
+  inline static const std::string& ID()
+  {
+    static const std::string ID("SketchMacroBSplinePeriodic");
+    return ID;
+  }
+
+  /// Returns the kind of a feature
+  SKETCHPLUGIN_EXPORT virtual const std::string& getKind()
+  {
+    return SketchPlugin_MacroBSpline::ID();
+  }
+
+  /// Use plugin manager for features creation
+  SketchPlugin_MacroBSplinePeriodic() : SketchPlugin_MacroBSpline(true) {}
+};
+
 #endif