+ /// Makes attribute initialized
+ MODELAPI_EXPORT void setInitialized()
+ {
+ myIsInitialized = true;
+ }
+
+ /// Set this attribute is argument for result (change of this attribute requires update of result).
+ /// By default it is true.
+ MODELAPI_EXPORT void setIsArgument(const bool theFlag)
+ {
+ myIsArgument = theFlag;
+ }
+
+ /// Returns true if attribute causes the result change
+ MODELAPI_EXPORT bool isArgument()
+ {
+ return myIsArgument;
+ }
+
+ /// Immutable argument can not be changed programaticaly (e.g. by constraint)
+ /// By default it is false.
+ /// Returns the previous state of the attribute's immutability.
+ MODELAPI_EXPORT bool setImmutable(const bool theFlag)
+ {
+ bool aResult = myIsImmutable;
+ myIsImmutable = theFlag;
+ return aResult;
+ }
+
+ /// Returns true if can not be changed programaticaly
+ MODELAPI_EXPORT bool isImmutable()
+ {
+ return myIsImmutable;
+ }
+
+ protected: