annotate transform/BeatDetectionFunctionTransform.h @ 14:b101cc2ae1ab

* Introduce potentially-separate read and write ring buffers, so we can swap in a new set when something changes -- thus allowing us to respond quickly when something changes during playback, without losing the long buffers * Some fixes for display & editing
author Chris Cannam
date Fri, 27 Jan 2006 18:04:07 +0000
parents d86891498eef
children 39ae3dee27b9
rev   line source
Chris@0 1 /* -*- c-basic-offset: 4 -*- vi:set ts=8 sts=4 sw=4: */
Chris@0 2
Chris@0 3 /*
Chris@0 4 A waveform viewer and audio annotation editor.
Chris@2 5 Chris Cannam, Queen Mary University of London, 2005-2006
Chris@0 6
Chris@0 7 This is experimental software. Not for distribution.
Chris@0 8 */
Chris@0 9
Chris@0 10 #ifndef _BEAT_DETECTION_FUNCTION_TRANSFORM_H_
Chris@0 11 #define _BEAT_DETECTION_FUNCTION_TRANSFORM_H_
Chris@0 12
Chris@0 13 #include "Transform.h"
Chris@0 14
Chris@0 15 //!!! This should be replaced by a plugin, when we have a plugin
Chris@0 16 // transform. But it's easier to start by testing concrete examples.
Chris@0 17
Chris@0 18 class DenseTimeValueModel;
Chris@0 19 class SparseTimeValueModel;
Chris@0 20
Chris@0 21 class BeatDetectionFunctionTransform : public Transform
Chris@0 22 {
Chris@0 23 public:
Chris@0 24 BeatDetectionFunctionTransform(Model *inputModel);
Chris@0 25 virtual ~BeatDetectionFunctionTransform();
Chris@0 26
Chris@0 27 static TransformName getName();
Chris@0 28
Chris@0 29 protected:
Chris@0 30 virtual void run();
Chris@0 31
Chris@0 32 // just casts
Chris@0 33 DenseTimeValueModel *getInput();
Chris@0 34 SparseTimeValueModel *getOutput();
Chris@0 35 };
Chris@0 36
Chris@0 37 #endif
Chris@0 38