diff multires.cpp @ 5:5f3c32dc6e17

* Adjust comment syntax to permit Doxygen to generate HTML documentation; add Doxyfile
author Chris Cannam
date Wed, 06 Oct 2010 15:19:49 +0100
parents 6422640a802f
children 977f541d6683
line wrap: on
line diff
--- a/multires.cpp	Tue Oct 05 17:03:27 2010 +0100
+++ b/multires.cpp	Wed Oct 06 15:19:49 2010 +0100
@@ -1,11 +1,12 @@
 //---------------------------------------------------------------------------
 
-
 #include <math.h>
 #include "multires.h"
 #include "arrayalloc.h"
 #include "procedures.h"
 
+/** \file multires.h */
+
 //---------------------------------------------------------------------------
 
 //function xlogx(x): returns x*log(x)
@@ -20,7 +21,7 @@
 //  #define NORMAL_(A, a) A=a*a*A;
 //  #define NORMAL_(A, a) A=sqrt(a)*A;
 
-/*
+/**
   function DoCutSpectrogramSquare: find optimal tiling of a square. This is a recursive procedure.
 
   In: Specs[0][1][N], Specs[1][2][N/2], ..., Specs[log2(N)][N][1], multiresolution power spectrogram
@@ -169,7 +170,7 @@
   return result;
 }//DoCutSpectrogramSquare
 
-/*
+/**
   function DoMixSpectrogramSquare: renders a composite spectrogram on a pixel grid. This is a recursive
   procedure.
 
@@ -254,7 +255,7 @@
   }
 }//DoMixSpectrogramSquare
 
-/*
+/**
   function DoMixSpectrogramSquare: retrieves a composite spectrogram as a vector. This is a recursive
   procedure.
 
@@ -334,7 +335,7 @@
 }//DoMixSpectrogramSquare
 
 //---------------------------------------------------------------------------
-/*
+/**
   function HSplitSpec: split a spectrogram horizontally into lower and upper halves.
 
   In: Spec[X][Y]: spectrogram to split
@@ -350,7 +351,7 @@
     lSpec[i]=Spec[i], uSpec[i]=&Spec[i][Y/2];
 }//HSplitSpec
 
-/*
+/**
   function HSplitSpecs: split a multiresolution spectrogram horizontally into lower and upper halves
 
   A full spectrogram array is given in log2(N)+1 spectrograms, with the base spec of 1*N, 1st octave of
@@ -373,7 +374,7 @@
 }//HSplitSpecs
 
 //---------------------------------------------------------------------------
-/*
+/**
   function MixSpectrogramSquare: find composite spectrogram from multiresolution spectrogram,output as
   pixel grid
 
@@ -431,7 +432,7 @@
 }//MixSpectrogramSquare
 
 //---------------------------------------------------------------------------
-/*
+/**
   function MixSpectrogramSquare: find composite spectrogram from multiresolution spectrogram,output as
   vectors
 
@@ -484,7 +485,7 @@
 }//MixSpectrogramSquare
 
 //---------------------------------------------------------------------------
-/*
+/**
   function MixSpectrogramBlock: obtain the composite spectrogram of a waveform block as pixel grid.
 
   This method deals with the effective duration of WID/2 samples of a frame of WID samples. The maximal
@@ -539,7 +540,7 @@
   return result;
 }//MixSpectrogramBlock
 
-/*
+/**
   function MixSpectrogramBlock: obtain the composite spectrogram of a waveform block as vectors.
 
   In: Specs[0][1][WID], Specs[1][2][WID/2], ..., Specs[Res-1][WID/wid][wid], multiresolution spectrogram
@@ -581,12 +582,12 @@
 
 
 //---------------------------------------------------------------------------
-/*
-  Functions names as ...Block2(...) implement the same functions as the above directly without
+/**
+  functions names as ...Block2(...) implement the same functions as the above directly without
   explicitly dividing the multiresolution spectrogram into square blocks.
 */
 
-/*
+/**
   function DoCutSpectrogramBlock2: find optimal tiling for a block
 
   In: Specs[R0][x0:x0+x-1][Y0:Y0+Y-1], [R0+1][2x0:2x0+2x-1][Y0/2:Y0/2+Y/2-1],...,
@@ -643,7 +644,7 @@
   return ent;
 }//DoCutSpectrogramBlock2
 
-/*
+/**
   function DoMixSpectrogramBlock2: sampling multiresolution spectrogram according to given tiling
 
   In: Specs[R0][x0:x0+x-1][Y0:Y0+Y-1], [R0+1][2x0:2x0+2x-1][Y0/2:Y0/2+Y/2-1],...,
@@ -697,7 +698,7 @@
   return 0;
 }//DoMixSpectrogramBlock2
 
-/*
+/**
   function MixSpectrogramBlock2: obtain the composite spectrogram of a waveform block as vectors.
 
   In: Specs[0][1][WID], Specs[1][2][WID/2], ..., Specs[Res-1][WID/wid][wid], multiresolution spectrogram
@@ -739,7 +740,7 @@
 }//MixSpectrogramBlock2
 
 //---------------------------------------------------------------------------
-/*
+/**
   function MixSpectrogram: obtain composite spectrogram from multiresolutin spectrogram as pixel grid
 
   This method deals with Fr (base) frames of WID samples. Each base frame may be divided into 2 1st-
@@ -780,7 +781,7 @@
   return 0;
 }//MixSpectrogram
 
-/*
+/**
   function MixSpectrogram: obtain composite spectrogram from multiresolutin spectrogram as vectors
 
   In: Specs[0][Fr][WID], Specs[1][Fr*2][WID/2], ..., Specs[Res-1] [Fr*(WID/wid)][wid], multiresolution
@@ -807,7 +808,7 @@
 }//MixSpectrogram
 
 //---------------------------------------------------------------------------
-/*
+/**
   function VSplitSpec: split a spectrogram vertically into left and right halves.
 
   In: Spec[X][Y]: spectrogram to split
@@ -823,7 +824,7 @@
     lSpec[i]=Spec[i], rSpec[i]=Spec[i+X/2];
 }//VSplitSpec
 
-/*
+/**
   function VSplitSpecs: split a multiresolution spectrogram vertically into left and right halves
 
   A full spectrogram array is given in log2(N)+1 spectrograms, with the base spec of 1*N, 1st octave of