00001 #ifndef DMPFILEEXPORTER_H 00002 #define DMPFILEEXPORTER_H 00003 00004 #include "MeshFileWriter.h" 00005 00006 namespace MeshWrite 00007 { 00008 00009 class DmpFileExporter : public MeshFileWriter 00010 { 00011 public: 00012 DmpFileExporter(); 00013 DmpFileExporter(const std::string & file_name); 00014 virtual ~DmpFileExporter(); 00015 00020 bool Init(); 00021 00022 bool Init(const std::string & file_name); 00023 00026 void Free(); 00027 00028 bool doWrite(const hHybridMesh * mesh); 00029 00032 void WriteVerticesCount(const int noVerts); 00033 00036 void WriteVertex(const double coords[],const uTind type); 00037 00040 void WriteEdgesCount(const int noEdges); 00041 00044 void WriteEdge(const ID verts[], const uTind type); 00045 00048 void WriteFacesCount(const int noFaces); 00049 00052 void WriteFace(const ID edges[],const uTind type,const int8_t bc, const ID neigh[]); 00053 00056 void WriteElementCount(const int noElems); 00057 00061 void WriteElement(const ID faces[], const ID neighbours[],const uTind type, const ID father, const int8_t ref,const int8_t material); 00062 }; 00063 00064 }; 00065 00066 #endif // DMPFILEEXPORTER_H