private void waveletTreeDecomposition(DataBlk band, SubbandAn subband, int c)
{
//If the current subband is a leaf then nothing to be done (a leaf is
//not decomposed).
if (!subband.isNode)
{
return ;
}
else
{
//Perform the 2D wavelet decomposition of the current subband
wavelet2DDecomposition(band, (SubbandAn) subband, c);
//Perform the decomposition of the four resulting subbands
waveletTreeDecomposition(band, (SubbandAn) subband.HH, c);
waveletTreeDecomposition(band, (SubbandAn) subband.LH, c);
waveletTreeDecomposition(band, (SubbandAn) subband.HL, c);
waveletTreeDecomposition(band, (SubbandAn) subband.LL, c);
}
}