annotate plugins/BeatTrack.h @ 137:ed55dc6aabf5

* README and version updates, minor Linux build update
author Chris Cannam <c.cannam@qmul.ac.uk>
date Tue, 05 Apr 2011 11:56:34 +0100
parents dcf5800f0f00
children 67b6ea887d5d
rev   line source
c@27 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
c@27 2
c@27 3 /*
c@27 4 QM Vamp Plugin Set
c@27 5
c@27 6 Centre for Digital Music, Queen Mary, University of London.
c@135 7
c@135 8 This program is free software; you can redistribute it and/or
c@135 9 modify it under the terms of the GNU General Public License as
c@135 10 published by the Free Software Foundation; either version 2 of the
c@135 11 License, or (at your option) any later version. See the file
c@135 12 COPYING included with this distribution for more information.
c@27 13 */
c@27 14
c@27 15 #ifndef _BEAT_TRACK_PLUGIN_H_
c@27 16 #define _BEAT_TRACK_PLUGIN_H_
c@27 17
c@27 18 #include <vamp-sdk/Plugin.h>
c@27 19
c@27 20 class BeatTrackerData;
c@27 21
c@27 22 class BeatTracker : public Vamp::Plugin
c@27 23 {
c@27 24 public:
c@27 25 BeatTracker(float inputSampleRate);
c@27 26 virtual ~BeatTracker();
c@27 27
c@27 28 bool initialise(size_t channels, size_t stepSize, size_t blockSize);
c@27 29 void reset();
c@27 30
c@27 31 InputDomain getInputDomain() const { return FrequencyDomain; }
c@27 32
c@27 33 std::string getIdentifier() const;
c@27 34 std::string getName() const;
c@27 35 std::string getDescription() const;
c@27 36 std::string getMaker() const;
c@27 37 int getPluginVersion() const;
c@27 38 std::string getCopyright() const;
c@27 39
c@27 40 ParameterList getParameterDescriptors() const;
c@27 41 float getParameter(std::string) const;
c@27 42 void setParameter(std::string, float);
c@27 43
c@27 44 size_t getPreferredStepSize() const;
c@27 45 size_t getPreferredBlockSize() const;
c@27 46
c@27 47 OutputList getOutputDescriptors() const;
c@27 48
c@27 49 FeatureSet process(const float *const *inputBuffers,
c@27 50 Vamp::RealTime timestamp);
c@27 51
c@27 52 FeatureSet getRemainingFeatures();
c@27 53
c@27 54 protected:
c@27 55 BeatTrackerData *m_d;
c@86 56 int m_method;
c@27 57 int m_dfType;
c@30 58 bool m_whiten;
c@27 59 static float m_stepSecs;
c@86 60 FeatureSet beatTrackOld();
c@86 61 FeatureSet beatTrackNew();
c@27 62 };
c@27 63
c@27 64
c@27 65 #endif