blitzwave is a c++ wavelet library building on the blitz++ array template library. blitzwave is heavily templated and supports wavelet decompositions of n-dimensional arrays of various numerical data types. You can define and use your own wavelets, a number of pre-defined, ready-to-use wavelets are available.