Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef _INCLUDE_DRIVERMED_R_SMESHDS_MESH
00028 #define _INCLUDE_DRIVERMED_R_SMESHDS_MESH
00029
00030 #include "SMESH_DriverMED.hxx"
00031
00032 #include "Driver_SMESHDS_Mesh.h"
00033 #include "DriverMED_Family.h"
00034
00035 #include <list>
00036
00037 class SMESHDS_Mesh;
00038 class SMESHDS_Group;
00039 class SMESHDS_SubMesh;
00040
00041 typedef std::pair< std::string, SMDSAbs_ElementType > TNameAndType;
00042
00043 class MESHDRIVERMED_EXPORT DriverMED_R_SMESHDS_Mesh: public Driver_SMESHDS_Mesh
00044 {
00045 public:
00046 virtual Status Perform();
00047
00048 std::list< TNameAndType > GetGroupNamesAndTypes();
00049 void GetGroup(SMESHDS_Group* theGroup);
00050 void CreateAllSubMeshes();
00051 void GetSubMesh(SMESHDS_SubMesh* theSubMesh, const int theId);
00052
00053 std::list<std::string> GetMeshNames(Status& theStatus);
00054 void SetMeshName(std::string theMeshName);
00055
00056 private:
00063 bool checkFamilyID(DriverMED_FamilyPtr & aFamily, int anID) const;
00064
00065 bool buildMeshGrille(const MED::PWrapper& theWrapper,
00066 const MED::PMeshInfo& theMeshInfo);
00067
00068 private:
00069 std::string myMeshName;
00070 std::map<int, DriverMED_FamilyPtr> myFamilies;
00071
00072 };
00073
00074 #endif