remove unnecessary gcc 4.7 "fix"
[ardour.git] / libs / rubberband / src / SpectralDifferenceAudioCurve.h
1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*-  vi:set ts=8 sts=4 sw=4: */
2
3 /*
4     Rubber Band
5     An audio time-stretching and pitch-shifting library.
6     Copyright 2007-2008 Chris Cannam.
7     
8     This program is free software; you can redistribute it and/or
9     modify it under the terms of the GNU General Public License as
10     published by the Free Software Foundation; either version 2 of the
11     License, or (at your option) any later version.  See the file
12     COPYING included with this distribution for more information.
13 */
14
15 #ifndef _SPECTRALDIFFERENCE_AUDIO_CURVE_H_
16 #define _SPECTRALDIFFERENCE_AUDIO_CURVE_H_
17
18 #include "AudioCurve.h"
19 #include "Window.h"
20
21 namespace RubberBand
22 {
23
24 class SpectralDifferenceAudioCurve : public AudioCurve
25 {
26 public:
27     SpectralDifferenceAudioCurve(size_t sampleRate, size_t windowSize);
28
29     virtual ~SpectralDifferenceAudioCurve();
30
31     virtual void setWindowSize(size_t newSize);
32
33     virtual float process(const float *R__ mag, size_t increment);
34     virtual float processDouble(const double *R__ mag, size_t increment);
35     virtual void reset();
36
37 protected:
38     float *R__ m_prevMag;
39 };
40
41 }
42
43 #endif