Test of class CreateFileNc3.
#include <iostream>
using std::cout;
using std::endl;
#include "netcdf4"
using namespace netcdf;
#include <memory>
#include <algorithm>
char const *
const ncFileName =
"netcdf3_classic.nc";
std::vector<float> & lat,
std::vector<float> & lon)
{
lat.resize ( 360 );
for ( int i = 0; i < 360; ++i )
lat[i] = i + 0.5f;
lon.resize ( 720 );
for ( int i = 0; i < 720; ++i )
lon[i] = i + 0.5f;
}
{
std::auto_ptr<NcFile> pNcFile (
NcDim latDim = pNcFile->AddDim (
"lat", 360 );
NcDim lonDim = pNcFile->AddDim (
"lon", 720 );
NcDim timeDim = pNcFile->AddDim (
"time" );
float const latRange[] = { -90.0f, 90.0f };
float const lonRange[] = { -180.0f, 180.0f };
std::vector<NcDim> dimArray;
dimArray.push_back(timeDim);
dimArray.push_back(latDim);
dimArray.push_back(lonDim);
NcVar var3 = pNcFile->AddVar (
"amount",
ncFloat, dimArray );
float const amountRange[] = { 0.0f, 999.0f };
pNcFile->ToDataMode();
return pNcFile;
}
std::vector<float> const & lat,
std::vector<float> const & lon)
{
}
std::vector<float> & lat,
std::vector<float> & lon)
{
}
{
cout << "Test of class NcFile to create a classic NetCDF3 file." << endl;
try
{
std::vector<float> lat, lon;
cout << "Add data to file..." << endl;
cout << "Read data from file..." << endl;
std::vector<float> latIn, lonIn;
bool areEqual = latIn.size() == lat.size();
if ( areEqual )
areEqual = std::equal( lat.begin(), lat.end(), latIn.begin() );
cout << "variable lat: original == input ? "
<< ( areEqual ? "yes" : "no" )
<< endl;
areEqual = lonIn.size() == lon.size();
if ( areEqual )
areEqual = std::equal( lon.begin(), lon.end(), lonIn.begin() );
cout << "variable lon: original == input ? "
<< ( areEqual ? "yes" : "no" )
<< endl;
}
catch (std::exception const & e)
{
cout << "Exception: " << e.what() << endl;
}
catch (...)
{
cout << "Error: unknown error." << endl;
}
cout << "\n all done!" << endl;
return 0;
}