annotate WindowFunction.cpp @ 8:4e429b9f2b4d

* Fixed memory leak bug. Issue with calculating size of spectrogram array. * Fixed bug in Tempogram::reset() where specData wasn't reinitialised.
author Carl Bussey <c.bussey@se10.qmul.ac.uk>
date Thu, 07 Aug 2014 17:25:24 +0100
parents 21147df9cb2d
children be59b4a73f49
rev   line source
c@0 1 //
c@0 2 // WindowFunction.cpp
c@0 3 // Tempogram
c@0 4 //
c@0 5 // Created by Carl Bussey on 26/06/2014.
c@0 6 // Copyright (c) 2014 Carl Bussey. All rights reserved.
c@0 7 //
c@0 8
c@0 9 #include "WindowFunction.h"
c@0 10 using std::vector;
c@0 11
c@0 12 void
c@0 13 WindowFunction::hanning(float *signal, const unsigned int N, const bool normalise){
c@0 14
c@0 15 float sum = 0;
c@0 16 for(int i = 0; i < N; i++){
c@0 17 signal[i] = 0.5*(1-cos((float)2*M_PI*i/N));
c@0 18 sum += signal[i];
c@0 19 }
c@0 20 if (normalise){
c@0 21 for(int i = 0; i < N; i++){
c@0 22 signal[i] /= sum;
c@0 23 }
c@0 24 }
c@0 25 }