annotate framework/TransformUserConfigurator.h @ 725:16f6737fa557 spectrogram-export

Rework OSC handler so as to consume all available messages rather than having to wait for the timeout in between them. Pause to process events, and also wait for file loads and transforms to complete. (Should only certain kinds of OSC command wait for transforms?)
author Chris Cannam
date Wed, 08 Jan 2020 15:33:17 +0000
parents 7540733f5480
children 846970dbef17
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@205 20 class TransformUserConfigurator : public ModelTransformerFactory::UserConfigurator
Chris@205 21 {
Chris@205 22 public:
Chris@205 23 // This is of course absolutely gross
Chris@205 24
Chris@634 25 bool configure(ModelTransformer::Input &input,
Chris@685 26 Transform &transform,
Chris@685 27 Vamp::PluginBase *plugin,
Chris@685 28 ModelId &inputModel,
Chris@685 29 AudioPlaySource *source,
Chris@685 30 sv_frame_t startFrame,
Chris@685 31 sv_frame_t duration,
Chris@685 32 const QMap<QString, ModelId> &modelMap,
Chris@685 33 QStringList candidateModelNames,
Chris@685 34 QString defaultModelName) override;
Chris@205 35
Chris@395 36 static void setParentWidget(QWidget *);
Chris@395 37
Chris@205 38 private:
Chris@205 39 bool getChannelRange(TransformId identifier,
Chris@205 40 Vamp::PluginBase *plugin, int &min, int &max);
Chris@205 41
Chris@205 42 };
Chris@205 43
Chris@205 44 #endif