Salome HOME
#17695 - SMESH build/ TopoDS_Shape compilation issue
[modules/smesh.git] / src / SMESH / SMESH_Algo.hxx
index 85ba38426abb2f7f026a4da454ab4671245e0f41..24016e3f281eb6cf4756806e3d892e4903fb58af 100644 (file)
@@ -36,6 +36,7 @@
 #include "SMESH_Hypothesis.hxx"
 
 #include <GeomAbs_Shape.hxx>
+#include <TopoDS_Shape.hxx>
 
 #include <string>
 #include <vector>
@@ -93,7 +94,7 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis
     bool IsCompatible( const Features& algo2 ) const;
   };
   /*!
-   * \brief Returns a structure describing algorithm features
+   * \brief Return a structure describing algorithm features
    */
   static const Features& GetFeatures( const std::string& algoType );
   const Features&        GetFeatures() const { return GetFeatures( _name ); }
@@ -127,7 +128,7 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis
   virtual std::istream & LoadFrom(std::istream & load);
 
   /*!
-   * \brief Returns all types of compatible hypotheses
+   * \brief Return all types of compatible hypotheses
    */
   const std::vector < std::string > & GetCompatibleHypothesis();
 
@@ -196,7 +197,7 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis
                         MapShapeNbElems& aResMap) = 0;
 
   /*!
-   * \brief Returns a list of compatible hypotheses used to mesh a shape
+   * \brief Return a list of compatible hypotheses used to mesh a shape
     * \param aMesh - the mesh 
     * \param aShape - the shape
     * \param ignoreAuxiliary - do not include auxiliary hypotheses in the list
@@ -213,22 +214,11 @@ class SMESH_EXPORT SMESH_Algo : public SMESH_Hypothesis
                     const TopoDS_Shape & aShape,
                     const bool           ignoreAuxiliary=true) const;
   /*!
-   * \brief Returns a list of compatible hypotheses assigned to a shape in a mesh
-    * \param aMesh - the mesh 
-    * \param aShape - the shape
-    * \param ignoreAuxiliary - do not include auxiliary hypotheses in the list
-    * \retval const std::list <const SMESHDS_Hypothesis*> - hypotheses list
-   * 
-   *  List the relevant hypothesis associated to the shape. Relevant hypothesis
-   *  have a name (type) listed in the algorithm. Hypothesis associated to
-   *  father shape -are not- taken into account (see GetUsedHypothesis)
+   * \brief Return sub-shape to which hypotheses returned by GetUsedHypothesis() are assigned
    */
-  const std::list <const SMESHDS_Hypothesis *> &
-  GetAppliedHypothesis(SMESH_Mesh &         aMesh,
-                       const TopoDS_Shape & aShape,
-                       const bool           ignoreAuxiliary=true) const;
+  virtual const std::list < TopoDS_Shape > & GetAssignedShapes() const;
   /*!
-   * \brief Returns the filter recognizing only compatible hypotheses
+   * \brief Return the filter recognizing only compatible hypotheses
    *  \param ignoreAuxiliary - make filter ignore compatible auxiliary hypotheses
    *  \retval SMESH_HypoFilter* - the filter that can be NULL
    */
@@ -442,8 +432,8 @@ protected:
   const SMESH_HypoFilter *              _compatibleAllHypFilter;
   const SMESH_HypoFilter *              _compatibleNoAuxHypFilter;
   std::vector<std::string>              _compatibleHypothesis;
-  std::list<const SMESHDS_Hypothesis *> _appliedHypList;
   std::list<const SMESHDS_Hypothesis *> _usedHypList;
+  std::list<TopoDS_Shape>               _assigedShapeList; // _usedHypList assigned to
   
 
   // Algo features influencing which Compute() and how is called: