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@205
|
26 Transform &transform,
|
Chris@205
|
27 Vamp::PluginBase *plugin,
|
Chris@214
|
28 Model *&inputModel,
|
Chris@595
|
29 AudioPlaySource *source,
|
Chris@595
|
30 sv_frame_t startFrame,
|
Chris@595
|
31 sv_frame_t duration,
|
Chris@595
|
32 const QMap<QString, Model *> &modelMap,
|
Chris@205
|
33 QStringList candidateModelNames,
|
Chris@634
|
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
|