Overload List
| # | Signature | Description |
|---|---|---|
| 1 | TVec *Hanning(TVec *Src, TSignalWindowMode WindowMode); | Hanning (raised-cosine) window. |
| 2 | TVec *Hanning(TVec *Src, TSignalWindowMode WindowMode, int Index, int Len); | Hamming window. |
Overload 1: TVec *Hanning(TVec *Src, TSignalWindowMode WindowMode);
Hanning (raised-cosine) window.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Src | TVec * | |
| 2 | WindowMode | TSignalWindowMode |
Multiplies Src in place by the Hanning window so that, for a unit input, the i-th sample becomes
w[i] = 1/2(1 - cos(2pi i)/(N-1)), 0 <= i <= N-1
where N is the operand length (Len). With WindowMode = wmSymmetric the window is symmetric (endpoints ); with wmPeriodic the length-N+1 symmetric window is built and its last sample dropped, giving w[i]=1/2(1-cos(2pi i)/N) which keeps the FFT periodicity. Window functions are applied prior to the FFT to reduce spectral leakage at the cost of frequency resolution; Hanning is a good general default. Domain: N >= 1 (no effect for N <= 1); the routine touches only elements Index..Index+Len-1 and validates that range against Src, raising an exception on an out-of-range Index or Len. No NaN is produced for finite input.
References:
[1] Digital signal processing, Vinay K. Ingle and John G. Proakis, Brooks-Cole, 2000.
Overload 2: TVec *Hanning(TVec *Src, TSignalWindowMode WindowMode, int Index, int Len);
Hamming window.
| # | Name | Type | Description |
|---|---|---|---|
| 1 | Src | TVec * | |
| 2 | WindowMode | TSignalWindowMode | |
| 3 | Index | int | |
| 4 | Len | int |
Applies Hamming window to Src vector from element at Index to element at Index + Len - 1.