NetCDF is a data storage standard and its associated library of C functions. NetcdfStep is a wrapper written in Objective-C and using the Cocoa foundation classes. It presents the functionality of netCDF version 3.6.2 in an object-oriented form. The standard build is a binary that supports the 32-bit i386 architecture. 32-bit requires 10.4 or higher; 64-bit requires 10.5 or higher. Several optional build targets offer special features including 64-bit support, compatibility with Fink project, or remote data access over the internet. It has also been ported to the GNUstep environment in a separate package. The root object is the NetcdfDataset, and its primary member variables are NSArrays of NetcdfDimension, NetcdfAttribute and NetcdfVariable. The basic classes are read-only; the mutable categories add methods to create and modify datasets. Initializing a NetcdfDataset with the path to an existing netCDF file will automatically instantiate the necessary members. Conversely, instantiating a new NetcdfDataset will create the corresponding netCDF data file on disk. The dimensions, attributes and variables can be accessed by name. Attribute values are returned as type id, which may be (as appropriate) as NSString, NSNumber, or NSArray of NSNumber. Variable values are returned as NSData, NSNumber or NSString depending on the method. The structure of the dataset is obtained by the method -schema which returns an NSMutableDictionary of the names, types and sizes of the members. New datasets, dimensions, attributes and variables may be created from their corresponding schemas. Note that all initialized NetcdfDataset, NetcdfDimension, NetcdfAttribute, and NetcdfVariable objects are always backed by real netCDF data structures on disk. There is no means of creating an abstract NetcdfDataset because such objects are slaved to the netCDF dataset file. Nor is it possible to transfer the backing file from one NetcdfDataset object to another. If an abstract representation is required, use the schema mechanism. In version 1.0.0, the API has been declared complete and frozen. All obsolete interfaces have been removed. This version is compatible with development releases 0.6.0 or later. The current version is 1.0.5.
NetcdfStep is copyright (C) 2004-2012 Mark Tracy Special Engineering. All rights reserved.
Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:
Portions of this software were developed by the Unidata Program at the University Corporation for Atmospheric Research. (http://www.unidata.ucar.edu)
The netCDF data interchange standard and the NetCDF software libraries are Copyright 1993-2005 University Corporation for Atmospheric Research/Unidata.
Access and use of this software shall impose the following obligations and understandings on the user. The user is granted the right, without any fee or cost, to use, copy, modify, alter, enhance and distribute this software, and any derivative works thereof, and its supporting documentation for any purpose whatsoever, provided that this entire notice appears in all copies of the software, derivative works and supporting documentation. Further, UCAR requests that the user credit UCAR/Unidata in any publications that result from the use of this software or in any product that includes this software, although this is not an obligation. The names UCAR and/or Unidata, however, may not be used in any advertising or publicity to endorse or promote any products or commercial entity unless specific written permission is obtained from UCAR/Unidata. The user also understands that UCAR/Unidata is not obligated to provide the user with any support, consulting, training or assistance of any kind with regard to the use, operation and performance of this software nor to provide the user with any updates, revisions, new versions or "bug fixes."
THIS SOFTWARE IS PROVIDED BY UCAR/UNIDATA "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL UCAR/UNIDATA BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE ACCESS, USE OR PERFORMANCE OF THIS SOFTWARE.