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 #ifndef __MEDMEM_TOPLEVEL_HXX__
00024 #define __MEDMEM_TOPLEVEL_HXX__
00025
00026 #include "MEDMEM_FieldForward.hxx"
00027 #include "MEDMEM_Exception.hxx"
00028 #include <string>
00029
00030 namespace MEDMEM
00031 {
00032 class MED;
00033 class MESH;
00034 }
00035
00036 namespace MEDMEM
00037 {
00038
00039 MEDMEM_EXPORT MESH *readMeshInFile(const std::string& fileName, const std::string& meshName);
00040 template<class T>
00041 FIELD<T> *readFieldInFile(const std::string& fileName, const std::string& fieldName);
00042
00043 MEDMEM_EXPORT void writeMeshToFile(const MESH *meshObj, const std::string& fileName);
00044 template<class T>
00045 void writeFieldToFile(const FIELD<T> *fieldObj, const std::string& fileName);
00046 }
00047
00048 #include "MEDMEM_Field.hxx"
00049
00050 namespace MEDMEM
00051 {
00052 template<class T>
00053 FIELD<T> *readFieldInFile(const std::string& fileName, const std::string& fieldName)
00054 {
00055 FIELD<T> *ret=new FIELD<T>();
00056 ret->setName(fieldName);
00057 driverTypes type=DRIVERFACTORY::deduceDriverTypeFromFileName(fileName);
00058 int id=ret->addDriver(type,fileName,fieldName);
00059 ret->read(id);
00060 return ret;
00061 }
00062
00063 template<class T>
00064 void writeFieldToFile(const FIELD<T> *fieldObj, const std::string& fileName)
00065 {
00066 FIELD<T> *fieldObjNoC=(FIELD<T> *)fieldObj;
00067 driverTypes type=DRIVERFACTORY::deduceDriverTypeFromFileName(fileName);
00068 int id=fieldObjNoC->addDriver(type, fileName, fieldObj->getName());
00069 fieldObjNoC->write(id);
00070 }
00071 }
00072
00073 #endif