X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FStdMeshers%2FStdMeshers_Penta_3D.hxx;h=90eab4c7433ab9ceafdd68f69ef14e32ae3f8111;hb=b81d8007215b49c711cab0c9e3577bf9fb4be9f5;hp=dc8ba72cfe44ab531880ee08ea96c5a7a5d5441b;hpb=8cc5e7af94aaeb9f166c387fb8c3315df7f37ec9;p=modules%2Fsmesh.git diff --git a/src/StdMeshers/StdMeshers_Penta_3D.hxx b/src/StdMeshers/StdMeshers_Penta_3D.hxx index dc8ba72cf..90eab4c74 100644 --- a/src/StdMeshers/StdMeshers_Penta_3D.hxx +++ b/src/StdMeshers/StdMeshers_Penta_3D.hxx @@ -17,7 +17,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -27,6 +27,8 @@ #ifndef StdMeshers_Penta_3D_HeaderFile #define StdMeshers_Penta_3D_HeaderFile +#include "SMESH_StdMeshers.hxx" + #include //////////////////////////////////////////////////////////////////////// @@ -39,12 +41,15 @@ #include #include #include +#include #include "SMESH_Block.hxx" +#include "SMESH_ComputeError.hxx" +#include "SMESH_MesherHelper.hxx" typedef std::map< double, std::vector > StdMeshers_IJNodeMap; -class StdMeshers_SMESHBlock { +class STDMESHERS_EXPORT StdMeshers_SMESHBlock { public: // @@ -84,6 +89,8 @@ public: int ErrorStatus() const; + SMESH_ComputeErrorPtr GetError() const; + protected: TopoDS_Shell myShell; @@ -102,7 +109,7 @@ protected: //////////////////////////////////////////////////////////////////////// #include "SMDS_MeshNode.hxx" -class StdMeshers_TNode { +class STDMESHERS_EXPORT StdMeshers_TNode { public: @@ -160,16 +167,22 @@ private: #include "SMESH_Mesh.hxx" #include // -class StdMeshers_Penta_3D { +class STDMESHERS_EXPORT StdMeshers_Penta_3D { // public: // methods StdMeshers_Penta_3D(); - //~StdMeshers_Penta_3D(); + ~StdMeshers_Penta_3D(); bool Compute(SMESH_Mesh& , const TopoDS_Shape& ); int ErrorStatus() const { + if (myErrorStatus->IsOK()) + return 0; + return myErrorStatus->myName; + } + + SMESH_ComputeErrorPtr GetComputeError() const { return myErrorStatus; } @@ -181,10 +194,10 @@ class StdMeshers_Penta_3D { return myTol3D; } - static bool LoadIJNodes(StdMeshers_IJNodeMap & theIJNodes, - const TopoDS_Face& theFace, - const TopoDS_Edge& theBaseEdge, - SMESHDS_Mesh* theMesh); + bool LoadIJNodes(StdMeshers_IJNodeMap & theIJNodes, + const TopoDS_Face& theFace, + const TopoDS_Edge& theBaseEdge, + SMESHDS_Mesh* theMesh); // Load nodes bound to theFace into column (vectors) and rows // of theIJNodes. // The value of theIJNodes map is a vector of ordered nodes so @@ -241,7 +254,7 @@ class StdMeshers_Penta_3D { TopoDS_Shape myShape; StdMeshers_SMESHBlock myBlock; void * myMesh; - int myErrorStatus; + SMESH_ComputeErrorPtr myErrorStatus; // vector myTNodes; int myISize; @@ -251,6 +264,9 @@ class StdMeshers_Penta_3D { // vector myWallNodesMaps; // nodes on a face vector myShapeXYZ; // point on each sub-shape + + bool myCreateQuadratic; + SMESH_MesherHelper* myTool; // tool building quadratic elements }; #endif