Salome HOME
Issue #1158: To use parameters in integer attributes -- Data Model
[modules/shaper.git] / src / ModelAPI / ModelAPI_AttributeInteger.h
index d16924a98feb67e4822e11f6eb8859d3f13b8241..52062faef0f01279f1814d342f65794e9da929eb 100644 (file)
@@ -7,12 +7,11 @@
 #ifndef MODELAPI_ATTRIBUTEINTEGER_H_
 #define MODELAPI_ATTRIBUTEINTEGER_H_
 
-#include <ModelAPI.h>
 #include <ModelAPI_Attribute.h>
 
+#include <set>
 #include <string>
 
-
 /**\class ModelAPI_AttributeInteger
  * \ingroup DataModel
  * \brief API for the attribute that contains integer (int).
@@ -27,6 +26,33 @@ class ModelAPI_AttributeInteger : public ModelAPI_Attribute
   /// Returns the integer value
   MODELAPI_EXPORT virtual int value() = 0;
 
+  /// Defines the calculated value
+  MODELAPI_EXPORT virtual void setCalculatedValue(const int theValue) = 0;
+
+  /// Defines the text value
+  MODELAPI_EXPORT virtual void setText(const std::string& theText) = 0;
+
+  /// Returns the text value
+  MODELAPI_EXPORT virtual std::string text() = 0;
+
+  /// Allows to set expression (text) as invalid (by the parameters listener)
+  MODELAPI_EXPORT virtual void setExpressionInvalid(const bool theFlag) = 0;
+
+  /// Returns true if text is invalid
+  MODELAPI_EXPORT virtual bool expressionInvalid() = 0;
+
+  /// Allows to set expression (text) error (by the parameters listener)
+  MODELAPI_EXPORT virtual void setExpressionError(const std::string& theError) = 0;
+
+  /// Returns an expression error
+  MODELAPI_EXPORT virtual std::string expressionError() = 0;
+
+  /// Defines the used parameters
+  MODELAPI_EXPORT virtual void setUsedParameters(const std::set<std::string>& theUsedParameters) = 0;
+
+  /// Returns the used parameters
+  MODELAPI_EXPORT virtual std::set<std::string> usedParameters() const = 0;
+
   /// Returns the type of this class of attributes
   MODELAPI_EXPORT static std::string typeId()
   {