#include <TDF_Label.hxx>
-class ModelAPI_Expression;
+class ModelAPI_ExpressionDouble;
/**\class GeomData_Point2D
* \ingroup DataModel
class GeomData_Point2D : public GeomDataAPI_Point2D
{
enum { NUM_COMPONENTS = 2 };
- std::shared_ptr<ModelAPI_Expression> myExpression[NUM_COMPONENTS]; ///< Expressions for X, Y
+ std::shared_ptr<ModelAPI_ExpressionDouble> myExpression[NUM_COMPONENTS]; ///< Expressions for X, Y
public:
/// Defines the double value
GEOMDATA_EXPORT virtual void setValue(const double theX, const double theY);
GEOMDATA_EXPORT virtual std::string expressionError(int theComponent);
/// Defines the used parameters
- GEOMDATA_EXPORT virtual void setUsedParameters(int theComponent,
+ GEOMDATA_EXPORT virtual void setUsedParameters(int theComponent,
const std::set<std::string>& theUsedParameters);
/// Returns the used parameters
protected:
/// Initializes attributes
- GEOMDATA_EXPORT GeomData_Point2D(TDF_Label& theLabel);
+ GEOMDATA_EXPORT GeomData_Point2D();
+ /// Reinitializes the internal state of the attribute (may be needed on undo/redo, abort, etc)
+ virtual void reinit();
+
+ /// Resets attribute to deafult state.
+ virtual void reset();
friend class Model_Data;
};