Salome HOME
registerNotObligatory is not necessary if this property is set in XML.
[modules/shaper.git] / src / ModelAPI / ModelAPI_Tools.h
old mode 100644 (file)
new mode 100755 (executable)
index 97b93c9..1d86a03
@@ -24,6 +24,12 @@ namespace ModelAPI_Tools {
 /// Returns shape from the given Result object
 MODELAPI_EXPORT std::shared_ptr<GeomAPI_Shape> shape(const ResultPtr& theResult);
 
+/*! Returns the feature error generated according to feature error and exec state
+ * \param theFeature a feature
+ * \return error value or empty string
+ */
+MODELAPI_EXPORT std::string getFeatureError(const FeaturePtr& theFeature);
+
 /*!
  * Searches for variable with name \param theName in \param theDocument. 
  * If found, set it value in the \param outValue and returns true.
@@ -47,12 +53,22 @@ MODELAPI_EXPORT void findRandomColor(std::vector<int>& theValues);
 
 /*!
  * Searches for Part result that contains the reference to the given document.
+ * The result must be presented in the tree.
  * \param theMain document that contains the searched feature
  * \param theSub document that is searched, the resulting feature references to it
  * \returns null if not found
  */
 MODELAPI_EXPORT ResultPtr findPartResult(const DocumentPtr& theMain, const DocumentPtr& theSub);
 
+/*!
+ * Searches for Part the feature that contains in result the reference to the given document.
+ * The result may be disabled.
+ * \param theMain document that contains the searched feature
+ * \param theSub document that is searched, the resulting feature references to it
+ * \returns null if not found
+ */
+MODELAPI_EXPORT FeaturePtr findPartFeature(const DocumentPtr& theMain, const DocumentPtr& theSub);
+
 /*!
  * Returns the composite feature - parent of this feature.
  * \param theFeature the sub-element of composite
@@ -67,6 +83,18 @@ MODELAPI_EXPORT CompositeFeaturePtr compositeOwner(const FeaturePtr& theFeature)
  */
 MODELAPI_EXPORT ResultCompSolidPtr compSolidOwner(const ResultPtr& theSub);
 
+/*!
+* Returns true if the result contains a not empty list of sub results. It processes result compsolid.
+* \param theResult a result object
+* \returns boolean value
+*/
+MODELAPI_EXPORT bool hasSubResults(const ResultPtr& theResult);
+
+/*!
+* Adds the results of the given feature to theResults list: including disabled and sub-results
+*/
+MODELAPI_EXPORT void allResults(const FeaturePtr& theFeature, std::list<ResultPtr>& theResults);
+
 }
 
 #endif