Salome HOME
Porting to SALOME_8.2.0 : Debug visualization selection for AIS_Trihedron axes.
[modules/shaper.git] / src / ModelAPI / ModelAPI_Tools.h
index 00f6cd4fd570611ac0d997cd911bbdf913e5a273..39e6f76d2196445605ec90c7bb46daae7dfadb59 100755 (executable)
@@ -26,6 +26,14 @@ namespace ModelAPI_Tools {
 /// Returns shape from the given Result object
 MODELAPI_EXPORT std::shared_ptr<GeomAPI_Shape> shape(const ResultPtr& theResult);
 
+/// Creates a container of shape of the feature results satisfied the given shape type
+/// \param theFeature a source feature
+/// \param theType shape type
+/// \param an output container for shapes
+MODELAPI_EXPORT void shapesOfType(const FeaturePtr& theFeature,
+                                  const GeomAPI_Shape::ShapeType& theType,
+                                  std::set<GeomShapePtr>& theShapes);
+
 /*! Returns the feature error generated according to feature error and exec state
  * \param theFeature a feature
  * \return error value or empty string
@@ -50,12 +58,6 @@ MODELAPI_EXPORT bool findVariable(FeaturePtr theSearcher, const std::string& the
   double& outValue, ResultParameterPtr& theParam,
   const DocumentPtr& theDocument = DocumentPtr());
 
-/*!
- * Returns the values of the next random color. The values are in range [0, 255]
- * \param theValues a container of component of RGB value: red, green, blue
- */
-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.
@@ -145,8 +147,15 @@ MODELAPI_EXPORT void findAllReferences(const std::set<FeaturePtr>& theFeatures,
 * \param theFeaturesRefsTo an out list of referenced features
 */
 MODELAPI_EXPORT void findRefsToFeatures(const std::set<FeaturePtr>& aFeatures,
-                                        const std::map<FeaturePtr, std::set<FeaturePtr> >& aReferences,
-                                        std::set<FeaturePtr>& aFeaturesRefsTo);
+                                const std::map<FeaturePtr, std::set<FeaturePtr> >& aReferences,
+                                std::set<FeaturePtr>& aFeaturesRefsTo);
+
+/*! Finds referenced of the feature to objects and collects concealed results.
+* \param theFeatures a model feature
+* \param theResults container for concealed results. It has no duplications
+*/
+MODELAPI_EXPORT void getConcealedResults(const FeaturePtr& theFeature,
+                                         std::list<std::shared_ptr<ModelAPI_Result> >& theResults);
 }
 
 #endif