annotate framework/TransformUserConfigurator.h @ 771:1d6cca5a5621 pitch-align

Allow use of proper sparse models (i.e. retaining event time info) in alignment; use this to switch to note alignment, which is what we have most recently been doing in the external program. Not currently producing correct results, though
author Chris Cannam
date Fri, 29 May 2020 17:39:02 +0100
parents 846970dbef17
children
rev   line source
Chris@205 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@205 2
Chris@205 3 /*
Chris@205 4 Sonic Visualiser
Chris@205 5 An audio file viewer and annotation editor.
Chris@205 6 Centre for Digital Music, Queen Mary, University of London.
Chris@205 7
Chris@205 8 This program is free software; you can redistribute it and/or
Chris@205 9 modify it under the terms of the GNU General Public License as
Chris@205 10 published by the Free Software Foundation; either version 2 of the
Chris@205 11 License, or (at your option) any later version. See the file
Chris@205 12 COPYING included with this distribution for more information.
Chris@205 13 */
Chris@205 14
Chris@635 15 #ifndef SV_TRANSFORM_USER_CONFIGURATOR_H
Chris@635 16 #define SV_TRANSFORM_USER_CONFIGURATOR_H
Chris@205 17
Chris@205 18 #include "transform/ModelTransformerFactory.h"
Chris@205 19
Chris@740 20 #include <memory>
Chris@740 21
Chris@205 22 class TransformUserConfigurator : public ModelTransformerFactory::UserConfigurator
Chris@205 23 {
Chris@205 24 public:
Chris@205 25 // This is of course absolutely gross
Chris@205 26
Chris@634 27 bool configure(ModelTransformer::Input &input,
Chris@685 28 Transform &transform,
Chris@740 29 std::shared_ptr<Vamp::PluginBase> plugin,
Chris@685 30 ModelId &inputModel,
Chris@685 31 AudioPlaySource *source,
Chris@685 32 sv_frame_t startFrame,
Chris@685 33 sv_frame_t duration,
Chris@685 34 const QMap<QString, ModelId> &modelMap,
Chris@685 35 QStringList candidateModelNames,
Chris@685 36 QString defaultModelName) override;
Chris@205 37
Chris@395 38 static void setParentWidget(QWidget *);
Chris@395 39
Chris@205 40 private:
Chris@205 41 bool getChannelRange(TransformId identifier,
Chris@740 42 std::shared_ptr<Vamp::PluginBase> plugin,
Chris@740 43 int &min, int &max);
Chris@205 44
Chris@205 45 };
Chris@205 46
Chris@205 47 #endif