]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/SketchSolver/SketchSolver_Constraint.h
Salome HOME
Collinear and coinciding point constraints problem (issue #1318)
[modules/shaper.git] / src / SketchSolver / SketchSolver_Constraint.h
index 3f6e0f281ff300455c1dd650d3f4c46d3002ca54..dbb64762394677943d612f1cf8faa6e13257b0f1 100644 (file)
@@ -57,11 +57,19 @@ public:
   virtual SketchSolver_ConstraintType getType() const
   { return myType; }
 
+  /// \brief Returns list of attributes of constraint
+  const std::list<EntityWrapperPtr>& attributes() const
+  { return myAttributes; }
+
   /// \brief Verify the feature or any its attribute is used by constraint
   virtual bool isUsed(FeaturePtr theFeature) const;
   /// \brief Verify the attribute is used by constraint
   virtual bool isUsed(AttributePtr theAttribute) const;
 
+  /// \brief Notify constraint, that coincidence appears or removed
+  virtual void notifyCoincidenceChanged(EntityWrapperPtr theCoincAttr1, EntityWrapperPtr theCoincAttr2)
+  { /* implement in derived class */ }
+
   /// \brief Shows error message
   const std::string& error() const
   { return myErrorMsg; }
@@ -90,6 +98,7 @@ protected:
   ConstraintPtr myBaseConstraint; ///< base SketchPlugin constraint
   StoragePtr    myStorage; ///< storage, which contains all information about entities and constraints
   SketchSolver_ConstraintType myType; ///< type of constraint
+  std::list<EntityWrapperPtr> myAttributes; ///< attributes of constraint
 
   std::string   myErrorMsg; ///< error message
 };