Changeset 350 for XIOS


Ignore:
Timestamp:
06/22/12 17:17:32 (12 years ago)
Author:
ymipsl
Message:

Add chunking when writing field

YM

File:
1 edited

Legend:

Unmodified
Added
Removed
  • XIOS/trunk/src/output/onetcdf4.cpp

    r337 r350  
    240240                                  const std::vector<StdString> & dim) 
    241241      { 
    242          int retvalue = 0; 
     242         int varid = 0; 
    243243         std::vector<int> dimids; 
     244         std::vector<StdSize> dimsizes ; 
     245         StdSize size ; 
     246          
    244247         int grpid = this->getCurrentGroup(); 
    245248          
     
    251254            const StdString & dimid = *it; 
    252255            dimids.push_back(this->getDimension(dimid)); 
    253          } 
    254          CheckError(nc_def_var (grpid, name.c_str(), type, dimids.size(), &(dimids[0]), &retvalue)); 
    255          return (retvalue); 
     256            CheckError(nc_inq_dimlen (grpid, this->getDimension(dimid), &size)); 
     257            if (size==NC_UNLIMITED) size=1 ; 
     258            dimsizes.push_back(size) ; 
     259         } 
     260          
     261         CheckError(nc_def_var (grpid, name.c_str(), type, dimids.size(), &(dimids[0]), &varid)); 
     262         CheckError(nc_def_var_chunking (grpid, varid, NC_CHUNKED, &(dimsizes[0]))); 
     263         CheckError(nc_def_var_fill(grpid, varid, true, NULL)); 
     264         return (varid); 
    256265      } 
    257266 
Note: See TracChangeset for help on using the changeset viewer.