SpectMorph
smmorphsourcemodule.hh
1 // Licensed GNU LGPL v3 or later: http://www.gnu.org/licenses/lgpl.html
2 
3 #ifndef SPECTMORPH_MORPH_SOURCE_MODULE_HH
4 #define SPECTMORPH_MORPH_SOURCE_MODULE_HH
5 
6 #include "smmorphoperatormodule.hh"
7 #include "smwavset.hh"
8 
9 namespace SpectMorph
10 {
11 
13 {
14 private:
15  WavSet *wav_set;
16  Audio *active_audio;
17 
18 public:
20 
21  void set_wav_set (const std::string& path);
22  float latency_ms();
23 
24  void retrigger (int channel, float freq, int midi_velocity, float mix_freq);
25  Audio *audio();
26  AudioBlock *audio_block (size_t index);
27 };
28 
30 {
31 protected:
32  SimpleWavSetSource my_source;
33 
34 public:
37 
38  float latency_ms();
39  void set_config (MorphOperator *op);
40  LiveDecoderSource *source();
41 };
42 }
43 
44 #endif
Audio sample containing many blocks.
Definition: smaudio.hh:79
Definition: smmorphsourcemodule.hh:29
Definition: smmorphsourcemodule.hh:12
Definition: smwavset.hh:29
Block of audio data, encoded in SpectMorph parametric format.
Definition: smaudio.hh:26
Definition: smmorphoperatormodule.hh:23
Definition: smlivedecodersource.hh:10
Definition: smmorphplanvoice.hh:14
Definition: smmorphoperator.hh:19
Definition: smaudio.hh:15