SpectMorph
smwavset.hh
1 // Licensed GNU LGPL v3 or later: http://www.gnu.org/licenses/lgpl.html
2 
3 #ifndef SPECTMORPH_WAVSET_HH
4 #define SPECTMORPH_WAVSET_HH
5 
6 #include <vector>
7 #include <string>
8 
9 #include "smaudio.hh"
10 
11 namespace SpectMorph
12 {
13 
15 {
16 public:
17  int midi_note;
18  int channel;
19  int velocity_range_min;
20  int velocity_range_max;
21  std::string path;
22  Audio *audio;
23 
24  WavSetWave();
25  ~WavSetWave();
26 };
27 
28 class WavSet
29 {
30 public:
31  ~WavSet();
32 
33  std::string name;
34  std::string short_name;
35  std::vector<WavSetWave> waves;
36 
37  void clear();
38 
39  Error load (const std::string& filename, AudioLoadOptions load_options = AUDIO_LOAD_DEBUG);
40  Error save (const std::string& filename, bool embed_models = false);
41 };
42 
43 }
44 
45 #endif
Audio sample containing many blocks.
Definition: smaudio.hh:81
Definition: smwavset.hh:28
Definition: smwavset.hh:14
Definition: smadsrenvelope.hh:8