
WASP
----

# git-test vapor_3_0
#
#

done - Support Min/Max & clamp in decompression

serialize (order) threaded I/O

Should 'unlimited' dimensions be supported ?

done - ***If (cratios.size() == 1 and cratios[0] == 1) do not transform
variable, but still block it. This facilitates use of coordinate variables
that are not compressed with data variables that are.

API should be able to operate on conventional netcdf files (files without
the WASP attribute). Currently most methods return error (unecessarily)
if _waspFile is not true.

VDCNetCDF
--------

Refinement level should be supported for uncompressed variables to
handle uncompressed coordinate variables.  Reading a coordinate
variable (that was not compressed) should do the appropriate averaging
based on the wavelet (symatric vs asymetric)

VDC
---


Should the number of time dimensions be restricted to one? Either
way needs to be tested

Not sure what Uniform coordinate variables are actually doing. Their
uniformness is not guaranteed (can be written to), 

Consider moving VDC::GetNumTimeSteps() to VarBase (or doing away with it
entirely - it's redundant).

Make sure open mode (RWA) is handled correctly both for supporting vdccreate
and 2vdc operations

Need to be consistent in interpretation of BS (e.b. bs== dimensions, bs=1, etc)
for WASP.cpp, VDC*

Verify that DC ensures that dimensions are always in correct order. In 
particular, uses of DC API don't have to verify order is correct when
getting a variables dimensions.

DataMgr
-------

Handle derived variable coordinates

error checking

convert all global time steps to local

Rename DataMgrV3 to DataMgr


RegularGrid
-----------

Iterator for bounding volume defined in user coords

FILES WE DONT SYNC
DataMgr.cpp
DataMgrFactor.cpp

WASP
----

done - integer wavelet transforms - haar and cdf5/3.

Use int haar for missing value mask

DCCF
----

Interpolate structured to regular grid (using weithtable)
Initialize, if called multipe times, doesn't clean up. Probably true elsewhere.

GetAtt*() are no-ops

derived, cartographic coordinates (e.g. lonX) are not blocked. However, 
the geographic coordinates (e.g. lon) are.

DCWRF
----

GetAtt*() are no-ops

Idealized grid (MAP_PROJ = 0) not supported. Conversion of yochen data
uses XLONG and XLAT, which are set to bogus values (-90 for all points).
See vapor-2.x, DCReaderWRF for proper calculation using DX and DY

No map projection returned


ALL
---
ReadSlice should work with 1D data

NetCDFCollection
----------------

DerivedVar::Open returns a file descriptor which is passed into Read(), and
Close(). However, most implementations igore the fd. Is it needed?

Variables with reversed coordinates not supported. See
/glade/p/DASG/VAPOR/Data/UKMet/GEMS*

MISC
----

verify cratio=1 case works (vdc2raw, raw2vdc)

unitialized memory read with hundred.nc:
	../../targets/Linux_x86_64/bin/test_datamgr -nts 1 -loop 1 -memsize 2000 -var v $c/hundred.nc

