Mercurial > hg > vamp-tempogram
diff Spectrogram.cpp @ 11:09fb76606b2b
* Removed many unnecessary heap allocations with objects
author | Carl Bussey <c.bussey@se10.qmul.ac.uk> |
---|---|
date | Wed, 13 Aug 2014 10:45:46 +0100 |
parents | be59b4a73f49 |
children | d58409ecd720 |
line wrap: on
line diff
--- a/Spectrogram.cpp Tue Aug 12 14:40:37 2014 +0100 +++ b/Spectrogram.cpp Wed Aug 13 10:45:46 2014 +0100 @@ -10,7 +10,7 @@ using namespace std; using Vamp::FFT; -Spectrogram::Spectrogram(unsigned int inputLength, unsigned int windowLength, unsigned int fftLength, unsigned int hopSize) : +SpectrogramProcessor::SpectrogramProcessor(unsigned int inputLength, unsigned int windowLength, unsigned int fftLength, unsigned int hopSize) : m_inputLength(inputLength), m_windowLength(windowLength), m_fftLength(fftLength), @@ -23,11 +23,11 @@ initialise(); } -Spectrogram::~Spectrogram(){ +SpectrogramProcessor::~SpectrogramProcessor(){ cleanup(); } -void Spectrogram::initialise(){ +void SpectrogramProcessor::initialise(){ fftInput = new double [m_fftLength]; fftOutputReal = new double [m_fftLength]; fftOutputImag = new double [m_fftLength]; @@ -36,7 +36,7 @@ spectrogramOutput = vector< vector<float> >(m_numberOfOutputBins, vector<float>(numberOfBlocks)); } -void Spectrogram::cleanup(){ +void SpectrogramProcessor::cleanup(){ delete []fftInput; delete []fftOutputReal; delete []fftOutputImag; @@ -45,7 +45,7 @@ } //process method -vector< vector<float> > Spectrogram::audioToMagnitudeSpectrogram(const float * const input, const float * window){ +vector< vector<float> > SpectrogramProcessor::process(const float * const input, const float * window){ int readPointerBeginIndex = m_hopSize-m_windowLength; int writeBlockPointer = 0;