SpectMorph
smmorphsource.hh
1 // Licensed GNU LGPL v2.1 or later: http://www.gnu.org/licenses/lgpl-2.1.html
2 
3 #ifndef SPECTMORPH_MORPH_SOURCE_HH
4 #define SPECTMORPH_MORPH_SOURCE_HH
5 
6 #include "smmorphoperator.hh"
7 #include "smwavset.hh"
8 
9 #include <string>
10 
11 namespace SpectMorph
12 {
13 
14 class MorphSource : public MorphOperator
15 {
16 public:
17  struct Config : public MorphOperatorConfig
18  {
19  WavSet *wav_set = nullptr;
20  };
21  Config m_config;
22 protected:
23  std::string m_smset;
24 public:
25  MorphSource (MorphPlan *morph_plan);
26  ~MorphSource();
27 
28  // inherited from MorphOperator
29  const char *type() override;
30  int insert_order() override;
31  bool save (OutFile& out_file) override;
32  bool load (InFile& in_file) override;
33  OutputType output_type() override;
34  MorphOperatorConfig *clone_config() override;
35 
36  void set_smset (const std::string& smset);
37  std::string smset();
38 };
39 
40 }
41 
42 #endif
Class to read SpectMorph binary data.
Definition: sminfile.hh:27
Definition: smmorphoperator.hh:27
Definition: smmorphplan.hh:18
Definition: smmorphsource.hh:15
Definition: smoutfile.hh:19
Definition: smwavset.hh:29
Definition: smmorphoperator.hh:18
Definition: smmorphsource.hh:18