20 #ifndef ModelAPI_Expression_H_
21 #define ModelAPI_Expression_H_
46 MODELAPI_EXPORT
virtual void setText(
const std::wstring& theText) = 0;
49 MODELAPI_EXPORT
virtual std::wstring
text()
const = 0;
52 MODELAPI_EXPORT
virtual void setInvalid(
const bool theFlag) = 0;
58 MODELAPI_EXPORT
virtual void setError(
const std::string& theError) = 0;
61 MODELAPI_EXPORT
virtual std::string
error() = 0;
64 MODELAPI_EXPORT
virtual
71 MODELAPI_EXPORT
static bool isVariable(
const std::string& theString);
74 MODELAPI_EXPORT
static bool isVariable(
const std::wstring& theString);
80 MODELAPI_EXPORT
virtual void reinit() = 0;
82 MODELAPI_EXPORT
virtual void reset() {
104 MODELAPI_EXPORT
virtual void setValue(
const double theValue) = 0;
107 MODELAPI_EXPORT
virtual double value() = 0;
125 MODELAPI_EXPORT
virtual void setValue(
const int theValue) = 0;
128 MODELAPI_EXPORT
virtual int value() = 0;
139 typedef std::shared_ptr<ModelAPI_Expression> ExpressionPtr;
140 typedef std::shared_ptr<ModelAPI_ExpressionDouble> ExpressionDoublePtr;
141 typedef std::shared_ptr<ModelAPI_ExpressionInteger> ExpressionIntegerPtr;
Attribute that contains 2D point.
Definition: GeomData_Point2D.h:36
Attribute that contains 3D point.
Definition: GeomData_Point.h:35
Expression for calculated double values.
Definition: ModelAPI_Expression.h:101
virtual void setValue(const double theValue)=0
Defines the double value.
ModelAPI_ExpressionDouble()
Objects are created for features automatically.
Definition: ModelAPI_Expression.cpp:46
virtual double value()=0
Returns the double value.
Expression for calculated integer values.
Definition: ModelAPI_Expression.h:122
virtual void setValue(const int theValue)=0
Defines the integer value.
virtual int value()=0
Returns the integer value.
ModelAPI_ExpressionInteger()
Objects are created for features automatically.
Definition: ModelAPI_Expression.cpp:51
Expression for calculated values.
Definition: ModelAPI_Expression.h:34
virtual std::set< std::wstring > usedParameters() const =0
Returns the used parameters.
virtual void setError(const std::string &theError)=0
Allows to set expression (text) error (by the parameters listener)
virtual std::wstring text() const =0
Returns the text of this Expression.
virtual ~ModelAPI_Expression()
To virtually destroy the fields of successors.
Definition: ModelAPI_Expression.cpp:31
ModelAPI_Expression()
Objects are created for features automatically.
Definition: ModelAPI_Expression.cpp:26
virtual void setText(const std::wstring &theText)=0
Sets the text of this Expression.
virtual bool isInitialized()
Returns true if attribute was initialized by some value.
Definition: ModelAPI_Expression.cpp:36
virtual void setInitialized()
Makes attribute initialized.
Definition: ModelAPI_Expression.cpp:41
virtual void reset()
Resets attribute to deafult state.
Definition: ModelAPI_Expression.h:82
virtual bool isInvalid()=0
Returns true if text is invalid.
virtual std::string error()=0
Returns an expression error.
virtual void setUsedParameters(const std::set< std::wstring > &theUsedParameters)=0
Defines the used parameters (by the parameters listener)
virtual void reinit()=0
Reinitializes the internal state of the attribute (may be needed on undo/redo, abort,...
virtual void setInvalid(const bool theFlag)=0
Allows to set expression (text) as invalid (by the parameters listener)
static bool isVariable(const std::string &theString)
Returns True if the given string can be defined as a name of an expression variable.
Definition: ModelAPI_Expression.cpp:57
bool myIsInitialized
is some value assigned to this attribute
Definition: ModelAPI_Expression.h:84
Attribute that contains real value with double precision.
Definition: Model_AttributeDouble.h:36
Attribute that contains integer.
Definition: Model_AttributeInteger.h:36
General object of the application that allows to get/set attributes from the document and compute res...
Definition: Model_Data.h:61