Salome HOME
Update SketchPlugin_Projection feature (issue #1459)
[modules/shaper.git] / src / GeomDataAPI / GeomDataAPI_Point.h
index e021a4a1a266c7687fe66bd930d084dd50ef7d81..ffa07285da1df05d445247c5f30eefba756d4aee 100644 (file)
@@ -10,6 +10,8 @@
 #include "GeomDataAPI.h"
 #include <ModelAPI_Attribute.h>
 
+#include <set>
+
 class GeomAPI_Pnt;
 
 /**\class GeomDataAPI_Point
@@ -42,11 +44,14 @@ class GeomDataAPI_Point : public ModelAPI_Attribute
                                           const std::string& theY,
                                           const std::string& theZ) = 0;
 
-  /// Returns the text values
+  /// Returns the text value for X
   GEOMDATAAPI_EXPORT virtual std::string textX() = 0;
+  /// Returns the text value for Y
   GEOMDATAAPI_EXPORT virtual std::string textY() = 0;
+  /// Returns the text value for Z
   GEOMDATAAPI_EXPORT virtual std::string textZ() = 0;
 
+  /// Point component (x,y,z)
   enum PointComponent { C_X = 0,
                         C_Y = 1,
                         C_Z = 2,
@@ -58,6 +63,19 @@ class GeomDataAPI_Point : public ModelAPI_Attribute
   /// Returns true if text is invalid
   GEOMDATAAPI_EXPORT virtual bool expressionInvalid(int theComponent) = 0;
 
+  /// Allows to set expression (text) error (by the parameters listener)
+  GEOMDATAAPI_EXPORT virtual void setExpressionError(int theComponent, const std::string& theError) = 0;
+
+  /// Returns an expression error
+  GEOMDATAAPI_EXPORT virtual std::string expressionError(int theComponent) = 0;
+
+  /// Defines the used parameters
+  GEOMDATAAPI_EXPORT virtual void setUsedParameters(int theComponent, 
+    const std::set<std::string>& theUsedParameters) = 0;
+
+  /// Returns the used parameters
+  GEOMDATAAPI_EXPORT virtual std::set<std::string> usedParameters(int theComponent) const = 0;
+
   /// Returns the type of this class of attributes
   static std::string typeId()
   {