diff fft.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 fc19d45615d1
children 977f541d6683
line wrap: on
line diff
--- a/fft.cpp	Tue Oct 05 17:03:27 2010 +0100
+++ b/fft.cpp	Wed Oct 06 15:19:49 2010 +0100
@@ -4,8 +4,10 @@
 #include <stdlib.h>
 #include "fft.h"
 
+/** \file fft.h */
+
 //---------------------------------------------------------------------------
-/*
+/**
   function Atan2: (0, 0)-safe atan2
 
   Returns 0 is x=y=0, atan2(x,y) otherwise.
@@ -16,7 +18,7 @@
   else return atan2(y, x);
 }//Atan2
 
-/*
+/**
   function BitInv: inverse bit order of Value within an $Order-bit expression.
 
   In: integer Value smaller than 2^Order
@@ -35,7 +37,7 @@
   return Result;
 }//BitInv
 
-/*
+/**
   function SetTwiddleFactors: fill w[N/2] with twiddle factors used in N-point complex FFT.
 
   In: N
@@ -54,7 +56,7 @@
 }//SetTwiddleFactors
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CFFTCbii: basic complex DIF-FFT module, applied after bit-inversed ordering of inputs
 
   In: Order: integer, equals log2(Wid)
@@ -93,7 +95,7 @@
   }
 }//CFFTCbii
 
-/*
+/**
   function CFFTC: in-place complex FFT
 
   In: Order: integer, equals log2(Wid)
@@ -124,7 +126,7 @@
   CFFTCbii(Order, W, X);
 }//CFFTC
 
-/*
+/**
   function CFFTC: complex FFT
 
   In: Input[Wid]: complex waveform
@@ -149,7 +151,7 @@
 }//CFFTC
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CIFFTCbii: basic complex IFFT module, applied after bit-inversed ordering of inputs
 
   In: Order: integer, equals log2(Wid)
@@ -193,7 +195,7 @@
   }
 }//CIFFTCbii
 
-/*
+/**
   function CIFFTC: in-place complex IFFT
 
   In: Order: integer, equals log2(Wid)
@@ -223,7 +225,7 @@
   CIFFTCbii(Order, W, X);
 }//CIFFTC
 
-/*
+/**
   function CIFFTC: complex IFFT
 
   In: Input[Wid]: complex spectrum
@@ -243,7 +245,7 @@
 }//CIFFTC
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CIFFTR: complex-to-real IFFT
 
   In: Input[Wid/2+1]: complex spectrum, imaginary parts of Input[0] and Input[Wid/2] are ignored
@@ -321,7 +323,7 @@
 }//CIFFTR
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CreateBitInvTable: creates a table of bit-inversed integers
 
   In: Order: interger, equals log2(size of table)
@@ -339,7 +341,7 @@
 
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RFFTC_ual: unaligned real-to-complex FFT
 
   In: Input[Wid]: real waveform
@@ -427,7 +429,7 @@
 }//RFFTC_ual
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RFFTCW: real-to-complex FFT with window
 
   In: Input[Wid]: real waveform
@@ -475,7 +477,7 @@
   if (!hbitinv1) free(hbitinv);
 }//RFFTCW
 
-/*
+/**
   function RFFTCW: real-to-complex FFT with window
 
   In: Input[Wid]: real waveform as _int16 array
@@ -505,7 +507,7 @@
 }//RFFTCW
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CFFTCW: complex FFT with window
 
   In: Window[Wid]: window function
@@ -524,7 +526,7 @@
   CFFTC(Order, W, X, bitinv);
 }//CFFTCW
 
-/*
+/**
   function CFFTCW: complex FFT with window
 
   In: Input[Wid]: complex waveform
@@ -547,7 +549,7 @@
 }//CFFTCW
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RDCT1: fast DCT1 implemented using FFT. DCT-I has the time scale 0.5-sample shifted from the DFT.
 
   In: Input[Wid]: real waveform
@@ -644,7 +646,7 @@
 }//RDCT1
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RDCT4: fast DCT4 implemented using FFT. DCT-IV has both the time and frequency scales
   0.5-sample or 0.5-bin shifted from DFT.
 
@@ -691,7 +693,7 @@
 }//RDCT4
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RIDCT1: fast IDCT1 implemented using FFT.
 
   In: Input[Wid]: DCT-I of some real waveform.
@@ -801,7 +803,7 @@
 }//RIDCT1
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RIDCT4: fast IDCT4 implemented using FFT.
 
   In: Input[Wid]: DCT-IV of some real waveform
@@ -848,7 +850,7 @@
 }//RIDCT4
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RLCT: real local cosine transform of equal frame widths Wid=2^Order
 
   In: data[Count]: real waveform
@@ -908,7 +910,7 @@
 }//RLCT
 
 //---------------------------------------------------------------------------
-/*
+/**
   function RILCT: inverse local cosine transform of equal frame widths Wid=2^Order
 
   In: spec[Fr][Wid]: the local cosine transform
@@ -953,7 +955,7 @@
 }//RILCT
 
 //---------------------------------------------------------------------------
-/*
+/**
   function CMFTC: radix-2 complex multiresolution Fourier transform
 
   In: x[Wid]: complex waveform