Announcing netcdf c++ wrapper library

Hi Group,

netcdf c++ wrapper library is a library around existing netcdf c++ library provided by unidata. It can be downloaded directly from here:
ftp://ftp.gfdl.noaa.gov/pub/fil/netcdflib.tgz

This library introduces a few key modern c++ techniques to class design and interface design. A new class, ONetCDFFile::NcFile, is introduced to make writing a netCDF file much easier based on an existing input netCDF file. This class contains template member functions that copies netCDF variables from input file to output file. It also provides book keeping records of attributes, dimensions, variables copied from one file to another.

ncatt.h and ncatt.cpp captures key methods to copy attributes from a input object (NcFile or NcVar) to an output object. This wrapper uses facade design to provide a unified function interface. It also provides a template member function to easily retrieve value of a given attribute.

ncio.h provides template functions to read and write data from/to a netCDF file. This class is tightly coupled with array.h. array.h is a small and efficient multiple dimension array implementation. Its access methods resembles fortran syntax and can be used very intuitively.

All class and methods reside in namespace 'feiliu' to prevent name collision with other similar libraries.

To build the example, use 'build'. All source codes are ISO c++98 standard compliant.

Let me know if you have any suggestions to improve this library. Thanks!

Fei
On Wed, 5 Apr 2006, Russ Rew wrote:

Hi Fei,

Hi Russ and Kurt, I have finished coding some wrapper interfaces to make
using netCDF in C++ a little easier. I don't have a convenient way to
publish my code (noaa has web page design requirement). Let me know if you
want me to send a zip file to you. Enclosed is the source code of a test
app to show you the improvements I've made over existing netcdfcpp
classes (introducing namespace, facade design, template to netcdfcpp).

Yes, thanks, please send a zip file with your improvements!

I would like to test your changes for backwards compatibility and
maybe incorporate them in a future release, with credit to you, of
course.  I also have a summer student working on the C++ interface
this summer.  I might have her start with your wrappers and see what
other improvements are possible while maintaining backwards
compatibility with the current interface.

Thanks again for your efforts in improving netCDF.

--Russ

_____________________________________________________________________

Russ Rew                                         UCAR Unidata Program
russ@xxxxxxxxxxxxxxxx                     http://www.unidata.ucar.edu



==============================================================================
To unsubscribe netcdfgroup, visit:
http://www.unidata.ucar.edu/mailing-list-delete-form.html
==============================================================================