Changeset 707 for XIOS/trunk/src/io/onetcdf4.hpp
- Timestamp:
- 09/24/15 15:55:17 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
XIOS/trunk/src/io/onetcdf4.hpp
r686 r707 26 26 27 27 /// Constructeurs /// 28 CONetCDF4(const StdString 29 const MPI_Comm 28 CONetCDF4(const StdString& filename, bool append, bool useClassicFormat = false, 29 const MPI_Comm* comm = NULL, bool multifile = true); 30 30 31 CONetCDF4(const CONetCDF4 32 CONetCDF4(const CONetCDF4 31 CONetCDF4(const CONetCDF4& onetcdf4); // Not implemented. 32 CONetCDF4(const CONetCDF4* const onetcdf4); // Not implemented. 33 33 34 34 35 35 /// Initialisation /// 36 void initialize(const StdString 37 const MPI_Comm 38 void close(void) 39 void sync(void) 36 void initialize(const StdString& filename, bool append, bool useClassicFormat, 37 const MPI_Comm* comm, bool multifile); 38 void close(void); 39 void sync(void); 40 40 void definition_start(void); 41 41 void definition_end(void); 42 42 43 43 /// Mutateurs /// 44 void setCurrentPath(const CONetCDF4Path 44 void setCurrentPath(const CONetCDF4Path& path); 45 45 46 int addGroup(const StdString 46 int addGroup(const StdString& name); 47 47 int addDimension(const StdString& name, const StdSize size = UNLIMITED_DIM); 48 int addVariable(const StdString 49 const std::vector<StdString> 48 int addVariable(const StdString& name, nc_type type, 49 const std::vector<StdString>& dim); 50 50 51 51 //---------------------------------------------------------------- … … 53 53 54 54 template <class T> 55 void setDefaultValue(const StdString & varname, const T* value = NULL);55 void setDefaultValue(const StdString& varname, const T* value = NULL); 56 56 57 57 void setCompressionLevel(const StdString& varname, int compressionLevel); 58 58 59 template <class T> void addAttribute (const StdString & name, const T & value, const StdString* varname = NULL);59 template <class T> void addAttribute (const StdString& name, const T& value, const StdString* varname = NULL); 60 60 61 61 /// Ecriture des données /// 62 62 template <class T, int ndim> 63 void writeData(const CArray<T,ndim>& data, const StdString 63 void writeData(const CArray<T,ndim>& data, const StdString& name, 64 64 bool collective, StdSize record, 65 const std::vector<StdSize> 66 const std::vector<StdSize> 65 const std::vector<StdSize>* start = NULL, 66 const std::vector<StdSize>* count = NULL); 67 67 68 void writeData(const CArray<int, 2>& data, const StdString 69 void writeTimeAxisData(const CArray<double,1>& data, const StdString 70 bool collective, StdSize record, bool Isroot) 68 void writeData(const CArray<int, 2>& data, const StdString& name); 69 void writeTimeAxisData(const CArray<double,1>& data, const StdString& name, 70 bool collective, StdSize record, bool Isroot); 71 71 /// Accesseur /// 72 const CONetCDF4Path 72 const CONetCDF4Path& getCurrentPath(void) const; 73 73 74 74 /// Destructeur /// … … 86 86 /// Accesseurs /// 87 87 int getCurrentGroup(void); 88 int getGroup(const CONetCDF4Path 89 int getVariable(const StdString 90 int getDimension(const StdString 91 std::vector<StdSize> getDimensions (const StdString 92 std::vector<StdString> getDimensionsIdList (const StdString 88 int getGroup(const CONetCDF4Path& path); 89 int getVariable(const StdString& varname); 90 int getDimension(const StdString& dimname); 91 std::vector<StdSize> getDimensions (const StdString& varname); 92 std::vector<StdString> getDimensionsIdList (const StdString* varname); 93 93 int getUnlimitedDimension(void); 94 94 StdString getUnlimitedDimensionName(void); 95 95 96 bool varExist(const StdString & varname); 96 void getTimeAxisBounds(CArray<double,2>& timeAxisBounds, const StdString& name, bool collective); 97 98 bool varExist(const StdString& varname); 97 99 98 100 bool useClassicFormat; //!< If true, NetCDF4 will use the classic NetCDF3 format … … 101 103 102 104 private : 105 template <class T> 106 void writeData_(int grpid, int varid, 107 const std::vector<StdSize>& sstart, 108 const std::vector<StdSize>& scount, T* data); 103 109 104 template <class T> 105 void writeData_(int grpid, int varid, 106 const std::vector<StdSize> & sstart, 107 const std::vector<StdSize> & scount, T * data); 108 109 void getWriteDataInfos(const StdString & name, StdSize record, StdSize & array_size, 110 std::vector<StdSize> & sstart, 111 std::vector<StdSize> & scount, 112 const std::vector<StdSize> * start, 113 const std::vector<StdSize> * count); 110 void getWriteDataInfos(const StdString& name, StdSize record, StdSize& array_size, 111 std::vector<StdSize>& sstart, 112 std::vector<StdSize>& scount, 113 const std::vector<StdSize>* start, 114 const std::vector<StdSize>* count); 114 115 115 116 /// Propriétés privées /// … … 117 118 int ncidp; 118 119 bool wmpi; 119 /*! Number of records already written when opening an existing file. 120 * always 0 when creating a new file */ 121 size_t recordOffset; 122 map<int,size_t> timeAxis ; 120 map<int,size_t> timeAxis; 123 121 }; // class CONetCDF4 124 122
Note: See TracChangeset
for help on using the changeset viewer.