SpectMorph
smindex.hh
1 // Licensed GNU LGPL v3 or later: http://www.gnu.org/licenses/lgpl.html
2 
3 #ifndef SPECTMORPH_INDEX_HH
4 #define SPECTMORPH_INDEX_HH
5 
6 #include <string>
7 #include <vector>
8 
9 namespace SpectMorph
10 {
11 
12 enum IndexType
13 {
14  INDEX_INSTRUMENTS_DIR,
15  INDEX_FILENAME,
16  INDEX_NOT_DEFINED
17 };
18 
19 class Index
20 {
21  std::vector<std::string> m_smsets;
22  std::string m_smset_dir;
23 
24  std::string m_expanded_filename;
25  std::string m_filename;
26  std::string m_dir;
27  bool m_load_ok;
28 
29 public:
30  Index();
31 
32  void clear();
33  bool load_file (const std::string& filename);
34 
35  IndexType type() const;
36  std::string filename() const;
37  std::string expanded_filename() const;
38  std::string dir() const;
39  bool load_ok() const;
40 
41  const std::vector<std::string>& smsets() const;
42  std::string smset_dir() const;
43 };
44 
45 }
46 
47 #endif
Definition: smindex.hh:19
Definition: smadsrenvelope.hh:8