Chris@43: /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */ Chris@43: Chris@43: /* Chris@43: Vamp Tempogram Plugin Chris@43: Carl Bussey, Centre for Digital Music, Queen Mary University of London Chris@43: Copyright 2014 Queen Mary University of London. Chris@43: Chris@43: This program is free software; you can redistribute it and/or Chris@43: modify it under the terms of the GNU General Public License as Chris@43: published by the Free Software Foundation; either version 2 of the Chris@43: License, or (at your option) any later version. See the file Chris@43: COPYING included with this distribution for more information. Chris@43: */ c@25: c@25: #ifndef __Tempogram__Autocorrelation__ c@25: #define __Tempogram__Autocorrelation__ c@25: c@25: #include c@25: #include c@25: c@25: typedef std::vector< std::vector > AutoCorrelation; c@25: c@25: class AutocorrelationProcessor{ c@25: public: c@26: AutocorrelationProcessor(const size_t &windowLength, const unsigned int &hopSize); c@26: ~AutocorrelationProcessor(); c@25: AutoCorrelation process(float * input, const size_t &inputLength) const; c@25: private: c@25: size_t m_windowLength; c@25: unsigned int m_hopSize; c@25: }; c@25: c@25: #endif /* defined(__Tempogram__Autocorrelation__) */